如何使用GIT进行团队协作
如何使用GIT进行团队协作
Fork是什么?
Fork = 复制别人的仓库到你的账号下
原仓库(别人的) 你的Fork(你的)
github.com/原作者/项目 → github.com/你的用户名/项目
↑ ↓
你只有读权限 你有完全控制权
不能修改 随便修改
类比:就像把图书馆的书复印一份带回家,原书还在图书馆,复印件是你的,随便涂画。
完整流程:从Fork到创建PR
第一步:Fork仓库(网页操作)
-
打开你想贡献的项目页面
- 例如:
https://github.com/原作者/项目名
- 例如:
-
点击右上角 “Fork” 按钮
[⭐ Star] [👁 Watch] [Fork] ← 点这个 -
等待几秒钟
- 自动跳转到你的新页面:
https://github.com/你的用户名/项目名 - 下面显示一行小字:“forked from 原作者/项目名”
- 自动跳转到你的新页面:
第二步:克隆你的Fork到本地
# 注意:这是你的Fork地址,不是原仓库!
git clone https://github.com/你的用户名/项目名.git
cd 项目名
第三步:开发并提交
# 创建功能分支(不要直接在main上改)
git checkout -b fix-typo
# 修改文件...
echo "修复内容" >> README.md
# 提交
git add .
git commit -m "fix: 修复README错别字"
# 推送到你的Fork
git push origin fix-typo
第四步:创建PR(关键步骤)
方法A:推送后自动提示(推荐)
推送完成后,打开GitHub页面:
- 你的Fork页面会显示黄色提示条:
"fix-typo had recent pushes, compare & pull request"
- 直接点击 "Compare & pull request" 按钮
方法B:手动创建(如果没提示)
-
打开原仓库页面(不是你自己的Fork!)
https://github.com/原作者/项目名
-
点击 “Pull requests” 标签
-
点击绿色按钮 “New pull request”
-
设置比较分支
base repository: 原作者/项目名 base: main ← head repository: 你的用户名/项目名 compare: fix-typo⚠️ 关键:点击 “compare across forks” 链接才能看到你的Fork!
-
填写PR信息
标题:fix: 修复README错别字 描述:详细说明修改内容... -
点击 “Create pull request”
为什么你没看到创建按钮?
| 原因 | 解决方法 |
|---|---|
| 在原仓库页面找 | 去原仓库的Pull requests标签页 |
| 没点击"compare across forks" | 点击后才能看到你的Fork分支 |
| 还没push到远程 | 先git push origin 分支名 |
| 在自己的Fork页面 | 要去原仓库页面发起PR |
完整流程图
步骤1: Fork(网页)
原作者/项目 ──Fork按钮──→ 你的用户名/项目
步骤2: 克隆(本地)
git clone https://github.com/你的用户名/项目.git
步骤3: 开发(本地)
git checkout -b feature
# 修改代码
git add / commit / push origin feature
步骤4: 创建PR(网页)
打开原作者/项目页面 → Pull requests → New PR
设置: 原作者/main ← 你的用户名/feature
填写信息 → Create pull request
一句话总结
| 概念 | 作用 |
|---|---|
| Fork | 把别人的仓库复制到你的账号,获得修改权限 |
| 创建PR | 在原仓库页面,选择你的Fork分支作为源,申请合并 |
关键记忆点:PR是跨仓库的比较,必须从原仓库页面发起,比较"你的Fork分支"和"原仓库main分支"。
Eric Wu | 河海大学 智能建造 & AI