GitLab的使用

news2024/10/7 2:19:18

目录

一、腾讯云 / 阿里云 购买服务器

二、服务器上安装GitLab-ce

三、使用git

1、首先把服务器上的代码克隆下来

2、将所有有改动的全部添加到要提交的本地库中

3、将修改提交到本地库

4、将本地库的commit推送到远程服务器

5、拉取服务器上最新资源:

6、在不同的分支之间切换:git checkout 分支名

7、合并分支:git merge 分支名

8.创建分支

9.查看分支

10.切换分支

11.分支合并

12.删除分支

13、合并分支:

四、配置gitlab的ssh keys


一、腾讯云 / 阿里云 购买服务器

二、服务器上安装GitLab-ce

找到买的服务器--点远程连接--workbench远程连接--立即登录

1.相关环境、依赖安装
yum -y install policycoreutils openssh-server openssh-clients postfix
yum install  policycoreutils-python
systemctl enable sshd && sudo systemctl start sshd
systemctl enable postfix && systemctl start postfix
 
2.关闭防火墙或者防火墙增加白名单
systemctl stop firewalld.service
 
3.下载软件
wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6/gitlab-ce-13.6.7-ce.0.el6.x86_64.rpm
 
4.开始安装
rpm -i gitlab-ce-13.6.7-ce.0.el6.x86_64.rpm
 
5.修改默认端口
cd /etc/gitlab
vi gitlab.rb
 
6.在文件中修改 external_url和nginx['listen_port']的key对应的内容
external_url 'http://114.96.82.2:8280'
nginx['listen_port'] = 8280
 
6.重启
gitlab-ctl reconfigure
gitlab-ctl restart
 
 
7.页面输入即可访问
'http://ip:端口号

三、使用git

1、首先把服务器上的代码克隆下来

git clone


2、将所有有改动的全部添加到要提交的本地库中

也可以用git add 文件名进行单独文件的提交

git add .


3、将修改提交到本地库

git commit -a -m "提交添加的注释信息"

4、将本地库的commit推送到远程服务器

git push 

5、拉取服务器上最新资源:

git pull    

6、在不同的分支之间切换:git checkout 分支名

注意事项:切换分支的时候,如果当前分支有改动没有提交,是不能切换分支的,需要先把改动的内容提交或者放入缓存区

git checkout release/v1.0.0

7、合并分支:git merge 分支名

git merge feature/login

从当前分支merge feature/login分支的内容,如果有两个人修改了同一个文件的同一行,则会有冲突,可以在IDE工具上先解决当前冲突然后再提交。

8.创建分支

使用:"git branch 分支名称" 创建分支


9.查看分支

使用:"git branch" 查看分支


期中 * 号表示现在选中的分支(默认选中开发主线)

10.切换分支

使用:"git checkout 分支名称" 切换分支

这时会提示我们切换到分支”bin“ ,使用"git branch"查看分支,*号就显示到分支”bin“上

这时候我们就可以在分支上工作,不会影响到主线的代码。当我们工作完成,需要把分支改动提交到主线时,我们就要用到分支合并"git merge 来源分支"

11.分支合并

"git merge 来源分支" 合并分支 (备注:必须在master分支上才能合并开发分支)
合并分支前,我们需要先利用切换分支命令"git checkout master" 转换到主线。

切换成功有提示
确认切换到主线后,再"git merge 来源分支" 合并分支

12.删除分支

"git branch -d 分支名称" 删除分支(分支被合并后才允许删除)(-D 强制删除)

13、合并分支:

方法一:使用merge命令合并分支
1、目标:将dev分支合并到master分支
1.1、首先切换到master分支上
git checkout master

1.2、如果是多人开发的话 需要把远程master上的代码pull下来
git pull origin master
//如果是自己一个开发就没有必要了,为了保险期间还是pull

1.3、然后我们把dev分支的代码合并到master上
git merge dev 
//如果有冲突,手动解决冲突就行。

1.4、然后查看状态及执行提交命令
git status

On branch master Your branch is ahead of 'origin/master' by 12 commits.   (use "git push" to publish your >local commits) nothing to commit, working tree clean

//上面的意思就是你有12个commit,需要push到远程master上 
> 最后执行下面提交命令 
git push origin master 

方法二、合并某个分支上的单个commit(cherry-pick命令)
比如 feature 分支上的commit 82ecb31非常重要,它含有一个bug的修改,或其他人想访问的内容。
无论什么原因,你现在只需要将82ecb31合并到master,而不合并feature上的其他commits;
所以我们用git cherry-pick命令来做:

git checkout master  
git cherry-pick 82ecb31

这样就好啦。
现在82ecb31就被合并到master分支,并在master中添加了commit(作为一个新的commit)。
cherry-pick和merge比较类似,如果git不能合并代码改动(比如遇到合并冲突),git需要你自己来解决冲突并手动添加commit。

这里git cherry-pick每次合并过来会显示文件冲突(其实并没有冲突代码部分,只需手动解决既可)。

四、配置gitlab的ssh keys

1、打开win+r==>cmd

2、git config --global user.name "gitlab的名字"

3、git config --global user.email "输入邮箱"

4、git config --global --list    //查看是否有

5、ssh-keygen  //三次回车

6、打开git base here 然后再输入

在~/.ssh/下会生成两个文件,id_rsa和id_rsa.pub

id_rsa是私钥

id_rsa.pub是公钥

7、查看是否生成了id_rsa和id_rsa.pub
cd ~/.ssh
ls
cat id_rsa.pub

查看 ssh 公钥方法:

1、通过命令窗口

a. 打开你的 git bash 窗口

b. 进入 .ssh 目录:cd ~/.ssh

c. 找到 id_rsa.pub 文件:ls

d. 查看公钥:cat id_rsa.pub 或者 vim id_rsa.pub

查看密钥,如图:

 

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

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

相关文章

智创未来 · 引领5G价值,广和通携5G AIoT创新应用亮相2022德国慕尼黑电子展

11月15-18日,两年一届的全球电子行业盛会——德国慕尼黑电子展(Electronica 2022)于慕尼黑展览中心顺利举行。作为全球领先的物联网无线通信解决方案和无线模组供应商,广和通精彩亮相B5馆139展台,向全球物联网企业分享…

机器学习分类模型评价指标之ROC 曲线、 ROC 的 AUC 、 ROI 和 KS

前文回顾: 机器学习模型评价指标之混淆矩阵机器学习模型评价指标之Accuracy、Precision、Recall、F-Score、P-R Curve、AUC、AP 和 mAP 1. 基本指标 1.1 True Positive Rate(TPR) TPRTPTPFNTPR \frac{TP}{TPFN}TPRTPFNTP​ 中文:真正率、灵敏度、召…

一天快速掌握Mybaits[一]

一、搭环境 Spring Initializr的搭建 创建完毕后的项目结构 此时application的后缀更名为yml,因为这样,看起来更简洁明了,而作用上,无差别 数据库环境的搭建 新建数据库 执行SQL语句 use mybatis-demo; CREATE TABLE user (id…

珠海航展有图扑 | 数字孪生方案助力智慧航天

2022 年 11 月 8 日~11 月 15 日,在第十四届中国国际航空航天博览会(简称中国航展)中,图扑先进的数字孪生解决方案,支撑合作伙伴实现人机交互场景。 图扑助力航展数字化 在本届国际航空航天博览会中,图扑…

Word控件Spire.Doc 【图像形状】教程(2) ;在 C#、VB.NET 中从 Word 中提取图像

Spire.Doc for .NET是一款专门对 Word 文档进行操作的 .NET 类库。在于帮助开发人员无需安装 Microsoft Word情况下,轻松快捷高效地创建、编辑、转换和打印 Microsoft Word 文档。拥有近10年专业开发经验Spire系列办公文档开发工具,专注于创建、编辑、转…

代码演示GC回收

JVM配置 -XX:NewSize5m 初始新生代大小 -XX:MaxNewSize5m 最大新生代大小 -XX:InitialHeapSize10m 初始堆大小 等同于Xms -XX:MaxHeapSize10m 最大堆大小 等同于Xmx -XX:SurvivorRatio8 Eden区占80% -XX:PretenureSizeThreshold10m 大对象阈值 -XX:UseParNewGC 新生代使用ParN…

最新最全面的Spring详解(五)——事务管理

前言 本文为 【Spring】事务管理 相关知识,下边将对Spring框架事务支持模型的优点,Spring框架的事务抽象的理解(包含TransactionManager、TransactionDefinition、TransactionStatus,编程式事务管理(包含使用 Transact…

(七)笔记.net core学习之反射、加载dll、读取moudle、类、方法、特性

1.反射加载dll、读取moudle、类、方法、特性 (1)模块信息获取 (2)方法调用 2.反射创建对象、反射简单工厂配置文件(破坏单例,创建泛型) (1)程序的可配置可扩展&#xf…

【MEIF:ℓ1-ℓ0混合分解】

Multimodal Medical Image Fusion Using Hybrid Layer Decomposition With CNN-Based Feature Mapping and Structural Clustering (基于CNN的特征映射和结构聚类的混合层分解的多模态医学图像融合) 本文提出了一种特征级多模态医学图像融合&#xff0c…

springboot获取不到客户端ip问题排查

一、现象 springboot从2.0.2升级到 2.5.7后线上环境无法通过request.getHeader("x-forwarded-for")获取客户端ip地址,测试环境正常,开发环境也异常 二、结论 springboot 2.5.7版本中CloudPlatform多了Kubernetes platform的类型识别&#x…

SpringCloud整合Nacos最全教程(简介及安装部署整合)

目录 一、Nacos简介 Nacos与eureka的共同点 Nacos与Eureka的区别 二、Nacos安装配置 在windows中的安装教程 1.首先将windows安装版本的zip解压: 2.如果8848端口被占用,可以修改端口 3.进入到bin目录下,在cmd中运行以下命令启动 4.启…

Webpack 5 超详细解读(二)

11.importLoaders 属性 问题: test.css的内容如下: .title {transition: all .5s;user-select: none; }login.css的内容如下: /* 导入test.css */ import ./test.css; .title {color: #12345678; }再次npm run build发现运行之后的test.c…

外汇天眼:想通过外汇交易在几个月内成为亿万富翁吗?你必须知道的七大交易法则

WikiFX 策略 -这里有七个交易规则,将在不同程度上让您受益。 1.交易不是儿戏 这是一项业务,如果没有适当的计划、战略和有效的运营,就不可能取得长期的成功。 2.损失不可避免 由于市场始终存在风险,因此在您的交易中从多头转为…

C++:项目相互依赖调用解决方法两种方法

Bmodel依赖于Amodel,但是Amodel又需要BModel的信息。这样就会导致相互依赖。 方法一:采用静态变量static 链接:C开发中一个解决方案里,两个项目的相互引用,相互依赖的实现方法(解决方法)_Capri…

P物质肽[DArg1, DTrp5, 7, 9, Leu11]

这种物质P类似物是一种非常有效的小细胞肺癌(SCLC)细胞体外生长的广谱神经肽抑制剂(IC₅₀ 5M)。此外,它在体外有效地抑制信号转导通路,并在体内显著延缓SCLC异种移植物的生长。因此,它可能对SCLC有治疗价值。 编号: 139994中文名称: P物质肽…

数据结构学习笔记(Ⅰ):绪论

课程链接:【旧版】1.0_开篇_数据结构在学什么_哔哩哔哩_bilibili 目录 1 数据结构的基本概念 2 算法 2.1 算法的基本概念 1.算法概念 2.算法的特性 3.好算法特质 2.2 算法的时间复杂度 2.3 算法的空间复杂度 1 数据结构的基本概念 数据:能输入到计算机中并…

Android StudioJNI开发之NDK环境的搭建以及添加JNI支持(图文解释 简单易懂)

有问题可以评论区留言讨论~~~ 一、NDK环境搭建 Android系统的所谓原生开发是在App中调用C/C代码,鉴于这两个语言具有跨平台的特性,如果某项功能使用C/C实现,就很容易在不同平台之间移植。 完整的Android环境包括三个开发工具。分别是JDK SD…

如何缩减layout电路面积?减少晶体管的数量——以全加器为例【VLSI】

如何缩减layout电路面积?减少晶体管的数量——以全加器为例【VLSI】What is Full adder ?全加器的设计方法1. 32T 原始表达式不经过化简的电路图2. 28个晶体管 最基本的静态互补CMOS电路的全加器静态互补CMOS静态互补CMOS的优势与劣势28T 电路图28T的棒状图Stick D…

彻底搞明白概率论:随机事件,样本空间,必然事件,不可能事件

文章目录样本空间样本点随机事件,必然事件,不可能事件参考视频样本空间 随机试验E的一切可能基本结果(或实验过程如取法或分配法)组成的集合称为E的样本空间,记为S 注意,对于不同的实验,样本空间…

【构建ML驱动的应用程序】第 3 章 :构建您的第一个端到端管道

🔎大家好,我是Sonhhxg_柒,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎 📝个人主页-Sonhhxg_柒的博客_CSDN博客 📃 🎁欢迎各位→点赞…