说来话长,公司用的svn,内网,我想弄个简单的git仓库客户端自己用,问了好久的AI,真垃圾的这个AI。
过程如下:
1、Windows自带的OpenSSH
自己找找网上怎么开启,没有的话离线下载:
离线下载
2、安装git,这里就不说了
3、启动服务
安装好后:
- 启动服务:Start-Service sshd
- 开机启动:Set-Service -Name sshd -StartupType 'Automatic'
- 防火墙22端口:netsh advfirewall firewall add rule name="SSH端口22" dir=in action=allow protocol=TCP localport=22
- 另外,要先把OpenSSH的命令工具设置为git的,不然默认用cmd(windows 下 基于ssh 创建 git 服务器)
New-ItemProperty -Path "HKLM:\SOFTWARE\OpenSSH" -Name DefaultShell -Value "C:\Program Files\Git\bin\bash.exe" -PropertyType String -Force
(我就是在这里卡了半天,路径一直不正确,就是因为命令工具的问题。。。)
4、初始化仓库
找个目录(比如D:\service\),在当前目录下用git bash执行:git init --bare project.git
project.git是名称,可以改
此目录就是仓库了(D:\service\project.git)
5、SSH 秘钥生成,添加到OpenSSH公钥下,而不是git的。
- 命令:ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
解释:
ssh-keygen:SSH 密钥生成工具
-t rsa:指定密钥类型为 RSA
-b 4096:指定密钥长度为 4096 位
-C "your_email@example.com":添加注释(通常是邮箱)
-
在C:\Users\用户名.ssh下,把id_rsa.pub文件里的内容,复制粘贴到OpenSSH的公钥配置配置下:
C:\ProgramData\ssh\administrators_authorized_keys
administrators_authorized_keys文件没有的话就新建 -
可以先测试,不能链接的话再看看C:\ProgramData\ssh\sshd_config配置
6、连接
git远端的url:用户名@仓库Ip:仓库路径。
比如:Administrator@127.0.0.1:/d/service/project.git
没错:是/d/而不是/D:/,这就是要要先把OpenSSH的命令工具设置为git的bash原因。。。
当然,如果有谁有不用设置的方法,也可以告诉我一下。