当我想将一个分支合并到另一个分支时,我用以执行以下操作(在此示例中为master to custom):
git checkout master && git pull && git checkout custom && git merge master
有人可以建议如何简化这个吗?
谢谢,波格丹。
答案 0 :(得分:3)
git checkout custom && git pull origin master
答案 1 :(得分:2)
在一般情况下不能简化。 merge和pull(使用merge或rebase)可能都需要一个工作树来允许用户解决潜在的冲突。
虽然可能会有一些简化的假设。
如果您的本地主从未进行任何本地更改(即,每次进入本地主将始终是“快进”更新;可能是因为唯一的原因你有一个本地主机是因为 git clone 自动为你做了一个),那么你可能只是忽略你的本地主机并重新配置您的本地自定义从当地主人使用的上游拉出来。
# copy "upstream" config from 'master' to 'custom'
for o in remote merge rebase mergeoptions; do
v="$(git config branch.master."$o")" &&
git config branch.custom."$o" "$v"
done
然后,要将上游合并到自定义,只需执行git checkout custom && git pull
。
或者,您可以直接在本地主上工作(使用git checkout master && git reset --hard custom
将自定义提交移至主,然后可以放弃或删除自定义)。
答案 2 :(得分:-1)
使用shell脚本