2017-02-20 165 views
1

是否有使用一些混帐克隆/取回机制,可确保回购在我的克隆进行更新,包括从远程所有参/遥控器/办法?有没有办法克隆包括其远程存储库的git存储库?

这与git fetch --all,git pull --allgit svn无关。这只是将遥控器的遥控器复制到一个克隆。

像这样的命令将是巨大的:

git clone --include-remote-remotes [email protected]:TheGitSvnClone 

,然后定期

git fetch --update-remote-remotes origin 

一些细节:

的遥控器有它自己的远程命名SVN包含部分分支机构:

  • 参/头/主
  • 参/遥控器/ SVN /中继线
  • 参/遥控器/ SVN/BRANCH1
  • 参/遥控器/ SVN/BRANCH2

As的结果克隆我期望一个普通的Git仓库包括工作副本(签出文件)和下列裁判:

  • 裁判/头/主
  • (参考文献/遥控器/来源/主)
  • 参/遥控器/ SVN /中继线
  • 参/遥控器/ SVN/BRANCH1
  • 参/遥控器/ SVN/BRANCH2

我不能请使用git clone --mirror,因为它会创建一个裸存储库。

为什么这么复杂?

公司目前正在使用SVN。同时我正在准备从svn迁移到git。

不幸的是git svn fetch永远在我的Windows机器上,所以我使用的是一台linux机器,定期执行git svn fetch,然后使用FileZilla复制产生的git回购。

+0

的可能的复制[能“混帐拉--all”更新所有的地方分支机构?](http://stackoverflow.com/questions/4318161/can-git-pull-all-update-all-my-local - 分支) – Stony

+0

没有。这与从不同遥控器拉/取任何东西没有关系。 –

+1

我不明白的是为什么你不完全切换到混帐?你为什么用抓取和复制来做这种事情? – Stony

回答

2

正常克隆库后,指示的Git来获取远程裁判:

git config --add remote.origin.fetch '+refs/remotes/svn/*:refs/remotes/svn/*' 

后续git fetch通话将下载svn裁判。