git的使用手册

📝 Git 日常开发指令补全手册

**1. 查看分支**

  • **基本命令**:`git branch`

  • **查看所有分支**(包括远程):`git branch -a`

  • **查看分支及其最新提交**:`git branch -v`

  • **说明**:当前分支前会标有 `*` 号。

**2. 选择/切换分支**

  • **切换到已有分支**:`git switch <分支名>`

  • **创建并切换到新分支**:`git switch -c <新分支名>`(**最常用**)

  • **注意**:切换前,当前工作目录的修改必须已提交或储藏(`git stash`),否则 Git 会阻止切换。

**3. 查看状态**

  • **基本命令**:`git status`

  • **简短状态**:`git status -s`,以紧凑格式输出,文件前标记状态:

  • `??`:未跟踪的新文件

  • `A`:已添加到暂存区的新文件

  • `M`:已修改的文件(红色表示未暂存,绿色表示已暂存)

  • `D`:已删除的文件

**4. 添加修改到暂存区**

  • **添加所有修改**:`git add .` (最常用)

  • **添加特定文件**:`git add <文件名>`

  • **交互式添加**:`git add -p`,可逐段检查并决定是否添加,适合精细化提交。

  • **注意**:`git add` 只是将修改"暂存",并未永久保存。

**5. 提交到本地仓库**

  • **带描述提交**:`git commit -m "清晰的提交描述"`

  • **编写提交信息的规范**:

  • **首行**:简短总结(不超过50字),建议使用 `feat:`、`fix:`、`docs:` 等前缀。

  • **空一行**

  • **正文**(可选):详细说明改动原因和内容。

  • **修改上次提交**:`git commit --amend`,可修改提交描述或追加漏掉的文件。

**6. 合并分支**

  • **将指定分支合并到当前分支**:`git merge <来源分支名>`

  • **合并时的两种结果**:

  • **快进合并**:如果当前分支是来源分支的直接上游,Git 会直接将指针前移,不会产生新的提交记录。

  • **三方合并**:如果分支已分叉,Git 会创建一个新的"合并提交"。

  • **遇到冲突时**:Git 会标记冲突文件,需手动编辑文件解决冲突(VSCode 会提供图形化工具),然后执行 `git add` 和 `git commit` 来完成合并。

**7. 查看修改位置(VSCode 高效操作)**

  • **快捷键**:`Ctrl + Shift + G` 打开 **源代码管理** 面板。

  • **面板功能详解**:

  • **"更改"列表**:列出所有未暂存的修改。

  • **查看具体差异**:点击任意文件,右侧编辑器会**并排对比**显示版本差异(绿色为新增,红色为删除)。

  • **暂存更改**:点击文件旁的 `+` 号,或使用顶部的"暂存所有更改"。

  • **提交**:在上方输入框填写提交信息,然后按 `Ctrl + Enter` 提交。

  • **更多操作**:点击 `...` 菜单可进行**拉取、推送、分支管理、储藏**等几乎所有 Git 操作。

🔄 补充:完整的本地与远程协作流程

你的7步是完美的本地循环。一个完整的协作流程通常还包括与远程仓库的同步:

| 步骤 | 命令 | 说明 |

| :--- | :--- | :--- |

| **拉取更新** | `git pull` | 从远程仓库获取最新代码并合并到本地当前分支。开始工作前先执行,避免冲突。 |

| **推送提交** | `git push` | 将本地提交上传到远程仓库。分享你的工作成果。 |

| **推送新分支** | `git push -u origin <分支名>` | **首次推送新分支时需加 `-u`** 以建立跟踪,之后可直接 `git push`。 |

💡 终极高效技巧:使用 VS Code 源代码管理面板完成一切

对于日常大部分操作,你其实可以**完全脱离终端**:

  1. **查看与切换分支**:点击 VSCode 窗口**左下角**的分支名。

  2. **暂存与提交**:在源代码管理面板 (`Ctrl+Shift+G`) 中完成。

  3. **查看每一行修改历史**:在编辑器中右键任意一行,选择"查看行提交历史"。

  4. **合并与拉取**:在源代码管理面板的 `...` 菜单中。

相关推荐
pingzhuyan44 分钟前
linux常规(shell脚本)-启动java程序-实现快捷git拉取,maven打包,nohup发布(无dockerfile版)
java·linux·git·maven·shell
大柏怎么被偷了1 小时前
【Git】Git的认识与安装
git
切糕师学AI1 小时前
如何永久忽略本地配置文件修改:Git 与 TortoiseGit 实战指南
git
一车小面包1 小时前
初次使用git的心得
git
Ocean_hys2 小时前
3. 关于git命令 cherry-pick fetch stash
git
草莓熊Lotso2 小时前
Git 多人协作全流程实战:分支协同 + 冲突解决 + 跨分支协助
linux·运维·服务器·人工智能·经验分享·git·python
摇滚侠12 小时前
零基础小白自学 Git_Github 教程,GitHub Action 基础概念,笔记22
笔记·git·github
victory043116 小时前
git clone只克隆小文件 无法克隆大文件解决办法
git
JH307317 小时前
git和svn一些使用上的区别
git·svn