Git 如何在本地将活动分支合并到另一个分支?
我当前的工作流程是:Git 如何在本地将活动分支合并到另一个分支?,git,git-merge,branching-and-merging,Git,Git Merge,Branching And Merging,我当前的工作流程是: 在某个分支上工作work\u分支 提交更改 希望合并到主节点,但以后仍在该分支上工作 签出master 将工作分支合并到主分支 结帐work\u分支机构 我想省去签出master然后签出work\u branch的麻烦 相反,我希望以某种方式将更改“推”到主控,而不将其作为活动分支 我找不到这方面的副本,但我想我只是缺少术语。不,没有办法做到这一点。从git merge手册页: 将命名提交中的更改(自其历史记录偏离当前分支时起)合并到当前分支中 Git的结构使得这样的命令可
work\u分支
主节点
,但以后仍在该分支上工作master
工作分支
合并到主分支
work\u分支机构
master
然后签出work\u branch
的麻烦
相反,我希望以某种方式将更改“推”到主控
,而不将其作为活动分支
我找不到这方面的副本,但我想我只是缺少术语。不,没有办法做到这一点。从
git merge
手册页:
将命名提交中的更改(自其历史记录偏离当前分支时起)合并到当前分支中
Git的结构使得这样的命令可以对当前签出的提交进行操作
我能想到的最接近的事情是使用
git worktree
建立第二个工作树,这将允许您签出主分支并从工作分支合并,同时仍然签出您的工作分支。看起来您需要进行实际合并(即,您将在步骤5中执行的git merge
将导致真正的合并,而不是简单的快进),您需要另一个索引和工作树来执行合并。在这种情况下,请参阅(或创建另一个存储库并在这两个存储库之间推送/获取,并在另一个存储库中执行工作)但是如果你对master
的更新总是很快的,那么有一种作弊方法,使用git fetch
或git push
从你自己的存储库到你自己的存储库。基本上,你可以运行git push.work\u branch:master
,上面写着:嘿,git,调用另一个git(实际上就是你自己)。然后要求另一个Git将其master
设置为与我的work\u分支
相同。这意味着您的Git要求自己将自己的master
设置为与自己的work\u分支
相同……这是快进合并的一半,因此如果快进操作成功,您现在就完成了。