假如我們在檔案系統中把乙個檔案test.txt刪掉,執行git stauts可以看到
$ 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
git commit -m '刪除test.txt檔案'
另一種情況是刪錯了,因為版本庫里還有呢,所以可以很輕鬆地把誤刪的檔案恢復到最新版本:
git checkout -- test.txt
06 時間機穿梭 撤銷修改
為什麼git比其他版本控制系統設計得優秀,因為git跟蹤並管理的是修改,而非檔案,比如你修改了乙個檔案,然後用git add把它加到暫存區,然後再一次修改這個檔案,然後用git commit命令提交到某個分支,此時你再用git status命令能看到第二次修改並沒有提交,甚至都還沒到暫存區,因為gi...
04 時間機穿梭 版本回退
03節的時候我們已經成功地新增並提交了乙個readme.txt檔案,現在,我們繼續修改readme.txt檔案。執行git status命令看看結果 git status on branch master changes not staged for commit use git add to up...
在 1 時間刪除鍊錶結點
給定單向鍊錶的頭指標和乙個結點指標,定義乙個函式在 1 時間刪除該結點 鍊錶結點與函式定義如下 struct listnode 鍊錶不止乙個結點並且要刪除的結點是頭節點 else if plisthead ptobedeleted 要刪除的結點是最後乙個結點 else if ptobedeleted...