git结合SourceTree的工作流程和两人协作的工作模型(仅供参考)

来源:互联网 发布:网络刷钱神豪小说 编辑:程序博客网 时间:2024/06/06 09:09
转载请注明出处:http://blog.csdn.net/zhouhuakang 谢谢!
操作环境:
     操作系统:OSX  Yosemite 10.10.2
     SourceTree: 版本 2.0.5.2 (2.0.5.2)
操作步骤:
1.新建工程和git仓库
     新建一个工程GitDemo,路径为 /Users/zhouhuakang/Downloads/GitDemo
进入 /Users/zhouhuakang/Downloads/GitDemo/下面,利用命令
$ git init 

初始化一个git仓库
如图: 


2.利用SourceTree管理新建的git仓库
     在SourceTree主界面左上角,找到按钮 “+新仓库”,在弹出的下拉列表中,选择   “添加已存在的本地仓库” 


弹出的文件夹中选择自己之前创建的工程,此处为GitDemo


     在SourceTree的仓库列表中,选择 GitDemo,双击进入 针对该仓库的操作界面





3.提交数据,构建一个分支
     在GitDemo中新建一个testA.txt 此时SourceTree会立马检测到有新文件出现在仓库中,SourceTree将新的文件testA.txt归类到“未暂存文件”,点击  “问号”边上的复选框,则 testA.txt将会归类为“已暂存文件”,同时可填写下方的提交信息 



最后点击“提交”按钮

     提交之后,可点击左侧分支->master分支,在分支图中看到了我们在master分支上的第一次提交 




4.    在SourceTree开启Git Flow开发模型,背景知识可参见  http://www.ituring.com.cn/article/56870
     单击右上角的“Git 工作流按钮”,出现“初始化此仓库 git-flow”窗口,目前我是选择默认,直接点击确定



由于选择的是默认配置,则在界面的左侧部分的master分支下面,出现一个新的开发分支,叫做develop,且develop分支的最新节点和master分支是同一个的。









两人协作的工作模型
角色:一个工程为project,主程A,副程序B
1. 主程A主要维护master分支或develop分支以及自己的功能分支,副程B重要负责功能分支的开发
2.副程B当前开发一个新的功能分支,funtion_b
3.当分支功能开发完成后,主程A需要合并分支function_b
4.副程B将分支function_b全部push到远程服务器上
5.主程A将分支function_b pull到自己的电脑上
6.主程A 切换到 master 分支后,选择sourcetree上的“合并”按钮,选择分支function_b的最新提交,选择合并
7.合并中可能会因为 主程A和 副程B 同时修改了同一个文件的代码,因此出现了冲突
8.主程A 根据实际情况,将 自己修改的代码删除  或者  副程B 的代码删除,或则其他,来解决冲突
9.冲突解决后,主程需要再次提及合并后的master分支,这时候不需要写提交说明,sourcetree将自动标记为 "merge .....",
此时主程A负责的master分支拥有了新的功能
10.副程B 如果认为新的分支已经没用了,可以将其删除,或者,如果分支function_b只是完成了一部分功能,
进行了阶段性合并,副程B可以将已经合并的master的分支再次合并到分支function_b中,继续分支function_b的开发,
此时副程B的做法是:
10.1 pull 分支master到本地
10.2 切换到 function_b
10.3 选择master的最新提交,合并
10.4 将最新的function_b提交到远程服务器上。 



0 0
原创粉丝点击