我试图将我的本地分支与我的开发分支合并(两者都是本地的,但开发是最新的远程开发分支)。在我做了rebase之后,我得到了一些冲突,当我解决它们时,我注意到在合并一个文件时我忽略了开发分支的提交。我检查了这个文件到最新的提交,但现在它显示为有更改(Eclipse和git状态都显示它需要提交)。
命令序列:
(local_dev_branch)
git pull
git checkout local_branch_from_dev
(local_branch_from_dev)
git rebase local_dev_branch
(conflicts appear)
git mergetool
git rebase --continue
(noticed wrong file)
git checkout newest_commit_id wrong_file
git status
(and it shows that wrong_file is modified)
我是github的新手,所以这对我来说仍然有点混乱。有可能以某种方式恢复文件而不必在以后再次提交它吗?
答案 0 :(得分:1)
通常,当您的工作目录是干净的并且您检查了以前版本的文件时,该文件当然会显示为已更改。与存储库的最新状态(即分支的HEAD提交)相比,文件内容确实发生了变化。
提交新版本有什么问题?
或者,您可以重置为rebase之前的状态并再次执行此操作,这次从一开始就采用正确的文件版本(假设在重组时合并期间出现问题)。有关如何撤消变基的信息,请参阅this answer。