不知何故,我的主分支和我的起源/主分支分道扬镳了。 我不希望它们发散。

我如何看待这些差异并将其合并?


当前回答

将123替换为分支偏离原点的提交数。

git reset HEAD~123 && git reset && git checkout . && git clean -fd && git pull

其他回答

当我基于分支a创建一个分支时遇到了这个问题

git checkout -b a

然后我将分支a的起始流设置为分支B的原点

git branch -u origin/B

然后我得到了上面的错误消息。

对我来说,解决这个问题的一个方法是,

删除分支a 创建一个新的分支b

git checkout -b b origin/B

我相信这应该对我有帮助:

git reset --hard origin/master

但事实并非如此。不知怎的,我得到了同样的消息&当我从远程分支中提取更改时,冲突就发生了。因为我确定我根本不需要我现有的本地分支&我只需要一个远程主分支的副本,因此我想出了这个解决方案:

签出到一个新的分支,例如,git Checkout -b placeholder-branch。注意:该分支可以稍后删除。 git分支-D master,我这样做是因为我确定我的本地分支被搞砸了&我不需要这个。我需要远程实例的新副本。 Git签出-跟踪原点/master &你完成了;现在你可以使用git branch -D删除占位符分支

我有这个问题,即使在阅读了上面的回复后,我也不知道是什么导致了它。我的解决办法是做

git reset --hard origin/master

然后,这只是将我的(本地)master副本(我认为是搞砸了)重置到正确的点,由(远程)origin/master表示。

警告:您将丢失所有尚未推送到原点/主节点的更改。

将123替换为分支偏离原点的提交数。

git reset HEAD~123 && git reset && git checkout . && git clean -fd && git pull

我已经通过移动到commit_sha来修复它,最后提交给origin/master。

git reset --hard commit_sha

警告:在commit 'commit_sha' commit之后,你将丢失所有提交的内容。