【发布时间】:2015-06-01 18:59:06
【问题描述】:
我已经遇到了无法签出分支的问题(请参阅here)。在我强制结帐 (git checkout master -f) 并进行合并和标记之后,我现在想切换到 develop 分支。这是我得到的:
git checkout develop
MyProject.userprefs: needs merge
error: you need to resolve your current index first
这是git status 给出的:
On branch master
Your branch is ahead of 'origin/master' by 78 commits.
(use "git push" to publish your local commits)
Unmerged paths:
(use "git reset HEAD <file>..." to unstage)
(use "git add/rm <file>..." as appropriate to mark resolution)
deleted by us: MyProject.userprefs
no changes added to commit (use "git add" and/or "git commit -a")
我一开始有文件MyProject.userprefs,但将其从develop 分支中删除并添加到.gitignore。现在该文件在 master 分支中似乎没有被忽略。
另外有趣的是,该文件似乎在索引git ls-files --stage中被跟踪了两次:
100644 b16bd8d4e57de7705a5a388d045fed7376a1b175 1 MyProject.userprefs
100644 ef238f895ca1b80f10cfcd45349d82df925ff482 3 MyProject.userprefs
我应该简单地删除 MyProject.userprefs 吗?但是 IDE 需要它。我应该在 master 分支中重新创建索引吗?
【问题讨论】:
标签: git version-control branch merge-conflict-resolution