Git实战|告别代码冲突、误删提交,高效Git协作全攻略

2 阅读3分钟

Git是程序员必备的协作工具,但很多开发者只会add、commit、push三板斧,遇到代码冲突、误删分支、提交错误就手足无措,甚至弄丢代码。本文整理了日常开发中高频的Git操作、冲突解决、故障回滚技巧,吃透这篇,团队协作再也不踩坑。

一、Git基础规范:先规范,少踩坑

团队协作,规范先行,统一的Git规范能减少80%的冲突。

分支命名规范

  • main/master:主分支,存放稳定上线代码,禁止直接修改
  • develop:开发分支,日常开发的汇总分支
  • feature/功能名:功能分支,比如feature/login、feature/pay,开发完成合并到develop
  • bugfix/问题编号:bug修复分支,上线后删除
  • release/版本号:发布分支,用于测试上线

提交信息规范

commit信息要清晰明了,格式:feat: 新增登录功能;fix: 修复支付闪退bug;docs: 更新README文档;refactor: 代码重构,不改变功能;style: 代码格式调整,不修改逻辑。清晰的提交信息,方便后续回溯代码,排查问题。

二、高频Git命令:吃透这些足够日常使用

# 克隆远程仓库
git clone 仓库地址

# 查看分支
git branch  # 查看本地分支
git branch -a  # 查看所有分支(含远程)

# 创建并切换分支
git checkout -b 分支名

# 添加文件到暂存区
git add .  # 添加所有修改
git add 文件名  # 添加指定文件

# 提交到本地仓库
git commit -m "提交信息"

# 拉取远程代码
git pull

# 推送到远程仓库
git push

# 合并分支
git merge 分支名

三、代码冲突解决:从容应对,不删代码

代码冲突是协作常态,不用慌,按步骤解决即可。

冲突出现的场景:多人修改同一文件的同一行代码、分支合并时代码不一致。Git会标记冲突位置,打开冲突文件,会看到类似以下内容:

<<<<<<< HEAD
本地修改的代码
=======
远程分支的代码
>>>>>>> 分支名

保留正确的代码,删除冲突标记,保存后重新add、commit、push即可。建议合并分支前,先拉取最新代码,本地解决冲突,再推送远程,避免影响团队其他成员。

四、故障回滚:误操作、提交错误一键挽救

1. 误删文件,还没提交

git checkout -- 文件名  # 恢复单个文件
git checkout .  # 恢复所有未提交的修改

2. 提交了错误代码,想撤回

git reset --soft HEAD^  # 撤回提交,保留代码
git reset --hard HEAD^  # 彻底撤回,不保留代码

3. 已经push到远程,想撤销

先用git reset回滚本地,再强制推送(谨慎使用,确保无人基于该提交开发):

git push -f

五、Git进阶技巧:提升协作效率

stash暂存代码:开发到一半,需要切换分支处理bug,代码不想提交,用git stash暂存,切换回来后git stash pop恢复,不影响分支干净。

查看提交日志:git log查看历史提交,git log --graph以图形化展示分支合并记录,清晰看懂分支走向。

忽略文件:在根目录创建.gitignore文件,写入不需要提交的文件,比如node_modules、.env、dist文件夹,避免冗余文件推入仓库。

六、总结

Git操作不难,难的是养成规范的协作习惯。日常开发中,勤拉代码、小步提交、规范命名,遇到冲突冷静处理,误操作及时回滚,就能高效完成团队协作。不管是单人开发还是团队协作,熟练掌握Git,都是程序员必备的核心技能,再也不用怕代码丢失、冲突缠身。