美文网首页
git使用规范整理

git使用规范整理

作者: vktyg | 来源:发表于2019-10-17 09:24 被阅读0次

    设置用户名/邮箱

    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功能
    ...
    

    相关文章

      网友评论

          本文标题:git使用规范整理

          本文链接:https://www.haomeiwen.com/subject/szckyctx.html