IntelliJ Idea VCS显示三个文件

时间:2017-05-19 14:38:28

标签: git intellij-idea version-control pull merge-conflict-resolution

当我点击Intellij Idea的VCS代码时,它显示了三个文件之间的差异 - 一个是SHA1哈希,另一个是基本版本,第三个是服务器版本。请解释一下他们的内容。我想保留其他用户的更改并合并我的更改。我们使用git作为VCS。当我试图拉动时会出现这个问题。它说:

error: Pull is not possible because you have unmerged files.
hint: Fix them up in the work tree, and then use 'git add/rm <file>'
hint: as appropriate to mark resolution and make a commit.
fatal: Exiting because of an unresolved conflict.

如果有帮助我可以发布git diff命令的输出。谢谢。

2 个答案:

答案 0 :(得分:1)

警告让您知道您有未合并的文件。如果您想保留其他人的更改,假设他们在主分支或其他开发分支上:

  1. 为您的更改创建自己的本地分支
  2. git add您对分支的更改
  3. 将您的分支与您想加入的分支合并。请注意,这可能需要解决一些冲突。有关更多指导,请参阅git-mergeHow To Resolve Conflicts”上的文档。如果您使用的是Intellij,可以在docs上找到合并说明。
  4.   

    合并分支

         

    按照访问Git分支弹出窗口中的说明调用分支菜单   菜单。在弹出列表中选择一个显示所有可用分支的分支   本地和远程分支,并从子菜单中选择“合并”。该   选定的分支将合并到当前的分支中   检查过了。如果存在合并冲突,系统将提示您   解决它们。

         

    如果您的本地更改将被合并,IntelliJ覆盖   IDEA建议进行智能合并(类似于智能结账。

    有关详细信息,请查看Git Basics本书的在线版本。

答案 1 :(得分:1)

这是由于文件的开始合并所致 因此,要解决问题,您需要正确合并差异 某些文件已更改,并且包含不正确的符号,例如:

<<<<<<< HEAD
open an issue
=======
ask your question in IRC.
>>>>>>> branch-a

这意味着那里存在冲突。

要解决此问题,您可以手动编辑这些文件。

如果在更新之前没有本地更改,则可以应用下一个选项。在这种情况下,您可以还原更改并再次尝试更新项目。

SHA-1选项卡表示您的更改,中间选项卡表示合并结果,最后一个(服务器更改)表示从远程更新。