之前一直用SVN做项目开发,确实感觉这些版本控制工具非常实用,尤其是在一个团队开发项目的时候。最近偶然看到一个新的版本管理工具Git,它本来是Linux下的基于Linux内核的版本控制工具,据说用起来比SVN既快,又功能强大,现在在Windows下又有了TortoiseGit,是SVN小组开发的基于Git的在Windows下的版本。网上找了些资料看了看,发现确实很牛很强大啊,资料汇总如下

优酷上有关于TortoiseGit的安装方法和基本使用技巧,介绍的还行,但先别急着按里面说的安装,有注意的地方后面一个资料里会提到http://www.youku.com/playlist_show/id_5227985.html

介绍为什么要用Git取代SVN,可以简单看一下Git的优点http://www.joomlagate.com/article/joomla-review/why-subversion-will-be-replaced-by-git-for-version-control/

这个是介绍如果不想放弃SVN,可以SVN为主,Git为辅的方法,所谓鱼和熊掌兼得http://rubynroll.iteye.com/blog/203133

关于TortoiseGit的安装方法,这里介绍的非常详细,注意事项等各种截图,可以按着一步一步来http://www.cnblogs.com/qiantuwuliang/archive/2010/12/29/1920653.html

注意事项就是,不要让Git往windows右键菜单里添加菜单项,因为TortoiseGit会产生的,设置如下

还有一个就是如下设置,有人建议使用第一个,否则可能引起与windows的不兼容等问题

还有下面的选项,网址上选了第三个,这样Git就不会改变换行风格了,但从它的解释看,第一个更适合扩平台操作,不过也没关系,这个似乎可以在后面安装完后修改

然后就是TortoiseGit的安装了,有一个要注意的就是下面这个选项,选第一项就行了,关于这个在http://blog.csdn.net/gracioushe/archive/2010/09/30/5915396.aspx有解释,摘抄如下:

TortoiseGit 可以支持 SSH 加密方式的“上传”,早期版本是借助另一款专门实现
SSH 传输的开源软件 Putty 来实现,用户必须另外安装
Putty,然后在 TortoiseGit 的设定选项中给出 Putty 的可执行文件位置(例如 C:Program
FilesPuttyplink.exe)。现在最新的 TortoiseGit 已经自带了
TortoisePlink.exe(在右键菜单中 TortoiseGit -> Settings
-> Network -> SSH ->
SSH client)。

TortoisePlink.exe 实际上是 Putty 的 Plink.exe 文件的一个衍生产品,功能上比 Putty
可能要差一些。如果你喜欢 SSH 方式,那么还是建议你安装 Putty —— 没准你的电脑上早就安装了。

提示:通过 SSH 方式访问远程服务器还需要认证密钥(Putty Key)文件,每一个服务器都不一样。请参看 Putty
的相关文档
,本文不再赘述。

不过别担心,我们只想通过 TortoiseGit 来下载软件最新版本,就不需要搞清楚这个 Key
是什么,怎么用,一样能达到目标。

安装完后会要求重启。

然后就是关于TortoiseGit的设置和使用了,可以参考http://www.cnblogs.com/qiantuwuliang/archive/2010/12/29/1920723.html

这里是有关TortoiseGit的入门及它的一些版本管理的思想,感觉几张图给的挺好的(里面介绍的基础命令感觉不用管,反正使用的也是图形界面)http://hi.baidu.com/eehuang/blog/item/37af8d54242d6351564e00b5.html

下面把它介绍基于git的合作开发的部分拿来摘抄一下:

对于酷讯来说,当我们采用了Git,如何进行合作开发呢? 具体步骤如下:
3.1   获取最新代码

酷讯会准备一个中心git代码库。首先,我们将整理好的代码分模块在git中心库中建立git库。并将文件add到中心库中。
接下来,开发者通过git-clone将代码从中心库clone到本地开发环境。
对于较大的项目,我们还建议每个组选择一个负责人,由这个负责人负责从中心库获取和更新最新的代码,其它开发者从这个负责人的git代码库中clone代码。此时,对开发者来说,这个负责人的git库就是中心库了。

3.2 开发者在本地进行迭代开发

当用户将代码clone到本地后, 就可以进行本地的迭代开发,建议用户不要在master分支上开发,而是建立一个开发分支进行开发。
在本地开发中,用户可以随意的创建临时分支,随意commit。

3.3   开发者请其它同事进行code
review

当本地开发完毕,可以请其它同事进行code review。过程为:
1.
user2通通过git-pull命令,将开发者(user1)的开发分支(dev)pull到user2本地的一个tmp分支,并切换工作分支到该分支上进行code
review。
2. 完成code review后, user2切换回其原有开发分支继续开发,并告知user1已经修改完毕。
3. User1将user2的tmp分支git-pull到本地tmp分支,并和dev分支进行merge。最终得到一个code
review后的dev分支。
   
当然,user2也可以直接坐在user1旁边在他的代码上进行review。而不需要走上述步骤。(图中第7步,不是git-pull,而是直接在dev分支上和user1边review边modify)

3.4  
和中心库进行代码合并

使用过CVS的人都知道, 在commit之前,都要做一次cvs update,以避免和中心库冲突。Git也是如此。
现在我们已经经过了code review, 准备向中心库提交变化了, 在开发的这段时间,也许中心库发生了变化,
因此,我们需要在向中心库提交前,再次将中心库的master分支git-pull到本地的master分支上。并且和dev分支做合并。最终,将合并的代码放入master分支。

如果开发过程提交日志过多,可以考虑参照2.10节的介绍做一次git-reset。
   
此外,如果发现合并过程变化非常多, 出于代码质量考虑,建议再做一次code review

3.5  
提交代码到中心库

此时,已经完全准备好提交最终的代码了。 通过git-push就可以了。

3.6  
合作流程总结

   
大家可以看到,使用git进行合作开发,这一过程和CVS有很多相似性,同时,增强了以下几个环节:
1.      
开发者在本地进行迭代开发,可以经常的做commit操作且不会影响他人。
而且即使不在线也可以进行开发。只需要最后向中心库提交一次即可。
2.      
大家都知道,如果CVS管理代码,由于我们会常常做commit操作。但是在commit之前cvs
update时常会遇到将中心库上的其它最新代码checkout下来的情况,此时,一旦出现问题,就很难确认到底是自己开发的bug还是其它用户的代码带来了影响。
而使用git则避免了用户间的开发互相影响。
3.      
更有利于在代码提交前做code review。 以往用cvs, 都是代码提交后才做code view。如果发生问题,
也无法避免服务器上有不好的代码。 但是用git, 真正向中心库commit前,都是在本地开发,可以方便的进行code review,
然后才提交到中心库。更有利于代码质量。而且, 大家应该可以感到,使用git的过程中,更容易对代码进行code
review,因为影响因素更小。
4.      
创建多分支,更容易在开发中进行多种工作,而使工作间不会互相影响。 比如user2对user1的代码进行code
review时,就可以非常方便的保留当时的开发现场,并切换到user1的代码分支,在code
review完毕后,也可以非常方便的切换会曾经被中断的工作现场。

诚然,带来这些好处的同时,确实也使得操作比CVS复杂了一些。但我们觉得和前面所能获得的好处相比,这些麻烦是值得的。
当大家用惯了之后会发现,这并不增加多大的复杂性, 而且开发流程会更加自然。请大家多动手,多尝试! 去体验git的魅力所在吧!let’s
enjoy it!

另外还有一个中文教程,貌似是Linux下的,这里收藏一下链接吧http://www.linuxsir.org/main/doc/git/gittutorcn.htm

 青春就应该这样绽放  游戏测试:三国时期谁是你最好的兄弟!!  你不得不信的星座秘密

[转载]TortoiseGit安装与使用的更多相关文章

  1. TortoiseGit安装详解

    一:写该文章目的 最近换了一份新工作,新公司的源码管理都是使用GIT,习惯了之前的TFS和SVN进行项目源码管理和团队开发,第一次使用GIT进行团队开发和源码管理,颇有一些不习惯,花了一天时间终于把G ...

  2. TortoiseGIT安装过程及问题

    1,安装Git.一路默认 2,安装TortoiseGit,一路安装完毕.重启电脑. 3,配置TortoiseGit.这是最重要一步. 配置 remote,即远程地址,用于以后pull 或 push操作 ...

  3. TortoiseGit安装与配置

    TortoiseGit 简称 tgit, 中文名海龟Git. 海龟Git只支持神器 Windows 系统, 有一个前辈海龟SVN, TortoiseSVN和TortoiseGit都是非常优秀的开源的版 ...

  4. TortoiseGit 安装和使用的图文教程

    TortoiseGit.SourceTree都是Windows下不错的Git客户端工具,下面介绍一下TortoiseGit安装和使用的方法. 安装TortoiseGit并使用它需要两个软件:Torto ...

  5. TortoiseGit安装和使用的图文教程

    ortoiseGit是Windows下不错的一款Git客户端工具,在Mac下推荐使用sourcetree.下面就介绍一下TortoiseGit安装和使用的方法. 安装TortoiseGit并使用它需要 ...

  6. TortoiseGit安装教程

    TortoiseGit 是Windows下的可视化Git界面. 下载Git 网站地址: http://code.google.com/p/tortoisegit/ 安装前必须装上msysgit才能在W ...

  7. tortoisegit安装使用

    git的使用越来越广泛 使用命令比较麻烦,下面讲解一下tortoisegit的使用 先下载安装git(msysgit)和tortoisegit,安装后提示重启电脑,不解释 1.找一个文件夹做仓库 这里 ...

  8. TortoiseGit安装与配置(转)

    TortoiseGit 简称 tgit, 中文名海龟Git. 海龟Git只支持神器 Windows 系统, 有一个前辈海龟SVN, TortoiseSVN和TortoiseGit都是非常优秀的开源的版 ...

  9. git + tortoisegit安装及配置

    1. 下载Git-2.6.3-64-bit.exe 2. 安装Git-2.6.3-64-bit.exe,安装时可全部默认配置(安装路径可选) 3. 下载TortoiseGit-1.8.16.0-64b ...

随机推荐

  1. LeetCode 总结

    LeetCode 方法详解

  2. 如何在Windows版的ScaleIO的节点中添加磁盘

    嗯, 为什么会有这个问题呢? 因为我要安装ScaleIO 1.32, 在使用Installation manager完成初始安装之后, 需要将一些磁盘添加到ScaleIO的storage pool中. ...

  3. CoffeeScript?TypeScript?还是JavaScript

    请注意本文只是我的偏见,我努力地理解借助CoffeeScript或TypeScript之类的编译器写JavaScript代码的理由.静态编译.强类型语言和框架,我有着这些流行的.丰富的背景.我的上一份 ...

  4. 图片上传前预览、压缩、转blob、转formData等操作

    直接上代码吧: <template> <div> <div class="header">添加淘宝买号</div> <div ...

  5. Linux服务器安装zabbix监控平台

    zabbix是基于web界面的开源分布式监控平台,可以监控各种服务器的配置参数,支持自定义配置和自定义告警,并且可以实现邮件.短信等方式的告警,zabbix基本组件如下: zabbix_server: ...

  6. AAAI 2018 论文 | 蚂蚁金服公开最新基于笔画的中文词向量算法

    AAAI 2018 论文 | 蚂蚁金服公开最新基于笔画的中文词向量算法 2018-01-18 16:13蚂蚁金服/雾霾/人工智能 导读:词向量算法是自然语言处理领域的基础算法,在序列标注.问答系统和机 ...

  7. OpenStack云计算之路-Mitaka 版本

    1.1 云计算简介 云计算(英语:cloud computing ),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给计算机各种终端和其他设备. 云计算是继1980年代 ...

  8. Fibre Channel address weaknesses

    http://searchitchannel.techtarget.com/feature/Fibre-Channel-address-weaknesses Figure 2.1 Five layer ...

  9. Iterator接口用法

    1.所有实现Collection接口的容器类都有一个iteractor方法,用于返回一个实现了Iteractor接口的对象, 2.Iteractor对象成为迭代器,用以实现对容器内元素的遍历操作 3. ...

  10. 【转】exec xargs的区别 另附eval命令介绍

    -exec:  对符合条件的文件执行所给的Linux 命令,执行exec后面的shell脚本.脚本中,{}表示命令的参数即为所找到的文件,以:表示comman命令的结束.\是转义符,因为分号在命令中还 ...