GIT项目开发流程

流程示意

在这里插入图片描述

获取项目代码:

  1. 在gitlab 网页端 fork(派生) 项目到个人私有库

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Cr3mlcUb-1662513558168)(/media/202107/2021-07-27_094225.png)]

  1. 克隆到本地:
	git clone  https://git.XXXXX/XXXX/sam.git #本地仓库项目
  1. 把上游仓库地址加入到本地:
	#进入项目目录
	git remote -v # 查看本地项目仓库列表
	git remote add trunk https://git.XXXXX/XXXX/sam.git  #添加上游仓库(项目仓库)
	git remote -v:  #再次检查是否加入到本地。

在这里插入图片描述

代码提交

注:git push -f 命令只可以在fork 本地项目操作,不允许在上游项目进行push -f 操作

  1. 根据功能/开发任务/BUG 创建分支,myTask 根据功能代号命名
git checkout -b myTask   #根据当前分支创建新的分支
git push origin myTask   #把本地分支提交到远程
  1. 拉取上游最新代码(拉去代码的时候,项目分支不要有本地提交,否则rebase 后可能会把本地提交作为未提交重新提交)
git fetch trunk #拉去上游代码
git rebase trunk/master #合并上游代码
git push 提交上游代码

3.本地开发提交

git status  #查看文件修改状态
git add .  #添加文件
git commit -m "完成了XXX"
git push

4.完成本地开发

5.合并本地提交

  • 查看提交列表
git log 

在这里插入图片描述

  • rebase 提交
git rebase -i HEAD~2  : #2代表提交的数量,合并前面2次提交
  • 命令完成后会出现vim 编辑框,对编辑框进行调整

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0VsyJMwA-1662513558169)(/media/202107/2021-07-27_095112.png)]

  • 把需要合并的提交的pick 调整为s
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-r31CMQh2-1662513558170)(/media/202107/2021-07-27_095204.png)]

  • 退出保存

  • 保存退出后会在出现新的vim 编辑框,用于提交说明的修改
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lecNhx6Q-1662513558171)(/media/202107/2021-07-27_095605.png)]

  • 修改说明文字,把几段合成一段
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-eo7MPq8O-1662513558171)(/media/202107/2021-07-27_095653.png)]

  • 强制提交本地

git push -f
  • 在网页端操作mr

  • 发起MR
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sUITkDrK-1662513558172)(/media/202107/2021-07-27_100028.png)]

  • 创建,指派人(assign to) 可以选择自己。如果自己没有主干合并权限,指标给拥有主干合并权限的人员
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jET59U2v-1662513558172)(/media/202107/2021-07-27_095929.png)]
    在这里插入图片描述

  • 合并
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wUoPz0x6-1662513558173)(/media/202107/2021-07-27_100137.png)]

  • 主干操作批准

  • 完成代码。 可以把这个本地分支删除。

如果发现提交的MR 出现冲突

  • 隐藏本地提交
git stash  #隐藏本地提交
  • 撤回提交
git reset --soft XXXX  #XXX 是git 版本号码
git push -f #回退版本更新到云端
  • 重新更新上游代码
git fetch trunk #拉去上游代码
git rebase trunk/master #合并上游代码
git push 提交上游代码
  • 显示本地修改
git pop  #隐藏本地提交

如果发现修改文件忘记切换到新分支

  • 如果代码已经提交,需要撤回代码,参考上一个问题

  • 隐藏本地提交

git stash  #隐藏本地提交
  • 操作切换分支
git checkout -b myTask   #根据当前分支创建新的分支
git push origin myTask   #把本地分支提交到远程
  • 重新拉取本地修改
git stash apply  #重新拉取本地修改

其他常用

git stash #隐藏本地修改
git stash pop #显示本地修改
git stash apply #拉取本地修改
# 修改了本地,但是发现不是需要的分支,先git stash,操作切换分支,然后再git stash apply
git reset HARD   回退版本
git branch -d xxx #删除本地分支

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值