Git克隆项目开发流程
- ✅ 一、完整流程概述
- ✅ 二、详细操作步骤
- Step 1:克隆仓库(如果尚未克隆)
- Step 2:获取远程分支信息并切换到 `feature/`
- 获取所有远程分支
- Step 3:创建并切换到你的新分支
- Step 4:开始开发新功能
- Step 5:提交本地更改
- Step 6:将本地分支推送到远程仓库
- Step 7:在 GitLab 上创建 Merge Request(MR) -- 可选
- ✅ 三、后续更新与同步(推荐)
- ✅ 四、补充说明
- ✅ 五、总结流程图
✅ 一、完整流程概述
步骤 | 操作内容 |
---|---|
1️⃣ | 克隆仓库(如果本地没有) |
2️⃣ | 切换到 feature/A 分支 |
3️⃣ | 创建并切换到自己的新分支(如 feature/my-new-feature ) |
4️⃣ | 在新分支上进行开发 |
5️⃣ | 提交本地修改 |
6️⃣ | 推送本地分支到远程仓库 |
7️⃣ | 在 xxx上创建 Merge Request(MR)提交审核 |
✅ 二、详细操作步骤
Step 1:克隆仓库(如果尚未克隆)
git clone git@gitlab.example.com:your-group/your-project.git
cd your-project
----------------------指定分支克隆仓库-----------------------
git clone --branch feature/A --single-branch git@gitlab.example.com:your-group/your-project.git
Step 2:获取远程分支信息并切换到 feature/
获取所有远程分支
git fetch origin# 查看所有分支(包括远程)
git branch -a# 切换到 feature/A 分支
git checkout feature/A
Step 3:创建并切换到你的新分支
# 基于当前分支(feature/A)创建新分支
git checkout -b feature/my-new-feature
✅ 当前分支变成:feature/my-new-feature
Step 4:开始开发新功能
在这个分支上添加、修改文件即可。
Step 5:提交本地更改
# 添加所有改动到暂存区
git add .# 或者只添加指定文件
# git add src/new_feature.js# 提交更改
git commit -m "feat: add new feature for my branch"
有时由于误操作导致可能出现如下情况,但是还未push到远程:
git commit -m "" # 提交了空的信息# --------- 如何再次补交新的信息呢?---------------
t commit --amend -m "这里填写新的有意义的提交信息"
Step 6:将本地分支推送到远程仓库
--set-upstream
# 第一次推送时需要设置上游分支
git push --set-upstream origin feature/my-new-feature
✅ 这样就在 GitLab 上创建了一个名为 feature/my-new-feature
的远程分支。
Step 7:在 GitLab 上创建 Merge Request(MR) – 可选
1. 打开 GitLab 页面。
2. 进入项目页面 ➝ `Merge Requests` ➝ `New merge request`
3. 选择:- source branch: `feature/my-new-feature`- target branch: `feature/A`
4. 填写标题和描述,点击 `Compare branches and continue`
5. 审核人、标签等可选填写
6. 点击 `Submit merge request`
✅ 三、后续更新与同步(推荐)
如果你的 feature/A
分支有更新,你可以随时拉取最新代码合并进你的分支:
# 回到 feature/A 分支
git checkout feature/A
git pull # 切换回你的分支
git checkout feature/my-new-feature# 合并最新代码(建议使用 rebase 避免 merge 提交)
git rebase feature/A
如有冲突,请解决冲突后再继续开发或提交。
✅ 四、补充说明
场景 | 命令 |
---|---|
查看当前分支 | git branch |
查看远程分支 | git branch -r |
查看提交历史 | git log --oneline |
查看差异 | git diff |
放弃某个文件的修改 | git checkout -- <file> |
删除本地分支 | git branch -d feature/my-new-feature |
强制删除本地分支(未合并) | git branch -D feature/my-new-feature |