Git 使用全指南:从配置到免密登录

Git 使用全指南:从配置到免密登录

  • [一、Git 基础配置](#一、Git 基础配置)
  • [二、Git 代码提交流程](#二、Git 代码提交流程)
    • [2.1 克隆远程仓库](#2.1 克隆远程仓库)
    • [2.2 创建并切换分支](#2.2 创建并切换分支)
    • [2.3 暂存文件](#2.3 暂存文件)
    • [2.4 提交到本地仓库](#2.4 提交到本地仓库)
    • [2.5 拉取远程最新代码](#2.5 拉取远程最新代码)
    • [2.6 推送本地分支到远程](#2.6 推送本地分支到远程)
  • [三、VSCode 服务器免密登录配置](#三、VSCode 服务器免密登录配置)
    • [3.1 生成 Windows SSH 密钥](#3.1 生成 Windows SSH 密钥)
    • [3.2 复制公钥到服务器](#3.2 复制公钥到服务器)
    • [3.3 设置文件权限(关键!)](#3.3 设置文件权限(关键!))
    • [3.4 在 VSCode 中验证连接](#3.4 在 VSCode 中验证连接)
  • 四、常见问题解决方案
    • [4.1 SSH 连接失败](#4.1 SSH 连接失败)
    • [4.2 分支操作错误](#4.2 分支操作错误)
    • [4.3 提交历史修改](#4.3 提交历史修改)

一、Git 基础配置

python 复制代码
# 设置全局用户名和邮箱(用于提交记录)
git config --global user.name "Your Name"
git config --global user.email your.email@example.com
# 生成SSH密钥(用于免密连接Git服务器)
ssh-keygen -t rsa -C "your.email@example.com"
# 按提示连续回车即可,无需设置密码
# 查看并复制公钥
cat ~/.ssh/id_rsa.pub

将生成的公钥添加到 GitLab/GitHub:

头像 → Settings → SSH Keys → 粘贴公钥 → Add Key

二、Git 代码提交流程

2.1 克隆远程仓库

python 复制代码
git clone git@github.com:username/repo.git  # SSH方式(推荐)
# 或使用HTTPS方式
git clone https://github.com/username/repo.git

2.2 创建并切换分支

python 复制代码
# 创建新分支并切换到该分支
git checkout -b new-feature
# 等价于以下两条命令
git branch new-feature  # 创建分支
git checkout new-feature  # 切换分支

2.3 暂存文件

python 复制代码
git add filename  # 添加单个文件
git add .  # 添加所有修改的文件(不推荐,容易提交无关文件)
git add -p  # 交互式添加(推荐,精确控制暂存内容)

2.4 提交到本地仓库

python 复制代码
# 标准提交格式(推荐)
git commit -m "feat: 实现用户登录功能"
# 完整提交规范(可选)
git commit -m "type(#issue): 描述"

以下为提交类型说明的表格形式呈现:

类型 说明 示例
feat 新增功能 feat (#123): 添加支付模块
fix 修复 Bug fix (#456): 解决登录异常
docs 文档更新 docs: 更新 README
style 格式调整(不影响功能) style: 统一代码缩进
refactor 代码重构(非新增/修复) refactor: 优化数据库查询
perf 性能优化 perf: 提升响应速度
test 添加测试用例 test: 补充单元测试
chore 构建/工具链更新 chore: 升级依赖版本

2.5 拉取远程最新代码

python 复制代码
# 在主分支更新
git pull origin main
# 在开发分支更新
git pull origin new-feature

2.6 推送本地分支到远程

python 复制代码
git push origin new-feature
# 首次推送可设置上游分支(简化后续推送)
git push -u origin new-feature

三、VSCode 服务器免密登录配置

3.1 生成 Windows SSH 密钥

python 复制代码
# 在Windows命令行(Git Bash)中执行
ssh-keygen -t rsa -C "your.email@example.com"

密钥文件位置:C:\Users\YourName.ssh\id_rsa.pub

3.2 复制公钥到服务器

python 复制代码
# 1. 查看Windows公钥内容
cat C:\Users\YourName\.ssh\id_rsa.pub
# 2. 登录Linux服务器,创建/编辑授权文件
vi ~/.ssh/authorized_keys
# 3. 将Windows公钥内容粘贴到该文件中

3.3 设置文件权限(关键!)

python 复制代码
# 确保SSH目录和授权文件权限正确
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys

3.4 在 VSCode 中验证连接

  1. 安装 Remote-SSH 扩展
  2. 点击左下角远程图标 → Connect to Host
  3. 输入服务器配置(如ssh username@server_ip)
  4. 选择私钥文件(Windows 路径 C:\Users\YourName.ssh\id_rsa)

四、常见问题解决方案

4.1 SSH 连接失败

python 复制代码
# 测试SSH连接
ssh -T git@github.com  # GitHub示例
ssh -T git@gitlab.com  # GitLab示例

# 若提示Permission denied,检查:
# 1. 公钥是否正确添加到Git服务
# 2. 防火墙是否开放SSH端口(默认22)

4.2 分支操作错误

python 复制代码
# 查看所有分支(本地+远程)
git branch -a
# 切换回主分支
git checkout main
# 删除本地分支
git branch -d new-feature
# 删除远程分支
git push origin --delete new-feature

4.3 提交历史修改

python 复制代码
# 修改最近一次提交信息
git commit --amend -m "修正后的提交信息"
# 撤销暂存
git reset HEAD filename
# 丢弃工作区修改
git checkout -- filename
  • 通过以上步骤,你可以高效地使用 Git 进行版本控制,并实现 VSCode 与服务器的免密连接。建议定期同步代码,保持分支整洁,遵循团队统一的提交规范。
相关推荐
Robot侠5 小时前
极简LLM入门指南4
大数据·python·llm·prompt·提示工程
技术钱6 小时前
vue3解决大数据加载页面卡顿问题
大数据
凯子坚持 c6 小时前
Git 多人协作深度解析:从工作流模拟到仓库维护
git
要站在顶端8 小时前
克隆大型仓库卡住(7%每次就卡住了)
git
福客AI智能客服8 小时前
从被动响应到主动赋能:家具行业客服机器人的革新路径
大数据·人工智能
五月底_9 小时前
上传大量文件到github repo
git·github
小五传输10 小时前
隔离网闸的作用是什么?新型网闸如何构筑“数字护城河”?
大数据·运维·安全
jkyy201410 小时前
AI健康医疗开放平台:企业健康业务的“新基建”
大数据·人工智能·科技·健康医疗
蚁巡信息巡查系统10 小时前
政府网站与政务新媒体检查指标抽查通报如何面对
大数据·内容运营
视界先声11 小时前
2025年GEO自动化闭环构建实践:监测工具选型与多平台反馈机制工程分享
大数据·人工智能·自动化