git-6

1.如何用project管理issue?

用project看板管理issue

git-6_第1张图片

git-6_第2张图片

有五种类型:None、Basic kanban、Automated kanban、Automated kanban with reviews、Bug triage

git-6_第3张图片

首先选用Bug triage

git-6_第4张图片

git-6_第5张图片

利用看板就会很直观,很便捷,Issues也支持,有序的帮我们管理任务

2.项目内部怎么实施codereview?

保证集成分支的代码质量有所保障,我们需要对集成分支进行有效的设置

git-6_第6张图片

git-6_第7张图片

git-6_第8张图片

和之前步骤类似,选好分支,Create new pull request

git-6_第9张图片

git-6_第10张图片

可以设置一下Reviewers

这个时候这个账号会收到消息

git-6_第11张图片

git-6_第12张图片

git-6_第13张图片

发起者会收到一份邮件

git-6_第14张图片

通过pull request 发起codereview申请,可以指定具体的Reviewers人员,即使帮我们Review代码,如果ok,就会及时合入进去了,整个的交互,一般都是以邮件形式来告知,进行交流

3.团队协作时如何做多分支的集成?

主线是master,基于master有两个分支Beijing、Shanghai

git-6_第15张图片

git-6_第16张图片

git-6_第17张图片

和上面步骤一样,

git-6_第18张图片

git-6_第19张图片

选择第一个Create a merge commit

git-6_第20张图片

git-6_第21张图片

紫色说明提交成功了 

git-6_第22张图片

这是Beijing的分支和master进行合并了 

git-6_第23张图片

然后是Shanghai分支

git-6_第24张图片

分支冲突,需要我们人工进行解决冲突,点击Resolve conflicts解决

git-6_第25张图片

git-6_第26张图片

根据自己的需求进行修改

git-6_第27张图片

git-6_第28张图片

git-6_第29张图片

git-6_第30张图片

此时pull request 还没有结束 

git-6_第31张图片

git-6_第32张图片

中间步骤和之前一样,然后看结果,集成完毕

git-6_第33张图片

然后我们进行回退,master回退到原来地方,以及Shanghai分支回退到s地方,看看其他的方式会出现怎么样的集成结果

这个命令是为了方便我们想要看到的结果,一般不能使用

git-6_第34张图片

此时状态已经恢复

git-6_第35张图片

以Beijing分支先合,选择Squash and merge

git-6_第36张图片

中间步骤相同,直接看结果,这是Beijing分支合并过的结果

以Shanghai分支进行合并

git-6_第37张图片

这里报错,有冲突,不过不用担心,你可以继续创建

git-6_第38张图片

会弹出这个冲突,让我们自己进行解决

git-6_第39张图片

git-6_第40张图片

编辑完成之后,我们选择Mark as resolved

git-6_第41张图片

为了解决冲突,生成了这个commit 

git-6_第42张图片

git-6_第43张图片

git-6_第44张图片

git-6_第45张图片

完成了,然后我们再次进行刷新这个图,看结果

git-6_第46张图片

然后我们再次进行回退,master回退到原来地方,以及Shanghai分支回退到s地方,看看其他的方式会出现怎么样的集成结果

git-6_第47张图片

git-6_第48张图片

这次选用Rebase and merge,Beijing分支合并

git-6_第49张图片

中间步骤相同,直接看结果

git-6_第50张图片

Shanghai分支合并

git-6_第51张图片

发现有冲突,自己进行解决

git-6_第52张图片

git-6_第53张图片

git-6_第54张图片

git-6_第55张图片

看结果,Shanghai合并到master是没有办法,我们需要找其他办法

git-6_第56张图片

把Shanghai这个分支回退到之前的状态

git-6_第57张图片

以master为基准,将Shanghai这个分支做变基行为

git-6_第58张图片

git-6_第59张图片

这个文件有冲突,那我们可以进行处理

git-6_第60张图片

处理完毕

git-6_第61张图片

还会报冲突,由于我们是变基,所以继续处理这个冲突

git-6_第62张图片

git-6_第63张图片

git-6_第64张图片

它会要求我们每一次都要做这个冲突的处理,这个是比较繁琐的,按照提示一步一步进行解决就可以了

1.vi readme 进入解决冲突

2.git add . 

3.git rebase --continue

git-6_第65张图片

git-6_第66张图片

四次处理完成后,Shanghai分支做的变更都已经合入进来了

git-6_第67张图片

到这里之后就不再提示有问题了

git-6_第68张图片

这个是Shanghai分支做好的变基行为,我们进行push

git-6_第69张图片

git-6_第70张图片

现在需要将Shanghai分支合入到主分支上

git-6_第71张图片

点击Rebase and merge 就会很顺利了 

git-6_第72张图片

处理完毕之后,看结果

git-6_第73张图片

git-6_第74张图片

为什么这里会有两个头像?有作者又有提交者

git-6_第75张图片

上面我们处理整个过程比较繁琐,有没有更好的方法呢,有的,参考官网介绍Git - Rerere

首先,Shanghai分支要回退到s位置,master分支也要回退

git-6_第76张图片

git-6_第77张图片

设置配置项

$ git config --global rerere.enabled true

git-6_第78张图片

把冲突解决掉

git-6_第79张图片

git-6_第80张图片

git-6_第81张图片

temp只是临时的,是不需要的,所以我们需要回到上一步 

git-6_第82张图片

git-6_第83张图片

git-6_第84张图片 它会知道自己该怎么处理这个冲突

git-6_第85张图片

git-6_第86张图片

git-6_第87张图片

以前总是在反复解决冲突,现在就有了改观,一次记录在案,就不用再反复处理了

​​​​​​​git-6_第88张图片

这个就是对rerere的了解

4.怎样保证集成的质量?

如何保证持续集成中的集成分支的质量?

git-6_第89张图片

git-6_第90张图片

git-6_第91张图片

根据自己的需要制定自己的规则

git-6_第92张图片

git-6_第93张图片

git-6_第94张图片

在我们项目内部合

git-6_第95张图片

git-6_第96张图片

git-6_第97张图片

git-6_第98张图片

即使有不合格项,作为最高管理员,还是可以进行合并行为的

git-6_第99张图片

如果在设置里选上这个选项 

合并这个地方的按钮就会置灰了,即使是最高管理员,也没有办法强制处理不合格的合并,也需要严格遵守规则

git-6_第100张图片

为了保证集成质量,可以增加Codecov、Travis CI服务,在Marketplace中查找

git-6_第101张图片

Travis CI做检查和做部署的 

git-6_第102张图片

 git-6_第103张图片

git-6_第104张图片

定制这样一份计划,就可以让服务和仓库的访问建立起来

git-6_第105张图片

5.怎样把产品包发布到GitHub上?

等到我们的集成分支满足一定要求之后,自动集成之后,创建出来的产品包就需要把它以二进制压缩包的形式发布到GitHub上面,以便把这个包拉到测试环境去使用

release是GitHub现成提供的

git-6_第106张图片

git-6_第107张图片

设置api_key

git-6_第108张图片

git-6_第109张图片

git-6_第110张图片

git-6_第111张图片

git-6_第112张图片

git-6_第113张图片

根据需求选择 

git-6_第114张图片

git-6_第115张图片

需要我们存起来,因为下次就看不见了 

git-6_第116张图片

git-6_第117张图片

git-6_第118张图片

git-6_第119张图片

git-6_第120张图片

git-6_第121张图片

提交完毕后

git-6_第122张图片

release里面的内容 

git-6_第123张图片

将.travis.yml中的war包部署到release中

6.怎么给项目增加详细的指导文档? 

让别人写的好的Wiki放在自己的项目当中

git-6_第124张图片

首先,我们可以先找到一个写的较好的进行拷贝 

git-6_第125张图片

git-6_第126张图片

git-6_第127张图片

git-6_第128张图片

这个是自己的wiki地址

​​​​​​​git-6_第129张图片

git-6_第130张图片

git-6_第131张图片

git-6_第132张图片

先pull下来,再push上去 

git-6_第133张图片 

解决合并冲突 

 git-6_第134张图片

解决完成,再次push 

git-6_第135张图片

完成,刷新页面即可 

git-6_第136张图片

你可能感兴趣的:(git,git)