• 采用合作开发者的方式进行协作开发,下面以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协作开发流程的更多相关文章

  1. github协作开发遇到的问题

    1.十一来了,帝都不好买票,30号就调休一天回去了,项目还没搞完,紧张的不行,就自己和同事搞了一个github协作开发,由于是功能和公司项目不是很沾边,但是是自己的主要工作,就和同事协调了一下,搭建了 ...

  2. Gitblit搭建及Git协作开发流程

    1. 概述 目前主流的是git作为自己代码管理,但是采用github需要付费才能够使用,如果不付费,代码需要公开.创业团队及小型开发团队都有必要搭建自己的代码服务器,自己摸索需要一定的时间,会赶不及项 ...

  3. 如何让Git适应敏捷开发流程?

    一旦涉及到版本控制系统,Git实际上代表敏捷开发的水平.Git作为一款强大的开源系统,有较强的灵活性,可以按需匹配任何开发团队的工作流程.而这种分布式相比较集中式来说,可以赋予系统更好的性能特征,且允 ...

  4. git 一般的开发流程中的代码管理

    一般的开发流程中的代码管理 1. 从版本库中下载代码 git clone ssh://wenbin@192.168.1.3:29418/mustang-web 2. 针对某个feature(比如ins ...

  5. 前端项目git操作命名规范和协作开发流程

    前言 一个项目的分支,一般包括主干 master 和 开发分支 dev,以及若干临时分支 分支命名规范 分支: 命名: 说明: 主分支 master 主分支,所有提供给用户使用的正式版本,都在这个主分 ...

  6. 利用github协作开发步骤

    项目使用IDEA开发,IDEA上可以加载很多的插件(而且下载很快),安装github插件,安装git 首先一个成员需要创建好代码库,这个代码库存放项目,所有的开发提交代码都是向这个库提交,在githu ...

  7. Git 团队协作开发

    步骤一:进入别人github中的项目 步骤二: 步骤三: 修改 one.txt 或者 新增 文件 都可以 步骤四: 在提交时,要习惯 使用 git pull 命令,防止有人在你写代码时候,提交过一些东 ...

  8. UI_RD协作开发流程

    1. 背景 由于android端需要进行多屏幕适配,这就给UI&RD之间的沟通产生了一些困难.我下面将会对这两种角色的沟通,说明了一下我们项目中沟通的方式和规则. 原则:客户端跟UI约定了各种 ...

  9. 怎样通过git协作开发

    近期iOS群里的一些小伙伴刚刚毕业,刚參加工作的小伙伴们,对于怎样进行git下的一个写作开发抱有较大的疑惑.今天小汤我就给大家分享个git下协作开发的小技巧. 怎样通过git协作开发? 当两个开发人员 ...

  10. HelloX项目github协同开发指南

    概述 为了提高协同开发效率,HelloX项目已托管到github网站上.根据目前的开发进展,创建了下列几个子项目: HelloX操作系统内核项目:https://github.com/hellox-p ...

随机推荐

  1. 荣获 Neo4j Certified Professional

    在学习 Neo4j 的过程中,偶然得知官方的认证考试,所以当时就决定通过这项考试,功夫不负有心人,我成功的拿到了Neo4j Certified Professional认证证书 关于认证途径,请访问链 ...

  2. Helm安装ingress-nginx-4.1.4

    Application version 1.2.1 Chart version 4.1.4 获取chart包 helm fetch ingress-nginx/ingress-nginx --vers ...

  3. python3之35个关键字详解

    一. python35个关键字列举: help("keywords")查看运行结果: 1. and.or.not 2. if.elif.else3. for.while4. Tru ...

  4. 从云AK泄露利用看企业特权管理

    从云AK泄露利用看企业特权管理 目录 - 缘起 - 当前主流AK泄露检测方式 - 防止AK滥用的关键要素? - 哪些算特权账号管理? - 如何做特权账号管理? - 特权管理与堡垒机.IAM.零信任的关 ...

  5. G&GH05 删除文件和.gitignore

    注意事项与声明 平台: Windows 10 作者: JamesNULLiu 邮箱: jamesnulliu@outlook.com 博客: https://www.cnblogs.com/james ...

  6. Odoo自建应用初步总结(一)

    学习了<Odoo快速入门与实践 Python开发ERP指南>(刘金亮 2019年5月第1版 机械工业出版社)第6章自建应用入门后进行一下总结. 因为本书作者使用Odoo11,而目前最新版本 ...

  7. .NET 部署Https(SSL)通过代码方式

    在上一个文章中,传送门,给大家介绍了怎么在配置文件中使用 Kestrel 部署 Https,正好今天有小伙伴稳问到:可以通过代码的方式实现 Kestrel 的 Https 的部署吗?答案是肯定的,我们 ...

  8. 重新安装kuboard后,原先配置的CI/CD命令都没了,需要重新创建

    背景介绍 使用如下命令创建的kuboard服务,上一层用nginx设置代理,用域名访问使用的 docker run -d \ --restart=always \ --name=kuboard \ - ...

  9. k8s日志架构和基本日志

    如果一个容器崩溃了.一个Pod被驱逐了.或者一个节点停机了,您通常仍然需要访问您应用程序的日志.为此,您需要一个生命周期与节点.Pod.容器相对独立的存储空间来存储应用程序日志和系统日志. 此时,我们 ...

  10. 第六章:Django 综合篇 - 3:使用MySQL数据库

    在实际生产环境,Django是不可能使用SQLite这种轻量级的基于文件的数据库作为生产数据库.一般较多的会选择MySQL. 下面介绍一下如何在Django中使用MySQL数据库. 一.安装MySQL ...