我一直在研究 git 和 git-svn。我是 git 的新手,但我已经能够创建一些基本的 repo 协议(protocol)。但是,我对团队使用 git-svn 的工作流程如何进行感到有些困惑。目标是将 svn 转换为 git 以用于分支和共享目的,然后在准备好推送到生产环境时提交回主 svn 存储库。这是我的问题:
团队的每个成员都应该从 svn 存储库创建一个 git 存储库吗?当 merge 回 svn/相互 pull 时,这种方法是否有效?
-或-
是否应该从 svn 创建一个 git 存储库,然后将该存储库“公开”推送给团队成员克隆?那么更改是否会被 pull 回到原来的 git 存储库以进行 rebase 并推送到 svn?
-或-
除了从彼此的工作副本 repo 中 pull 更改之外,我们可以像上面那样做吗?
-或-
我是否为工作流程增加了太多的复杂性并且应该继续使用 svn,因为它不是完全转换为 git 的选项?
最佳答案
我一直沿着这些思路做事。在这里,我们有一个 svn 存储库,但有些人更愿意使用 git。我们只是让一个人创建了 git 存储库,然后我们所有人共享了它(而不是每个人都创建自己的 git-svn 副本——最初的导入花了 30 多个小时)。现在任何想要的人都可以在 git 和 git svn dcommit
中工作,将他们的更改推送回“真正的”svn 存储库。
关于svn - 关于使用 git-svn repo 的团队的工作流问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1669419/