1. 程式人生 > >git rm的幾種姿勢

git rm的幾種姿勢

rm意為刪除檔案,但是可以跟不同的引數來達到不同的效果。

場景

下午醒來,睡眼朦朧的你開始提交程式碼了,混混沌沌地使用了git add .
然後突然一個激靈,窩草,我得確認一下我add了啥東西,然後用了git status -s簡要看了一下要提交的東西。
好像做錯了什麼

發現已經add的檔案中間華麗麗地有一個A_UNWANTED_FILE.md
不過還好,幸虧我沒有commit並且直接push。
image.png

老闆說過要保證程式碼庫的純潔性!!!

幸虧我知道這個命令:

git rm --cached FILE_NAME

image.png

又沒出錯,飄飄然
如果不加--cached,會有以下結果:
image.png
會提示已經staged,不能刪除。

另外提示中也給了另一個-f選項,使用-f會將檔案從暫存區中刪除,並且刪除原檔案。就像這樣:
image.png

另外一個比較有意思的選項是-n--dry-run的簡寫。大致是我刪除之前先看看會刪除哪些東西,並不會有實際的影響。