阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

gitlab使用

137次阅读
没有评论

共计 2980 个字符,预计需要花费 8 分钟才能阅读完成。

一、外观

gitlab 使用

设置完成后保存,返回登录页面查看

gitlab 使用

关于注册,有些公司是不允许打开的,,有些人数非常多的公司就需要打开注册的功能,让人员自己注册,我们来给他特定的权限就可以,毕竟人非常多的时候还由我们来给她们注册就非常不现实了,工作量会很大

二、自动注册

gitlab 使用

gitlab 使用

三、组 & 用户 & 项目

创建组

gitlab 使用

设置组名称、描述等创建群组

gitlab 使用

创建用户

gitlab 使用

gitlab 使用

设置密码

gitlab 使用

gitlab 使用

把用户添加到组里面

gitlab 使用

gitlab 使用

Guest:可以创建 issue、发表评论,不能读写版本库 Reporter:可以克隆代码,不能提交,QA、PM 可以赋予这个权限 Developer:可以克隆代码、开发、提交、push,RD 可以赋予这个权限 Maintainer:可以创建项目、添加 tag、保护分支、添加项目成员、编辑项目,核心 RD 负责人可以赋予这个权限 Owner:可以设置项目访问权限 - Visibility Level、删除项目、迁移项目、管理组成员,开发组 leader 可以赋予这个权限 Gitlab 中的组和项目有三种访问权限:Private、Internal、Public Private:只有组成员才能看到 Internal:只要登录的用户就能看到 Public:所有人都能看到

创建仓库

管理区域 - 创建仓库

gitlab 使用

gitlab 使用

也可以导入项目

gitlab 使用

创建仓库以后,网页下面有操作步骤的提醒

gitlab 使用

四、登陆用户测试

是否能看到空的 gitlabtest 仓库,修改完密码后再次登录

gitlab 使用

五、添加 ssh‐keys

注:一个服务器的 key 只能添加到一个 gitlab 服务器上,一个用户可以添加多个 key,切换到管理员用户

ssh‐keygen ‐t rsa

gitlab 使用

gitlab 使用

六、添加、推送到远程仓库

默认 master 是不允许 developer 权限的成员执行推送操作的

[root@zutuanxue git_data]# git remote rm origin 或者 [root@zutuanxue git_data]# git remote rename origin old‐origin 也可以重命名 [root@zutuanxue git_data]# git remote add origin git@192.168.2.100:gitlabtest/gitlabtest.git [root@zutuanxue git_data]# git push -u origin --all

七、克隆

切换到另外一台主机

[root@zutuanxue ~]# dnf install git -y [root@zutuanxue work]# ssh-keygen -t rsa [root@zutuanxue work]# cat /root/.ssh/id_rsa.pub

使用 test 用户登录 gitlab 并添加 ssh 秘钥

[root@zutuanxue work]# git clone git@192.168.2.100:gitlabtest/gitlabtest.git 正克隆到 'gitlabtest'... The authenticity of host '192.168.2.100 (192.168.2.100)' can't be established. ECDSA key fingerprint is SHA256:CDlvaoOre2O1oLbKC4umHcPZ/AfHk37sEZGZakepDd0. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '192.168.2.100' (ECDSA) to the list of known hosts. remote: Enumerating objects: 3, done. remote: Counting objects: 100% (3/3), done. remote: Compressing objects: 100% (2/2), done. remote: Total 3 (delta 0), reused 0 (delta 0), pack-reused 0 接收对象中: 100% (3/3), 完成. [root@zutuanxue ~]# cd gitlabtest/ [root@zutuanxue gitlabtest]# ls a b c [root@zutuanxue gitlabtest]# git config --global user.name test [root@zutuanxue gitlabtest]# git config --global user.email "test@aa.com" [root@zutuanxue gitlabtest]# git branch usertest [root@zutuanxue gitlabtest]# git checkout usertest 切换到分支 'usertest' [root@zutuanxue gitlabtest]# touch file4test [root@zutuanxue gitlabtest]# ls a b c file4test [root@zutuanxue gitlabtest]# git add . [root@zutuanxue gitlabtest]# git commit -m "touch file4test" [root@zutuanxue gitlabtest]# git push -u origin usertest

创建合并请求

gitlab 使用

gitlab 使用

切换到管理员账号,处理请求

gitlab 使用

gitlab 使用

切换到 test 用户或者直接使用管理员查看,内容已合并,之前的 usertest 分支已经被删除

gitlab 使用

设置保护主分支

gitlab 使用

gitlab 使用

gitlab 使用

默认情况下为了保证 master 分支的稳定是被保护的,只有维护者可以执行 push 的操作,所以,当一个开发者身份的用户在针对 master 分支进行操作的时候会出现被拒绝的提示

[root@zutuanxue gitlabtest]# git push -u origin master To 192.168.2.100:gitlabtest/gitlabtest.git ! [rejected] master -> master (fetch first) error: 无法推送一些引用到 'git@192.168.2.100:gitlabtest/gitlabtest.git' 提示:更新被拒绝,因为远程仓库包含您本地尚不存在的提交。这通常是因为另外 提示:一个仓库已向该引用进行了推送。再次推送前,您可能需要先整合远程变更 提示:(如 'git pull ...')。提示:详见 'git push --help' 中的 'Note about fast-forwards' 小节。

同样我们也可以利用上述功能去保护某些不想被修改的分支。

解决内容不一致

除了分支被保护会出现上述提示之外,有些时候在你返回 master 端测试推送,由于其他分支进行推送,和 master 端内容不一致,所以无法进行推送,这个时候可以使用 git pull 把代码拉取到本地,或者 git fetch 把代码拉取到本地仓库后进行合并(注意:git pull = git

fetch+git merge)

[root@zutuanxue git_data]# git fetch [root@zutuanxue git_data]# ls a b c README.md [root@zutuanxue git_data]# git merge origin/master [root@zutuanxue git_data]# ls a b c file4test README.md [root@zutuanxue git_data]# git push -u origin

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-06-09发表,共计2980字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中