版本控制
从最早使用vss
后面开始使用svn
再后面在网上看到现在的git比较流行,不是很清楚为什么git比较好,搜索了git的优点,大致有以下几点
转:http://blog.youkuaiyun.com/starter110/article/details/7464455
1. git 是分布式的
目前大多数VCS都是集中式式,如SVN,也就是说一台SVN服务器,别人都是客户端,数据的操作都必需在这台服务器上。这会造成一个明显的问题:单点故障,你懂的。
而git是分布式的,也就是说大家都是服务端,你中有我,我中有你,合恢统一,当然git也有共同的远程服务器。不过就算一台服务器挂了,随便找个客户端clone一下,又生龙活虎了。
分布式的别一个好处是,断网或不在内网,你也可以工作。相信大家都有这么个经历,公司有事没做完,背电脑回家做,做了又提交不了,而git就无需担心了,你机子的数据库就是完整的git数据库,就算处于无网状态,你也可以提交修改。
2. git 分支使用指针
传统的VCS切分支挺麻烦的,如果有过管理VCS经验的人应该知道,切一个分支就是完全复制当前分支的所有文件,在比较大型的项目里,开销是比较大的,如果你有N个APP,且每个APP都有各自的分支,那就有的你忙了。
git提倡你多切分支,因为它使用的是指针,你可以在去上厕所前切一个,去上厕所后再切一个,左切切右切切,没关系,它罩得住。
传统VCS切分支是在服务端操作的,也就是说本地其实要在服务端操作完再check下来。git 不然。服务端也可以切分支,本地也可以切分支,这是我认为最大的好处,你在处理12345这个bug时可以切一个分支,马上老大来话说你给我优化一下XXX功能,你又切一个分支,上级应用层来个电话说YYY功能不太好用啊。。同样,你再切一个分支。由于你切的分去只是本地的,不会影响到别人,在发好功能测试后你可以合并到master里,测试提交。
3. 分工协作
本来这点可以放到第一点中,git 是分布式的。不过我单独拿出来是因为这个优点有不同寻常的意义。大家可能经历过手里同时有2~N个活,可能都是基于公司同一个源代码。其中可能要和A完成一个功能,和B完成一个功能。这时候git就可以大显身手了,你也可从A机子里得到项目的最新代码,也可以从B机子里拿到他的劳动成果,而完全不用经过中央服务器,所以不会对其他人照成影响。
转:http://www.oschina.net/question/28_37438
自己没怎么用过,所以不好作太多的评论
这几天开始折腾看看git到底是个什么东西,记得好像以前也有接触过,当时下载Android源码的时候,好像就用git去下载的,只是当时没留意
Git有windows版本和linux版本 ,客户端工具我选用的TortoiseGit ,跟小乌龟svn客户端差不多,用起来还算方便
里面有 pull push的操作 ,应该就是和svn里面的 update 、commit 类似
TortoiseGit使用指南 参考
http://www.cnblogs.com/cute/archive/2011/04/02/2003855.html
[img]http://dl.iteye.com/upload/attachment/0080/0943/66f323c5-0be4-3af1-af19-16e8871cac1b.png[/img]
有时间再研究下吧 ,据说现在git比svn流行多了
安装git for windows 的时候有注意
参考 Git_Windows 系统下Git安装图解
http://blog.youkuaiyun.com/jiguanghoverli/article/details/7902791
[img]http://dl.iteye.com/upload/attachment/0080/0945/78b39d1d-d0a7-3d58-9fff-67632a6ccaea.png[/img]
git remote/client 学习笔记
参考
http://www.cnblogs.com/elfsundae/archive/2011/07/06/2099182.html
[img]http://dl.iteye.com/upload/attachment/0080/0947/78846087-7d73-3f47-b289-d4bb86251c49.png[/img]
从最早使用vss
后面开始使用svn
再后面在网上看到现在的git比较流行,不是很清楚为什么git比较好,搜索了git的优点,大致有以下几点
转:http://blog.youkuaiyun.com/starter110/article/details/7464455
1. git 是分布式的
目前大多数VCS都是集中式式,如SVN,也就是说一台SVN服务器,别人都是客户端,数据的操作都必需在这台服务器上。这会造成一个明显的问题:单点故障,你懂的。
而git是分布式的,也就是说大家都是服务端,你中有我,我中有你,合恢统一,当然git也有共同的远程服务器。不过就算一台服务器挂了,随便找个客户端clone一下,又生龙活虎了。
分布式的别一个好处是,断网或不在内网,你也可以工作。相信大家都有这么个经历,公司有事没做完,背电脑回家做,做了又提交不了,而git就无需担心了,你机子的数据库就是完整的git数据库,就算处于无网状态,你也可以提交修改。
2. git 分支使用指针
传统的VCS切分支挺麻烦的,如果有过管理VCS经验的人应该知道,切一个分支就是完全复制当前分支的所有文件,在比较大型的项目里,开销是比较大的,如果你有N个APP,且每个APP都有各自的分支,那就有的你忙了。
git提倡你多切分支,因为它使用的是指针,你可以在去上厕所前切一个,去上厕所后再切一个,左切切右切切,没关系,它罩得住。
传统VCS切分支是在服务端操作的,也就是说本地其实要在服务端操作完再check下来。git 不然。服务端也可以切分支,本地也可以切分支,这是我认为最大的好处,你在处理12345这个bug时可以切一个分支,马上老大来话说你给我优化一下XXX功能,你又切一个分支,上级应用层来个电话说YYY功能不太好用啊。。同样,你再切一个分支。由于你切的分去只是本地的,不会影响到别人,在发好功能测试后你可以合并到master里,测试提交。
3. 分工协作
本来这点可以放到第一点中,git 是分布式的。不过我单独拿出来是因为这个优点有不同寻常的意义。大家可能经历过手里同时有2~N个活,可能都是基于公司同一个源代码。其中可能要和A完成一个功能,和B完成一个功能。这时候git就可以大显身手了,你也可从A机子里得到项目的最新代码,也可以从B机子里拿到他的劳动成果,而完全不用经过中央服务器,所以不会对其他人照成影响。
转:http://www.oschina.net/question/28_37438
自己没怎么用过,所以不好作太多的评论
这几天开始折腾看看git到底是个什么东西,记得好像以前也有接触过,当时下载Android源码的时候,好像就用git去下载的,只是当时没留意
Git有windows版本和linux版本 ,客户端工具我选用的TortoiseGit ,跟小乌龟svn客户端差不多,用起来还算方便
里面有 pull push的操作 ,应该就是和svn里面的 update 、commit 类似
TortoiseGit使用指南 参考
http://www.cnblogs.com/cute/archive/2011/04/02/2003855.html
[img]http://dl.iteye.com/upload/attachment/0080/0943/66f323c5-0be4-3af1-af19-16e8871cac1b.png[/img]
有时间再研究下吧 ,据说现在git比svn流行多了
安装git for windows 的时候有注意
参考 Git_Windows 系统下Git安装图解
http://blog.youkuaiyun.com/jiguanghoverli/article/details/7902791
[img]http://dl.iteye.com/upload/attachment/0080/0945/78b39d1d-d0a7-3d58-9fff-67632a6ccaea.png[/img]
git remote/client 学习笔记
参考
http://www.cnblogs.com/elfsundae/archive/2011/07/06/2099182.html
[img]http://dl.iteye.com/upload/attachment/0080/0947/78846087-7d73-3f47-b289-d4bb86251c49.png[/img]