首先我们要区分Git与Github。Github为代码托管网站,我们的代码会储存在远端Github(我们使用git@osc)服务器。而Git是指的帮助我们追踪本地文件的开源程序。使用Mac OS的同学可下载SourceTree软件,使用Windows的同学可下载GitExtension软件来协助我们管理代码并不需要打使用git push等git基础指令去操作。
集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。代表SVN、CVS。
分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。代表Git 。
clone一般在刚加入项目时使用。将存储在远端仓库的代码克隆到你的本地机器上。
添加是在本地创建新的文件后,需要将新文件添加到本地库中,使得我们的协助管理软件可以追踪到所新增文件。
注释是指在进行操作后对操作进行注释以便表明进行了何种修改。
拉操作是将当前存于远端仓库的代码更新到本地。
相对于拉操作,推操作是指将你的代码推送到远端的代码仓库。
分支是指创建一个独立的分路来进行工作。我们有一个主分支叫master,当项目完成时,理论上所有分支都要合并到master上。比如我们有一个登录界面,需要有人做注册功能,登陆功能,第三方登陆功能。我们就可以创建三个分支去独立完成这三个功能。等到功能完成后合并到master上即可。
新建分支后,我们的分支名称使用年月日加创建人姓名拼音,例如201565wh。
合并是指将分支合并到一起。可能此时分支之间会出现冲突,这时我们就需要合并冲突。
最左侧每条线即一条分支,线相重合即合并分支。中间为每人进行推或合并时的记录及注释。
合并冲突:
可能原因:本地仓库与远端仓库不同步。忘记及时pull最新远端仓库且多人同时编辑相同文件,使得本地与远端有冲突无法合并。
解决方案:方案1(推荐):重新克隆远端仓库,将冲突文件进行对比合并冲突。方案2:建立分支,将本地仓库推送到远端,然后merge,对比冲突并进行合并。
原文地址:http://blog.csdn.net/leo_is_ant/article/details/46426301