這裏附帶說一下添加到暫存區的命令(
git add tbschedule-web/src/test/java/com/test/Map6Test.java
),接入下告訴你如何撤消這一步操作
Git刪除錯誤添加到暫存區的文件
僅僅刪除 暫存區裏的文件
命令:
git rm --cache tbschedule-web/src/test/java/com/test/Map6Test.java
實戰:
$ git status
On branch dev
Your branch is up to date with 'origin/dev'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: tbschedule-web/src/test/java/com/test/Map6Test.java
$ git rm --cache tbschedule-web/src/test/java/com/test/Map6Test.java
rm 'tbschedule-web/src/test/java/com/test/Map6Test.java'
$ git status
On branch dev
Your branch is up to date with 'origin/dev'.
Untracked files:
(use "git add <file>..." to include in what will be committed)
tbschedule-web/src/test/java/com/test/Map6Test.java
nothing added to commit but untracked files present (use "git add" to track)
上面的命令,我們執行過2次 git status,細心的朋友應該可以看到,文件Map6Test.java已經從暫存區退回到工作區了,另外這個文件還是存在的喲,可以通過這個命令看到
$ ll tbschedule-web/src/test/java/com/test/Map6Test.java
-rw-r--r-- 1 root staff 230 9 29 14:32 tbschedule-web/src/test/java/com/test/Map6Test.java
刪除暫存區和工作區的文件
爲了測試這種場景,我們重新將Map6Test.java先放置到暫存區裏一下
git add tbschedule-web/src/test/java/com/test/Map6Test.java
###c命令:
git rm -rf tbschedule-web/src/test/java/com/test/Map6Test.java
實戰:
$ git status
On branch dev
Your branch is up to date with 'origin/dev'.
Changes to be committed:
(use "git reset HEAD <file>..." to unstage)
new file: tbschedule-web/src/test/java/com/test/Map6Test.java
$ git rm -rf tbschedule-web/src/test/java/com/test/Map6Test.java
rm 'tbschedule-web/src/test/java/com/test/Map6Test.java'
$ git status
On branch dev
Your branch is up to date with 'origin/dev'.
nothing to commit, working tree clean
$ ll tbschedule-web/src/test/java/com/test/Map6Test.java
ls: tbschedule-web/src/test/java/com/test/Map6Test.java: No such file or directory
執行過 git rm -rf tbschedule-web/src/test/java/com/test/Map6Test.java
之後,我們分別用git status
和 ll tbschedule-web/src/test/java/com/test/Map6Test.java
來確認暫存區 與 工作空間 裏這個文件是否存在,發現都已經如願地被刪除了。