将特定分支镜像到另一个分支名称下的另一个仓库

时间:2019-08-08 17:29:42

标签: github

因此,我目前有2个存储库:RepoA和RepoB。我被要求将RepoA:Branch2镜像到RepoB:Master。有没有一种方法可以将RepoA:Branch2的所有提交历史记录镜像到RepoB:Master。

我看到的所有示例都使分支名称相同或镜像所有分支。我只需要一个具有所有历史记录的分支,并使用一个新的分支名称

我尝试了镜像和推送,但是它复制了所有内容。我尝试过

1 个答案:

答案 0 :(得分:0)

我找到了几个例子的答案

git clone --bare --single-branch --branch Branch2 https://github.com/stuff/RepoA.git
cd RepoA.git
git remote add newbranch https://github.com/otherstuff/RepoB
git push -u newbranch; git push --tags -u newbranch
cd ..
git clone https://github.com/otherstuff/RepoB.git
cd RepoB
git branch -m master
git push origin :Branch2 master

最后一行会警告您它不能删除Branch2,因为它是默认值。为了解决这个问题,您需要:

  1. 访问RepoB的GitHub网站
  2. 点击分支
  3. 点击更改默认分支
  4. 选择主分支
  5. 点击更新

现在,RepoA分支的Branch2是具有所有提交历史记录和标签的RepoB上的主分支