我正在一个分支,我已经在几个提交中更改了文件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时,才能获得初始状态。如果你没有提交初始状态,那么你只能在第一次提交该文件后才能返回状态。 –