前言
Git是个了不起但却复杂的源代码管理系统。它能支持复杂的任务,却因此经常被认为太过复杂而不适用于简单的日常工作。记得我刚刚开始使用Git的版本控制时,我根本不确定我付出那么多时间是不是会得到回报。Branch、Stage、Stash,这些Git名词对我来说都非常陌生。
而今天的我已不能想象生活没有Git会变成什么样。Git不仅提供了我非常需要的版本控制功能,而且Git在我开发工作中非常重要的一部分。
个人建议:
在学习git的时候,请不要用图形界面,这样你学到的东西会很少,git用命令很快,也很直观,用多了,命令也熟悉了。。
一、花时间去学习Git的基本操作
学习Git的基本操作并不是要求你把整个Git文档从头到尾读完(但如果这就是你的方式,我也不会反对)。
Git里面有太多的教育内容,我很确定里面一定有对你胃口的最佳学习方式。
3)提示和技巧(Ry的Git教学)是常见Git功能的实践教程
4)Git简单指南
5)Git Ready是一个收藏有许多简单而简短的Git提示的网站
6)Git作弊码
7)Git Tower学习区是一个在我的网站上的Git学习资源列表
8)Git官方教程
9)Training: Git Basics (视频)是YouTube上的一个视频列表
10)Pro Git一本让你深入了解Git的在线书籍
二、不要再害怕犯错误
Git最出色的一点是:它几乎是100%易上手误操作的。
记住以下几点会让你晚上睡得更香:
Git基本上不删除数据。即使是那些看起来是删除数据的操作,实际上是为了让你更快的撤销删除,而在向系统添加数据。
Git基本可以撤销所有操作。我鼓励你更多的实验和探索你的想法,因为这就是使用版本控制系统系统的最主要的好处之一。
你团队的每一个成员都在他/她的计算机中有各自的副本。本质上这更像是整个版本控制项目中的冗余备份(包括包括整个历史纪录),你捅了大娄子而且还没办法还原这种情况是极其少见的。
三、理解分支概念
在Git里面,分支这个概念是你一开始能学到的最有用的东西了。分支允许你隔离开发你的项目,而要想成为一个高效的Git用户,这是非常关键的一点。在项目发布和迭代都很有非常适合敏捷开发。
一开始这听起来好像不是什么大事,但一旦你完全的理解了分支概念,你会开始想没有这个你怎么活下去。
尽管其他的版本控制系统也会使用分支概念,Git是第一个实现它,并让它变的好用的系统。
这张图上有这么几个分支:master,develop,feather,hotfix,release。它们之间存在着branch和merge的关系。我们从master和develop开始。
更多资料:
LearnGitBranching!是一个Git分支的交互式教程
四、学习暂存区
当你的提交里面只包含一些相关的变化时,版本控制会变的非常有用[b],它保证了你的提交可以被没有任何副作用的回滚,经常提交的习惯也可以让你的同事更好的了解你的进度。
Git有个功能叫暂存区让这一切都变为可能
学习使用暂存区,并爱上它,因为这是Git里面最重要最独立的一个模块。
怎么说了,一句话就是我们工作的地方叫工作区,代码会改变,如果我暂时不要提交这些改变,你们经理有要马上让你发个版本,这时候你可以把你改的代码放到暂存区,这样你的分支就会回滚到你上次提交到工作区的完整代码,你在打版本就不会出现你还没完成的内容了。。。是不是很神奇啊!!!更多区别请看工作区与暂存区的区别这篇文章
总结
使用一个新工具一开始会让人非常头疼,走过这条学习曲线的方法只有一个:继续走下去。
做一个充分的承诺,不要回头。在你平常的工作流里引入Git很快就会被证明这是你近期做的最大的,最有意义的决定。
避免这种情况:「我会在这个项目里使用Git,但其他项目就再说了。」至少一开始不要这样。充分承诺的这种心态会让你有更多的机会去练习,让事情变得更加简单,因为你知道你现在这个项目用了版本控制系统。而更重要的是,让Git成为你的编程习惯。未来不久,你就会看到只有那么一些情况不需要用到Git,对自己做一个100%的承诺,作为Git征服之路的开始。