裸仓库 + Git Bash 搭建 本地 Git 服务端与客户端

下面是在 Windows 上使用 裸仓库 + Git Bash 搭建 本地 Git 服务端与客户端 的详细步骤。适合本机或局域网其他设备通过 SSH 或本地路径 访问,简单轻量,适合开发者日常使用或小团队协作。


🛠️ 一、准备工作

1. 安装 Git for Windows

  • 默认安装即可(勾选 Git Bash、OpenSSH)

  • 安装完成后可以使用 Git Bash


📦 二、服务端配置(裸仓库)

1. 创建裸仓库

裸仓库是不能直接写代码的,只用于共享、推送和拉取代码。

在 Git Bash 执行以下命令:

bash 复制代码
mkdir -p D:/git-server/myproject.git
cd D:/git-server/myproject.git
git init --bare

文件夹会出现如下结构:

bash 复制代码
HEAD
config
description
hooks/
info/
objects/
refs/

🧑‍💻 三、客户端配置(同一台电脑作为客户端)

你可以在本机的其他文件夹中进行操作:

1. 克隆裸仓库(使用本地路径)

bash 复制代码
git clone file:///D:/git-server/myproject.git

也可以这样写:

bash 复制代码
git clone D:/git-server/myproject.git

2. 进行开发

bash 复制代码
cd myproject
echo "# Hello Git Server" > README.md
git add README.md
git commit -m "init"
git push origin master

🌐 四、局域网其他电脑访问(可选)

1. 开启 Windows 的 SSH 服务(可选)

你需要:

  • 在 Windows 启用 OpenSSH Server(Windows 功能里开启)

  • C:\Users\用户名\.ssh\authorized_keys 添加客户端公钥

  • 将裸仓库放到某个用户有访问权限的目录,如 C:\git-server

客户端可通过命令:

bash 复制代码
git clone ssh://user@192.168.1.10/C:/git-server/myproject.git

✅ 五、简易使用总结

功能 命令示例
初始化裸仓库 git init --bare
克隆裸仓库(本地) git clone file:///路径
克隆裸仓库(局域网) git clone ssh://user@ip/路径
设置远程地址 git remote add origin ...
推送代码 git push origin master

📌 示例流程演示(完整命令串)

bash 复制代码
# 1. 服务端创建裸仓库
mkdir -p D:/git-server/myproject.git
cd D:/git-server/myproject.git
git init --bare

# 2. 客户端 clone
cd D:/workspace
git clone D:/git-server/myproject.git

# 3. 提交代码(可以将需要添加的自己的代码全部放到该目录下,然后批量提交(注意添加忽略文件))
cd myproject
echo "test" > test.txt
git add .
git commit -m "add test"
git push origin master
相关推荐
lifallen1 小时前
Java Stream sort算子实现:SortedOps
java·开发语言
IT毕设实战小研1 小时前
基于Spring Boot 4s店车辆管理系统 租车管理系统 停车位管理系统 智慧车辆管理系统
java·开发语言·spring boot·后端·spring·毕业设计·课程设计
qq_377572772 小时前
git commit - revert + reset + checkout + reorder
git
cui__OaO3 小时前
Linux软件编程--线程
linux·开发语言·线程·互斥锁·死锁·信号量·嵌入式学习
鱼鱼说测试3 小时前
Jenkins+Python自动化持续集成详细教程
开发语言·servlet·php
艾莉丝努力练剑4 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
CHEN5_024 小时前
【Java基础面试题】Java基础概念
java·开发语言
杜子不疼.5 小时前
《Python学习之字典(一):基础操作与核心用法》
开发语言·python·学习
落霞的思绪6 小时前
Java设计模式详细解读
java·开发语言·设计模式
阿巴~阿巴~6 小时前
深入解析C++ STL链表(List)模拟实现
开发语言·c++·链表·stl·list