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

how to merge git non-master to master branch?

下面是本地回购结构:

developement      master

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

(推到
remote/developement)

我想在本地和主机上都像下面这样。

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

想在将开发分支合并到本地仓库的 master 分支后丢弃它。

谢谢!

我不确定你是否有两个远程分支,下面是我的解决方案 假设您在一个本地分支“non-master”上进行了更改,并且您希望在 master.
上进行这些更改 如果这个答案不能满足您的需求,请在这里发表评论,我将能够编辑我的解决方案以满足您的需求。

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

步骤 1
在结帐到主分支之前,请确保非主分支上的所有更改都在本地提交。 您可以通过 运行 执行此命令

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 上重新开发并将更改推送到远程开发。

这些步骤就像下面这样

git checkout development
git rebase master

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

git rebase --abort 
git merge master

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