是否有可能在 Git 中恢复已提交的文件?我已将提交推送到 GitHub,然后我意识到有一个我不想推送的文件(我还没有完成更改)。
最佳答案
更新:添加了更安全的方法
首选方法:
检查文件以前(未更改)的状态;注意双破折号
git checkout HEAD^ -- /path/to/file
提交:
git commit -am "revert changes on this file, not finished with it yet"
推它,不需要用力:
git push
回到你未完成的工作,再做一次(向上箭头 3 次):
git checkout HEAD^ -- /path/to/file
有效地“取消 promise ”:
要修改存储库 HEAD 的最后一次提交,混淆你不小心推送的工作,同时可能与你的同事发生冲突,他可能已经 pull 了它,并且谁会长出白发并浪费很多时间来调和他的地方分支机构负责人与中央分支机构负责人:
从上次提交中删除文件更改:
要将文件恢复到上次提交之前的状态,请执行:
git checkout HEAD^ /path/to/file
要用还原的文件更新最后一次提交,请执行:
git commit --amend
要将更新后的提交推送到存储库,请执行以下操作:
git push -f
真的,考虑使用前面提到的首选方法。
关于Git:推送后删除提交的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18357511/