给SVN泼盆冷水,是时候用GIT了


转自http://www.jianshu.com/p/fa7eac6bb2b2

给SVN泼盆冷水,是时候用GIT了


git

前言

没有要排除任何工具的意思,只是眼下最流行的“版本管理系统”非GIT莫属。

写给新手

有些朋友可能会说我还没有使用过GIT,好吧,我不说你OUT了,只是在开始之前你应该简单了解下GIT。这里有个图文生动的好地方,有兴趣不妨来看一看----git - 简易指南

Git有什么不一样

如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征。

  • SVN属于中心式的仓库管理,统一维护在Server端,而Git属于分布式的仓库管理,每个开发者都拥有自己的本地仓库,并且每个仓库都是平等的。
  • 由于你自己本身就拥有仓库,那么Git在本地磁盘上就保存着所有有关当前项目的历史更新,并且Git中的绝大多数操作都只需要访问本地文件和资源,不用连网,所以处理起来速度飞快。用SVN的话,没有网络或者断开VPN你就无法做任何事情。但用Git的话,就算你在飞机或者火车上,都可以非常愉快地频繁提交更新,等到了有网络的时候再上传到远程的镜像仓库。换作其他版本控制系统,这么做几乎不可能,抑或是非常麻烦。
  • 并且Git中每个克隆(clone)的版本库都是平等的。你可以从任何一个版本库的克隆来创建属于你自己的版本库,同时你的版本库也可以作为源提供给他人,只要你愿意。
  • Svn?Svn是统一管理的好吧。开发时你的Boss说了算,说什么时候提交代码就什么时候提交代码,说什么时候更新就统一更新,你觉得很爽?
  • Git?Git的提交不会被打断,直到你的工作完全满意了,PUSH给他人或者他人PULL你的版本库,合并会发生在PULL和PUSH过程中,不能自动解决的冲突会提示您手工完成。

现在你知道有什么样的区别了把,奥斯托洛夫斯基曾经说过:“统一是扼杀创造力的根源”!(好吧,我杜撰的...)难怪这么多开源社区(比如OSC@China)都采用了Git,而不是... ...

我最讨厌SVN的两个地方

如果在公司规定就使用SVN(多数不是规定,而是确实不了解Git)那么我就很反感一下两点:

  1. SVN有点考验手速,谁提交的快就不需要解决冲突。这个有点烦人,大家明明在同一个Team中,有了冲突应该协调去解决,而不是最后那个“手速”慢的同学去独自跟冲突干上一仗。
  2. SVN对于文件更改记录的管理。每个文件夹下都有那么一个.svn的文件夹确实很不爽,你去管理你的东西,干嘛在我的开发环境下放上你的东西,不爽!

Git的GUI工具

不得不说的是很多朋友都有GUI偏好,或者说一个好的工具怎能没有一个好的“脸”呢?!好吧,这是Windows习惯的驱使,我只能说非所有程序猿都愿意使用命令行工具,尤其是被Windows惯坏了的那批。不得不说的是Git有自己的GUI界面,因此完全不需要其他的GUI工具。不过话又说回来,工具都有个习惯问题。基本上从SVN转换过来的程序猿,绝大多数都只用过TortoisSVN,好吧那你还用TortoisGit吧。

不过你可能不明白的是TortoiseGit没有集成Git,那么还需要去下载msysGit(或者Git for windows)来安装。因为TortoiseGit其实只是一个壳(其实和Svn一样),它需要调用Git命令行才能发挥作用。(现在你知道我为什么推荐你用命令行了么?)

TortoiseGit安装好是这个样子的:
tortoiseGit
还有就是另外一个GUI工具叫做SourceTree,个人感觉还是非常不错的,界面如下:
在此输入图片描述

Git for windows 和 msysGit

这个你大致了解下就行,只是多一种选择,多一条路。msysGit的主页提供了两个项目:Git for Windows和msysGit,并写明了它们的详细区别。
个人认为,Git for Windows适合绝大多数程序猿(又见绝大多数),所以,强烈建议安装Git for Window。
msysGit使用一种很BT也很NB的方式来安装。先安装一个最小的MinGW/MSYS系统,然后使用git pull 所有的源码,调用gcc在本地编译成可执行文件。

啰啰嗦嗦说了这么多,可能没有给大家在实际开发中帮上什么忙,Git的使用过程还需要大家自己去摸索。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值