由于与过时的远程 git 存储库同步而丢失的本地文件更改
Changes in local file lost due to it synching with out of date remote git repository
我尝试通过以下命令将提交推送到我的 gitlab 存储库(我将边走边描述输出):
git checkout origin
没有名为 origin 的分支
git checkout -b origin
git status
git add README.md
git add src/example.ipynb
git add src/.ipynb_checkpoints/
git commit -m notebook update
git push origin master
这就是我意识到我可能处于分离状态并切换到 master
的地方
git checkout master
git status
仍然没有显示变化
git log -1
git checkout master
git reset --hard 44263cc6fd2bd60be54da344a6d344eb3c42a03a
git push origin master
当我注意到我的本地笔记本文件恢复到旧版本时,我尝试通过执行
恢复最后发布的提交
git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative --all
git revert 407302e
然后我从 运行 git revert 得到以下错误:
error: your local changes would be overwritten by revert.
hint: commit your changes or stash them to proceed.
fatal: revert failed
正如您看到的一系列错误决定让我来到这里一样,我该如何恢复文件中的更改?谢谢
部分归功于GitKraken,我解决了这个问题。尽管由于合并冲突仍然无法恢复提交,但它仍然允许我查看新文件和旧文件之间的差异,我很确定这也可以通过命令实现,但对于 git 像我这样的菜鸟。
我尝试通过以下命令将提交推送到我的 gitlab 存储库(我将边走边描述输出):
git checkout origin
没有名为 origin 的分支
git checkout -b origin
git status
git add README.md
git add src/example.ipynb
git add src/.ipynb_checkpoints/
git commit -m notebook update
git push origin master
这就是我意识到我可能处于分离状态并切换到 master
的地方
git checkout master
git status
仍然没有显示变化
git log -1
git checkout master
git reset --hard 44263cc6fd2bd60be54da344a6d344eb3c42a03a
git push origin master
当我注意到我的本地笔记本文件恢复到旧版本时,我尝试通过执行
恢复最后发布的提交
git log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit --date=relative --all
git revert 407302e
然后我从 运行 git revert 得到以下错误:
error: your local changes would be overwritten by revert.
hint: commit your changes or stash them to proceed.
fatal: revert failed
正如您看到的一系列错误决定让我来到这里一样,我该如何恢复文件中的更改?谢谢
部分归功于GitKraken,我解决了这个问题。尽管由于合并冲突仍然无法恢复提交,但它仍然允许我查看新文件和旧文件之间的差异,我很确定这也可以通过命令实现,但对于 git 像我这样的菜鸟。