我使用git来维护代码的多个工作副本。我的想法是,我可以检查任何分支,构建并运行它,以查看分支的特征x如何适应代码的当前状态。
Git的主分支是Trunk,其他git分支是我想尝试的功能或事物。因此,我的典型用法是使用最新修补程序更新master,然后将master合并到各个分支中,以便每个分支都保持最新。
这个系统适合我,除了我必须结帐分支,合并主人和冲洗/重复其他分支。鉴于像git这样的版本控制系统,我不认为这种扩展非常好,因为随着时间的推移,我很容易产生很多分支。
我仍然是一个git初学者,所以我怀疑可能有一种git已经存在的机制,我可能会失踪。有吗?如果没有,那么如何对所有分支进行更改以使它们保持最新状态?
答案 0 :(得分:6)
如果
然后你可以在master更新后简单地将它们重新绑定到master上。如果您使用的是Unix shell,这个小脚本可能会有效。它将每个分支重新组合成主。
for BRANCH in `ls .git/refs/heads`; do git rebase master $BRANCH; done
答案 1 :(得分:5)
一种可能性(未经我自己测试)将是:
您仍然需要访问功能仓库并检查是否由于某些合并冲突而阻止了rebase或merge。
答案 2 :(得分:0)
以下检查每个分支并进行合并:
for BRANCH in $(ls git/refs/heads);
do git checkout $BRANCH ;
git merge origin/master $BRANCH ;
done