|
打开 GitHub 首页,入门注册按钮就在右上角。教程别急着点,入门先想清楚用户名。教程这玩意儿一旦定了,入门改起来麻烦,教程别人 @ 你、入门仓库地址、教程提交记录全绑在上面。入门我见过有人用“xiaoming123”,教程两年后找工作,入门简历上挂着这个 ID,教程面试官笑了半天。入门建议直接用真名拼音,教程或者长期用的入门昵称。 注册完别闲着,右上角“+”号点开,New repository。仓库名填什么?如果是练手项目,随便叫“test”也行,但别一直用 test。我第一年建了七个叫 test 的仓库,后来自己都分不清哪个是哪个。Description 写一句人话,比如“学习 Python 的练习代码”,比空着强。Initialize 那三个选项——README、.gitignore、license——新手建议全勾上。README 是你仓库的门面,.gitignore 能帮你过滤掉一堆不该上传的文件,license 选 MIT 最省事。 本地操作才是重头戏。装好 Git,打开终端,cd 到你的项目文件夹。第一次用先配置身份: git config --global user.name "你的名字" git config --global user.email "你的邮箱" 然后 git init。这一步会在当前目录生成一个隐藏的 .git 文件夹,所有版本信息都塞在里面。接着 git add . 把文件放进暂存区,git commit -m "第一次提交" 正式存档。注意,commit message 别写“更新”“修改”这种废话。我见过一个仓库,三十次提交全是“fix bug”,点进去看 diff 完全不知道修了啥。写清楚“修复登录页面密码框无法粘贴的问题”,将来自己回看都省时间。 远程仓库怎么连?在 GitHub 上建好空仓库后,它会给你两行命令。一行是 git remote add origin 你的仓库地址,另一行是 git push -u origin main。这里有个坑:GitHub 默认分支现在叫 main,但老教程里写 master。你本地如果也是 master,推上去会多一个分支。要么本地改名 git branch -M main,要么去仓库设置里改默认分支。我当初没注意,结果仓库里同时有 main 和 master,看着就烦。 分支这东西,一个人玩的时候觉得多余,多人协作时是救命稻草。想象一下:你正在写一个新功能,写到一半,线上突然有个紧急 bug 要修。如果直接在主分支上改,新功能没写完的代码就和修复混在一起了。正确做法是 git checkout -b fix-urgent-bug,修完提交,推上去,合并回主分支。再切回原来的功能分支继续写。GitHub 网页上也能建分支,点分支下拉框,输入名字就行。Pull Request 是另一个核心概念——你推一个分支上去,网页会提示你“Compare & pull request”。点进去写清楚改了什么、为什么改,然后等别人 review。自己一个人的项目也可以走这个流程,相当于给自己留个记录。 Issue 功能很多人忽略。其实它不只是报 bug 用的。你可以把它当待办清单:想到一个功能点,开个 issue 记下来,做完再关掉。标签系统挺好用,比如“enhancement”“documentation”“help wanted”。我见过一个开源项目,维护者把每个 issue 都标了优先级和预计完成时间,贡献者一看就知道该从哪下手。 最后说个实在的:别怕提交错东西。Git 有后悔药。git reset、git revert、git stash,这三个命令够你折腾很久。实在搞乱了,把整个文件夹删掉重新 clone 一遍,损失也就是几分钟。我刚开始学的时候,把公司内网地址不小心提交到了公开仓库,吓得赶紧 git reset --hard 加 force push。后来才知道,公开过的 commit 其实还能通过 API 查到,真正安全的做法是立刻改密码、删仓库重建。这个教训值两千字,但今天先写到这。 |