关于Git的使用,目前看到最全的应该就是这位廖雪峰大神的Git教程了吧,特此附上地址
http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/
大家可以学习一下,不过要说的是毕竟只是一个教程,而且不是拿项目来进行实战,还是有些偏差的,有时出一些问题还是要靠自己去解决的。博主最主要讲解自己个人使用心得,以便交流,大家多多提意见进行指正,谢谢!
一、Git(终端命令)
Mac系统也是基于UNIX的,熟悉常用的终端命令我想也是一个合格的程序员所必须的吧。(博主最先使用的版本控制就是Git命令)
1、克隆项目代码,创建自己个人分支
(1)先切换到桌面
cd /Users/xxxx/Desktop
然后在桌面上创建一个项目文件夹,再切换到当前这个用于项目管理的文件夹
mkdir work
cd work
(2)登陆到公司的GitLab上,克隆下来你所需要完成的项目地址
git clone http://xxxxxxxxxxxxxxxxxxxxx/项目名 .git
注意:
如上命令是默认克隆master分支下的项目,成员一般没有权限去提交到受保护的master分支下,一般会新建一个分支,然后使用以下命令克隆当前分支下的项目代码 如:git clone --branch 分支名 克隆地址
git clone --branch k0.7.9 https://github.com/xxxx/xxxx.git
也可以配置一些信息,如:
git-config user.name XXX
git-config user.email XXX@xxx.com
(3)clone过来的项目代码一般都是在主分支master上的,需要建立自己的分支dev,然后在自己的分支上进行操作
git branch dev (创建分支)
git checkout dev (切换到dev分支下) 或者 一行命令 git checkout -b dev(直接创建dev分支并切换到dev分支下)
然后查看当前在哪个分支下,
git branch
2、提交个人分支dev代码
(1)开发时,最好养成每天至少提交一次代码的习惯,修改了一些大功能最好就上传一下,防止后面你的功夫白费了(确实没解决冲突时只能重新拉代码了)如果有什么冲突问题,当时就可以进行修改,以免后面问题越积越多,哦对了,话说没有解决冲突,其中一方拉代码也会出问题啊,哈哈,所以必须解决冲突才能往下进行啊。
首先,使用status命令查看一下状态
git status
没什么特殊情况,修改了代码之后,一般会让你进行提交
git add -A 添加文件
这里没有提交内容注释貌似也会提醒你提交不了吧,我每次都会添加提交内容的,方便以后版本回退
git commit -m "提交内容"
(2)git status 是个很好用的命令哦,执行一步最好使用这个命令查看一下,一般会给你提示往下应该执行什么了。
先切换到主分支上,将最新的代码从主分支上拉一下,看看有什么问题没有
git checkout merge
git pull origin master
再次强调一下哦,执行一步就可以使用 git status 命令查看一次提交状态
git merge dev (合并分支dev)
最后,查看一下有什么问题,有冲突就解决掉冲突,没有冲突将代码push到远程库上去。
git push origin master
3、重新从主分支master上拉代码 (你的同伴进行同样操作,拉下你上传的代码解决好冲突之后,会push到远程库 最新的代码)
(1)先切换到主分支master上
git checkout master
(重要的事情说三遍, 每执行一步都可以使用 git status 命令查看提交状态,会告诉你该怎么做下一步,很好用的哦)
(2)git pull 拉一下代码
(3)再切换到个人分支 dev 下,并将主分支的代码和自己分支dev进行合并
git checkout dev
git merge master
git status (查看状态)
二、Source Control (Xcode自带的版本控制)
目前就职的公司一直使用的是自带的Source Control版本控制,而且目前所接手的一个项目也只有一个主分支master,都是在其上面进行操作的,我和搭档在上面进行提交代码,也很少出现错误,博主有点不解
1、要提交代码时,直接选择commit命令
附上一些内容注释,然后就会出现两个版本之间的差别
2、提交失败时,Refresh Status刷新一下 再提交一次;之后选择 pull 命令 拉下代码之后 运行一下 (一定运行一下确保没问)
3、再选择 push 命令,登陆公司的GitLab之后 ,刷新一下看提交成功没。
三、SourceTree (Git客户端)
这款软件是上一家iOS老大教我使用的,他说终端命令太麻烦,节省项目开发时间才是王道,都是看个人喜好,只要成功了就行。看着操作步骤也比较简单,和Source Control 有异曲同工之感吧,因博主装SourceTree一直失败,这里就先不进行图文并茂了,之后有时间用自己电脑补上。使用起来也很简单,创建自己的一个分支,提交上传代码时,选择自己要提交的文件,一般原则是没改过的文件尤其.xcodeproj文件可以不用再提交,之后也是拉代码,合并分支,push自己分支代码。
push之后登陆Bitbucket进行查看一下成功没吧。
这里附上百度经验,看着比较全
http://jingyan.baidu.com/article/c45ad29cdf274e051753e22c.html
不管使用哪种方式,还是自己习惯节省时间就行。不过博主吐槽一下,一般克隆代码时,使用客户端因为网速原因貌似经常失败,我还是使用Git命令clone来克隆代码到本地文件夹下的,哈哈!