Git 常用操作指南:从初始化到回退的高频命令速查

Git 是开发协作中最常用的版本控制工具。本文按"开始工作、提交改动、分支协作、撤销回退、远程同步"的顺序,整理一套高频命令。

一、初始化与查看状态

进入项目目录后,使用 git init 初始化仓库;克隆已有项目使用 git clone <仓库地址>。每次操作前先执行 git status,它会说明哪些文件被修改、哪些已暂存。git log --oneline 可以快速查看提交历史;git diff 查看工作区与暂存区的差异,git diff --staged 查看暂存区与最新提交的差异。

二、提交一次清晰的改动

基本流程是"修改---暂存---提交":

  1. git add <文件名>:暂存指定文件。
  2. git add .:暂存当前目录全部改动,执行前建议先检查 git status。
  3. git commit -m "描述本次改动":创建提交。

提交信息建议用动词开头,例如"feat: 添加登录接口""fix: 修复空数据异常"。一个提交尽量只做一件事,代码审查、定位问题和回退都会更轻松。

三、分支协作

主分支通常保持稳定,新功能应在独立分支开发。git branch 查看分支;git switch -c feature/login 创建并切换分支;git switch main 回到主分支。合并功能分支使用 git merge feature/login。

git rebase 也能将提交按顺序移到当前分支,但已经推送给他人的公共分支应谨慎使用,避免改写他人依赖的历史。

四、远程仓库同步

git remote -v 查看远程地址。首次关联远程仓库:git remote add origin <仓库地址>。推送当前分支:git push -u origin main,之后只需 git push。git fetch 获取远程信息但不合并;git pull 拉取并合并。

开始一天工作前先 git pull;推送前再次执行 git status 和 git diff,能显著减少误提交。

五、撤销与回退

撤销尚未暂存的改动:git restore <文件名>。取消暂存但保留文件修改:git restore --staged <文件名>。刚提交但要补文件或改说明:git commit --amend。

已推送、且团队成员可能依赖的提交,优先使用 git revert <提交号>,它会新增一次反向提交,历史清晰且协作安全。git reset 更适合本地未共享的提交:--soft 保留暂存内容,--mixed 保留工作区内容,--hard 会直接丢弃改动,执行前务必确认。

六、实用习惯

提交前养成 git status、git diff、git log --oneline 三连检查;使用 .gitignore 排除密码、密钥和本地配置;合并前更新目标分支;遇到冲突时先理解两侧改动,再删除冲突标记并完成提交。

掌握这些命令后,大多数 Git 日常场景都能从容处理。小步提交、分支隔离、推送前检查,以及对不可逆操作保持谨慎,比记住更多命令更重要。

相关推荐
网络毒刘16 分钟前
开源 Aider 工作流实战:Git 提交驱动的 AI 结对,与 Cursor 何时互补
git·ai编程·cursor·aider
HRTOS3 小时前
HRTOS 4.0 将长期维护:为什么版本号不再频繁变化
经验分享·git·单片机·51单片机
驭渊的小故事20 小时前
linux 基础命令 + git 仓库创建和配置命令
linux·git
行者-全栈开发1 天前
华为云码道 CodeArts 实测:让 AI 用 Rust 写一个 Git 仓库健康度体检台「仓衡」
git·rust·tauri·桌面应用·ai 编程·华为云码道·codearts 代码智能体
挖掘狂人3 天前
Git 从 0 到 1:用一个小项目走完 add / commit / reset / merge / rebase / push
git·后端·github
codigger3 天前
Git 三区域模型:把 add、commit、reset、merge 一次讲透
git·github·编程·编程语言
水饺编程3 天前
第1章:开发环境搭建,在 Windows 中安装 Git
linux·c语言·汇编·git·ubuntu
idanzk3 天前
Git 推送 GitHub 报 SSL_READ /src refspec main 不匹配 完整踩坑记录
git·github·ssl
星恒随风3 天前
Linux开发工具详解(二):Git版本控制、GitHub协作与GDB调试实战
linux·笔记·git·学习·github
寺中人4 天前
Xshell 完全入门指南:从安装到实战,远程连接+文件传输+会话管理全拆解
git·ssh·github·php·远程连接·xshell·运维工具