繁体   English   中英

git pull删除的本地文件如何恢复?

[英]How to recover local files removed by git pull?

我进行了本地更改,然后运行“git pull”。 我的本地文件被一个远程提交覆盖。 我可以恢复那些未提交的更改吗?

本地更改不应(尚未添加/提交)被git pull覆盖(除非您git pull -f

我总是更喜欢autostash 功能

git config --global pull.rebase true
git config --global rebase.autoStash true

如果在拉取之前将您的更改添加到索引中,您可以检查 git fsck
如果它们实际上已提交,您可以从 git 日志中恢复它们

git pull不应无警告删除内容。

如果自动存储选项( autostash提到)在您的机器上打开,您的更改可能已被隐藏:

  • 运行git show stash查看最新 stash 的内容,

  • 如果您的更改未显示在最新的存储中,请检查:

     git stash list # to have an overview of what is stored in the stash git stash show stash@{n} # to view the content of a previous stash

如果您在其中一个存储条目中找到要查找的内容,则可以运行:

git stash apply 
# or
git stash apply stash@{n}

恢复它们。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM