将更改从github公共存储库拉到github私有存储库

时间:2014-03-18 12:06:15

标签: git version-control github

我已经克隆了一个公共github存储库(比如projectA)并创建了一个私有github存储库(比如projectAPrivate),然后镜像将克隆的projectA推送到projectAPrivate(如此处所述https://help.github.com/articles/duplicating-a-repository

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

从那时起,我已将更改推送到projectAPrivate,现在projectA已发布新版本。如何从公共projectA存储库拉取/合并更改到我的私有github项目projectAPrivate。

2 个答案:

答案 0 :(得分:0)

我认为Github的帮助页面也有你问题的答案:https://help.github.com/articles/duplicating-a-repository

  

如果要在其他位置镜像存储库,包括   从原始获取更新,您可以克隆镜像和   定期推动变革。

$ git clone --mirror
$ https://github.com/exampleuser/repository-to-mirror.git
# Make a bare mirrored clone of the repositor

$ cd repository-to-mirror.git git remote set-url --push origin
$ https://github.com/exampleuser/mirrored
# Set the push location to your mirror 
  

与裸克隆一样,镜像克隆包括所有远程分支和标记,但都是本地的   每次获取时都会覆盖引用,因此它将始终被覆盖   与原始存储库相同。设置推送的URL   简化了对镜子的推动。要更新镜像,请获取   更新和推送,可以通过运行cron作业自动完成。

git fetch -p origin 
git push --mirror

答案 1 :(得分:0)

您可以在projectAPrivate根目录

上运行follow命令
git remote add public https://github.com/exampleuser/old-repository.git
git pull public master

然后您将从projectA存储库获取所有更新,然后请合并更改,解决冲突等,之后,您可以运行follow命令将其提交到projectAPrivate

git push origin master