Eclipse:由于“Checkout冲突”,无法在Git中切换分支

问题描述 投票:0回答:2

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

存储或重置冲突都不能解决问题。窗口消失然后几秒钟后回来。

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

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

我怎么解决这个问题?

eclipse git branch egit git-checkout
2个回答
0
投票

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

target/
.settings
.classpath
.project

0
投票

您应该在版本控制下使用.project文件(以及.settings.classpath等其他文件),这样当您执行git cleangit reset --hard HEAD时,您不会将它们吹走。

.project文件有几个目的:

  1. 存储项目的名称
  2. 存储依赖项目列表
  3. 存储关联的构建器/性质列表

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

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.