<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                # git-rm > 原文: [https://git-scm.com/docs/git-rm](https://git-scm.com/docs/git-rm) ## 名稱 git-rm - 從工作樹和索引中刪除文件 ## 概要 ``` git rm [-f | --force] [-n] [-r] [--cached] [--ignore-unmatch] [--quiet] [--] <file>…? ``` ## 描述 從索引中刪除文件,或從工作樹和索引中刪除文件。 `git rm`不會僅從您的工作目錄中刪除文件。 (沒有選項能只將文件從工作樹中刪除而還在索引中保留;如果非要這樣做,請使用`/bin/rm`。)要刪除的文件必須與分支的尖端相同,并且雖然可以使用`-f`選項覆蓋默認行為,但不能在索引中暫存對其內容的更新。當給出`--cached`時,分階段內容必須匹配分支的尖端或磁盤上的文件,從而允許僅從索引中刪除文件。 ## 選項 ``` <file>…? ``` 要刪除的文件。可以給出Fileglobs(例如`*.c`)以刪除所有匹配的文件。如果你想讓Git擴展文件glob字符,你可能需要shell轉義它們。可以給出一個前置目錄名稱(例如,刪除`dir/file1`和`dir/file2`的`dir`)以刪除目錄中的所有文件,并遞歸地刪除所有子目錄,但這需要明確給出`-r`選項。 ``` -f ``` ``` --force ``` 覆蓋最新的檢查。 ``` -n ``` ``` --dry-run ``` 實際上不要刪除任何文件。相反,只顯示它們是否存在于索引中,否則將被命令刪除。 ``` -r ``` 在給出前導目錄名時允許遞歸刪除。 ``` -- ``` 此選項可用于將命令行選項與文件列表分開(當文件名可能被誤認為是命令行選項時很有用)。 ``` --cached ``` 使用此選項僅從索引中取消暫存和刪除路徑。無論是否修改了工作樹文件,都將保持不變。 ``` --ignore-unmatch ``` 即使沒有匹配的文件,也以零狀態退出。 ``` -q ``` ``` --quiet ``` `git rm`通常為每個刪除的文件輸出一行(以`rm`命令的形式)。此選項會禁止輸出。 ## 討論 <file>給予命令的列表可以是精確的路徑名,文件glob模式或前置目錄名。該命令僅刪除Git已知的路徑。已知文件路徑,但沒有告訴Git的文件不會被刪除。 文件通配符跨目錄邊界匹配。因此,給定兩個目錄`d`和`d2`,使用`git rm 'd*'`和`git rm 'd/*'`之間存在差異,因為前者也將刪除所有目錄`d2`。 ## 刪除已從文件系統中消失的文件 `git rm`沒有選項只從索引中刪除從文件系統中消失的路徑。但是,根據用例,有幾種方法可以完成。 ### 使用“git commit -a” 如果您打算下一次提交應記錄工作樹中跟蹤文件的所有修改,并記錄已使用`rm`(而不是`git rm`)從工作樹中刪除的文件的所有刪除,請使用`git commit -a`,因為它會自動注意并記錄所有刪除。通過使用`git add -u`,您也可以在不提交的情況下獲得類似的效果。 ### 使用“git add -A” 當接受供應商分支的新代碼丟棄時,您可能希望記錄路徑的刪除和新路徑的添加以及現有路徑的修改。 通常,您將首先使用以下命令從工作樹中刪除所有跟蹤的文件: ``` git ls-files -z | xargs -0 rm -f ``` 然后解壓縮工作樹中的新代碼。或者你可以 _rsync_ 對工作樹進行更改。 之后,記錄工作樹中所有刪除,添加和修改的最簡單方法是: ``` git add -A ``` 見 [git-add [1]](https://git-scm.com/docs/git-add) 。 ### 其他方法 如果您真正想要做的就是從索引中刪除工作樹中不再存在的文件(可能是因為您的工作樹是臟的,因此您無法使用`git commit -a`),請使用以下命令: ``` git diff --name-only --diff-filter=D -z | xargs -0 git rm --cached ``` ## 子模塊 只有使用gitfile的子模塊(這意味著它們用Git 1.7.8或更新版本克隆)將從工作樹中刪除,因為它們的存儲庫位于超級項目的.git目錄中。如果子模塊(或其中嵌套的子模塊之一)仍然使用.git目錄,`git rm`會將子模塊git目錄移動到superprojects git目錄中以保護子模塊的歷史記錄。如果在[gitmodules [5]](https://git-scm.com/docs/gitmodules)中存在submodule.<name>部分,那么文件將被刪除,并被暫存(除非使用了--cached或-n)。 當HEAD與索引中記錄的相同時,子模塊被認為是最新的,未修改跟蹤文件,并且子模塊工作樹中不存在未被忽略的未跟蹤文件。忽略的文件被認為是可消耗的,并且不會阻止子模塊的工作樹被刪除。 如果您只想從工作樹中刪除子模塊的本地簽出而不提交刪除,請改用 [git-submodule [1]](https://git-scm.com/docs/git-submodule) `deinit`。有關子模塊移除的詳細信息,請參見 [gitsubmodules [7]](https://git-scm.com/docs/gitsubmodules) 。 ## 例子 ``` git rm Documentation/\*.txt ``` 從索引中的`Documentation`目錄及其任何子目錄中刪除所有`*.txt`文件。 請注意,在此示例中,引用了星號`*`;這讓Git而不是shell擴展了`Documentation/`目錄下的文件和子目錄的路徑名。 ``` git rm -f git-*.sh ``` 因為此示例允許shell展開星號(即您明確列出文件),所以它不會刪除`subdir/git-foo.sh`。 ## BUGS 每次超級項目更新刪除填充的子模塊時(例如,在刪除之前和之后切換提交時),舊的子模塊檢出將保留在舊位置。刪除舊目錄只有在使用gitfile時才是安全的,否則子模塊的歷史記錄也將被刪除。當實現遞歸子模塊更新時,此步驟將過時。 ## 也可以看看 [git-add [1]](https://git-scm.com/docs/git-add) ## GIT 部分 [git [1]](https://git-scm.com/docs/git) 套件
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看