On Mercurial如果我想合并分支,我总是必须分两步执行:
hg merge my_branch
hg ci -m "I just merged my branch"
有没有一种方法可以在一个命令中执行相同的操作(如果发现冲突,它会中止)?
hg merge my_branch -ci "I merged my branch"
答案 0 :(得分:2)
将
hg merge my_branch && hg ci -m "I just merged my branch"
是可接受的还是只需要拨打hg
一次?
&&
才会执行以下命令。
编辑:
如果您需要将命令作为带参数的别名,这会变得有点复杂,因为别名不接受参数。您可以使用函数并将其别名:
branch_and_commit() { hg merge $1 && hg ci -m $2; } ; alias bac=branch_and_commit
然后你可以这样称呼它:
bac my_branch_id "this is the comment"
答案 1 :(得分:1)
我不建议在同一操作中执行这两个操作。主要原因是,在合并冲突期间,您需要在提交之前解决它。因此,当第一个操作失败时,您将被置于一个需要另一个提交的状态。
如果您需要这样做,为了简化理想的案例工作流,至少创建一个脚本来处理冲突案例并恢复到起始修订版,以便用户可以正常合并和提交。但是,使用简单的别名最终会比帮助你更麻烦。