Git:更好的SVN

Git:更好的SVN

svn做了什么

svn其实只做了一件事情:明确了文件的变动记录和变动人
这样做有什么好处呢?

  1. 如果文件改错了,便于回溯,找出正确的版本。
  2. 明确了文件的每次变动,便于做review,针对代码尤其有效。所以SVN也被称为VCS工具,即版本控制系统

svn做不好什么呢?

用过svn的人,应该都了解svn有一个很标准的目录结构,长这个样子:

   svn://proj/
   |
   +-trunk
   +-branches
   +-tags  
   这是一个标准的布局,trunk为主开发目录,branches为分支开发目录,tags为tag存档目录(不允许修改)。但是具体这几个目录应该如何使用,svn并没有明确的规范,更多的还是用户自己的习惯。

这个标准是人为规定,实际操作中难以管理,因为branche、tag都是从trunk复制中复制出来的代码,在磁盘上同时存在,用户需要同时管理多个目录、多份文件。

git怎么管理branche、tag?

很简单。

  1. 每次工作选择一个branche作为开发上下文
  2. 每次提交用一个SHA1来做唯一标识。同时支持将这次提交标识为tag。

这样,在本地永远只有一份代码。透过提交记录,可以随时切换到任意branche的任意版本。

快速入门

  1. Git教程
  2. 猴子都能懂的GIT入门

好用的git客户端

  1. SourceTree
  2. TortoiseGit

你可能感兴趣的:(Git:更好的SVN)