GitLab基础管理

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录

一、Gitlab是什么

GitLab 是一款基于 Git 构建的开源(也提供商业版)一体化 DevOps 平台,它不仅是 Git 代码仓库的管理工具,更是覆盖软件研发全生命周期的协作与运维平台。

  1. 核心基础:Git 代码仓库管理(最基础功能)
  2. 项目协作与管理:提升团队协作效率
  3. 自动化研发运维:实现 DevOps 全流程自动化
    这是 GitLab 区别于单纯 Git 仓库工具的核心优势,实现 "代码提交即触发后续自动化流程":

二、Git代码管理操作

2.1、创建Git仓库两种方式

  • web 界面
  • 命令行方式如下:
    1、本地创建并初始化仓库:

    2、本地仓库关联远程 GitLab 仓库:
bash 复制代码
# 添加远程仓库关联,命名为 origin(默认远程仓库名称,可自定义)
git remote add origin http://192.168.10.2/devops/my-local-project.git
# 验证远程仓库关联是否成功
git remote -v

3、将本地仓库推送到 GitLab 远程仓库:

bash 复制代码
# 首次推送,需指定分支(master 或 main),并绑定远程仓库
git push -u origin master
# 后续推送可直接执行 **git push**,无需指定分支和远程名称
  • 向已有仓库传文件时是否需要执行该命令:
bash 复制代码
git remote add origin http://192.168.10.2/devops/my-local-project.git

命令仅需执行一次:当本地目录首次关联远程仓库时,执行一次即可完成绑定。

后续向该远程仓库推送新文件时,直接执行

git add test.txt(暂存文件)

→ git commit -m "add test.txt"(本地提交)-----commit" "双引号中的内容可以随意写的。

→ git push(推送至远程)即可;

无需重复执行git remote add。

二、SSH免密配置

1、生成SSH密钥

这是生成 SSH 密钥对并查看公钥的命令,用于实现本地与 GitLab 等代码平台的免密认证,具体解读如下:

  1. ssh-keygen -t rsa -C "hs@hs.com" -b 4096
    这是生成 SSH 密钥对的命令:
    -t rsa:指定密钥算法为 RSA(常用的非对称加密算法);
    -C "hs@hs.com":给密钥添加注释(通常填 GitLab 账号邮箱,方便识别密钥用途);
    -b 4096:指定密钥长度为 4096 位(密钥更长,安全性更高);
    "一路回车使用默认设置":执行命令后按回车,会默认将密钥保存到~/.ssh/目录(私钥id_rsa、公钥id_rsa.pub),并跳过密码设置(免密使用密钥)。
  2. cat ~/.ssh/id_rsa.pub
    这是查看生成的公钥内容的命令:
    ~/.ssh/id_rsa.pub是公钥文件的路径;
    执行后会输出公钥文本,需将这段文本复制到 GitLab 的 "SSH 密钥" 配置中(GitLab→个人设置→SSH 密钥),完成本地与 GitLab 的 SSH 认证绑定。
    核心作用
    通过生成 SSH 密钥对,后续操作 GitLab 仓库时(克隆、推送等),无需重复输入账号密码,直接通过密钥认证即可访问,同时提升了访问的安全性。
    2、配置GitLab公钥
  • 点击用户头像选择【设置】
  • 进入【SSH密钥】页面
  • 粘贴公钥内容,点击【增加密钥】

    3、切换SSH方式推送

查看当前remote方式

git remote show origin

删除原有HTTP方式

git remote remove origin

添加SSH方式

git remote add origin git@192.168.10.23:devops/myweb.git

验证配置

git remote show origin

测试推送

echo '

new line

' >> index.html
git add index.html
git commit -m "modify index third"
git push
git push --tags(标识)

相关推荐
切糕师学AI3 小时前
GitLab 是什么?
gitlab
明月心9522 天前
git remote add 用法
gitlab
only_Klein2 天前
jenkins流水线报错:Connection reset by peer
ci/cd·kubernetes·gitlab·jenkins·ssl
梁萌3 天前
docker部署gitlab和gitlab runner
docker·eureka·gitlab
johnnyAndCode3 天前
Idea 设置GitLab时使用账密,而不是token的配置方法
gitlab·idea
天外飞雨3 天前
Gitlab使用
gitlab
BUTCHER54 天前
GitLab SSH 密钥配置
运维·ssh·gitlab
明月心9524 天前
GitLab使用
gitlab
明月心9525 天前
gitlab pull requets
gitlab
BUTCHER55 天前
GitLab基本设置
gitlab