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 与服务器的免密连接。建议定期同步代码,保持分支整洁,遵循团队统一的提交规范。
相关推荐
暖苏33 分钟前
python-异常(笔记)
大数据·开发语言·笔记·python·异常
霖001 小时前
深入讲讲异步FIFO
笔记·vscode·单片机·嵌入式硬件·学习·fpga开发
松果财经3 小时前
外卖“0元购”退场后,即时零售大战才刚开始
大数据·人工智能
永洪科技3 小时前
永洪科技华西地区客户交流活动成功举办!以AI之力锚定增长确定性
大数据·人工智能·科技·数据分析·数据可视化
大卫小东(Sheldon)3 小时前
智能生成git提交消息工具 GIM 发布 1.7 版本了
git·ai·rust
snpgroupcn4 小时前
如何管理数据足迹,实现SAP S/4HANA的无缝迁移
大数据·云计算
武子康4 小时前
大数据-58 Kafka 消息发送全流程详解:序列化、分区策略与自定义实现
大数据·后端·kafka
shengyicanmou5 小时前
2025年物联网新趋势:格行随身WiFi的模块化架构与低延迟优化
大数据·人工智能
补三补四5 小时前
Shapley与SHAP
大数据·人工智能·算法·机器学习·数据分析
爱吃小土豆豆豆豆6 小时前
登录校验一
java·大数据·数据库