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(标识)

相关推荐
木雷坞14 小时前
csdn-enterpriseGitLab Runner docker pull 慢:并行流水线镜像拉取排查
运维·docker·容器·gitlab
一只大袋鼠14 小时前
Git (三):Tag 标签管理、图形工具、IDEA 集成与 GitLab 私有化部署
开发语言·git·gitlab
Lyra_Infra4 天前
故障排查报告:GitLab 18.11.3 后台 Settings 500
gitlab
Mike_6666 天前
git@gitlab-rdc.xxxxx.com: Permission denied (publickey).fatal: 无法读取远程仓库。
git·elasticsearch·gitlab
雨声不在8 天前
gitlab ci Runner 配置
gitlab·cicd
曾庆睿9 天前
【基于 RHEL 9.3 的 K8s + GitLab 全自动化部署环境搭建第一篇】
kubernetes·自动化·gitlab
曾庆睿9 天前
【基于 RHEL 9.3 的 K8s + GitLab 全自动化部署环境搭建第二篇】
kubernetes·自动化·gitlab
xmlhcxr14 天前
从 0 到 1 落地企业级 DevOps CI/CD 流水线:基于 GitLab+Jenkins+Harbor 的完整实践
运维·docker·gitlab·jenkins·harbor·devops
高旭的旭14 天前
GitLab Omnibus Docker 内存优化实战:从 4.7 GiB 降到 3.2 GiB
docker·容器·gitlab