Source Tree显示“1个分支超前,1个分支落后”

4
我在使用SourceTree存储库时遇到了问题。我不知道自己做错了什么,但现在我有1个落后的分支和1个领先的分支。如果我尝试拉取,则会出现错误,指出我有未提交的更改(但我没有任何更改);如果我尝试推送,则会出现错误,并提示我需要先拉取。如果我尝试合并我的分支,则会出现错误,提示:“fatal: You have not concluded your merge (MERGE_HEAD exists).Please, commit your changes before you merge."
这是一张图片:enter image description here 这是一个视频:http://recordit.co/MYOgeSFTaD 谢谢您的时间!

当您按下“获取”按钮时会发生什么?请尝试查看此答案 - chirag90
我上传了一个视频给你看。 - Florentin Lupascu
3个回答

2

你的远程 origin/master 和本地 master 都比共同基础多 1 次提交。

1 behind 表示 远程仓库 比共同基础多了 1 次提交。
1 ahead 表示你的 本地工作区 比共同基础多了 1 次提交。

如果你想要推送你的修改,你需要先让你的代码保持同步,即将 远程仓库(1 behind) 的代码和你的 本地修改(1 ahead) 合并。点击 Pull,如果没有冲突(即你的修改和别人的修改不在同一处),它会为你创建一个新的提交记录,否则你需要先解决这些冲突。

之后你的代码就会变成 2 ahead,但不会再有 behind。你不能推送落后的提交记录。只需推送你的修改即可。


根据您的视频,我编辑了这段话。你的工作区存在冲突。只需单击左侧边栏的 File Status,然后解决这些冲突。之后按照上述方法进行提交并推送即可。


1
我通过点击提交按钮并勾选“立即将更改推送到源”来解决了问题,实际上我没有提交任何内容(0个文件)。但是分支和主分支之间创建了连接,现在我不再有错误。我不知道这是否正常,但这解决了我的问题。这里有一张照片,你可以将第一张照片与这张照片进行比较:

enter image description here

感谢!

0

遇到了同样的问题,我采取并且成功的解决方案是:

1 - 为了保险起见,将更改存储

2 - 为了保持在更安全的区域,进行备份:)

3 - 然后放弃所有出现在提交区域中的更改 ->源树中的左上角按钮。

4 - 首先拉取和合并更改。然后推送您的更改。一切都会对齐。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接