Git忽略刪除已加入和未加入版本控制的文件

一 git強制忽略文件

  1. 對於未加入版本控制的文件,可以創建.gitignore文件來忽略
    在工程目錄下創建.gitignore文件,添加想忽略的,這些文件必須是沒有add 到版本庫的,這樣纔會起作用,文件內容如下所示:

.gitignore
/projectName/WebRoot/WEB-INF/classes
/projectName/src/resource/config.xml

  1. 對於已經加入版本控制的文件,需要命令來強制忽略
    如果不小心 config.xml 文件被同事加入版本庫了,可以用如下命令強制忽略這個文件:
git update-index --assume-unchanged config.xml

這樣,即使已經更改了文件,用git status也不會看見文件已經更改。
取消這種設定可以使用如下命令:

git update-index --no-assume-unchanged config.xml

二 git刪除 未追蹤的文件

在利用 git 工作時,工程目錄下經常會出現一些未跟蹤文件,雖然 git 支持通過 .gitingore 文件添加一些忽略文件類型和文件目錄。但有時需要清理一些臨時文件和自動生成的文件,手動刪除顯得太麻煩,這時你可以利用 git clean 命令來幫你完成這項操作。git clean 命令支持以下參數:

git clean [-d] [-f] [-i] [-n] [-q] [-e <pattern>] [-x | -X] [--] <path>...

其中幾個主要參數用法如下:

1 -d # 刪除未跟蹤目錄以及目錄下的文件,如果目錄下包含其他git倉庫文件,並不會刪除(-dff可以刪除)。
2 -f # 如果 git cofig 下的 clean.requireForce 爲true,那麼clean操作需要-f(–force)來強制執行。
3 -i # 進入交互模式
4 -n # 查看將要被刪除的文件,並不實際刪除文件

示例

  1. 刪除untracked文件
    git clean -f
  2. 連 untracked 的目錄也一起刪掉
    git clean -fd
  3. 連 gitignore 的untrack 文件/目錄也一起刪掉 (慎用,一般這個是用來刪掉編譯出來的 .o之類的文件用的)
    git clean -xfd
  4. 在用上述 git clean 前,牆裂建議加上 -n 參數來先看看會刪掉哪些文件,防止重要文件被誤刪
    git clean -nxfd
    git clean -nf
    git clean -nfd
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章