首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >可以同时运行多个'git merge‘调用吗?

可以同时运行多个'git merge‘调用吗?
EN

Stack Overflow用户
提问于 2011-11-09 16:21:21
回答 3查看 74关注 0票数 1

我正在尝试编写一个基于git的工具,但却做了一些相当不寻常的事情,我需要知道:同时运行多个git merge --ff-only [remote-branch]实例以在其中任何一个实例上获得最新提交是否安全?所有的远程都将在同一提交行上。我希望我的工具能够将它们全部生成,然后让git来解决,但我需要知道这是否会导致问题。有没有人对git的内部结构有足够的了解,可以说是这样或那样?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-10 01:43:42

如果您正在执行--ff-only合并,为什么不使用git branch --contains或其他方法检查引用,以查看旧的提交是否可达,然后执行重置或更新引用?

这应该非常快,并且有可能避免更新工作目录。

票数 1
EN

Stack Overflow用户

发布于 2011-11-09 16:32:38

Git使用锁来防止并发访问,在最坏的情况下,您的合并尝试将失败,并出现类似lock file exists error的错误。

顺便说一句,合并允许多个合并,有一个章鱼合并策略。

票数 1
EN

Stack Overflow用户

发布于 2011-11-09 16:53:18

在这种情况下,为什么不依次合并每个远程分支,而不是同时生成它们呢?

代码语言:javascript
复制
 #!/bin/sh
 set -e
 for rtb in origin/master github/master gitorious/master
 do
     git merge --ff-only $rtb
 done

如果HEAD已经包含一个远程跟踪分支,合并仍然会成功返回,声明为Already up-to-date.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8062067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档