CentOS Git服务器创建多个仓库 – 高效代码托管指南

CentOS Git服务器搭建与多仓库管理实战

环境准备与Git安装

使用root权限更新系统:yum update -y

安装Git核心组件:yum install git -y

创建专用Git账户:useradd -m -s /bin/bash git

配置SSH安全访问

切换至Git用户:su - git

创建SSH目录:mkdir -p ~/.ssh && chmod 700 ~/.ssh

添加开发者公钥:echo "ssh-rsa [公钥内容]" >> ~/.ssh/authorized_keys

初始化多仓库结构

创建仓库根目录:mkdir /home/git/repos && cd $_

批量创建项目仓库:

  • git init --bare project1.git
  • git init --bare project2.git
  • git init --bare api-service.git

设置目录所有权:chown -R git:git /home/git/repos

高级权限控制(Gitolite方案)

安装依赖:yum install perl openssh-server -y

克隆Gitolite:git clone https://github.com/sitaramc/gitolite

初始化配置:./gitolite/install -ln ~/bin

设置管理员密钥:gitolite setup -pk admin.pub

自动化仓库创建脚本

#!/bin/bash
# auto_create_repo.sh
REPO_NAME=$1
sudo -u git mkdir /home/git/repos/${REPO_NAME}.git
sudo -u git git init --bare /home/git/repos/${REPO_NAME}.git

脚本使用示例:./auto_create_repo.sh new-project

客户端连接验证

本地克隆仓库:git clone git@[服务器IP]:repos/project1.git

推送测试提交:git push origin main

维护与优化建议

  • 定期执行仓库压缩:git gc --aggressive
  • 启用Git钩子脚本实现自动部署
  • 配置防火墙规则:firewall-cmd --add-service=ssh --permanent
  • 监控磁盘使用:du -sh /home/git/repos/*

完成配置后,您的CentOS服务器可为团队提供安全的私有Git服务,支持灵活的多项目管理。HTTPS协议访问可通过Nginx反向代理实现。

寰宇互联服务器4核4G云服务器1元/月,网络稳定、抗DDos、国际BGP、性能强劲,十年服务经验QQ:97295700 微信:huanidc

阅读剩余
THE END