Git 入门:从第一次提交到团队协作的完整实践
为什么每个开发者都要会 Git
几乎所有软件项目今天都用 Git 管理代码。它记录每一次改动,让你随时回到任意一个历史版本,也让多人同时改同一份代码成为可能。对新手来说,Git 的概念并不多:工作区、暂存区和仓库三层结构,加上分支与远程仓库,理解了这几样,就能覆盖日常开发的绝大部分操作。
第一步:配置你的身份
安装 Git 之后,先告诉它你是谁。提交记录会带上这里设置的名字和邮箱,团队成员靠它辨认每一次提交的作者:
git config --global user.name "你的名字"
git config --global user.email "你的邮箱"
git config --list
这一步整个电脑只需要做一次。名字可以用昵称,邮箱建议用常用的工作邮箱。
初始化仓库,完成第一次提交
新建一个文件夹,进入后执行 git init,当前目录就变成了一个 Git 仓库。接着把文件加入暂存区,再提交到仓库:
git init
git status
git add .
git commit -m "初始化项目,加入说明文档"
这四个命令是 Git 的最小工作流。git status 会告诉你哪些文件已修改、哪些还没加入暂存区,是新手最应该养成习惯的命令。commit 的 -m 后面是提交说明,写清楚这次改了什么,比写“更新”要有用得多。
读懂提交历史
想看项目走到哪一步,用 git log:
git log --oneline
git show HEAD
–oneline 把每次提交压缩成一行,方便快速浏览;git show 可以查看某次提交具体改了哪些内容。提交历史是项目的“时间线”,出了问题先看日志,多数时候能定位到引入问题的那次提交。
分支:在平行世界里放心试错
分支是 Git 最强大的功能之一。主分支 main 保持随时可发布的状态,开发新功能时另开分支:
git branch feature-login
git checkout feature-login
git switch -c feature-login
新分支和主分支互不干扰,实验失败直接删掉分支即可,完全不会污染主分支。功能完成后把分支合并回 main,再删除已经合并的分支:
git checkout main
git merge feature-login
git branch -d feature-login
与远程仓库协作
本地仓库可以推送到远程仓库,团队成员各自克隆同一份远程仓库开展工作:
git clone 远程仓库地址
git push -u origin main
git pull
第一次推送用 -u 建立本地分支与远程分支的关联,之后直接 git push 即可。开始工作前先 git pull 同步别人的最新改动,可以减少很多合并冲突。
遇到合并冲突怎么办
两个人改了同一文件的同一行,合并时就会出现冲突。Git 会在文件里用标记标出双方的内容,冲突的部分要人工判断保留哪一边,删掉标记后重新提交:
git status
git add 冲突文件
git commit -m "解决合并冲突,保留双方的有效改动"
不要害怕冲突,它只是 Git 在请你做决定。提交之前用 git status 再确认一次,往往能避免把标记符号误提交。
五个值得养成的好习惯
第一,提交要小而完整,一次提交只做一件事,回滚时才不会牵连其他改动;第二,提交信息用动词开头,写清楚“做了什么”,而不是“更新了代码”;第三,每天开始工作前先拉取最新代码;第四,重要改动先开分支再动手;第五,定期用 git log 回顾自己的提交,复盘比死记命令更有效。
常见问题速查
忘记把文件加入暂存区就提交了,可以再 add 一次,然后用 git commit --amend 补进同一次提交;提交到了错误的分支,先用 git reset --soft HEAD~1 撤销提交、保留改动,再切换分支重新提交;误删了分支不用慌,git reflog 记录了所有操作,找到提交编号就能恢复。
小结
Git 的学习曲线并不陡峭:先跑通 init、add、commit、log 这条主线,再掌握分支与远程协作,最后在真实项目里反复练习。每天用它管理自己的练习代码,一个月下来,版本控制就会变成不需要思考的肌肉记忆。从今天开始,把你的下一个小项目也交给 Git 管理吧。
- 点赞
- 收藏
- 关注作者
评论(0)