Git+Github协作开发流程

Posted gongxianjin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Git+Github协作开发流程相关的知识,希望对你有一定的参考价值。

  • 采用合作开发者的方式进行协作开发,下面以zlcook和zlserver合作开发iqas-ios-record项目为例进行讲解,zlcook为项目创建者,zlserver为项目参与者。协作开发步骤如下:

1.建立协作开发关系

1.项目创建者zlcook在github创建项目iqas-ios-record

 
技术分享图片
Paste_Image.png

2.zlcook为项目iqas-ios-record添加合作开发者zlserver

  • 搜索zlserver,点击Copy invite link复制链接,将该链接发送给zlserver。(QQ或者微信whatever)


     
    技术分享图片
    Paste_Image.png

3.zlserver登录账号后,点击zlcook发过来的邀请链接,点击接收邀请

  •  
    技术分享图片
    Paste_Image.png

4.zlserver接收邀请后,zlserver也可以向该项目提交代码了。合作关系正式建立。

  •  
    技术分享图片
    Paste_Image.png

2.zlserver克隆项目并导入eclipse

  • zlserver在进行开发前需要先从github上clone下项目,然后在导入eclipse,在eclipse中进行开发。

1.zlserver在本地clone下项目

  •  
    技术分享图片
    clone地址
 
技术分享图片
clone命令

2.将clone下来的iqas-ios-record导入eclipse
iqas-ios-record是maven结构所以导入选择maven项目


 
技术分享图片
导入maven项目

3.导入eclipse后如果有错,则修改

 
技术分享图片
Paste_Image.png
  • 错误原因:导入后默认采用jdk1.5编译,和jdk1.5依赖。1.右击项目属性->javaCompiler选择jdk1.7。2.右击项目属性-》Java Builder Path去掉jdk1.5依赖选择jdk1.7。
  1. iqas-ios-record是个web项目,右击-》run As下如果没有Run on server,则设置如下:
    右击项目属性->ProjectFactes:
  •  
    技术分享图片
    Paste_Image.png
 
技术分享图片
Paste_Image.png

点击ok后,再次右击项目属性->选择Deployment Assembly


 
技术分享图片
Paste_Image.png

3.zlserver进行开发

  • zlserver每 次开发新功能的步骤(以下步骤都是在git命令行中进行):
    在主分支master上新建分支featurexxx,切换到新分支featurexxx,在featurexxx分支上进行开发(在eclipse中开发)。开发完成,提交代码,切换回master分支,下拉(pull)远程分支到master分支上,master和featurexxx分支进行合并,合并出现冲突则修复,修复冲突完成后,再把修改的数据提交。合并没有冲突或冲突已被解决则push master分支到远程分支。删掉分支featurexxx。下次开发新功能从头开始。

  • 查看仓库状态命令git status

  • 实际操作:

  • 1.新建分支feature_zlserver,切换分支feature_zlserver


     
    技术分享图片
    新建分支feature_zlserver,切换到feature_zlserver分支
  • 2.在eclipse中修改代码
    在eclipse中修改了iqas-ios-record项目的pom.xml文件。现在要开始提交。

  • 3.添加修改,提交修改


     
    技术分享图片
    添加修改,提交修改
  • 4.切换回主分支,下拉(pull)远程分支到master分支上


     
    技术分享图片
    切换回主分支,下拉远程分支
  • 5.合并feature_zlserver分支
    这一步过后,master分支上的内容就包含了feature_zlserver分支上新增的内容了。

     
    技术分享图片
    合并feature_zlserver分支

    注:该步骤可能会产生冲突,如果产生冲突需要解决完冲突才能进行下一步

     

  • 6.提交master分支代码到远程分支


     
    技术分享图片
    提交master分支代码到远程分支
  • 7.删除feature_zlserver分支,从头开始。
    经过第6步,说明我们开发的新功能已经合并到master分支上了,并且和远程分支保持了一致。这时就删除掉feature_zlserver分支,下次在新建一个分支开发新的功能。新分支名称最好和要开发的功能相关。


     
    技术分享图片
    删除feature_zlserver分支

4.查看项目在远程服务器上部署成功与否

  • zlserver写完代码,并且提交到github上了,任务完成了,那么写的代码到底部署到实际生产环境中成功没有?就需要查看jenkins中关于iqas-ios-record项目的集成情况。
  • 这一步其实可以通过邮箱通知。但是没有给zlserver配置邮箱,所以只能自己到jenkins上查看提交代码的集成情况。
  • jenkins会自动查看github的上iqas-ios-record项目的源码状态,如果发现有更新就会下拉最新的代码进行部署。(但是也不会立即执行,所以需要手动让jenkins对最新的代码进行构建和部署)
  • jenkins在服务器上的访问地址:http://172.19.201.155:8093/
    访问密码:问我
  • 手动点击项目进行构建 (注:这一步需要让jenkins所在服务器链接网络,即老师申请的服务器用一个人账号登陆校园网,让其可以从github上下载代码
     
    技术分享图片
    Paste_Image.png
  • 构建执行状态
 
技术分享图片
Paste_Image.png
  • 构建失败
    红色指示灯表示构建失败,失败原因主要:没有网络、代码出错。


     
    技术分享图片
    Paste_Image.png
  • 查看构建失败或成功结果


     
    技术分享图片
    Paste_Image.png
  • 构建成功
    蓝色指示灯表示构建成功


     
    技术分享图片
    Paste_Image.png

5. 访问

经过第4步保证了咱们的修改的代码被成功部署了,下面就 通过浏览器来查看效果。


 
技术分享图片
Paste_Image.png


作者:zlcook
链接:https://www.jianshu.com/p/85cb197cb125
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。





























以上是关于Git+Github协作开发流程的主要内容,如果未能解决你的问题,请参考以下文章

SourceTree 实现 git flow 流程

GitHub团队协作流程

git协作流程

git团队协作

企业中多分支多人协作的git工作流程

企业中多分支多人协作的git工作流程