所以我有一个包含多个分支的git存储库,因此我创建了许多本地存储库,一次只选择一个分支,例如
git clone --single-branch --branch master ssh://xxx:29418/Javacode.git master
git clone --single-branch --branch PLATFORM2_7_0_3 ssh://xxx:29418/Javacode.git PLATFORM2_7_0_3
git clone --single-branch --branch PLATFORM2_7_1_1 ssh://xxx:29418/Javacode.git PLATFORM2_7_1_1
现在说我在其中一个存储库中进行提交,我希望将其提交并放入其他存储库中。
现在我是git的新手,但据我所知,人们通常会采取整个存储库(即没有单分支选项),签出某个分支,从中创建一个新分支,执行提交那个分支,然后将新分支与原始分支合并。然后还应该可以结账说出7_1_1分支或主分支,并再次将分支与其中的修复合并到那些分支。
由于我将单个分支克隆到单独的存储库中的方式,我可以使用什么方法来实现上述目的,而无需在这些存储库中进行相同的更改(这当然容易出错)。
答案 0 :(得分:1)
在其中一个克隆中,您可以使用
获取整个上游仓库git fetch origin
然后,您拥有origin
拥有的所有提交,并且git cherry-pick
可以提交。{/ p>
如果提交不在origin
但在PLATFORM2_7_0_3
克隆中,你可以通过将其添加为远程克隆来将其挑选到其他克隆中:
cd PLATFORM2_7_1_1
git remote add PLATFORM2_7_0_3 ../PLATFORM2_7_0_3