You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

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

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:28:27