tag
|
|
|
|
|
|
fetch
|
|
push
|
|
log
|
|
rebase1 2
rebase是找到当前分支与指定分支的公共祖先,然后将当前分支上的新提交重播到指定分支上。
- 合并commit记录
|
|
- 合并某一段commit粘贴到另一个分支上
|
|
注意
- 不能将master分支rebase到其他分支上。
- 不要在公共分支上rebase。
- 解决冲突,git add . -> git rebase –continue
- 合并代码的时候按照最新分支优先合并为原则
branch规范3
当一组feature开发完成,首先合并到develop分支。进入提测时,创建release分支。如果测试过程中需修复bug,则直接在release分支修复并提交。当测试完成后,合并release分支到master和develop分支,此时master分支为最新代码,用作上线。
- master: 主分支,用于部署生产环境的分支
master分支一般由develop以及hotfix分支合并,任何时候都不能直接修改代码,确保master分支稳定性。
- devlop: 开发分支,始终保持最新完成以及bug修复后的代码
一般开发新功能时,feature分支都是基于develop分支下创建的。
- feature: 特性分支,开发新功能时,以develop为基础创建feature分支
feature分支命名规则feature/newfeature。
- release: 预上线分支
发布提测前,会以release分支代码为基准提测。
- bugfix: bug修复分支
从develop创建。
- hotfix: 热修复分支
线上出现紧急问题,需要及时修复时,以master分支为基线,创建hotfix分支。修复完成后需要合并到master分支和develop分支。hotfix分支命名规则和feature分支相同。
commit规范
commit风格因人而异,但是规范会让commit log具有更高的可读性。
|
|
type
-
feat: 新增feature(功能、特性)。
-
fix: 修复bug。
-
perf: 优化代码,以提高性能(在不影响代码内部行为的前提下,对程序性能进行优化)。
-
refactor: 代码重构(在不影响代码内部行为、功能下的代码修改,也没有修复bug)。
-
docs: 修改了文档,如README、CHANGELOG、CONTRIBUTE等。
-
style: 修改代码格式,如空格、缩进、逗号等,不改变代码逻辑。
-
test: 新增、修改测试用例。
-
build: 影响项目构建或依赖项修改。
-
revert: 回滚到上一个提交版本。
-
ci: 修改持续集成相关文件。
-
chore: 改变构建流程、或者增加依赖库、工具等。
-
release: 发布新版本。
-
workflow: 修改工作流相关文件。
-
sync: 同步主线或分支的bug。
-
log: 修改日志。
scope
声明commit影响的范围,如route,component,utils,build。
subject
commit的概述,描述主要变更内容,尽量简短(50字符以内)。
body
commit的详细说明,可使用多行。
+ 表示新增
- 表示删除
* 表示修改
footer
commit的备注,可以是ChangeLog、修复的bug的链接。