git - 如何将 git 非主分支合并到主分支?

以下是本地回购结构:

developement      master

    A               A
    B<--------------B
    C           (pushed to
    D           remote/master)   
    E            
    F
    G
    H

(推送到

远程/开发)

我想在本地和主人上使它像下面一样。

developement         master
    
        A               A
        B               B
        C-------------->C
        D-------------->D
        E-------------->E
        F-------------->F
        G-------------->G
        H-------------->H

想要将开发分支合并到本地仓库的主分支后丢弃。

谢谢!

回答1

我不确定您是否有两个远程分支,使用下面的解决方案,我想您在一个本地分支“非主”上进行了更改,并且您希望在主分支上进行这些更改。

如果此答案不符合您的需求,请在此处发表评论,我将能够编辑我的解决方案以满足您的需求。

请注意,在合并过程中,您可能会遇到合并冲突,请从新的本地分支中选择新的更改

第 1 步

确保非 master 分支上的所有更改都在本地提交,然后再签出到 master。您可以通过运行此命令来做到这一点

git add .
git commit -m "saved changes on the local branch to be merged into master"

现在签出 master 分支,以便您可以引入新的更改

git checkout master
git merge non-master
git add .
git commit -m "merged non-master into master"
git push

如果要删除本地分支

git branch -d non-master

如果要删除远程分支

git push origin --delete name-of-remote-branch

如果您有第二个远程分支,例如开发,则在本地版本的开发中签出,在 master 上 rebase 开发并将更改推送到远程开发。

这些步骤如下所示

git checkout development
git rebase master

如果您有合并冲突并且您不记得需要保留或删除哪段代码,请中止 rebase 并进行合并

git rebase --abort 
git merge master

如果两者之一对您有用,现在将更改推送到您的远程源,一切都应该很好。解决方案不起作用?,回复我,我将能够提供帮助。

相似文章

git - Git rebase 无效上游“开发”的问题

我有一种情况,我在3个月前从开发中创建了一个特性分支,从那时起,其他同事一直在研究其他发布到开发中的特性分支。我现在想将我的更改也集成到开发中,而不会破坏他们的代码,也不会破坏我的代码。我对此进行了研...

随机推荐

最新文章