Windows 下搭建 Git 本地服务器并进行开发

目录

1. 安装 Git for Windows

2. 创建本地 Git 仓库(裸仓库)

3. 设置本地开发环境

(1) 在开发机器上克隆仓库

(2) 提交代码

4. 远程访问本地 Git 服务器

方法 1:使用 SSH 访问

(1) 配置 SSH 服务器

(2) 客户端连接

方法 2:使用 Git 自带 HTTP 服务器

(1) 配置 HTTP 服务器

5. 远程开发流程

(1)开发者克隆仓库

(2)开发、提交

(3)推送到服务器

6. 可视化管理工具(可选)

总结


Windows 下搭建 Git 本地服务器并进行开发,可以使用 Git for Windows + SSH/HTTP 访问。下面是完整步骤:

1. 安装 Git for Windows

下载 Git for Windows官网

    安装时选择:

    1. Use Git from the Windows Command Prompt
    2. Use OpenSSH(默认选项)
    3. Checkout as-is, commit as-is(防止 Windows/Linux 换行符问题)

    安装完成后,打开 Git Bash,输入:

    git --version

    确保 Git 安装成功。

    2. 创建本地 Git 仓库(裸仓库)

    在 Windows 下,我们可以直接在本地创建一个裸仓库作为服务器。

    mkdir D:\git-server

    cd D:\git-server

    git init --bare myproject.git

    --bare 选项表示这是一个裸仓库,不包含工作目录,适合作为远程仓库。

    3. 设置本地开发环境

    (1) 在开发机器上克隆仓库

    可以在 Windows 另一台电脑或同一台电脑的不同目录克隆仓库:

    git clone D:\git-server\myproject.git D:\myproject

    cd D:\myproject

    (2) 提交代码

    创建一个示例文件并提交:

    echo "Hello Git" > README.md

    git add README.md

    git commit -m "First commit"

    git push origin master

    4. 远程访问本地 Git 服务器

    如果需要在 局域网 内其他设备访问本地 Git 服务器,可以使用 SSH 或 HTTP

    方法 1:使用 SSH 访问

    (1) 配置 SSH 服务器

    Windows 10/11 内置 OpenSSH,启用方法:

    启用 SSH 服务

    1. 打开 PowerShell(管理员模式),输入:

    Get-Service sshd

    1. 如果 sshd 未启动,运行:

    Start-Service sshd

    Set-Service -Name sshd -StartupType Automatic

    添加 Git 用户

    1. 创建 git 账户(或使用现有账户)
    2. 在 C:\Users\git\.ssh\authorized_keys 文件中添加客户端公钥

    配置仓库目录权限

    icacls D:\git-server /grant git:F /t

    (2) 客户端连接

    在远程客户端(Windows/Linux/macOS)上,运行:

    git clone ssh://[email protected]/D:/git-server/myproject.git

    推送代码

    git add .

    git commit -m "Update"

    git push origin master

    方法 2:使用 Git 自带 HTTP 服务器

    Git for Windows 自带 git-http-backend,可以搭建 HTTP 访问

    (1) 配置 HTTP 服务器

    在 Git Bash 中执行:

    mkdir D:\git-server

    cd D:\git-server

    git daemon --reuseaddr --base-path=D:/git-server --export-all --verbose

    然后其他设备可以通过:

    git clone git://192.168.1.100/myproject.git

    此方法 仅支持克隆(read-only),如果要支持 HTTP 推送(write),需要配置 Apache/Nginx

    5. 远程开发流程

    (1)开发者克隆仓库

    git clone ssh://[email protected]/D:/git-server/myproject.git

    (2)开发、提交

    cd myproject

    echo "New feature" >> feature.txt

    git add feature.txt

    git commit -m "Add new feature"

    (3)推送到服务器

    git push origin master

    ​​​​​​​

    6. 可视化管理工具(可选)

    如果不想用命令行,可以使用:

    • Gitea(轻量级 Git 服务器,支持 Web 界面)下载
    • GitLab(企业级 Git 服务器)官网
    • Sourcetree(Git GUI 客户端)下载


    总结

    • 仅本机开发:直接使用 git init --bare
    • 局域网共享
      • SSH(推荐,安全性高)
      • Git Daemon(适合只读访问)
      • HTTP 服务器(需配置 Apache/Nginx)
    • 可视化管理:可选用 Gitea 或 GitLab

    这样,你就可以在 Windows 上搭建 Git 本地服务器 并进行开发了!

    Read more

    Java 程序员的 AI 进阶:用 Deeplearning4j 打造工业级推荐引擎

    Java 程序员的 AI 进阶:用 Deeplearning4j 打造工业级推荐引擎

    文章目录 * 🎯 Java 程序员的 AI 进阶:用 Deeplearning4j 打造工业级推荐引擎 * 📊 1. 为什么 Java 依然是 AI 工程化的“定海神针”? * 🧬 1.1 内存管理的“物理隔离” * 🛡️ 1.2 工业级生态的无缝闭环 * 🌍 2. 数据预处理:AI 模型的“洗经伐髓” * 🧬 2.1 特征工程的“物理建模” * 📊 推荐数据流转对比表: * 🔄 3. ND4J 内核:压榨 JVM 的每一分算力 * 🧬 3.1 堆外内存与 BLAS 加速 * 🏗️ 4. 代码实战:用 DL4J 构建神经网络推荐器 (Neural CF)

    By Ne0inhk
    JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统

    JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统

    Jsp技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统 * 前言 * 一、什么是JSP * 1.1 JSP是干什么的? * 1.2 JSP与Servlet的关系是什么? * 二、在Idea中创建第一个JSP系统 * 三、JSP和HTML的差别 * 3.1 格式区别 * 3.2 注释区别 前言 * 在前面的内容中,我们已经系统学习了 Web 开发的基础技术:从构建网页骨架的 HTML、美化页面的 CSS,到实现服务器端逻辑的 Java Servlet。 * 这些知识为我们打开了动态 Web 开发的大门,让我们能够通过 Servlet 处理客户端请求、操作数据库并返回动态数据。 * 然而,在 Servlet 中直接拼接 HTML 代码实现页面渲染时,代码往往显得繁琐且难以维护 —— 有没有一种更简洁、更直观的方式,

    By Ne0inhk
    Java 大视界 -- 基于 Java+Kafka 构建高可用消息队列集群:实战部署与性能调优(442)

    Java 大视界 -- 基于 Java+Kafka 构建高可用消息队列集群:实战部署与性能调优(442)

    Java 大视界 -- 基于 Java+Kafka 构建高可用消息队列集群:实战部署与性能调优(442) * 引言: * 正文: * 一、 Kafka 高可用集群核心认知:先懂原理,再谈部署 * 1.1 Kafka 高可用核心原理 * 1.1.1 核心组件协同逻辑 * 1.1.2 高可用核心:多副本与 Leader 选举机制 * 1.2 Kafka 高可用集群架构设计要点 * 1.3 技术栈选型:Java+Kafka 核心版本适配 * 二、 实战部署:Java+Kafka 高可用集群搭建 * 2.1 部署前准备:环境初始化

    By Ne0inhk
    【Java ArrayList】从入门到精通:从概念,使用到扩容机制,一篇带你掌握Java动态数组核心

    【Java ArrayList】从入门到精通:从概念,使用到扩容机制,一篇带你掌握Java动态数组核心

    🎁个人主页:User_芊芊君子 🎉欢迎大家点赞👍评论📝收藏⭐文章 🔍系列专栏:Java.数据结构 【前言】 ArrayList 是 Java 集合框架(Java Collections Framework)中最常用的动态数组实现,它提供了灵活的容量管理、便捷的增删改查操作,广泛应用于日常开发中。本文将深入剖析 ArrayList 的底层结构、核心方法源码、性能特点及最佳实践,帮助读者彻底掌握这一基础数据结构。 文章目录: * 一、ArrayList的概念 * 二、ArrayList的使用 * 1.构造ArrayList * 1.1 无参构造方法 * 1. 2 带有初始容量的构造方法 * 1.3 用其他集合类构造ArrayList * 2.操作方法 * 2.1 boolean add(

    By Ne0inhk