0基础git实操
拉取项目
以 Superpowers 仓库 为例。
Superpowers 是一套面向 AI Coding Agent 的开发方法论,
通过一系列可组合的 skill 与初始化指令,
增强代码代理的工程能力。
首先新建一个文件夹,用于存放项目。
例如:
D:\superpowers
法一:
win + r 输入 cmd 打开命令行。
注意:
Windows 默认不能直接跨盘符切换。
先进入对应盘符,再进入目标目录:
cd /d D:\superpowers
法二:
直接在文件夹空白处:
右键 → 在终端中打开
随后执行:
git clone https://github.com/obra/superpowers
Git 会自动完成:
- 创建项目目录
- 初始化本地仓库
- 下载远程代码
- 创建
.git目录 - 建立远程仓库关联

创建自己分支
在团队开发中,通常不会直接在 main 分支开发。
开发者会基于开发分支创建自己的功能分支,
这样可以做到:
- 功能隔离
- 避免代码互相覆盖
- 方便代码审核
- 降低线上风险
项目克隆完成后,代码会位于:
D:\superpowers\superpowers
Git 仓库就在这一层目录,因此后续 Git 操作都需要在该目录执行。
进入项目目录:
cd D:\superpowers\superpowers
创建并切换到 dev 分支:
git checkout -b dev
该命令等价于:
git branch dev
git checkout dev
即:
1. 创建 dev 分支
2. 切换到 dev 分支
查看当前分支:
git branch
输出示例:
D:\superpowers\superpowers>git branch
* dev
main
当前仓库包含两个分支:
main
主分支,通常用于生产环境稳定代码
dev
开发主分支,用于日常开发

创建远程仓库
如果只是单纯复制别人的项目,
最简单的方法通常是:
Fork 仓库
但这里使用“重新绑定远程仓库”的方式,
可以更好理解 Git 中:
- remote
- origin
- push
- fetch
等核心概念。
首先需要在:
等平台创建自己的仓库。
创建完成后,会得到自己的仓库地址:
https://github.com/你的用户名/你的仓库.git
查看当前远程仓库:
git remote -v
输出示例:
D:\superpowers\superpowers>git remote -v
origin https://github.com/obra/superpowers (fetch)
origin https://github.com/obra/superpowers (push)
其中:
origin
是 Git 默认的远程仓库别名。
Git 实际上允许关联多个远程仓库,例如:
origin
upstream
backup
test
当前项目的 origin 指向原作者仓库。
如果直接推送:
git push
并且你拥有权限:
- 代码会进入远程仓库
- 其他开发者会拉取到你的修改
- CI/CD 可能自动部署
- 自动测试可能被触发
因此需要将 origin 修改为自己的仓库。
执行:
git remote set-url origin 你自己的仓库地址
例如:
git remote set-url origin https://github.com/你的用户名/superpowers.git
再次查看:
git remote -v
输出:
origin 你自己的仓库地址 (fetch)
origin 你自己的仓库地址 (push)
说明:
当前 origin 已经指向自己的远程仓库。

推送代码
此时远程仓库通常为空,
需要将本地代码推送到自己的仓库。
执行:
git push -u origin dev
其中:
-u
表示:
建立本地 dev 分支与远程 dev 分支的跟踪关系
后续再次推送时:
git push
即可直接推送。
开发流程
此时已经拥有:
- 自己的仓库
- 自己的开发分支
接下来进入日常开发流程。
1、拉取最新代码
开发前先同步远程代码:
git checkout dev
git pull
其中:
git pull
本质等价于:
git fetch
git merge
即:
1. 拉取远程最新代码
2. 合并到当前分支
2、创建功能分支
例如开发登录功能:
git checkout -b feature/login
此时分支结构:
main
└── dev
└── feature/login
公司开发中通常会存在多个功能分支:
main
└── dev
├── feature/login
├── feature/order
├── feature/pay
└── feature/user
命名规范通常为:
feature/功能名
3、开发代码
在当前功能分支进行代码开发。
4、查看代码状态
执行:
git status
示例:
D:\superpowers\superpowers>git status
On branch feature/login
nothing to commit, working tree clean
常见状态:
modified
文件已修改
untracked
新文件未被 Git 管理
staged
文件已加入暂存区
5、添加暂存区
执行:
git add .
作用:
将当前目录下所有修改加入暂存区。
Git 提交并不是直接提交工作区,
而是先提交:
工作区 → 暂存区 → 本地仓库

6、提交代码
执行:
git commit -m "完成登录功能"
建议提交信息简洁明确:
feat: 完成登录功能
fix: 修复订单异常
refactor: 重构支付模块
7、推送代码
执行:
git push
代码会被推送到远程仓库。
8、提 Pull Request / Merge Request
功能开发完成后:
feature/login
不会直接进入主分支。
而是:
提交 PR(Pull Request)
或
提交 MR(Merge Request)
等待:
- Code Review
- 自动测试
- 审核通过
9、合并代码
切换到目标分支:
git checkout dev
执行合并:
git merge feature/login
流程如下:
feature/login
↓
merge
↓
dev
Git 会将:
feature/login
中的提交记录合并到:
dev
中。
如果多人同时修改同一文件,
可能出现:
CONFLICT
即:
代码冲突
需要手动修改后重新提交。

公司中的标准开发流程

企业开发中通常采用如下结构:
main
└── dev
├── feature/user
├── feature/order
├── feature/pay
└── feature/login
标准流程:
1. 从 dev 拉取最新代码
2. 创建 feature 分支
3. 开发功能
4. git add
5. git commit
6. git push
7. 提交 PR / MR
8. Code Review
9. 合并到 dev
10. 测试完成后合并 main
Git 本质
Git 本质上是在管理:
- 文件快照
- 提交历史
- 分支指针
Git 的分支并不是复制一份代码,
而只是:
一个新的提交指针
因此 Git 创建分支速度非常快。

常见问题
1、push 被拒绝
错误示例:
! [rejected]
原因:
远程仓库存在新的提交,
本地代码不是最新版本。
解决:
git pull
git push
2、merge 冲突
错误示例:
CONFLICT
原因:
多人同时修改同一代码区域。
解决流程:
1. 手动修改冲突代码
2. git add .
3. git commit

总结
日常开发核心流程:
pull
↓
checkout
↓
coding
↓
add
↓
commit
↓
push
↓
merge
Git 的核心目标:
-
隔离开发
-
保证代码稳定
-
方便团队协作
本质上是在管理: -
文件快照
-
提交历史
-
分支指针
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)