如何配置 Git 仓库服务器?

2025.5.29 杂七杂八 1156

如何配置 Git 仓库服务器? 杂七杂八-第1张

本文详细介绍了如何从零开始配置一个私有 Git 仓库服务器,包括服务器环境准备、Git 安装配置、用户权限管理以及远程仓库访问等核心步骤,适合开发团队或个人搭建高效代码管理平台。

一、服务器环境准备

在开始配置 Git 服务器前,需要确保具备以下条件:

  • Linux 服务器(推荐 Ubuntu/CentOS)
  • SSH 访问权限
  • sudo 或 root 权限
 更新系统软件包(Ubuntu示例)
sudo apt update && sudo apt upgrade -y

二、安装 Git 服务

在服务器上安装 Git 核心组件:

 Ubuntu/Debian
sudo apt install git -y

 CentOS/RHEL
sudo yum install git -y

三、创建 Git 用户和仓库目录

为安全考虑,建议创建专用用户管理 Git 仓库:

 创建git用户
sudo adduser git
sudo passwd git

 创建仓库存储目录
sudo mkdir -p /var/repo
sudo chown git:git /var/repo

四、初始化裸仓库

裸仓库(bare repository)是 Git 服务器的标准配置:

 切换到git用户
su - git

 初始化示例仓库
cd /var/repo
git init --bare project.git

 设置目录权限
chmod -R 755 /var/repo

五、配置 SSH 访问

通过 SSH 密钥实现安全访问:

 在客户端生成SSH密钥(本地机器执行)
ssh-keygen -t ed25519 -C "your_email@example.com"

 将公钥上传到服务器
cat ~/.ssh/id_ed25519.pub | ssh git@yourserver "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

六、测试远程连接

验证仓库是否可正常访问:

 本地克隆测试
git clone git@yourserver:/var/repo/project.git

 首次推送测试
cd project
touch README.md
git add .
git commit -m "Initial commit"
git push origin master

七、高级配置(可选)

  • GitWeb:可视化仓库浏览界面
  • GitLab/Gitea:完整的 Git 管理平台
  • HTTPS 访问:配置 Nginx 反向代理
  • 钩子脚本:实现自动化部署

常见问题解决

Q1:权限拒绝错误
检查 /var/repo 目录权限和 SELinux 设置(CentOS)

Q2:SSH连接缓慢
在服务器 /etc/ssh/sshd_config 中添加:
UseDNS no

评论