使用 Git for Windows 自带的 Git SSH 服务器(最简单、免费)
这种方式利用了 Git for Windows 安装时自带的 git-daemon 或通过 SSH 来实现,适合个人使用或小团队内部协作,无需额外安装复杂的服务器软件。

核心思想
- Git for Windows 不仅是一个客户端,它还包含了
git-daemon(一个只读的匿名服务)和sshd(一个 SSH 服务器)。 - 我们可以利用其内置的 SSH 服务器功能,让用户通过 SSH 协议安全地访问仓库。
优点
- 完全免费:无需购买任何软件。
- 安装简单:只需安装 Git for Windows 即可。
- 安全性高:使用 SSH 协议,连接是加密的。
缺点
- 用户管理麻烦:需要手动在 Windows 系统中创建用户,并将用户添加到
git用户组(或类似操作),权限管理相对基础。 - 功能单一:没有图形化管理界面,没有 Web 界面(如 GitLab/Gitea 那样)。
- 不适合大型团队:用户和权限管理会变得非常复杂。
详细步骤
第一步:安装 Git for Windows
- 访问 Git for Windows 官网 下载安装程序。
- 运行安装程序,一路 "Next" 即可。关键一步:在 "Adjusting your PATH environment" 界面,请选择 "Git from the command line and also from 3rd-party software",这样可以在任何命令行工具中使用 Git 命令。
- 其他选项保持默认即可,完成安装。
第二步:创建 Git 专用用户(强烈推荐)
为了安全,最好不要让所有人都用管理员账号来操作 Git,我们创建一个专门用于 Git 操作的系统用户。
- 打开 计算机管理(可以在开始菜单右键“此电脑” -> “管理”)。
- 在左侧导航栏中,选择 “本地用户和组” -> “用户”。
- 在右侧空白处右键,选择 “新用户”。
- 填写用户信息:
- 用户名:
git(推荐,方便记忆) - 密码:设置一个强密码。
- 取消勾选“用户下次登录时须更改密码”和“密码永不过期”(根据你的安全策略决定)。
- 用户名:
- 点击“创建”,完成用户创建。
第三步:创建 Git 仓库存放目录
- 在你的服务器上选择一个位置,
D:\GitRepos,用来存放所有的 Git 仓库。 - 在这个目录下,创建一个裸仓库,裸仓库没有工作区,只存放版本历史信息,非常适合作为服务器。
- 打开
cmd或PowerShell。 - 切换到你创建的目录:
cd D:\GitRepos - 创建一个裸仓库,
my-project.git:git init --bare my-project.git
- 你现在会看到
D:\GitRepos\my-project.git目录下有很多文件,这就是一个空的 Git 仓库。
- 打开
第四步:配置 SSH 服务器(核心步骤)
Git for Windows 自带了 SSH 服务器,但默认是关闭的,我们需要启用它。
-
以管理员身份打开 PowerShell,在开始菜单搜索
PowerShell,右键选择“以管理员身份运行”。 -
安装并启动 OpenSSH 服务器,在 PowerShell 中执行以下命令:
(图片来源网络,侵删)# 1. 安装 OpenSSH 服务器功能 Add-WindowsCapability -Online -Name OpenSSH.Server~~~~0.0.1.0 # 2. 启动并设置自动启动 Start-Service sshd Set-Service -Name sshd -StartupType 'Automatic'
-
配置防火墙规则,允许 SSH 连接(默认端口 22):
New-NetFirewallRule -Name sshd -DisplayName 'OpenSSH SSH Server' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
-
(可选但推荐)修改默认 SSH 端口,出于安全考虑,可以修改默认的 22 端口。
- 打开文件
C:\ProgramData\ssh\sshd_config。 - 找到
#Port 22这一行,取消注释并修改为你想要的端口号,Port 2222。 - 保存文件。
- 重要:如果修改了端口,请务必在防火墙规则中也更新对应的端口号:
New-NetFirewallRule -Name sshd-newport -DisplayName 'OpenSSH SSH Server on 2222' -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 2222
- 打开文件
-
重启 SSH 服务 使配置生效:
Restart-Service sshd
第五步:配置 Git 仓库的属主
将我们刚才创建的裸仓库的所有权赋予 git 用户。

- 右键点击
D:\GitRepos\my-project.git文件夹,选择 “属性”。 - 切换到 “安全” 选项卡,点击 “编辑”,“添加”。
- 输入你创建的用户名
git,点击“检查名称”,确定”。 - 在用户列表中选中
git用户,在下方权限列表中勾选 “完全控制”,点击“应用”和“确定”。
第六步:客户端连接测试
在你的另一台电脑(客户端)上,就可以克隆这个仓库了。
-
确保客户端也安装了 Git for Windows。
-
打开客户端的 Git Bash 或 PowerShell。
-
使用
git clone命令进行克隆,格式为ssh://<git用户名>@<服务器IP>:<SSH端口>/<仓库绝对路径>。示例:
- 如果你没有修改 SSH 端口(还是 22):
git clone ssh://git@192.168.1.100/D:/GitRepos/my-project.git
- 如果你修改了 SSH 端口(比如改成了 2222):
git clone ssh://git@192.168.1.100:2222/D:/GitRepos/my-project.git
- 注意:Windows 路径中的
\在 SSH URL 中需要用 表示。
- 如果你没有修改 SSH 端口(还是 22):
-
第一次连接时,客户端会询问你是否信任该主机的公钥,输入
yes。 -
然后会提示你输入
git用户的密码。
如果克隆成功,说明你的 Git 服务器已经搭建好了!
使用 Gitea(功能强大、轻量级、带 Web UI)
Gitea 是一个用 Go 语言编写的开源 Git 服务,类似于 GitHub/GitLab,但更轻量、更容易部署。这是目前非常推荐的 Windows 搭建方案。
优点
- 功能齐全:提供 Web 界面、问题跟踪、Wiki、代码审查、用户管理、团队协作等。
- 轻量级:资源占用比 GitLab 小得多,对硬件要求低。
- 易于安装:提供 Windows 原生安装包。
- 活跃的社区:持续更新和维护。
缺点
- 比 Git for Windows 方案稍复杂一点点。
详细步骤
-
下载 Gitea
- 访问 Gitea 官网 或 GitHub Releases 页面。
- 下载适用于 Windows 的 64 位可执行文件(
gitea-windows-1.20.5-amd64.exe)。
-
创建 Gitea 用户和目录
- 同样,建议创建一个专用的系统用户,
gitea。 - 创建一个目录用于存放 Gitea 的程序和数据,
D:\gitea,在这个目录下再创建一个data子目录,用于存放仓库数据、数据库等。
- 同样,建议创建一个专用的系统用户,
-
配置环境变量(推荐)
- 将 Gitea 可执行文件所在的路径(
D:\gitea)添加到系统的Path环境变量中,这样你就可以在任何地方运行gitea命令。
- 将 Gitea 可执行文件所在的路径(
