是否有可能在 Git 中恢复已提交的文件?我已经向 GitHub 推送了一个提交,然后我意识到有一个我不想被推送的文件(我还没有完成更改)。
更新:添加了更安全的方法
检查文件的先前(未更改)状态;注意双破折号
git checkout HEAD^ -- /path/to/file
提交它:
git commit -am "revert changes on this file, not finished with it yet"
推动它,无需用力:
git push
回到你未完成的工作,再次做(3次箭头向上):
修改存储库 HEAD 的最后一次提交,混淆你不小心推送的工作,同时可能会与你的同事发生冲突,他可能已经拉过它,并且会长出白发并浪费大量时间来协调他的本地分支负责人与中央:
要从上次提交中删除文件更改:
要将文件恢复到上次提交之前的状态,请执行以下操作:
git checkout HEAD^ /path/to/file
要使用恢复的文件更新最后一次提交,请执行以下操作:
git commit --amend
要将更新的提交推送到 repo,请执行以下操作:
git push -f
真的,考虑使用前面提到的首选方法。