Eclipse:由于" Checkout冲突"无法在Git中切换分支。

时间:2015-07-16 14:08:58

标签: eclipse git branch egit git-checkout

每当我尝试在Eclipse中切换到另一个Git分支时,就会发生以下错误:

"Checkout Conflicts" constantly appears

隐藏或重置冲突都无法解决问题。窗口消失然后几秒钟后回来。

当按下取消时,窗口会永久消失,但分支不会被切换。

我不想查看 .project 文件。在Eclipse中禁用自动构建也不起作用。这种行为发生在卢娜和火星上。

我该如何解决这个问题?

2 个答案:

答案 0 :(得分:0)

您应该将此文件添加到您的忽略列表中,它不会受到传入提交的影响。要做到这一点,您应该在 .gitignore

中添加类似内容
target/
.settings
.classpath
.project

答案 1 :(得分:0)

您应该在版本控制下拥有.project文件(以及.settings.classpath等其他文件),这样当您执行git clean或{ {1}}你不要把它们吹走。

git reset --hard HEAD文件有几个目的:

  1. 存储项目名称
  2. 存储依赖项目列表
  3. 存储关联的构建器/性质列表
  4. 文件本身不会定期更新;只有当你添加新的性质或重命名项目时才应该清理它。如果您正在使用旧的构建工具,那么它可能会重写.project文件以添加相关项目;但通常不会发生这种情况。

    .project是否显示文件的任何更改?可能是因为换行问题,git认为文件不同(因为它有不同的EOL),即使从概念上来说它也是同一个文件。

    您还可以使用git diff将文件内容与另一个分支进行比较,以显示该文件更改。

    最后,您是在Eclipse中还是在像TortoiseGit这样的外部工具中进行替换?如果是后者,您可能会混淆Eclipse,最好让Eclipse的JGit集成为您进行更改。