git - 是否可以让本地 Git 分支与远程 SVN 存储库一起工作?

标签 git svn

我们有一个包含我们源代码的 SVN 存储库。我们真的很想使用本地 Git 分支来开发新功能并利用 merge 算法等 Git 功能。

这可能吗?如果是,有人可以提供一些有关如何执行该操作的信息吗?

最佳答案

是的。您将需要使用 git-svn .

首先,您需要git svn clone 您的SVN 存储库。请注意,这将从 SVN 服务器获取每个修订,并将历史重新创建为 Git 存储库。 这些 Git 存储库不应由多个开发人员共享。每个开发人员都应单独运行 git svn clone!

然后您可以使用标准 Git 命令创建您想要的所有本地分支,因为您基本上拥有一个标准 Git 存储库,其中包含一些额外的 SVN 元数据,用于跟踪 SVN 提交。您可以使用 git svn dcommit 等命令将 Git 中的提交推送到 SVN 服务器(每个 Git 提交都将成为一个单独的 SVN 提交)。

我会考虑读一本好书git-svn tutorial .

(如果可能,您还可以考虑是否真的愿意使用 git-svn 将您的 SVN 存储库转换为 Git 存储库,然后完全停止使用 SVN。)

关于git - 是否可以让本地 Git 分支与远程 SVN 存储库一起工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14526780/

相关文章:

linux - 补丁文件和差异文件之间的区别

git - 压缩数百个原始提交

Git: merge 期间的附加更改没有冲突

git - 将旧版本的代码添加到 git repo

windows - Egit - 获取、 merge 、 pull 麻烦

c# - SVN pre-commit-hook,有没有办法在客户端窗口中设置日志消息?

iphone - 不能做 git stash apply

svn - Jenkins/Hudson SVN 问题

svn - 复制两次会导致分支内分支而不是错误

windows - 如何在批处理文件中将Windows路径转换为文件: URL,,适合SVN命令行使用