Git 分支入门:从主干开发到安全合并

举报
vanseny 发表于 2026/11/02 09:21:02 2026/11/02
【摘要】 刚接触 Git 的人常把所有修改直接提交到主分支,改到一半想换个方向,或者线上出了问题要紧急修,代码就搅在一起。分支就是给每一次改动开一条独立的工作线:主分支保持可发布状态,新功能、修 bug 各走各的分支,互不干扰,改乱了也只影响当前分支,删掉重来即可。 分支的三个基本动作创建并切换分支最常用的一条命令就够了:git switch -c feature/login。这条命令等于新建一个名为...

刚接触 Git 的人常把所有修改直接提交到主分支,改到一半想换个方向,或者线上出了问题要紧急修,代码就搅在一起。分支就是给每一次改动开一条独立的工作线:主分支保持可发布状态,新功能、修 bug 各走各的分支,互不干扰,改乱了也只影响当前分支,删掉重来即可。

分支的三个基本动作

创建并切换分支最常用的一条命令就够了:git switch -c feature/login。这条命令等于新建一个名为 feature/login 的分支并马上切换过去。分支名建议带前缀,一眼能看出用途:feature/ 是新功能,fix/ 是修 bug,docs/ 是改文档。

在分支上正常提交,git add、git commit 各做各的。想看当前在哪个分支、有哪些分支,用 git branch;想回到主分支,用 git switch main(有的仓库主分支叫 master,以仓库实际名称为准)。

合并之前先做两件事

第一,拉取并更新主分支:切回主分支执行 git pull,再切回功能分支执行 git merge main,把主分支的最新进展先合进来,在自己的分支上解决冲突。这样做的好处是:冲突由改动的人自己解决,而不是留给合并时集中爆发。

第二,提交前自查:用 git status 确认没有误加的临时文件、密钥或构建产物,用 git diff 快速扫一遍改动。一次提交只做一件事,提交信息写清楚“改了什么、为什么改”,不要写“修改代码”“更新”这种看不出信息的标题。

解决冲突不用怕

合并时如果同一文件的同一处被两边改过,Git 会停下来并在文件里标出冲突区域,<<<<<<< 和 >>>>>>> 之间就是两边的版本。处理方法是:打开文件人工选出正确结果,删掉标记符号,然后 git add 再 git commit 完成合并。冲突不是事故,是 Git 在提醒你:这里需要人来做决定。解决完务必跑一次测试或启动验证,别只看合并成功就提交。

合并与删除分支

确认功能分支没问题后,切回主分支执行 git merge feature/login,再把已经合并的功能分支删掉:git branch -d feature/login。-d 只删已合并的分支,是一种安全保护;如果确定要丢弃未合并的分支,才用大写的 -D,但要先确认里面的改动真的不要了。推到远程后,远程分支也可以顺手删掉,保持仓库干净。

新手最容易踩的三个坑

一是在错误的分支上改了半天才发现,养成每次动手前先看 git branch 的习惯。二是把所有改动塞进一次巨大提交,回滚和 review 都困难,宁可多分几次提交。三是长期不合并,分支和主分支越差越远,冲突越来越多;小步快跑、频繁同步主分支,反而最省事。

分支不是为了炫技,而是让改动可隔离、可回滚、可 review。先掌握创建、切换、合并、删除这四个动作,再慢慢学变基和 cherry-pick,就足够应付日常开发了。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。