这篇博文旨在帮助博主记忆一些命令行,内容很有限,但却能满足基本使用,如果能帮到你,那是我的荣幸,如果觉得有欠缺,推荐廖雪峰的官网git使用
默认安装配置好了git
下面博主来说下多人开发,git 怎么使用,以下为个人摸索以及和别人印证得到的结果,特此声明。
这里来模拟多人操作,现在有1和2两个文件夹,分别代表两个人:
1.开两个终端窗口,分别cd到目录:
1.cd Desktop/1
2.cd Desktop/2
2.分别克隆master到这两个文件中:
不同的文件路径
bogon:1 Codeliu$ git clone https://github.com/codeliu6572/justForFun.git
bogon:2 Codeliu$ git clone https://github.com/codeliu6572/justForFun.git
3.分别开一个开发分支
bogon:1 Codeliu$ git checkout -b dev
bogon:2 Codeliu$ git checkout -b dev
4.修改同一个文件中的内容
1项目中添加的内容
2项目中添加内容,不再截图, 为 NSLog(@”Hello World!”);
5.各自合并dev分支到各自的本地master
1的操作:
git add . //添加文件索引
git commit -m "1" //commit到本地仓库 ,“1”为描述信息,这里是1的,如果是2的改为2即可
git checkout master //切换分支到本地master
git merge dev //合并dev分支到master
git branch -d dev //删除dev分支
git branch //检测本地分支,目前只有一个master
git pull //更新服务器master(注意是否有冲突,这里模拟默认没有)
git push //推送本地master到服务器和服务器master进行合并
1同步到服务器之后2的操作
git add . //添加文件索引
git commit -m "1" //commit到本地仓库 ,“1”为描述信息,这里是1的,如果是2的改为2即可
git checkout master //切换分支到本地master
git merge dev //合并dev分支到master
git branch -d dev //删除dev分支
git branch //检测本地分支,目前只有一个master
--------------------------以上合并到本地是和1一样的,重要的是要把a的内容更新下来再同步到服务器
git pull //更新1同步的东西(注意冲突并解决)
更新完之后就push?不,因为增加了新的内容,所以还需要本地合并
git add . //添加文件索引
git commit -m "1" //commit到本地仓库 ,“1”为描述信息,这里是1的,如果是2的改为2即可
完成后:
git push //这样才能保证不报冲突警告
--------------------------------------
你以为这就完了?1还没有更新2的添加内容呢,怎么办呢,在1的终端中
git pull //这样,就实现了一次完整的多人开发更新过程
如果在pull和push时发生什么冲突,看下原因,一般来说是需要在之前进行如下操作:
git add . //添加文件索引
git commit -m "1" //commit到本地仓库 ,“1”为描述信息,这里是1的,如果是2的改为2即可
这里建议大家不管是第二天初次打开(即使前一天刚提交),还是pull或push之前,都要执行一下上面两句命令行,这样可以有效避免不必要的冲突。
到此结束,不知道各位看官有没有成功,欢迎留言或者加群讨论。