git - 使用 Subversion 后学习 Git

标签 git svn version-control

<分区>

我开始了一份新工作,我需要从头开始实现版本控制系统。在我之前的工作中,我使用 Subversion(特别是带有 TortoiseSVN、AnkhSVN 和 SubClipse 客户端的 Visual SVN 服务器)实现了版本控制。

最近听说了很多关于Git的事,但是一直没用过。我在网上阅读的大多数文章都说 Git 比 Subversion 好。我不是在这里问哪个更好,所以请将这些评论留给你们自己。

就我的环境而言,我是一家小型 GIS 公司的首席开发人员。我们主要使用 Python 脚本,偶尔使用 .Net 编写的插件工具。这里有几个其他人使用 Python 脚本,并且也将在版本控制下工作。最近,我开始开发我的第一个 Web 应用程序 (HTML/Javascript),它也应该受版本控制。我们都在严格的 Windows 环境中工作,同时使用专有和开源软件和 API。

我有两个问题:

  1. 如果我已经了解 Subversion,是否值得花时间和精力学习和实现 Git?
  2. 使用 Subversion 后学习 Git 的最佳资源是什么?我如何快速入门?

最佳答案

问题 1a。学习 Git 值得花时间和精力吗?

是的,它是一个非常流行的 VCS,也是 DVCS 的典范。每天花超过 5 分钟思考源代码控制的任何人都应该至少看一看 GIT,看看它能提供什么,它的优点和缺点。

问题 1b:是否值得花时间和精力实现 Git?

Git 和 Subversion 的根本区别在于 Git 是分布式版本控制系统,而 Subversion 不是。因此,除非您的工作流程涉及到有人与您不在同一地点但在同一代码库上工作,否则 SVN 应该几乎可以满足您所有的 SCM 需求。

因为炒作而迁移到 Git 不是一个明智的决定,此外,Git 工作流程与 Subversion 有很大不同,它需要您的团队习惯它,这有时对许多开发人员来说是一个陡峭的学习曲线

问题 2:学习 Git 的最佳资源

这确实是主观的,但正如@Lucas 提到的,Git 手册是一个很好的开始。我的以下建议按优先顺序排列:

关于git - 使用 Subversion 后学习 Git,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15094676/

相关文章:

git - 将 Subversion 存储库迁移到 Git 并永久删除其中的一部分

svn - 在 SVN 中向上移动目录的白痴指南

Eclipse 插件开发 - 从团队提供商获取信息

git - 如何使用 Rubberduck 管理本地 git 存储库

git - cherry-pick 命令是否生成同一提交的不同哈希码?

git - 在不更改工作副本的情况下创建 git 分支

git - 如何在 Ubuntu 上安装 QtWebEngine

svn - 将 MacVim 配置为编辑器的 Subversion

git - git 决定不提交新添加文件的当前内容,而是提交添加时的内容,其背后的基本原理是什么?

version-control - 将 NuGet 用于 TFS 中的内部和外部依赖项