如何复制一个Git仓库? (不分叉)

我有两个仓库,我需要把整个仓库复制到另一个空仓库,这个仓库与第一个仓库有不同的访问级别。 副本和母库不应该链接在一起。

我是git的新手,如果有人能够帮助我,这将是非常棒的。

请参阅https://help.github.com/articles/duplicating-a-repository

简洁版本:

为了制作完全相同的副本,您需要执行裸副本和镜像推送:

mkdir foo; cd foo # move to a scratch dir git clone --bare https://github.com/exampleuser/old-repository.git # Make a bare clone of the repository cd old-repository.git git push --mirror https://github.com/exampleuser/new-repository.git # Mirror-push to the new repository cd .. rm -rf old-repository.git # Remove our temporary local repository 

注意:上面的任何远程git仓库都可以正常工作,说明并不特定于github

上面创build了一个新的远程副本的回购。 然后将其克隆到您的工作机器上。

你也可以使用git-copy 。

用Gem安装它,

 gem install git-copy 

然后

 git copy https://github.com/exampleuser/old-repository.git \ https://github.com/exampleuser/new-repository.git 

如果你正在复制到GitHub,你可以使用GitHub Importer来为你做。 原来的回购甚至可以来自其他版本控制系统。

如果你只是想使用现有文件中的全部或大部分文件(即作为一种模板)来创build一个新的存储库,我发现最简单的方法是用所需的名称等创build一个新的存储库,将其克隆到你的桌面,然后只需要添加你想要的文件和文件夹。

你没有得到所有的历史等,但你可能不希望在这种情况下。