git使用规范整理

设置用户名/邮箱

git config --global user.name  "GShan"   
git config --global user.email  "9495@qq.com"

不加--global==为局部设置

分支设置

分支名 分支用途 数量 来源
master(简称M) 生产 唯一 C
test(简称T) 测试 唯一 M/C
C12345(简称C) 开发 数个 M
Bug123(简称B) 处理生产bug 数个 M
release(未使用) 预发布(可用rebase) 唯一 M/C

开发流程

1.git checkout -b C------ 在"M"切换C分T支
2.git merge C      ------ 在"T"提测开发分支
3.若有测试bug,在bug所在C分支上修改,然后执行2,禁止直接修改
4.git merge C      ------ 开发完毕后,"M"分支执行
5.处理生产bug按234步处理
6.开发依赖某C1分支,如果跟领导确认C1分支先上线的话,可以merge C1代码
(一般没有这种情况,极其低,一般都是一个开发完,开发另一个)
7.第6条,若不确定上线时间,在自己分支上修改代码,与C1相关的代码每次要单独一个commit,
如有需要可单独拉出一个合并过C1的代码,在非80端口上进行"测试"
8.上线后删除对应的C/B分支

注意事项

#0.个人分支开发:按"开发-commit-pull-push"顺序进行,不要打乱顺序
#1.切换分支前,先提交(commit)代码,然后拉(pull)代码,可以不推送(push)
#2.切换分支后,全部放弃工作区未提交(commit)的代码
#3.切换分支后,先拉(pull)代码,再进行其他操作
#4.保证merge的两个分支都是最新代码
#5.目前禁用rebase,rebase后需要强推代码,可能导致其他同事代码无法找回
#6.回滚代码后,需确认同事间代码保持一致
#7.master禁止回滚代码,或者3个同事一起商量怎么回滚
#8.为防止未解决冲突就提交代码,禁止使用add .

解决冲突

1.不要盲目使用"使用本地"和"使用传入"功能,冲突超过半屏,自己要解析代码逻辑,然后再进行合并操作
2.自己没修改的用传入的
3.自己修改的,看看冲突处代码逻辑,如果该处是自己更改的,但是老旧代码用自己的,如果有别人加入的逻辑,需要自己整合
4.以上操作还是弄不懂的,找同事一起看

在git merge C 情况下
可以直接删除符号"<",符号"=",符号">"去修改
<<<<<<<<
你写的(本地的)
========
别人写的(传入的)
>>>>>>>>

不常用代码

git代码 用途
git reset --hard HEAD^ 回退到上个版本
git reset --hard HEAD~n 回退到前n次提交之前
git reset --hard commit_id 退到/进到 指定的commit
git push origin <branchname> --force 强推到远程
git revert commit_id 修改指定的commit,修改后需要重新commit
git branch -d <branchname> 删除本地分支
git branch -d -r <branchname> 删除远程分支,删除后还需推送到服务器
git branch -m <oldbranch> <newbranch> 重命名本地分支
git branch -d <branchname> 删除本地分支
git fetch origin 取回origin 主机提交信息
-f --force:强制
-d --delete:删除
-D --delete --force的快捷键
-m --move:移动或重命名
-M --move --force的快捷键
-r --remote:远程
-a --all:所有

注释规范

Add ( 新加入的需求 )
Fix ( 修复 bug )
Remove ( 移除功能 )  
Changed ( 完成的任务 )
Refactor ( 重构代码Refactor )
Updated ( 完成的任务,或者由于第三方模块变化而做的变化 )
例:C12346 Fix 单词拼错
例:C12345 Changed 提测
例:C12345 Add 上线/开工
例:C12345 Updated 引入L96325 xxx功能
...
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容