Git指南

1 阅读2分钟

Git 指南

1. 创建分支并切换到该分支(最常用)

git checkout -b feature-demo
feature-demo` 为你的分支名,一般功能分支用 `feature/xxx`,修复 bug 用 `bugfix/xxx

等价两条命令分开写:

git branch feature-demo     # 仅创建分支,不切换
git checkout feature-demo   # 切换到该分支

Git 2.23+ 推荐新命令 switch

git switch -c feature-demo   # 创建并切换
git switch main              # 切回main主分支

2. 查看本地所有分支

git branch

*的是当前所在分支。

3. 推送本地新分支到远程仓库

创建完本地分支后,推送到远端:

git push -u origin feature-demo

-u 设置上游关联,之后直接 git push 即可推送。


4.分支合并(两种模式)

场景:把 feature-demo 功能分支合并到主分支 main

方式 1:git merge(合并,会生成合并提交,适合多人协作)
  1. 先切到要被合并到的目标分支(main)
git switch main
# 或者 git checkout main
  1. 保证 main 是最新代码
git pull origin main
  1. 执行合并,把 feature‑demo 合并进 main
git merge feature-demo
  1. 解决冲突:如果出现冲突,修改冲突文件,之后
git add .
git commit
  1. 合并完成推送到远程
git push origin main
方式 2:git rebase(变基,线性干净提交历史,个人分支优先用)

⚠️ 不要对已经推送到远程、多人共用的分支做 rebase!

git switch feature-demo
git rebase main
# 处理冲突,解决后 
git add . && git rebase --continue
# rebase完成后切回main再merge
git switch main
git merge feature-demo
git push origin main

5.删除本地分支

git branch -d feature-demo

6.删除远程分支

git push origin --delete feature-demo

7、简单工作流示例(快速复制)

# 1.拉取最新main
git pull origin main
# 2.创建开发分支
git switch -c feature/login
# 3.写代码、提交
git add .
git commit -m "完成登录功能"
git push -u origin feature/login

# 4.开发完毕,合并回main
git switch main
git pull origin main
git merge feature/login
git push origin main

# 5.清理分支
git branch -d feature/login
git push origin --delete feature/login

8、Git 标签(Tag)

用于标记版本发布节点,如 v1.0.0release-2.1

创建标签
git tag v1.0.0              # 轻量标签

git tag -a v1.0.0 -m "正式发布版本1.0"   # 附注标签(推荐)
给历史提交打标签
git log --oneline            # 查看提交历史,找到 commit id
git tag -a v0.9.0 <commit-id> -m "修复版本"
查看标签
git tag              # 列出所有标签
git show v1.0.0       # 查看标签详情
删除标签
git tag -d v1.0.0              # 删除本地标签
git push origin --delete v1.0.0  # 删除远程标签
推送标签到远程
git push origin v1.0.0         # 推送单个标签
git push origin --tags          # 推送所有标签
检出到某个标签(查看旧版本)
git checkout v1.0.0        # 查看(detach 状态,不能直接提交)
git checkout -b release-1.0 v1.0.0  # 基于标签创建新分支再开发
常见标签命名规范
标签类型示例说明
正式版本v1.0.0主版本.次版本.修订版
预发布版本v2.0.0-betaBeta 测试版
开发版本v2.0.0-alphaAlpha 测试版
Releaserelease-2.1发布分支标签