gitlab多人协同工作

上传人:ji****72 文档编号:37542332 上传时间:2018-04-18 格式:DOC 页数:14 大小:5.77MB
返回 下载 相关 举报
gitlab多人协同工作_第1页
第1页 / 共14页
gitlab多人协同工作_第2页
第2页 / 共14页
gitlab多人协同工作_第3页
第3页 / 共14页
gitlab多人协同工作_第4页
第4页 / 共14页
gitlab多人协同工作_第5页
第5页 / 共14页
点击查看更多>>
资源描述

《gitlab多人协同工作》由会员分享,可在线阅读,更多相关《gitlab多人协同工作(14页珍藏版)》请在金锄头文库上搜索。

1、gitlab 多人协同工作 2013-05-11 23:02:40| gitlab 多人协同工作 gitlab-新颖的 git 服务器托管网站,开源免费。你可以在自己的公司或者开发团队搭建好 一个。 gitlab 的工作流程是 gitlab help 中建议的工作流程是这样。如下图。1 (1).开发成员拷贝管理员建立好的项目到自己本地。 (2).创建自己的分支。 (3).在自己的分支上写代码,并提交。 (4).推送到远程服务器,分支是自己的分支。 (分支的命名规则使用小驼峰式命名法。比如我是员工孙悟空,我就推送到孙悟空分支。 分支的命名规则为开发人员姓名+所开发的功能。命名中不要使用特殊字符,

2、不要使用点。例如孙悟空开发的分支,命名为 swkFeature1) (5).在 Commit 页面上浏览分支。 (6).创建一个合并请求。 (7).团队的管理员或者领导者审查并且决定是否合并员工提交的分支到主分支上。 管理员在建好的项目中加入开发人员。 开发人员有相应的权限级别,分为 Guest,Reporter,Developer,Master,等这几个角色,这几个 角色的权限从低到高排列。 Developer 能够推送和删除没有保护的分支,Master 可以对没有保护和有保护的分支进行操 作。如图 1 所示。如下图2 我们使用下面这个图示中的分支模型进行工作。 Git 的开发者都喜欢以这种

3、方式来开展工作,在 master 分支中保留完全稳定的代码,即已 经发布或即将发布的代码。 与此同时,他们还有一个名为 develop 专门用于后续的开发,或仅用于稳定性测试。当然 并不是说一定要绝对稳定,不过一旦进入某种稳定状态, 便可以把它合并到 master 里。还有在工作中,把开发任务分解为各个功能或者模块,用 topic(topic branch 主题分支,有又成为 feature branch 特性分支) ,实现之后并测试稳定 之后,可以合并到其他分支。Git 的开发者都喜欢以这种方式来开展工作,在 master 分支中保留完全稳定的代码,即已 经发布或即将发布的代码。 与此同时,

4、他们还有一个名为 develop 分支 专门用于后续的开发,或仅用于稳定性测试。 当然并不是说一定要绝对稳定, 不过一旦进入某种稳定状态,便可以把它合并到 master 里。 还有在工作中,把开发任务分解为各个功能或者模块,用 topic 分支(topic branch 主题分 支,有又称为 feature branch 特性分支) , 比如实现功能 1,在 develop 分支的基础上产生分支 feature1,实现功能 2,有分支 feature2。 feature1 和 feature2 实现了要求的功能之后,合并到 develop 分支上去。develop 分支测试稳 定之后,可以合并

5、到 master 分支上去。07-gitlab 工作流程 4情景(以下的模拟场景没有把 develop 分支考虑进去,直接在 master 分支上分解功能分支。 )1.管理员唐僧建好了一个项目,把孙悟空加入,并授予 Developer 角色权限,唐僧本身就是 比孙悟空高一级的 Master 角色。唐僧在自己的电脑上设定好了 master 分支为受保护分支。32.员工孙悟空在自己电脑上工作,并推送已经写好的代码到远程服务器的孙悟空分支上, 即 swkFeature1 上孙悟空做了如下操作git clone :root/testc01.git /从管理员唐僧那里克隆项目cd testc01 /进入

6、项目工作git checkout -b swkFeature1 /创建自己的分支,并切换到此分支上,分支的命名规则为开发 人员名字+所开发的功能名字。本例中命名为 swkfeature1vim aa.html /写了一个名为 aa 的 html 文件git add aa.html /加入跟踪ggit commit -am “swkFeature1 is ready“ /提交git push origin swkFeature1 /推送到远程服务器孙悟空分支上,git 提示推送成功git push origin swkFeature1:master /孙悟空想尝试直接推送到受保护的分支上,孙悟空

7、是没 有这个权限的,git 会提示为推送失败图为孙悟空键入的命令孙悟空在 Commit 页面上浏览分支 swkFeature1,然后向项目领导唐僧创建一个合并请求。3.这个合并请求除了唐僧可以登录 gitlab 上看到之外,还可以通过邮件方式看到。唐僧即使 没有登录 gitlab,只要他的邮箱支持手机邮箱等方式, 手机邮箱可以通过短信的方式通知唐僧,唐僧可以实时看到合并要求。管理员唐僧对要求合并的分支代码进行审核。 管理员唐僧从服务器上获取孙悟空提交的分支。 git fetch然后孙悟空推送的远程新分支被管理员唐僧拉拽到本地,但是不是以本地分支存在, 而是保存在 .git/refs/heads

8、 之外(.git/refs/remotes/origin/之中)的远程分支。 管理员唐僧可以如下方法对孙悟空的分支进行审核。 执行 git log master.origin/swkFeature1 /可以看到孙悟空推送了几个提交。管理员唐僧可以合并孙悟空的分支: git merge origin/swkFeature1 管理员唐僧可以逐一对孙悟空的提交审核。如果发现有问题,管理员唐僧可以本地回滚。 git reset -hard HEAD # 或 master1 几个反复后,当孙悟空的分支审核无误,管理员唐僧将合并后的本地 master 分支推送到 远程服务器: git push # 缺省

9、remote 为 origin图 唐僧在自己的电脑上工作,审核孙悟空提交的分支代码,决定是否合并。图 唐僧键入的命令这个时候,唐僧打开 gitlab 相应的项目,查看 master 分支的内容。发现服务器上面有了孙 悟空提交的源代码了。唐僧可以在那个请求页面下关闭合并请求。gitlab 合并请求有自动的功能,但是还是需要管理员唐僧获取下来,合并,测试是否有问题。不建议使用 gitlab 的自动合并功能。合并请求就被关闭了。4.孙悟空那边。 孙悟空看到请求已经接受。执行 git fetch 会获取到更新的 master 分支。然后git checkout master git merge -ff

10、 origin/master swkFeature1 分支完成使命,删掉吧: git branch -d swkFeature1图孙悟空后来键入的命令,图中因为没有切换到 master 分支上,所以又重新执行了一遍上 述命令。本文档的相关视频演示1080P 高清格式在线视频地址 Youtubehttps:/ gitlab 多人协同工作 - herry2013git - 亨利的 3D 幻想世界720P 格式视频 在线地址 直线教程网http:/ gitlab 多人协同工作 - herry2013git - 亨利的 3D 幻想世界低分辨率的视频在线地址 优酷(国内的 99%的视频网站不能让用户直接

11、上传 1080P 的视频)http:/ gitlab 多人协同工作 - herry2013git - 亨利的 3D 幻想世界本集 1080P 视频文件 可以在网盘下载。 百度网盘http:/ 多人协同工作 - herry2013git - 亨利的 3D 幻想世界Mega 网盘 https:/mega.co.nz/#F!QA9wVZLJ!kktjeJv6-znVd9RHg78YXAgitlab 多人协同工作 - herry2013git - 亨利的 3D 幻想世界115 网盘 礼品文件接收方式http:/ 多人协同工作 - herry2013git - 亨利的 3D 幻想世界补充:gitlab 的版本更新非常频繁,本文档的某些步骤可能和最新版本有出入。写这个文档和录制 视频,是想让大家对 gitlab 的工作流程有个整体了解。参考:1. gitlab 多人协同工作: http:/ 频教程,是不错的参考资料;(本文)2. pro Git 中文版 ,熟悉 git 常用操作和基本原理;3.Git 权威指南 ,深入学习 Git

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号