当前位置: 首页 > article >正文

【第九节】Git 服务器搭建

目录

前言

一、 使用裸存储库搭建 Git 服务器

1.1 安装 Git

1.2 创建裸存储库

1.3 配置 SSH 访问

1.4 克隆仓库

二、 使用 GitLab 搭建 Git 服务器

2.1 安装 GitLab

2.2 配置 GitLab

2.3 创建项目

2.4 生成 SSH 密钥

2.5 添加 SSH Key

三、 使用 GitLab 管理项目

3.1 配置用户信息

3.2 克隆项目到本地

3.3 上传文件到 GitLab


前言

        在软件开发中,Git 是一个广泛使用的版本控制系统。虽然 GitHub 提供了免费的远程仓库服务,但有时我们需要搭建自己的 Git 服务器,以便更好地管理和控制代码。本文将介绍如何使用裸存储库和 GitLab 搭建 Git 服务器,并详细说明如何管理项目。


一、 使用裸存储库搭建 Git 服务器

1.1 安装 Git

在 Ubuntu 服务器上安装 Git:

sudo apt install git

在 CentOS/RedHat 系统上安装 Git:

yum -y install git-core

在 Fedora 系统上安装 Git:

dnf install git

1.2 创建裸存储库

首先,创建一个 Git 用户组和用户:

groupadd git
useradd git -g git

然后,切换到 Git 用户并创建裸存储库:

sudo su - git
cd /home
mkdir gitrepo
chown git:git gitrepo/
cd gitrepo
git init --bare myproject.git
chown -R git:git myproject.git

1.3 配置 SSH 访问

将需要访问的用户公钥添加到 `/home/git/.ssh/authorized_keys` 文件中:

cd /home/git/
mkdir .ssh
chmod 755 .ssh
touch .ssh/authorized_keys
chmod 644 .ssh/authorized_keys

将用户的公钥(位于 `id_rsa.pub` 文件中)添加到 `authorized_keys` 文件中,每行一个公钥。

1.4 克隆仓库

使用以下命令克隆仓库到本地:

git clone git@192.168.17.11:/home/gitrepo/myproject.git

192.168.17.11 为 Git 所在服务器 ip ,你需要将其修改为你自己的 Git 服务 ip。

二、 使用 GitLab 搭建 Git 服务器

2.1 安装 GitLab

在 Ubuntu 上安装 GitLab:

sudo apt-get update
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash
sudo EXTERNAL_URL="http://yourdomain" apt-get install gitlab-ee

在 CentOS 上安装 GitLab:

sudo EXTERNAL_URL=101.132.XX.XX yum install -y gitlab-ee

2.2 配置 GitLab

安装完成后,打开浏览器访问 `http://yourdomain`,设置管理员账户。当出现类似如下回显信息,表示 GitLab 已经安装成功。

067441ed866841c98d853184aee7608b.png

 

2.3 创建项目

登录 GitLab

获取登录密码:

sudo cat /etc/gitlab/initial_root_password

结果如下所示:

2aed9fef75a44205b96abd5d0fd3d4d5.png

 用用户名"root"登录

14dadec793524eec8c289660572d28c0.png

创建一个新的项目:
1. 点击 "Create a project"。

5fa5a451872149d38e56b828d113bd82.png

 


2. 设置项目名称和 URL。

e91afd1eaad5482fbc5e4de212ef1f9e.png


3. 点击 "Create project"。

 

2.4 生成 SSH 密钥

生成 SSH 密钥对:

ssh-keygen

查看并复制公钥:

cat .ssh/id_rsa.pub

2.5 添加 SSH Key

在 GitLab 项目页面中,点击 "Add SSH key"

d78c339f798349b496e7527497550d9d.png

将公钥文件 id_rsa.pub 中的内容粘贴到 Key 所在的文本框中

9b6f2651c3bf469bb4fcdb8624250159.png

然后点击 "Add key"完成后,如下所示

b1ad67e5d5b44fd78f18a040b4100f4c.png

复制 Clone 链接,在进行克隆操作时需要使用

b638904eae01405b921dad07359fb63d.png

三、 使用 GitLab 管理项目

3.1 配置用户信息

配置 Git 用户信息:

git config --global user.name "testname"
git config --global user.email "abc@example.com"

3.2 克隆项目到本地

克隆项目到本地:

git clone git@101.132.XX.XX:root/mywork.git

3.3 上传文件到 GitLab

进入项目目录并上传文件:

cd mywork/
echo "test" > test.sh
git add test.sh
git commit -m "Add test.sh"
git push -u origin main

在网页中查看上传的 test.sh 文件已经同步到 GitLab 服务器中

270a872123a3440b8c28c4d75a7124cd.png

 

 

 


http://www.kler.cn/a/444428.html

相关文章:

  • 圣诞快乐(h5 css js(圣诞树))
  • 企业数字化转型和人工智能(AI)之间的关系
  • 《薄世宁医学通识50讲》以医学通识为主题,涵盖了医学的多个方面,包括医学哲学、疾病认知、治疗过程、医患关系、公共卫生等
  • DB-GPT 智谱在线模型配置
  • Docker 安装 禅道-21.2版本-外部数据库模式
  • OpenCV相机标定与3D重建(23)用于在图像上绘制世界坐标系的三条轴函数drawFrameAxes()的使用
  • ExcelVBA编程输出ColorIndex与对应颜色色谱
  • 在 Spring Boot 3 中实现基于角色的访问控制
  • 每天40分玩转Django:实操博客应用
  • 基于Matlab实现三维地球模型(源码)
  • 【Python】使用Selenium 操作浏览器 自动化测试 记录
  • ECharts柱状图-柱图32,附视频讲解与代码下载
  • 电商数据API接口的未来趋势:智能化与自动化
  • Redis篇-16--持久化篇(RDB,AOF,混合持久化,最佳策略)
  • 【java】规则引擎
  • 硬盘清洁器 -一个功能出色的的文件与使用纪录清理工具,不仅可以将磁盘中不必要的暂存盘一次扫除,供大家学习研究参考
  • 数据库中常见的聚合函数
  • 网络多层的协议详述
  • 【自动控制原理】学习地图
  • Golang学习笔记_11——指针
  • 大模型呼入机器人有哪些功能特点?(转)
  • arcgisPro相接多个面要素转出为完整独立线要素
  • 编写composer包和发布全攻略
  • Springboot家政服务管理系统
  • ICCAD 2024新趋势:IP企业携手为汽车和桌面等热点应用打造联合IP解决方案
  • 校园交友app/校园资源共享小程序/校园圈子集合二手物品交易论坛、交友等综合型生活服务社交论坛