對比git rm和rm的使用區別

散盡浮華發表於2016-07-15

 

在這裡說一下git rm和rm的區別,雖然覺得這個問題有點膚淺,但對於剛接觸git不久的朋友來說還是有必要的。

用 git rm 來刪除檔案,同時還會將這個刪除操作記錄下來;
用 rm 來刪除檔案,僅僅是刪除了物理檔案,沒有將其從 git 的記錄中剔除。

直觀的來講,git rm 刪除過的檔案,執行 git commit -m "abc" 提交時,會自動將刪除該檔案的操作提交上去。

而用 rm 命令直接刪除的檔案,單純執行 git commit -m "abc" 提交時,則不會將刪除該檔案的操作提交上去,需要在執行commit的時候,多加一個-a引數,
rm刪除後,需要使用git commit -am "abc"提交才會將刪除檔案的操作提交上去。

 

比如:
1)刪除檔案test.file
# git rm test.file
# git commit -m "delete test.file"
# git push

或者
# rm test.file
# git commit -am "delete test.file"
# git push

2)刪除目錄work
# git rm work -r -f
# git commit -m "delete work"
# git push

相關文章