Windows环境下通过Putty配置Git远程Ubuntu服务器
在Ubuntu服务器部署Git并适配Windows团队的完整流程
Hey Frank, 我刚帮内部团队完成了几乎一模一样的配置,给你整理了一套当前有效的步骤,从服务器初始化到Windows客户端连接全搞定:
一、Ubuntu服务器端配置
1. 完成系统更新(你提到的第一步)
首先登录服务器,执行完整的更新命令,确保所有依赖包都是最新的:
sudo apt-get update && sudo apt-get upgrade -y
2. 安装Git
更新完成后,直接安装Git:
sudo apt-get install git -y
安装完可以用git --version验证是否成功安装。
3. 创建专用Git用户(不建议用root操作)
为了安全,我们创建一个专门的Git用户来管理仓库:
sudo adduser git
按照提示设置密码和基本信息,这个密码后续如果用密码登录SSH会用到,但我们后面会配置密钥登录更方便。
4. 创建第一个Git裸仓库
裸仓库是专门用于团队协作的远程仓库,没有本地工作目录,我们把它放在/opt/git目录下(你也可以选其他路径):
sudo mkdir -p /opt/git/myproject.git sudo chown -R git:git /opt/git/myproject.git # 把目录权限交给git用户 su git # 切换到git用户 cd /opt/git/myproject.git git init --bare # 创建裸仓库 exit # 切回原用户
5. 配置SSH密钥登录(Windows用户免密访问)
这一步是关键,让团队成员不用每次输密码就能操作仓库:
- 让每个Windows成员在本地生成SSH密钥:打开后续安装的Git Bash,执行
ssh-keygen -t rsa -b 4096 -C "你的工作邮箱",一路回车默认即可,会在C:\Users\你的用户名\.ssh下生成id_rsa(私钥)和id_rsa.pub(公钥)。 - 收集所有成员的
id_rsa.pub内容,传到Ubuntu服务器的git用户目录下:su git mkdir -p ~/.ssh nano ~/.ssh/authorized_keys # 打开编辑文件,把所有公钥内容粘贴进去,每个公钥占一行 chmod 700 ~/.ssh # 设置正确的权限,否则SSH会拒绝连接 chmod 600 ~/.ssh/authorized_keys exit - 确保服务器防火墙开放22端口(SSH默认端口),如果用UFW防火墙:
sudo ufw allow 22/tcp sudo ufw reload
二、Windows客户端配置
1. 安装Git for Windows
搜索下载Git for Windows安装包,安装时选默认选项即可,它会自带Git Bash和SSH工具,这是Windows上用Git的最佳方式。
2. 配置全局Git信息
打开Git Bash,设置你的用户名和邮箱(每次提交都会用到):
git config --global user.name "你的姓名" git config --global user.email "你的工作邮箱"
3. 克隆远程仓库
在Git Bash里执行克隆命令,替换成你的服务器IP和仓库路径:
git clone git@你的服务器IP:/opt/git/myproject.git
克隆完成后,就可以正常进行git add、git commit、git push、git pull这些协作操作了。
额外注意事项
- 如果你的服务器改了SSH端口(比如不是22),克隆时要指定端口:
git clone ssh://git@你的服务器IP:自定义端口/opt/git/myproject.git - 如果团队有人习惯用图形化工具(比如TortoiseGit),安装后也可以通过SSH密钥连接,配置时指定私钥路径即可。
内容的提问来源于stack exchange,提问作者Frank Reyes
相关产品推荐
相关产品推荐

