github提交代码流程
程序员文章站
2022-05-26 19:01:03
...
如何开发一个新功能
假设我们正在 issue-n 分支工作
- 提出 issue,获得 issue 编号
- 清理干净本地工作区
git stash --include-untracked -m "working on something"
- 检出主干分支
git fetch origin master
git checkout -b feat-n origin/master
- 开发新功能并提交更改
git add .
git commit -m 'feat(package): 支持视频播放 #n'
git pull origin master
- 推送更改到 git 服务器并提交 PR / MR,将更改合并到
master
分支
git push origin feat-n
- 切换回刚才工作的分支
git checkout issue-n
- 移除刚才修复问题新建的分支
git branch -d feat-n
# git branch -D feat-n
- 恢复工作状态
git stash pop
# 等同于
# git stash apply [email protected]{last}
# git stash drop [email protected]{last}
# 或者
git stash list
git stash apply
git stash drop
如何修复线上版本问题
假设我们正在 issue-n 分支工作
- 提出 issue,获得 issue 编号
- 清理干净本地工作区
git stash --include-untracked -m "working on something"
- 检出线上分支
git checkout -b fix-n origin/production
# 如果是正在审核的版本
git checkout -b fix-n origin/staging
- 修复问题并提交更改
git add .
git commit -m 'fix(package): 视频无法播放 #n'
- 推送更改到 git 服务器并提交 PR / MR,将更改合并到
master
分支
git push origin fix-n
- 切换回刚才工作的分支
git checkout issue-n
- 移除刚才修复问题新建的分支
git branch -d fix-n
- 恢复工作状态
git stash pop
# 或者
git stash apply
在当前工作没有完成的时候如何切换到其他分支
假设我们正在 feat-x 分支工作,但是现在需要优先开发 feat-y
- 清理干净本地工作区
git stash --include-untracked -m "working on something"
- 检出想要工作的分支
git checkout feat-y
- 查看 feat-y 是否有 stash
git stash list
# 如果有则应用到当前分支
git stash apply
- 开始工作