所以我创建了一个Git仓库,成立了我的工作拷贝一些标签和遥控器,然后推到库我的服务器与如何克隆git存储库并保留远程控制?
git push --mirror my.remote.repository
据称,使用git推--mirror也将推动我设置的遥控器。
但是,如果我这样做
git clone my.remote.repository
我没有看到,我最初创建的遥控器。我是否需要特殊的语法来克隆遥控器?镜子没有实际发送遥控器吗?我哪里做错了?
编辑:也许我的工作流程很奇怪:这是我正在努力完成的。 回购最初是另一个项目(A)的克隆,我不控制,我已将远程更名为“上游”。我创建了一个新的'主'分支,并打算对我的工作副本进行更改并部署它们。我偶尔会从原始存储库(A)中提取更新(切换到原始未修改的分支并从上游提取)。但是,我正在与其他人一起工作,他们都应该能够做到这一点。目标是通过初始仓库(A)中的错误修复来更新主分支,并将更改提交到“主”分支。因此,当开发人员克隆存储库时,他们应该继承上游分支,以便他们实际执行此操作。总之,我试图使用“上游”分支来从不同项目中获取更新。我没有使用子模块来做到这一点,因为“上游”分支实际上负责存储库中95%的文件,如果没有来自上游的文件,整个项目就没有意义。
也许我错过了一些东西,但是如果听起来好像你在本地有一个分支(称为'foo',比如说),那么你从'upstream/master'更新。你为什么不把这个分支(以及你的'master')推到一个其他人可以克隆的裸仓库?或者让他们直接克隆你的仓库?在任何情况下,他们都会在任何阶段将这些分支作为远程跟踪分支而不使用“--mirror”。 –
@ mark-longair对,但那些远程分支正在跟踪我们自己的服务器,而不是他们最初来自的上游服务器。这虽然有点用处,但确实意味着其他人不会(很容易)从上游获取更新(只读),然后将它们提交到我们自己的服务器(原始)。 – Zxaos
他们可以做到这一点 - 他们只需要添加一个额外的远程引用其他存储库。 –