关于Git使用技巧的一些经验:一个五年后端开发的踩坑总结

敏锐_控制台
2025-12-17 20:42
阅读 556

大家好,我是一个工作五年的后端工程师。写这篇教程,是因为我当初学 Git 的时候,踩了太多坑——提交错了、分支搞乱了、代码丢了……甚至一度想放弃用版本控制。但后来我发现,Git 不仅是程序员的必备工具,更是求职时面试官必问的基础技能。尤其是做爬虫项目、Web 开发或者任何需要多人协作的工作,不会 Git 几乎寸步难行。

今天我就用最通俗的语言,手把手带你入门 Git,并分享一些我在实际项目(包括爬虫开发)中积累的实用技巧。即使你是完全零基础,也能跟着操作学会。


一、Git 是什么?为什么你需要它?

简单说,Git 是一个“代码时光机”
它可以帮你:

  • 记录每次代码的修改(谁改的、改了什么)
  • 随时回到任意历史版本(比如昨天写的代码还能找回来)
  • 多人协作不打架(你改 A 文件,我改 B 文件,互不影响)
  • 管理不同功能的开发(比如同时开发登录功能和爬虫功能)

💡 举个例子:你写了一个爬取豆瓣电影的爬虫,今天加了代理 IP 功能,明天发现出错了。有了 Git,你可以一键回退到昨天“还能跑”的版本,不用手动 Ctrl+Z 半天。


二、环境准备:5 分钟装好 Git

步骤 1:安装 Git

  • Windows:去 https://git-scm.com/ 下载安装,一路默认即可。
  • Mac:终端输入 brew install git(需先装 Homebrew)
  • Linux (Ubuntu):终端输入 sudo apt install git

步骤 2:配置用户名和邮箱

打开终端(命令行),输入以下命令(换成你自己的信息):

git config --global user.name "你的名字"
git config --global user.email "your@email.com"

⚠️ 注意:这个邮箱最好和 GitHub/Gitee 一致,否则提交记录对不上,影响求职时展示你的项目经历

验证是否成功:

git config --list

如果看到你的名字和邮箱,就 OK 了。


三、核心概念:用大白话讲清楚

很多新手被“工作区”、“暂存区”、“仓库”搞晕。我用做饭来比喻:

概念 做饭类比 作用说明
工作区 厨房台面 你正在编辑的代码文件
暂存区 装菜的盘子 你选好要炒的菜(准备提交)
本地仓库 冰箱 所有已保存的菜品历史
远程仓库 邻居家的共享冰箱 别人也能看到/用你的菜谱

关键命令对应关系:

git add .          # 把改好的代码放到“盘子”(暂存区)
git commit -m "说明" # 把盘子里的菜放进“冰箱”(本地仓库)
git push           # 把冰箱里的菜同步到“邻居家”(远程仓库)

四、实战:从零开始做一个爬虫项目并用 Git 管理

我们来做一个简单的 Python 爬虫(抓取某个网站标题),并全程用 Git 管理。

第 1 步:创建项目目录

mkdir my_spider
cd my_spider

第 2 步:初始化 Git 仓库

git init

✅ 此时会在当前目录生成 .git 文件夹(隐藏的),这就是你的本地仓库。

第 3 步:写第一个爬虫脚本 spider.py

# spider.py
import requests
from bs4 import BeautifulSoup

url = "https://example.com"
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
print("网页标题:", soup.title.string)

第 4 步:提交第一次代码

git add spider.py        # 添加文件到暂存区
git commit -m "feat: 初始爬虫,能抓取网页标题"

📌 提交信息建议用约定格式,比如 feat: 表示新功能,fix: 表示修复 bug。这在团队协作和求职项目展示中显得很专业!

第 5 步:连接远程仓库(比如 GitHub)

  1. 在 GitHub 上新建一个空仓库(比如叫 my_spider
  2. 复制仓库地址(HTTPS 格式)
  3. 绑定并推送:
git remote add origin https://github.com/你的用户名/my_spider.git
git push -u origin main

❗注意:如果你的 GitHub 默认分支是 main 而不是 master,就用 main。可以用 git branch -M main 改名。

现在,你的爬虫代码已经安全地上传到云端了!别人(比如面试官)点开你的 GitHub 就能看到清晰的提交记录。


五、新手常踩的坑 & 解决方案

❌ 坑 1:git push 失败,提示“rejected”

原因:远程仓库有你本地没有的新提交(比如你在 GitHub 上直接改了 README)。

解决

git pull --rebase origin main
git push origin main

💡 --rebase 能避免生成多余的 merge 提交,让历史更干净。


❌ 坑 2:不小心 git add 了不该加的文件(比如密码、日志)

解决

  1. 先取消暂存:
    git reset HEAD 敏感文件名
    
  2. 然后创建 .gitignore 文件,防止下次再误提交:
echo "*.log" >> .gitignore
echo "config.json" >> .gitignore
git add .gitignore
git commit -m "chore: 添加 .gitignore 忽略敏感文件"

🔒 特别提醒:爬虫项目中常见的 cookies.txtproxy_list.txt 如果含账号密码,千万别提交!


❌ 坑 3:改错了代码,想回退到上一个版本

方案

git log --oneline  # 查看最近几次提交的 hash 值
git reset --hard HEAD~1  # 回退到上一次提交(危险!会丢掉未提交的更改)

⚠️ 更安全的做法是用 git checkout <commit_id> -- 文件名 只恢复某个文件。


六、给初学者的学习建议

  1. 每天提交,小步快跑
    不要等写完一整个功能才 commit。每完成一个小任务(比如“加了请求头”、“处理了异常”)就提交一次。这样出错容易定位。

  2. 善用分支(Branch)
    主分支(main)保持可运行状态。新功能在新分支开发:

    git checkout -b feature/proxy  # 创建并切换到 proxy 分支
    # 开发完合并回 main
    git checkout main
    git merge feature/proxy
    
  3. 把 GitHub 当作品集
    招聘时,面试官常会看你 GitHub。一个整洁、有清晰 commit 信息、带 README 的爬虫项目,远比简历上写“熟悉 Python”更有说服力。

  4. 不要怕犯错
    我当初删过整个仓库,也 push 错过生产代码……但 Git 的设计就是让你“可回滚”。大胆试,错了 git reflog + reset 就能救回来。


结语

Git 看似复杂,其实核心就那几个命令。关键是动手练。建议你现在就建个空仓库,随便写点代码,反复练习 add → commit → push

记住:每一个优秀的程序员,都曾是一个被 Git 折磨的新手。但一旦你掌握了它,写代码、找工作、做爬虫都会变得从容不迫。

祝你编码愉快,早日拿到心仪的 offer!

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝