Eclipse Egit-现在无法签出-卡在重基状态

Eclipse Egit-现在无法签出-卡在重基状态,eclipse,git,github,merge,Eclipse,Git,Github,Merge,几天前我问了一个类似的问题,但我没有得到一个有用的答案,所以我想让一切变得更加精确 我在github上有一个私人回购的大项目。我和我的一个朋友正在做这件事。我将整个repo导入到本地存储库和eclipse中,一切都很顺利,直到出现合并冲突。每次,我都会遇到合并冲突(例如,当我在处理常用类之前忘记拉拽时),我的eclipse工作区中的整个项目都会切换到“Rebase w/merge”状态: 现在我得到了合并冲突的分数。因此,我打开了这个类,使用合并工具进行合并,编辑了所有需要更改的内容,并再次将

几天前我问了一个类似的问题,但我没有得到一个有用的答案,所以我想让一切变得更加精确

我在github上有一个私人回购的大项目。我和我的一个朋友正在做这件事。我将整个repo导入到本地存储库和eclipse中,一切都很顺利,直到出现合并冲突。每次,我都会遇到合并冲突(例如,当我在处理常用类之前忘记拉拽时),我的eclipse工作区中的整个项目都会切换到“Rebase w/merge”状态:

现在我得到了合并冲突的分数。因此,我打开了这个类,使用合并工具进行合并,编辑了所有需要更改的内容,并再次将该类添加到索引中

接下来,我提交了所有合并更改,并将所有内容都推到了主分支的上游(到目前为止,我们只使用master,因为我们在git和vcs/svn方面都没有太多经验)

但现在,我既不能切换回master branch,也不能取消重设基础或做任何其他事情

我试过:

右键单击项目文件夹->团队->切换到->主文件夹。

这就是错误通知

接下来,我被告知取消Git Repositories视图中的重基:

但我的本地回购协议和远程回购协议都没有任何与重定基期相关的选项

接下来,我在当地分行的菜单中尝试了“结帐”。同样的结果。 我还试图将我的本地分行推向上游:

这是我预设的“合并/重设基础”选项,但这两个选项都会产生相同的结果:

我在github中查看了我的repo——我的所有更改(包括合并解析)都已推送到主分支中,并准备好获取。我的队友可以拉他们,可以继续工作的项目。但我无法摆脱这种带合并状态的重基。每次出现这种状态时,我都必须删除所有项目资源,删除本地存储库,将所有内容重新导入eclipse,最后,我必须一次又一次地执行每个附加配置


那么:我怎样才能逃脱这个重设基地呢?顺便说一句:重新基础和合并之间有什么区别?

在Git Staging视图中有一个中止重新基础的选项


使用合并上游提交到本地分支

Rebase意味着将旧的主代码更改为新的主代码(即更改分支的基代码),合并意味着将更改添加到主代码中

您还可以尝试使用git命令行来解决此类冲突

使用Git重基/合并进程 在处理brach时,添加所有文件并将其推送到服务器

git add .
git commit -m "SSSS"
git push -u origin <BranchName>
git checkout master
git pull
现在,您将收到一条关于冲突的消息,所以请从底部开始处理每个文件以解决冲突 现在添加该文件

$ git add <filename which you just updated> 
$ git rebase --continue
在执行合并/重设基础时,如果消息窗口显示要编写提交语句,则没有转义。。。写点东西,然后做下面的事情-

$git reset --hard HEAD~1

[此命令将当前提交头重置为1级,恢复到上次合并时发生的情况将恢复]

如果您在查看Git Staging视图时遇到问题,或者Staging视图显示错误的存储库,则只需单击工具栏中rebase图标旁边的三角形,然后单击abort


如果您在rebase状态下被阻止,并且eclipse拒绝中止它(无响应),则必须取消选中以下选项来停用项目的自动生成:

自动项目/生成


这将停止所有挂起的版本。

git rebase--退出对我有效。

谢谢!这就是我寻找的选择。有点奇怪的是,我总是要中止重新基础,我没有启动,但中止对服务器文件没有影响,正如我注意到的,所以在合并之后,我只是中止,一切都很好。泰!您也可以单击
继续
。EGit会将rebase标记为我认为的那样。谢谢!帮助我
$ git add <filename which you just updated> 
$ git rebase --continue
$ git checkout master
$ git merge <YOUR_BRANCH>
$ git push
$git rebase --abort
$git reset --hard HEAD~1