2016-04-18 32 views
2

我想写一个别名up的混帐其执行以下操作简历连锁命令解决合并冲突

  1. 藏匿改变当前分支foo
  2. 结帐主
  3. 读取/拉
  4. 结帐foo
  5. git merge master
  6. 恢复隐藏通道GES
up = !git stash save masterupdate && git checkout master && git fetch && git pull && git checkout @{-1} && git merge master && git stash pop stash^{/masterupdate} 

这工作,除非有合并冲突,需要加以解决。在这种情况下,它在冲突步骤停止,我需要手动应用藏匿。

  • 我该如何解决合并冲突时,其余的链接命令会继续正常吗?
  • 是否为这种情况制作第二个别名的唯一选项?
  • 在没有变化的情况下可以隐藏存储消息吗?

我的工作流程涉及到制造,然后得到其他团队成员审阅引入请求,垫底是不是一种选择,因为它会破坏他们的意见

+0

考虑以下方面:检查是否可以自动完成合并而不发生冲突,然后启动它 - 否则提示有关与用户冲突的消息,不要开始你的流程.. Github在拉请求中像这样行事。检查此:http://stackoverflow.com/questions/6335717/can-git-tell-me-if-a-merge-will-conflict-without-actually-merging – ItayB

回答

0

至于问题:

如何解决合并冲突后,链接命令的其余部分会继续正常运行?

你不行。因为合并失败,它会停止执行你的cli的shell。

你可以写一个shell脚本,做一些检查,同样的事情,就看你跑了脚本第二/第三时间,所以如果命名脚本混帐东西会直接跳到你的git stash pop stash^{/masterupdate} ,你可以实际运行你的命令,如git something,你可以创建一个别名呼叫git something