通过SSH与本地或局域网git仓库建立连接

Git 安装
  1. 默认安装

2.准备两个内容一个是主机相关信息的.ssh/config内容,一个是提供ssh服务发送的私钥

3.在win搜索并打开%userprofile%, 这是一个地址,%USERPROFILE% =C:\Users{ {用户名}}

4 查看这个目录下是由有.ssh文件夹,没有的话新建

5在%userprofile%目录下,右键 Git bash here, 在git bash里输入 mkdir .ssh
为什么要用git base 来新建 .ssh 文件夹?A: 很多情况下文件管理系统不支持新建 .ssh 这样文件名的文件夹这里用cmd 也可以做到一样的功能

6.进入.ssh文件夹
将刚才下载的服务器私钥文件复制到.ssh目录,并将文件名修改为id_rsa(无后缀名)
新建%userprofile%/.ssh/config文件(无后缀名)
把前面复制的 .ssh/config文件的内容 粘贴进来

12.测试是否配置成功,
右键 Git bash here, 在git bash里输入 git地址

(SSH地址:git@gitlab*********.com**😗************************.git)

git地址为:git@gitlab********.com**

ssh -T git@gitlab*****************.com

如果返回结果是Welcome to xxxx,那就表示配置成功了(最后是你的账号名,每个人都不一样)

这个地方会有个known_hosts文件的问题,在第一次链接的时候known_hosts文件需要记录当前的ssh链接信息,所以一开始要打yes 再回车不能直接回车【主机验证】

tips 应用:
打开SourceTree

<think>好的,我现在要帮用户介绍一下局域网Git。首先,我需要确认用户的需求是什么。他们可能是在一个没有互联网连接的环境下,者希望内部团队协作时使用Git,所以需要了解如何在局域网内搭建和使用Git仓库。 首先,我应该解释什么是局域网Git,也就是在本地网络中使用Git进行版本控制,不需要依赖互联网服务如GitHubGitLab。这可能包括搭建本地Git服务器者使用共享文件夹等方式。 接下来,用户可能需要知道具体的步骤和方法。常见的局域网Git方案有几个:基于SSHGit服务器、使用Git Daemon、者简单的共享文件夹。我需要逐一介绍这些方法,包括它们的优缺点和配置步骤。 比如,基于SSH的方法比较常见,用户可能已经熟悉SSH,所以设置起来相对容易。需要说明如何在服务器创建仓库,然后客户端如何克隆和推送。这里要注意权限问题,可能需要设置用户账户和SSH密钥。 然后是Git Daemon,这种方法适合只读访问,配置起来简单,但可能不够安全,适合内部测试公开只读仓库。需要说明如何启动Git Daemon,并设置目录权限。 共享文件夹方法可能适合Windows用户,通过SMB直接路径访问,但要注意文件锁的问题,可能不适合多人同时写入。需要提醒用户这种方法的局限性。 另外,可能还需要提到一些工具,比如GitWebGitea这样的自托管Git服务,可以在局域网内提供类似GitHub的界面,方便团队协作。但Gitea可能需要更多的配置,适合有一定经验的用户。 用户可能关心权限管理,比如如何控制不同成员的访问权限。基于SSH的话,可以通过系统账户和SSH密钥来管理,而Gitea这样的工具则提供更细粒度的权限控制。 需要提醒用户注意局域网内的备份策略,避免数据丢失,毕竟本地服务器没有云服务的冗余保障。同时,网络稳定性也很重要,确保仓库的可访问性。 最后,总结不同方案的适用场景,帮助用户根据团队规模和技术水平选择合适的方法。比如小团队可能适合共享文件夹SSH,而大团队可能需要Gitea这样的工具。 在解释过程中,要保持语言简洁,步骤清晰,避免使用过于专业的术语,者必要时解释术语。同时,检查是否有遗漏的常见问题,比如如何处理冲突,者如何迁移现有的仓库局域网环境。 可能还需要给出一些示例命令,比如创建仓库的命令,克隆仓库的命令,以及如何添加远程仓库。这些命令要用正确的格式,比如使用$...$包裹,独立公式用$$...$$,但根据用户给的系统指令,行内数学表达式需要用$...$,但这里可能更多是代码块,需要确认是否适用。不过用户提到的是数学表达式,所以可能代码块不需要特别处理,但需要确保LaTeX语法正确,比如如果有数学公式的话。不过在这个问题中,可能涉及到的代码示例更多是命令行,所以可能需要用代码块标记,但用户没有特别说明,所以可能需要根据平台的支持情况来处理。 总之,我需要结构清晰地分步骤介绍不同的方法,比较它们的优缺点,给出配置示例,并提醒注意事项,帮助用户顺利在局域网内搭建Git环境。</think>### 局域网 Git 介绍搭建指南 局域网 Git 是通过本地网络(非互联网)实现代码版本控制的方案,适合团队内部协作离线环境使用。以下是关键步骤常见方案: --- #### 一、核心概念 1. **本地 Git 仓库** 每个开发者拥有完整的代码历史,局域网内通过共享仓库实现同步。 2. **裸仓库(Bare Repository)** 无工作目录的纯仓库,用于中央存储,命名如 `project.git`,格式: ```bash $ git init --bare project.git ``` --- #### 二、常见搭建方案 ##### 方案 1:基于 SSH 协议(推荐) - **适用场景**:需读写权限控制的团队协作。 - **步骤**: 1. **服务器端**: ```bash # 创建仓库 $ mkdir -p /git-repos/project.git $ cd /git-repos/project.git $ git init --bare ``` 2. **客户端克隆推送**: ```bash # 克隆仓库 $ git clone user@server-ip:/git-repos/project.git # 添加远程仓库 $ git remote add origin user@server-ip:/git-repos/project.git # 推送代码 $ git push origin main ``` - **权限管理**:通过系统用户账户和 SSH 密钥控制访问。 ##### 方案 2:Git Daemon(只读仓库) - **适用场景**:公开只读仓库(如内部文档)。 - **步骤**: 1. **服务器端启动服务**: ```bash $ git daemon --base-path=/git-repos --export-all --reuseaddr ``` 2. **客户端克隆**: ```bash $ git clone git://server-ip/project.git ``` ##### 方案 3:共享文件夹(快速简易) - **适用场景**:小团队临时协作(Windows/Linux 均支持)。 - **步骤**: 1. **共享目录**:将裸仓库放在网络共享路径(如 `\\server\git-repos\project.git`)。 2. **客户端操作**: ```bash # 直接克隆共享路径 $ git clone //server/git-repos/project.git ``` - **注意**:避免多人同时写入(可能引发文件锁冲突)。 ##### 方案 4:自托管 Git 服务(Gitea/GitLab) - **适用场景**:需 Web 界面和高级功能(如 Issue 跟踪)。 - **工具示例**: - **Gitea**:轻量级,适合中小团队。 - **GitLab**:功能全面,需更多资源。 - **部署步骤**: 1. 在局域网服务器安装 Docker。 2. 通过 Docker 快速部署 Gitea: ```bash $ docker run -d --name=gitea -p 3000:3000 -v /data/gitea:/data gitea/gitea ``` 3. 访问 `http://server-ip:3000` 完成初始化配置。 --- #### 三、权限管理对比 | 方案 | 读写控制 | 安全性 | 复杂度 | |--------------|----------|--------|--------| | SSH | ✔️ | 高 | 中 | | Git Daemon | ❌(只读)| 低 | 低 | | 共享文件夹 | ✔️ | 中 | 低 | | Gitea/GitLab | ✔️ | 高 | 高 | --- #### 四、注意事项 1. **备份策略**:定期备份裸仓库(如 `rsync` 压缩存档)。 2. **网络稳定性**:确保局域网 IP 固定,避免地址变化导致连接中断。 3. **冲突处理**:多人协作时需规范分支管理(如 Git Flow)。 --- #### 五、总结 - **小团队/快速原型**:优先选择 **SSH** **共享文件夹**。 - **中大型团队**:推荐 **Gitea** 提供完整协作功能。 - **只读场景**:使用 **Git Daemon** 简化部署。 通过上述方案,可高效搭建局域网 Git 环境,满足不同场景下的代码管理需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值