svn - 与普通的 svn 客户端相比,使用 git-svn 有什么优势?

标签 svn git git-svn

我最近看到很多帖子建议如果您必须使用 SVN 存储库进行团队开发,那么 git 是比 svn 更好的客户端:

这些文章似乎侧重于如何做,而忽略了为什么。 帮助我说服自己、老板和同事,使用 git-svn 优于官方 svn 客户端!

注意:git 和 svn 的相对优点已得到很好的阐述。我更关心在规定的 SVN 存储库上使用哪个客户端这个问题。

最佳答案

对我来说,使用 git-svn(和 CVS 桥)的主要优点是

  • 我在本地拥有所有的浏览历史和git-blame,
  • 离线时我有完整的版本控制,例如在火车上,
  • 我可以充分利用暂存区/索引,例如仅阶段特定台词,
  • 我只需要在对更改感到满意时发布更改(即我尝试了一些东西并且成功了,或者我已经使历史连贯),
  • 我可以轻松地传递补丁系列以供审核。

作为奖励,git 与 SVN 和 CVS 的接口(interface)允许我选择退出参数,如果我们应该将我们的 CVS 存储库切换到 subversion(从 3 年多开始一直持续)或者立即去做一些非常酷和奇特的东西(从 2 开始持续) + 年)。

您实际上不需要对开发人员应该使用什么做出管理决策。无论如何,用于中央存储库的内容可能会受到其他参数的驱动(例如构建、审查和测试基础架构)。

关于svn - 与普通的 svn 客户端相比,使用 git-svn 有什么优势?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5733581/

相关文章:

git - GitHub Pages 的替代品?

svn - Mac 上的版本控制

svn - 在一个非常大的网站上使用Subversion

svn - SVN 提交时自动构建

svn - 我如何在 jenkins 中列出带有登录用户凭据的 svn 文件夹以获取构建参数?

git - 防止 Git Push live master 更改文件权限和所有权

svn - 我还必须将第三方库二进制文件保留在源代码管理中吗?

git - 防止 git 要求提交更改

svn - 如何将 svn 分支和标签导入 git-svn?

git - 是否可以在 git 中 merge 分支并保留历史记录?