Files
Inbox/Git/Git 常用命令总结与检索手册.md
2025-12-11 07:24:36 +08:00

8.0 KiB
Raw Blame History

tags, aliases, date created, date modified
tags aliases date created date modified
📜 Git 常用命令总结与检索手册
星期一, 十二月 8日 2025, 12:27:54 凌晨 星期一, 十二月 8日 2025, 12:35:01 凌晨

📜 Git 常用命令总结与检索手册

I. 初始化与基础操作 (Initialization & Basics)

目的 命令 描述
创建新仓库 git init 在当前目录初始化一个空的 Git 仓库。
克隆远程仓库 git clone <url> 将远程仓库(如 Gitea完整地克隆到本地。
设置用户信息 git config --global user.name "Your Name" 设置全局用户名,用于 Commit 记录。
git config --global user.email "your@email.com" 设置全局邮箱,用于 Commit 记录。
检查状态 git status 查看工作区 (Working Directory) 和暂存区 (Staging Area) 的状态,哪些文件已修改、已暂存、未追踪。

II. 日常工作流 (Daily Workflow - C/A/C/P)

日常工作遵循 Checkout / Add / Commit / Push 流程。

目的 命令 描述
暂存文件 git add <file> 将文件从工作区添加到暂存区。
git add . 暂存所有修改和新增文件(不包含删除)。
提交到本地库 git commit -m "Commit Message" 将暂存区内容提交到本地仓库,必须包含清晰的提交信息。
提交多行信息 git commit -m "Subject" -m "Body line 1" 创建包含多行 body 的提交信息。
推送到远程库 git push origin <branch> 将本地分支的提交推送到远程仓库。
git push -u origin <branch> 初次推送时使用,设置本地分支追踪远程分支。
拉取最新代码 git pull origin <branch> (Fetch + Merge) 拉取远程分支并自动合并到当前本地分支。
拉取并清理 git fetch --prune / git fetch -p 拉取远程更新,并删除本地已失效的远程跟踪引用。

III. 分支管理 (Branch Management)

目的 命令 描述
查看本地分支 git branch 列出本地所有分支,当前分支前有 * 标记。
查看远程分支 git branch -r 列出所有远程跟踪分支。
创建新分支 git branch <name> 基于当前分支创建一个新分支。
创建并切换 git checkout -b <name> 创建新分支并立即切换到该分支(用于新功能开发)。
切换分支 git checkout <name> 切换到已存在的分支。
删除已合并分支 git branch -d <name> 安全地删除本地已合并的分支。
强制删除分支 git branch -D <name> 强制删除本地未合并的分支(请谨慎使用)。
删除远程分支 git push origin --delete <name> 删除远程仓库上的分支。

IV. 代码历史与撤销 (History & Undo)

目的 命令 描述
查看提交历史 git log 查看完整的提交历史。
简洁历史 git log --oneline 以一行方式显示提交历史(常用)。
查看差异 git diff 查看工作区和暂存区之间的差异。
git diff --staged 查看暂存区和本地仓库 HEAD 之间的差异。
撤销暂存 git reset HEAD <file> 将文件从暂存区移回工作区(取消 git add)。
撤销工作区修改 git restore <file> 丢弃工作区中对某个文件的所有修改(危险操作)。
重置到某一提交 git reset --soft <hash> 重置 HEAD 到指定提交,保留工作区和暂存区的修改。
git reset --hard <hash> 危险操作: 彻底重置 HEAD、暂存区和工作区丢弃所有修改。
合并提交 git rebase -i <ref> 交互式地合并、修改、删除历史提交(用于清理历史)。

V. 合并与集成 (Merge & Rebase)

目的 命令 描述
合并分支 git merge <branch> 将指定分支的更改合并到当前分支。
变基 (Rebase) git rebase <branch> 将当前分支的提交移动到目标分支的最新提交之后,保持线性历史。
解决冲突 git status -> 编辑文件 -> git add <file> -> git commit 标准的冲突解决流程。
放弃 Rebase git rebase --abort 取消正在进行的 rebase 操作,回到开始前的状态。

VI. 协作工具 (Collaboration Tools)

目的 命令 描述
查看远程库 git remote -v 查看当前配置的远程仓库地址和名称(通常是 origin)。
设置上游分支 git branch --set-upstream-to=origin/<remote_branch> 为本地分支设置远程跟踪分支。
推送标签 git tag <tag-name> -> git push origin --tags 创建本地标签并推送到远程仓库。

最佳实践提醒:

  1. 频繁提交 (Commit):保持提交的原子性和描述的清晰性。
  2. 拉取最新 (Pull):在创建新分支和开始工作前,务必 git pull origin develop
  3. 使用分支:永远在 feature/ 分支上工作。
  4. SSH 密钥:确保您的 SSH 密钥正确配置,以避免重复输入密码。