在git中,刪除也是乙個修改操作,我們實戰一下,先新增乙個新檔案test.txt到git並且提交:
$ git add test.txt
$ git commit -m "add test.txt"
[master 94cdc44] add test.txt
1 file changed, 1 insertion(+)
create mode 100644 test.txt
一般情況下,你通常直接在檔案管理器中把沒用的檔案刪了,或者用rm
命令刪了:
$ rm test.txt
這個時候,git知道你刪除了檔案,因此,工作區和版本庫就不一致了,git status
命令會立刻告訴你哪些檔案被刪除了:
$ git status
# on branch master
# changes not staged for commit:
# (use "git add/rm ..." to update what will be committed)
# (use "git checkout -- ..." to discard changes in working directory)
## deleted: test.txt
#no changes added to commit (use "git add" and/or "git commit -a")
現在你有兩個選擇,一是確實要從版本庫中刪除該檔案,那就用命令git rm
刪掉,並且git commit
:
$ git rm test.txt
rm 'test.txt'
$ git commit -m "remove test.txt"
[master d17efd8] remove test.txt
1 file changed, 1 deletion(-)
delete mode 100644 test.txt
現在,檔案就從版本庫中被刪除了。
另一種情況是刪錯了,因為版本庫里還有呢,所以可以很輕鬆地把誤刪的檔案恢復到最新版本:
$ git checkout -- test.txt
git checkout
其實是用版本庫里的版本替換工作區的版本,無論工作區是修改還是刪除,都可以「一鍵還原」。
命令git rm
用於刪除乙個檔案。如果乙個檔案已經被提交到版本庫,那麼你永遠不用擔心誤刪,但是要小心,你只能恢復檔案到最新版本,你會丟失最近一次提交後你修改的內容。
Github 簡明教程
如果你是一枚coder,但是你不知道github,那麼我覺的你就不是乙個菜鳥級別的coder,因為你壓根不是真正coder,你只是乙個code搬運工。但是你如果已經在讀這篇文章了,我覺的你已經知道github了。正是github,讓社會化程式設計成為現實。github是乙個基於git的 託管平台,付...
Github 簡明教程 管理修改
現在,假定你已經完全掌握了暫存區的概念。下面,我們要討論的就是,為什麼git比其他版本控制系統設計得優秀,因為git跟蹤並管理的是修改,而非檔案。你會問,什麼是修改?比如你新增了一行,這就是乙個修改,刪除了一行,也是乙個修改,更改了某些字元,也是乙個修改,刪了一些又加了一些,也是乙個修改,甚至建立乙...
Visual Unit 簡明教程
visual unit,簡稱vu,是新一代單元測試工具,功能強大,使用簡單,完全視覺化,不需編寫測試 vu的測試結果使程式行為一目了然,有助於整理程式設計思路,提高程式設計效率和正確性,並能快速排錯 vu還增強偵錯程式功能 如自由後退 用例切換 提高除錯的效率 vu能達到空前的測試完整性,輕鬆完成語...