从git-svn克隆的远程库更新裸git仓库

3
我有一个远程的SVN仓库(X),一名自由开发者在此提交他的工作。然而,我们公司使用GIT进行开发,并使用git-svn来协调GIT和SVN。这没问题!
因此,我将SVN仓库(X)克隆到本地GIT仓库(A)。接着,我又将本地GIT仓库(A)克隆到本地的GIT bare仓库(B),以便通过SSH从任何地方拉取它。
问题是:每当开发者提交他的代码到SVN仓库时,我都要执行“git svn fetch && git svn rebase”命令,以便获取本地仓库(A)的更新,但我无法从A更新我的本地bare仓库(B)。我在B中运行了“git fetch”,所以它从(A)中获取了变更并存储在FETCH_HEAD中,但我想要将这些变更“合并”到bare仓库(B)HEAD中,以便我可以从远程仓库拉取变更。
有什么好的建议吗?
希望我已经表达清楚了。谢谢!

你选择的解决方案很有意思。我也遇到了类似的问题,能否分享一下? - Win Man
3个回答

1
在Git中,合并需要一个工作副本才能实际执行合并(因为可能存在冲突)。这可能就是为什么您无法在裸库(B)中合并的原因。
您可以在工作库(A)中合并,然后将合并结果推送到库(B)中。

0
您可以将 SubGit 安装到您的代码库 X 中,这样会在该机器上创建一个裸 Git 仓库 Y,从而自动进行 X<->Y 的同步。 因此,您可以定期在 B 上运行 "git pull --all " 命令,使用 Y 替代 B 或将它们同步。在这种情况下,仓库 A 就是多余的。

0

简单回答 - 您可以从 A 推送到裸仓库 B。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接