Git 从入门到团队协作:20 个高频命令和最佳实践
基础配置
安装 Git 后的第一件事:设置用户名和邮箱——git config --global user.name "Your Name" 和 git config --global user.email "[email protected]"。这些信息会嵌入每一次提交。推荐同时设置默认分支名为 main:git config --global init.defaultBranch main。换行符配置:Windows 设置 core.autocrlf true,Mac/Linux 设置 core.autocrlf input,避免跨平台协作时换行符混乱导致整个文件都标记为变更。
日常高频命令
| 场景 | 命令 |
|---|---|
| 初始化仓库 | git init |
| 克隆仓库 | git clone url |
| 查看状态 | git status / git status -s(简洁模式) |
| 添加文件到暂存区 | git add file / git add . / git add -p(交互选择) |
| 提交 | git commit -m "message" |
| 推送到远程 | git push origin main |
| 拉取远程更新 | git pull / git pull --rebase(避免多余的 merge commit) |
| 查看提交历史 | git log --oneline --graph --all |
| 撤销工作区修改 | git checkout -- file / git restore file |
| 撤销暂存区 | git reset HEAD file / git restore --staged file |
| 修改最近一次提交 | git commit --amend |
| 创建分支 | git branch feature-x / git checkout -b feature-x |
| 合并分支 | git merge feature-x |
| 变基 | git rebase main |
| 储藏修改 | git stash / git stash pop |
| 查看远程仓库 | git remote -v |
| 查看某次提交的变更 | git show commit-hash |
| 标签 | git tag v1.0 / git push origin --tags |
| cherry-pick | git cherry-pick commit-hash |
| 找回丢失的提交 | git reflog |
分支策略
推荐 Git Flow 简化版:main 分支永远是生产就绪代码;feature/* 分支开发新功能,完成后 PR 合并到 main;hotfix/* 分支紧急修复线上 bug。日常在 feature 分支工作,每天结束前 push 到远程作为备份。提交信息规范:类型(范围): 简短描述,类型包括 feat/fix/docs/style/refactor/test/chore。例:feat(auth): add JWT token refresh。好的提交信息是你三个月后回来看代码时的救命稻草。
解决冲突
合并或 rebase 时出现冲突不可怕。冲突标记 <<<<<<< ======= >>>>>>> 之间是冲突部分,删掉标记并保留想要的代码,git add 标记为解决,git rebase --continue 或 git merge --continue 继续。VS Code 和 JetBrains 内置的三路合并工具可以大幅简化这个过程。预防冲突的最佳实践:频繁从 main 拉取更新、保持分支短小(一个分支只做一件事)。
Git 官方文档:
💬 暂无评论