住宅主机搭建私有Git代码仓库零基础教程

你能从本文得到什么

很多开发者想在自己的电脑或家庭服务器上搭建一个私有Git仓库,用于备份个人项目、团队协作或学习版本控制。
但直接装GitLab太臃肿,用第三方托管又不放心。
本文面向零基础用户,手把手教你用住宅主机搭建最轻量的私有Git仓库,全程使用SSH访问,安全且零费用。

准备条件

在开始操作前,你需要确认以下条件:

  • 一台能长期开机的住宅主机:可以是闲置旧电脑、NAS或云服务器。本文以Ubuntu 20.04为例,其他Linux发行版命令类似。
  • 系统已安装OpenSSH服务:用于远程访问。大多数Linux系统默认安装,未安装时用sudo apt install openssh-server
  • 客户端设备:另一台电脑或手机,用于克隆和推送代码。客户端也需安装Git。
  • 内网穿透(可选):如需外网访问,需设置端口转发或使用frp等工具,本文仅以内网环境为例。

分步操作:从安装Git到完成推送

1. 在住宅主机上安装Git

执行以下命令安装Git:

sudo apt update
sudo apt install git -y

安装完成后,用git --version验证版本。
如果出现版本号,说明安装成功。

2. 创建裸仓库

裸仓库(bare repository)只存放版本历史,不包含工作目录,适合作为远程仓库。
我们先在主机上创建一个存放仓库的目录:

sudo mkdir -p /home/git/repos
sudo useradd -m -s /bin/bash git
sudo passwd git   # 设置密码,按提示输入两次

然后切换到git用户并初始化裸仓库:

sudo -u git -H bash -c "cd /home/git/repos && git init --bare myproject.git"

此时 /home/git/repos/myproject.git 就是你的私有仓库。

3. 配置SSH访问

为了安全,我们通过SSH key认证,避免每次输入密码。
客户端上生成SSH密钥(如果已有可跳过):

ssh-keygen -t ed25519 -C "your_email@example.com"
# 一直按回车使用默认路径

然后将公钥复制到住宅主机的git用户下:

ssh-copy-id git@192.168.1.100   # 换成你住宅主机的内网IP

如果提示“no such identity”,请手动将~/.ssh/id_ed25519.pub内容追加到主机/home/git/.ssh/authorized_keys中。
完成后测试SSH连接:

ssh git@192.168.1.100

如果无需密码且成功登录,说明配置成功。
退出SSH会话。

4. 从客户端克隆和推送代码

回到客户端,创建一个本地项目并初始化:

mkdir my_local_project
cd my_local_project
git init
echo "# My Project" > README.md
git add .
git commit -m "init"

然后添加远程仓库并推送:

git remote add origin git@192.168.1.100:/home/git/repos/myproject.git
git push -u origin master

如果一切正常,你会看到对象计数和写入完成的输出。
私有Git仓库就搭建好了。

避坑指南:常见问题与解决

  • 权限拒绝(Permission denied):检查主机上/home/git/.ssh/authorized_keys是否权限正确,应为600。执行chmod 600 /home/git/.ssh/authorized_keys修复。
  • 防火墙阻止SSH端口:住宅主机默认22端口可能被防火墙拦截。运行sudo ufw allow 22/tcp打开端口。
  • 仓库路径写错git remote add中的路径是绝对路径,确保和git init --bare时一致。
  • 内网IP变动:如果主机重启后IP变化,客户端需要更新remote地址。建议在路由器设置DHCP静态绑定。
  • 备份裸仓库:定期将/home/git/repos/整个目录备份到其他位置,防止磁盘损坏丢失代码。

效果验证与后续操作

完成推送后,在客户端执行以下命令确认仓库可用:

cd ..
mkdir test_clone
cd test_clone
git clone git@192.168.1.100:/home/git/repos/myproject.git
cd myproject
ls -la

如果能看到你之前提交的README.md,说明克隆成功。
你也可以在另一台电脑上重复克隆步骤,验证多端协作。

至此,你已经成功用住宅主机搭建了私有Git代码仓库。
如果你想进一步实现Web界面管理或自动化构建,可以继续学习安装Gitea或整合CI/CD工具。
本文以最轻量的方式满足基本版本控制需求,稳定且无额外开销,适合个人和小团队使用。

分享到:
上一篇
Linux搭建本地yum/apt源住宅主机
下一篇
AI中转接口流式输出兼容配置实操指南
1
系统公告

机房迁移升级通知

尊敬的用户: IP 段 103.23.148.x、156.224.29.x 原香港一区线路波动、攻击频繁,平台定于 7 月 5 日凌晨分批迁移至香港 GIA 机房,硬件升级 AMD 铂金机型。 迁移均在凌晨操作,最大程度降低业务影响,迁移期间服务器临时关机; 升级后配置不降低、费用不涨价,数据默认同步迁移; 迁移后 IP 全部更换,请及时修改域名解析、防火墙白名单; 建议提前备份重要数据,有问题可联系在线客服。 感谢理解与支持! 泽御云科技 2026.06.30
服务中心
客服
在线客服
24小时为您服务
咨询
联系我们
联系我们,为您的业务提供专属服务。
24/7 技术支持
如果您遇到寻求进一步的帮助,请过工单与我们进行联系。
24/7 即时支持
泽御云
售前客服
泽御云
泽御云
售后客服
泽御云
技术支持
评价
您对当前页面的整体感受是否满意?
😞
非常不满意
😕
不满意
😐
一般
🙂
满意
😊
非常满意