1. 为什么每个团队都需要一份"看得见"的提交规范
先说个我真实经历过的场景。前两年团队进了一批新人,其中一个同学特别勤快,一天能提交十几次代码,但每一次的提交信息都是"update""修改""改了一点东西"。刚开始大家没在意,直到有一次线上出了个bug,需要回滚到某个历史版本。我在git log里翻了一下午,愣是没找到"这个功能到底是哪次提交引入的"。那一刻我才意识到,提交信息写得随便,不是小事,它会在项目最需要追溯的时候,变成一堵墙。
所以这篇东西不是写给"会用git"的人,而是写给那些刚进团队、刚接触协作开发、还不清楚"提交代码到底该怎么写"的新同学。它的目标只有一个:让你在团队仓库里留下的每一条记录,都能让三个月后的自己、让接手你代码的同事,一眼看明白"这次改动做了什么、为什么这么做"。
很多新同学会把Git当成一个"代码备份工具",觉得只要把文件传上去就算完成任务。其实在团队协作里,Git更像是一本团队共同书写的"项目日志"。你每一次commit、每一次合并,都会写进这本日志里。日志写得清楚,大家查问题、做复盘、发版本都顺畅;日志写得潦草,整个团队的协作效率都会被拖累。
我见过很多所谓的"提交规范"文档,上来就甩一堆英文单词和命令,新人看完一头雾水,该怎么写还是怎么写。这篇文章我的写法不一样:先讲清楚"为什么",再给"怎么做",最后附上可以直接照抄的示例。你不光能知道规范长什么样,还能理解这套规范背后的逻辑。这样就算以后让你自己定规范,你也能定出一套合情合理的来。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 上岗第一天:把Git环境收拾利索再谈协作
很多新同学遇到的第一道坎,其实不是提交规范本身,而是Git环境压根没配好。我看关联搜索词里,一大半都是"git安装""git配置""git免密""git不是内部或外部命令"这类问题。这些基础工作不搞定,后面全是空中楼阁。
2.1 安装Git,以及那句"git不是内部或外部命令"到底怎么破
Windows用户去官网下载安装包,一路Next就能装好。macOS用户如果装了Homebrew,一条brew install git就完事,没装的话去官网下pkg安装包也行。Linux用户更简单,apt install git或者yum install git按发行版来。这些属于基础操作,我不展开细说。
真正让无数新人卡住的,是装完之后在命令行敲git --version,系统回你一句"git不是内部或外部命令"(Windows)或者"command not found"(macOS/Linux)。这句话的意思是:系统在可执行程序的搜索路径里找不到git这个程序。Windows上八成是安装时没勾选"Add to PATH",或者装完没重新打开命令行窗口。解决办法是手动把Git的安装目录(默认在C:\Program Files\Git\cmd)加到系统环境变量的Path里,然后重新开一个终端窗口。macOS上如果用的是pkg安装包,通常会装到/usr/local/git/bin,因为路径没注册导致找不到命令,可以用export PATH="/usr/local/git/bin:$PATH"临时加上,或者干脆用Homebrew重装一遍省心。
提示:换电脑、换终端后先别急着干活,敲一句
git --version确认环境正常。这一步十秒钟,能帮你省下后面好几个小时的排查时间。
2.2 让Git记住"你是谁",这不是可有可无的步骤
装好Git之后,不做任何配置也能用,但如果你直接开始提交,就会遇到一个很尴尬的情况:提交记录里的作者信息是错的或者空的。Git官方文档里有一句话我一直很认同:每一次提交都附带着作者信息,这个信息会永远留在项目历史里。所以提交之前,先告诉Git你是谁。
bash复制git config --global user.name "你的姓名"
git config --global user.email "你的邮箱"
注意这里的邮箱,如果你在公司项目里协作,最好用公司邮箱或者你常用的、和代码托管平台一致的邮箱。因为现在很多托管平台(GitHub、GitLab、Gitee等)都是靠邮箱来关联提交记录和账号头像的。邮箱不一致的话,你的提交虽然显示了对的名字,但在平台上看不到跟你账号的关联,头像是灰的,甚至你那个"提交者"身份都对应不到人。很多新同学在这步嫌麻烦,随便填了一个,后来做代码统计、审批流程的时候才发现对不上,又得改历史,折腾得很。
2.3 SSH免密配置:让push不再每次问密码
关联热词里"git免密""ssh配置教程"扎堆出现,说明这是新人另一个集中翻车点。很多同学的第一个git仓库用的是HTTPS地址,每次push都要输账号密码。一次两次还能忍,一天push十几次真的会心态爆炸。解法就是SSH免密。
流程就四步:
- 生成密钥对:
ssh-keygen -t rsa -b 4096 -C "你的邮箱",一路回车即可。 - 查看公钥:
cat ~/.ssh/id_rsa.pub,把输出内容完整复制。 - 登录你的代码托管平台,在个人设置的"SSH Keys"或"公钥管理"里粘贴保存。
- 测试连接:
ssh -T git@github.com(以GitHub为例),看到欢迎语就说明通了。
之后把仓库地址从HTTPS换成SSH格式,例如git@github.com:用户名/仓库名.git,再push就不会再要密码了。这里有个小坑:公司的电脑上可能同时存在多个Git账号,比如一个个人GitHub、一个公司GitLab。这时候建议用~/.ssh/config文件来做多账号配置,每个Host对应一个IdentityFile,别图省事把密钥混着用,否则很容易出现一个仓库push到另一个平台、权限报错的问题。
2.4 还有三个值得提前设置的"协作友好"配置
第一个是换行符处理,git config --global core.autocrlf true(Windows)或input(macOS/Linux)。这个配置解决的是Windows和Linux系统之间回车换行符不一致的问题。不配的话,你可能会看到明明没动过的文件,在git diff里显示整片整片的变更,那八成就是换行符在作怪。
第二个是设置默认编辑器,git config --global core.editor "code --wait"。这样当你
