Git 以及 GitHub
Git & PR 高效指北:核心工作流与常用命令速查
在现代软件开发中,Git 是协作的语言,而 Pull Request (PR) 则是沟通的桥梁。一个清晰、规范的 PR 流程不仅能保证代码质量,更能提升整个团队的开发效率。
本文为你提供一套精炼的 核心工作流 和一份实用的 常用命令锦囊,无论你是团队新人还是资深开发者,都能从中找到价值。
⭐ 核心 PR 工作流 (The Core Workflow)
这五个步骤构成了最核心、最安全的 PR 提交流程。养成习惯,告别混乱。
第一步:🔄 同步主干 (Sync)
在开始任何新工作前,永远先将你的本地主分支 (main
或 master
) 与远程仓库同步。
# 1. 切换到主分支
git checkout main
# 2. 从远程仓库拉取最新代码
git pull origin main
💡 目的:基于最新的代码进行开发,从源头避免未来的合并冲突。
第二步:🌿 创建分支 (Branch)
为你的每个任务(新功能、Bug修复)创建一个独立的分支。严禁直接在 main
分支上进行任何修改!
# 创建一个新分支并立即切换过去
git checkout -b <your-branch-name>
🏆 命名艺术:好的分支名是成功的一半。推荐格式:
feat/功能描述
或fix/问题描述
。例如:feat/user-login
、fix/avatar-display-bug
。
第三步:✍️ 修改与提交 (Commit)
在新分支上安心编码。完成后,将你的成果提交到本地仓库。
# 1. (在这里施展你的才华,修改/添加代码...)
# 2. 将所有变更添加到暂存区
git add .
# 3. 提交你的变更,并附上一个清晰的说明
git commit -m "feat(user): 添加用户登录功能"
💡 提交信息 (Commit Message):一个有意义的提交信息至关重要。遵循 Conventional Commits 规范(如
feat:
、fix:
、docs:
开头)能让你的提交历史一目了然。
第四步:🚀 推送分支 (Push)
将你的本地分支及所有提交推送到远程仓库(例如 GitHub)。
git push origin <your-branch-name>
💡 首次推送:建议使用
git push -u origin <your-branch-name>
。-u
参数会将你的本地分支与远程分支关联,之后该分支上再次推送时,只需简单输入git push
即可。
第五步:✨ 创建 PR (Pull Request)
这是协作的开始!前往 GitHub,将你的分支“提议”合并到主分支中。
- 打开你的 GitHub 仓库页面。
- 通常,页面顶部会自动出现一个黄色提示框,点击
Compare & pull request
按钮。 - 填写标题和描述:清晰地说明你做了什么、为什么这么做以及解决了什么问题。
- 在右侧面板指定
Reviewers
(代码审查者)。 - 点击
Create pull request
,然后等待同事的反馈吧!
📚 常用命令锦囊 (Common Commands)
除了核心流程,这些命令能帮你应对开发中的各种日常状况。
查看状态与历史
命令 | 作用 |
---|---|
git status |
查看当前工作区的文件状态(哪些被修改、哪些是新增的)。 |
git log |
查看详细的提交历史。 |
git log --oneline --graph |
以单行和图形的方式展示提交历史,更清晰直观。 |
代码“后悔药”
命令 | 场景 |
---|---|
git restore <file> |
撤销工作区的修改(文件还未 git add )。 |
git restore --staged <file> |
取消暂存(文件已经 git add ,但想撤销 add 操作)。 |
git commit --amend |
修改最后一次的提交信息,或将当前暂存的修改合并到上一次提交中。(切勿对已推送的提交使用) |
git revert <commit-id> |
安全地撤销一个已经推送到远程的提交。它会创建一个新的提交来抵消旧提交的更改。 |
分支管理
命令 | 场景 |
---|---|
git rebase main |
在你的功能分支上执行,将 main 分支的最新变更变基到你的分支,保持提交历史线性整洁。 |
git stash |
临时保存当前未提交的工作,让你能干净地切换到其他分支。 |
git stash pop |
恢复最近一次 stash 的内容并从堆栈中移除。 |
📋 终极速查表 (Cheatsheet)
操作 (Operation) | 核心命令 (Core Command) |
---|---|
同步主干 | git checkout main && git pull |
创建并切换分支 | git checkout -b <branch-name> |
暂存所有修改 | git add . |
提交到本地 | git commit -m "注释" |
推送到远程 | git push origin <branch-name> |
查看状态 | git status |
查看简洁历史 | git log --oneline |
撤销工作区修改 | git restore <file> |
更新当前分支 | git rebase main |
临时保存工作 | git stash & git stash pop |