我在github中有一个具有许多文件夹(f1、f2、f3)的repo-a。我想使用f1创建一个新的repo(repo-b),其中包含所有分支。
Repo-a
|_ f1
|_ f2 ------+
|_ f3 |
| Copy folder with branches and history
Repo-b |
|_ f2 <-----+
这就是我正在做的,但它只推动一个分支:
>
克隆原始存储库
git克隆https://github.com/myuser/repo-a
现在删除除我需要的文件夹之外的所有内容
git filter-分支--prune-空--subDirecle-filter f2----all
然后我将远程源更改为新代表
git远程set-url来源https://github/myuser/repo-b
最后我把一切
git推送--所有来源
正如我所说,当我检查repo-b时,它只包含一个分支,而不是所有分支。
有什么想法吗??
谢谢。
上一个问题的答案详细说明了如何做到这一点。https://stackoverflow.com/a/22907155/3566042
简而言之,请参阅GitHub在https://help.github.com/articles/duplicating-a-repository/的留档
要在不分叉的情况下创建存储库的副本,您需要针对原始存储库运行特殊的克隆命令并镜像推送到新存储库。
否则,您可以fork第一个Github存储库。