一:账号管理
1、管理员添加
gitlab的用户分为管理员用户和普通用户,在界面上管理员会多了如下图所示的管理员区域,管理员拥有用户管理的功能,普通用户没有此功能。
通过管理员区域的用户-添加用户,根据提示填写必要信息创建用户。
2、自行注册账号
在浏览器中输入gitlab的网址,点击首页的注册,填写注册信息进行账号申请。
Full name :全名
Username:用户名
Email:邮箱地址
Email confirmation:同上面邮箱地址
Password:密码
二:项目管理
1、创建项目
如下图新建项目 projects–>You projects -->new project
a、项目名称:项目名称可以为字母、数字、空格、下划线、中划线和英文点号组
成,且必须以字母或数字开头,不能使用中文
b、项目描述
c、项目权限:
Private:私有库,只有被赋予权限的用户可见
Internal:内部库,登录用户可以下载
Public:公开库,所有人可以下载
点击创建成功后,在项目详情页,可以看到项目的地址,gitlab提供ssh和http 两种下载方式
2、编辑项目
a、从我的项目中点击项目,可进入项目详情页面
setting–>general,可以对项目的信息进行编辑。
b、添加项目成员
选择member, 按右侧的提示先选择要加入的用户,选择要给的权限,选择项目使用期限,最后点添加到项目。
权限有四种可选:
Guest(匿名用户):可以创建issue、发表评论,不能读写版本库
Reporter(报告人):可以克隆代码,不能提交,QA、PM可以赋予这个权限
Developer(开发者):可以克隆代码、开发、提交、推送不受保护的分支、RD可以赋予这个权限,默认受保护的分支没有push和删除权限。
Master(管理者):可以创建项目、添加tag、保护分支、添加项目成员、编辑项目,核心RD负责人可以赋予这个权限
Owner(所有者):可以设置项目的访问权限-Visibility Level、删除项目、迁移项目、管理组成员、开发组leader可以赋予这个权限,拥有所有权限
3、创建项目分支
在创建分支前,仓库不能为空,master分支必须有文件。
如上图随便添加一个文件都可以。
进入项目的详情页,点击右侧的+,选择New branch.
写上分支名称,创建分支。
可以创建开发分支,当接到新需求后可以在开发分支上面开发,等功能开发完成,经过测试后可再合并到master分支。
4、保护分支
默认master分支是受保护的,Developer角色的用户是不能push到受保护的分支的。如果想要开发者角色也可以push受保护分支,可以在保护分支里面设置。
从项目详情页进入保护分支界面。
可以选择受保护的分支,设置选择哪个角色有merge的权限,哪个角色有push的权限。
注意:一般该项目的管理人员会分配master权限,其他普通开发人员分配developer权限,那么管理员再上传项目后,一定要把保护分支设置为master+developer,不然developer用户无法上传代码。
三:分组管理
1、创建分组,如下图,groups–>new group
按照提示填写组名,组名不能为中文
2、给分组添加用户
点击用户组进入详情页
选择member, 选择要加入的用户,选择权限,点击添加入用户组。如果想要组员在创建项目的时候可以选择该组,权限需要是Master和Owner.
5、给用户组分配项目权限
点击进入项目详情页,选择member,右侧点击share with group,选择要添加的用户组,选择权限项,选择日期范围,最后点击share.
6、在同一名称空间下放多个依赖项目。
添加了分组后,在创建项目
拥有分组的master或owner权限后,在创建项目的时候可以选择分组,同一个分组下可以创建多个项目。
7、创建子分组
选择Groups栏目,在下面选择一个分组分支。
进入组详情后,点击左边的Subgroups,然后点击右侧的New subgroup ,进入创建子组的界面。
填写子组组名,描述、权限创建子组。
ps: 只有当用户拥有组的owner的权限时,才有创建子组的权限。根据需要按不同组节点来给用户分配权限。
四:文件上传下载
1)添加ssh key
通过ssh方式下载,添加了ssh key后不需要每次都输入用户名密码,而且这种方式也更加安全。
如果没有添加过ssh key,可以在项目详情页点击橙色提示进入
或者从settings–>ssh key 进入
生成ssh公钥和私钥对
打开本地git brash,在其中输入指令,生成ssh公钥和私钥对
如果已经安装了vs的,可以直接cmd
ssh-keygen -t rsa -C ‘xxx@xxx.com’ 其中xxx@xxx.com即为你的邮箱地址
点击回车,会让你选择存储路径,此时不用理会直接回车,其会保存到默认路径
可能有人此目录下已有该文件,他会提示是否覆盖,输入yes回车即可
接下来就是输入密码,不用输入,再次回车,其会让你再次确认输入密码,再回车,即生成完毕
生成之后将id_rsa.pub文件里的内容复制粘贴到gitlab里面,如下图所示:
2)克隆代码
进入项目详情页,将ssh地址复制下来 git@124.71.44.45:lili/test_python.git
项目就成功克隆下来了。
2、http方式下载
1)在项目详情页,复制http地址:
第一种: 在git bash 中输入 git clone http://124.71.44.45/lili/test_python.git
3、分支的克隆
git clone -b develop git代码库地址
从gitlab某分支上克隆代码库,其中develop为某分支名称。
如图,进入克隆下来的库,可以看到是develope分支了。
4、上传文件
第一种:在git bash中
a、进入master分支:
b、将所有有改动的全部添加到要提交的本地库中
c、将修改提交到本地库
d、将本地库的commit推送到远程服务器
可以看到服务器上已经存在了刚才上传的文件。
项目分支的上传一样,先进入分支。
5、分支合并代码
#进入分支目录
#执行
git push origin develope
已经在develope分支上传了文件。
进入项目详情页,选择左侧的合并请求,点击右侧的新建一个合并请求。
选择develope分支,点击下面的绿色按钮。
页面跳转后在点击此页面的绿色按钮。
页面跳转后,在此页面点击合并按钮,合并完成。
再看master分支,看到了刚才在develop分支上传的文件。