我正在一個分支,我已經在幾個提交中更改了文件A,現在我想恢復它的所有更改,以便文件A的狀態與首次創建分支時的初始狀態相同。什麼是最簡單的方法來實現這一點?如何在Git中多次提交後撤銷文件中的更改?
3
A
回答
6
git checkout <sha1_of_commit> file/to/restore
將在<sha1_of_commit>
提交後將文件恢復爲狀態。如果您想在之前將其還原爲,則此提交使用git checkout <sha1_of_commit>~1 file/to/restore
。
0
安裝Smart Git - 其直觀的GUI軟件。 10分鐘的關於它的解讀將解釋你是如何工作的。 也試圖google一下這些命令:
git-reset
git-revert
git-checkout
他們的工作取決於你想要什麼不同的方式。
相關問題
- 1. 撤銷git merge幾次提交前
- 2. 在Visual Studio 2015中如何反轉/撤銷Git中的提交?
- 3. 撤銷放棄的未提交更改
- 4. 撤銷更改(提交併推送)
- 5. Git撤消上次提交
- 6. 如何撤銷SmartGit/Git中的提交操作
- 7. 如何撤銷Subversion提交
- 8. 如何撤消提交併將更改提交到Git中的其他分支?
- 9. 撤銷TFS中的最後一次提交
- 10. 在mysql中撤銷多個更改
- 11. git list在幾次提交中更改文件
- 12. Git:撤消未提交的更改以重置特定文件
- 13. 是否可以在Git Web UI提交中撤銷特定文件中的更改?
- 14. 撤銷在TortoiseSVN的提交
- 15. 撤銷Subversion在NetBeans中的提交
- 16. Vim撤銷:撤消文件寫入後的更改
- 17. 如何撤消最後一次提交
- 18. 撤銷一個提交,然後重新合併,在git?
- 19. 在rebase後撤銷git commit
- 20. Git的撤銷合併是刪除未提交的修改
- 21. 撤銷上次提交/合併
- 22. 撤消Git中的最後更改
- 23. 撤消或刪除以前的Git提交中的更改
- 24. 如何在git commit中撤銷已刪除的文件夾
- 25. Git中撤消多次提交還沒有被推到遠程
- 26. 重置上次提交後git中的所有更改
- 27. Git恢復提交併添加更改,即使在提交更多提交後
- 28. 撤銷對文件的更改
- 29. 撤消Git提交由於大文件
- 30. 用Git更改文件夾名稱,然後提交更改?
這將我的文件恢復到「之後的狀態」,但未恢復在該提交中應用的更改本身。有沒有辦法在第一次提交之前恢復到狀態,即文件的原始狀態? –
smohadjer
假設那個提交的''''''''''''''''abcde''',然後使用'''git checkout abcde〜1 file/to/restore'''。 '''〜1'''表示在''''abcde''' commit之前簽出一個提交。我會用這個信息更新答案。 –
只有當你將它提交給git時,才能獲得初始狀態。如果你沒有提交初始狀態,那麼你只能在第一次提交該文件後才能返回狀態。 –