gitlab使用教程

news2024/12/28 20:14:11

一:账号管理

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分支上传的文件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/713371.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JVM02-JVM即时编译器JIT

1-类编译加载执行过程 先了解下Java从编译到运行的整个过程 类编译:在编写好代码之后,我们需要将 .java文件编译成 .class文件,才能在虚拟机上正常运行代码。文件的编译通常是由JDK中自带的Javac工具完成,一个简单的 .java文件&a…

使用Flutter开发俄罗斯方块小游戏

一、本篇文章主要是来讲解下俄罗斯方块游戏的开发思路(当然可能不是最好的思路),博客文章顶部有代码(仅供参考) 二、效果图 视频效果图地址 三、UI页面思路拆解 游戏的主界面两部分组成,上面为15*10的格…

Proxyman 替换js

在真机排查问题时,js不能格式化,导致没法看问题出在那一行,此时可以用这个方法替换js。 方法: 安装proxyman后,以iOS设备为例,菜单-证书-在iOS上安装证书 电脑、真机连接同一个网络,配置代理&…

SparkCore

Spark是一种快速、通用、可扩展的大数据分析引擎 Spark的特点 Speed:快速高效 性能比Hadoop MapReduce快100倍。即便是不将数据cache到内存中,其速度也是MapReduce10 倍以上。 Ease of Use:简洁易用 Spark支持 Java、Scala、Python和R等…

ctfshow—红包4

0x00 前言 CTF 加解密合集:CTF 加解密合集 0x01 题目 from secrets import randbelow from nationalsecret import p, r, k, flagg 2 y pow(g, k, p)def gogogo():print("Another chance:")t int(input(t ))c randbelow(p)print("Here is my…

关于anaconda的python虚拟环境

1.查看anaconda的虚拟环境 在cmd中输入 conda env list //查看conda中的虚拟环境和 activate 环境名称 //激活环境 pip list //查看该环境的包 python // 可以查看该环境python的版本 deactivate //退出环境2.使用anaconda创建新的…

Java Web HTMLCSS(2)23.6.30

2,CSS 2.1 概述 CSS 是一门语言,用于控制网页表现。我们之前介绍过W3C标准。W3C标准规定了网页是由以下组成: 结构:HTML表现:CSS行为:JavaScript CSS也有一个专业的名字:Cascading Style Sh…

如何在 macOS 上同时使用 Flutter2 和 Flutter3 进行 ios 开发

如何在 macOS 上同时使用 Flutter2 和 Flutter3 进行 ios 开发 前言 猫哥主打系统环境是: macos flutter 3.7.12 ruby 3.2.2 cocoapods 1.12.1 xcode 14.3.1 这套配置运行最新的项目没问题,但是最近需要维护 flutter 2.10.5 这种老项目,虽然用了 fvm 进…

武汉理工大学第四届ACM校赛(部分补题与写题)

开裂 目录 k-雇佣农民 题目描述 输入描述: 输出描述: 输入 输出 备注: 小e的苹果树 不降序列 k-雇佣农民 题目描述 Ly很喜欢星际争霸二这款游戏,但是他现在玩不到了。所以Ly现在只能做一个关于农民的题消磨时光。 开始时Ly没有任何农民,第i天白…

三、QPushButton的使用,信号和槽

QT从入门到实战学习笔记 一、QPushButton的创建二、中文要设置成UTF-8格式才不会乱码三、对象树1、验证被释放掉 四、QT窗口坐标系九、信号和槽---点击按钮关闭窗口1、查询signal信号的定义(帮助文档)2、搜索QWidget查找槽函数(slot是槽的意思…

华为freebuds 5无线充电充不上电怎么办?

相信很多人都会遇到跟我一样的问题,华为FreeBuds 5无线充电充不进电是怎么回事?为此我专门整理了以下的经验,相信对大家有所帮助。 1. 充电时要把耳机盒保护套拆下来,耳机盒与充电底座之间不要有东西挡着。这样耳机盒充电时可以更…

jenkins的环境搭建

jenkins 环境 安装 我之前使用war安装、安装比较简单、就是jenkins的 对应的插件不能下载下来、后来发现是版本的问题、使用docker-compose 安装、jenkins安装 插件很容易安装下来 1、安装jdk 解压jdk 配置环境变量 #set java environment JAVA_HOME/usr/local/jdk1.8.0_281…

基于单片机和GSM短信模块的家庭防盗火灾安全报警系统

wx供重浩:创享日记 对话框发送:627短信 获取完整论文报告(含无水印图片和代码) 本系统主要由单片机和GSM短信模块组成,借助最可靠、最成熟的GSM移动网络,以最直观的中文短消息或电话形式,直接把…

392.04亿元?台积电公布下一代工艺发展路线图,2纳米2025 年投产

台积电近日在日本举办了一次研讨会,详细介绍了N3E工艺节点的最新进展和引人注目的性能提升。此外,台积电还公布了令人期待的下一代N2工艺的发展路线图。 台积电副总裁Kevin Zhang透露,公司正以迅猛速度发展,预计2022年的投资金额将…

360测试开发技术面试题目

目录 一、java方面 二、Linux方面 三、数据库方面 四、性能测试方面 五、HTTP协议方面 六、其他 总结: 最近面试了360测试开发的职位,将面试题整理出来分享~ 一、java方面 1、java重载和重写的区别 重载overloading 多个方法、相同的名字&#x…

CF578A(直线方程 + 数学) 1700

CF578A(直线方程 数学) 1700 有一条折线 , 这个折线经过这样一组点: (0,0) - (x,x) - (2x,0) - (3x,x) - (4x,0) - ....现给出折线上一点 , 求 x 的最小值 思路:我们不妨用解方程的思想 ,先写出折线的方程&#xf…

AIGC-stable-diffusion系列1- stable-diffusion-webui

安装方法1,源码安装 参考 repo参考地址:https://github.com/AUTOMATIC1111/stable-diffusion-webui python下载地址:https://www.python.org/downloads/release/python-3106/ git下载地址:https://git-scm.com/download/win 官…

逻辑回归模型

目录 引言 逻辑回归的理论基础 逻辑回归的实践 实战案例:银行营销预测 超越逻辑回归 引言 我们在上一篇文章中讨论了线性回归模型,探讨了如何利用它来解决连续变量预测的问题。今天,我们将转向一种新的模型——逻辑回归,它用…

TIDB v7.1 reource control资源管控特性体验贴

作者: bert 原文来源: https://tidb.net/blog/60c87e38 TIDB v7.1 reource control资源管控特性体验贴 1. 使用场景: 定义:TIDB的资源管控 (Resource Control) ,使用资源管控特性,将用户绑定到某个资源…

摇骰子设计与实现(uni-app微信小程序)

文章目录 摇骰子设计与实现准备工作实现步骤以及思路第一步:实现准备状态第二步:实现晃动中状态第三步:等待开起状态第四步:开启后状态部分优化 总代码 摇骰子设计与实现 手机摇一摇可以摇骰子,上划可查看结果&#x…