最近,我发现了一个名为Gogs的Gitlab替代品。
有任何关于将Gitlab中的repo迁移到Gogs的建议吗?我当然不会期待所有这一切,尽可能多。
答案 0 :(得分:12)
镜像回购的正确步骤是:
$ git clone --mirror git@example.com/upstream-repository.git
$ cd upstream-repository.git
$ git push --mirror git@example.com/new-location.git
注意:如果您没有使用git push --mirror
克隆回购,请不要使用git clone --mirror
。此外,git clone --mirror
优先于git clone --bare
,因为它也会克隆所有git注释和属性。
参考:http://blog.plataformatec.com.br/2013/05/how-to-properly-mirror-a-git-repository/
答案 1 :(得分:9)
克隆locit the bare git repo(=服务器端repo)并将其作为镜像推送到新的repo:
git clone --bare http://my.gitlab.project.git
cd project.git
git push --mirror http://my.gogs.project.git
这会推送你所有的提交,分支,标签等。这适用于任何git repo,无论它是在gitlab,gog,github等上托管的。