如何撤消每最後一次提交後對我的目錄所做的更改,包括刪除添加的文件,重置已修改的文件以及添加回刪除的文件?重置上次提交後git中的所有更改
222
A
回答
409
首先重置變化
git reset HEAD --hard
然後清理掉一切未經跟蹤。如果您想保留由於.gitignore
而未被追蹤的文件,請小心使用此命令。
git clean -fd
+6
@Adam:你有時也會希望`-x`選項指向`git clean`,它也指示它去除被忽略的文件。 – Cascabel 2011-01-08 00:35:16
32
我如何可以撤消後終於到我的目錄所做的每一個變化承諾,包括刪除添加的文件,重新修改的文件,並加回被刪除的文件?
您可以撤消更改跟蹤文件有:
git reset HEAD --hard
您可以刪除未跟蹤文件有:
git clean -f
您可以刪除未經跟蹤個文件和目錄:
git clean -fd
但不能撤銷變更未跟蹤文件。
您可以刪除忽略未跟蹤文件和目錄
git clean -fdx
但不能撤銷變更忽略的文件。
您可以設置clean.requireForce
到false
:
git config --global --add clean.requireForce false
避免使用-f
(--force
)當您使用git clean
。
相關問題
- 1. git diff最後提交加上所有未提交的更改?
- 2. Git歸檔除首次提交以外的所有更改
- 3. 複製上次提交中更改的所有文件
- 4. 還原git的重置頭最後一次提交的變化
- 5. GIT重置分支並刪除合併後的所有更改
- 6. 更改git歷史記錄中所有提交的時區
- 7. GIT:恢復上次提交?
- 8. Git撤消上次提交
- 9. Git所有分支上每位作者的提交次數
- 10. Git - 如何返回上次提交併刪除所有未提交的文件?
- 11. 「git pull」後我會提交所有修改過的文件嗎?
- 12. Git:撤消未提交的更改以重置特定文件
- 13. 在Netbeans中更改軟件包名稱後,所有git提交都失敗
- 14. Git:提交部分更改
- 15. 更改Git提交信息
- 16. Git在某個提交後放棄本地和遠程的所有更改
- 17. 更改Netbeans中的Git提交者
- 18. Git的結帳-f取消所有本地更改設置回初始提交
- 19. 在兩次提交之間收集所有更改的文件
- 20. 用Git更改文件夾名稱,然後提交更改?
- 21. 清除GIT中的所有提交?
- 22. 自上次提交GitPython後發生更改的列表文件
- 23. Git更改沒有提交提交和未跟蹤文件
- 24. Git擴展沒有顯示一次提交的所有文件
- 25. SharedPreferences.Editor初次提交後沒有更新
- 26. git list在幾次提交中更改文件
- 27. git:哪個遠程git分支有最後一次提交?
- 28. 重置Doctrine中的所有UnitOfWork更改
- 29. Git:恢復我修改後的更改合併提交
- 30. 是否有可能在公關提交之後壓縮Git提交,然後提交更改?
可能重複[恢復到以前的Git提交](http://stackoverflow.com/questions/4114095/revert-to-previous-git-commit) – nawfal 2014-02-09 18:45:56
@nawfal可能是重複的,但'重置所有更改後最後提交'符合更多的搜索條件(在谷歌搜索詞)比相應的'如何恢復Git存儲庫'。至少對於像我這樣沒有英語作爲母語的人來說:d – 2017-08-04 07:33:54