zoukankan      html  css  js  c++  java
  • git(git-flow)的高效管理使用

    一、svn与git的比较:

    • git是分布式的,你可以从任一节点pullpush代码
    • git不需要联网也可以commitcommit也可以合并
    • git分支之间很方便merge,也可以只pick某个commit
    • git很容易撤销修改和恢复版本
    • SVN使用简单,只需commitupdate
    • SVN权限管理可以限制到单个文件

    二、使用

    • git clone(ssh+http(s))
    • git add & commit, git pull & push
    • git status & log & blame
    • git checkout & git reset
    • git remote
    • git cherry-pick

    三、常用准则

    • 经常pull代码,与最新代码保持同步
    • 多点commit代码,如果没有做完可以不push,但是一天至少push一次。避免本地代码丢失
    • 独立功能尽量新开feature分支,开发完后再mergedevelop分支
    • merge代码要小心,最好使用IDE或者GUI工具来pull代码,merge代码冲突的话它有很好的提示和merge方法
    • 每次push代码前确保代码能编译通过
    • commit Message要能说明本次修改的目的。最好遵循一定的规范

    四、commit规范文案

    • add: 增加相应功能
    • change: 修改相册浏览界面
    • update: 更新分享到第三方的库
    • fix: #169 #124(没有bug编号的直接把问题描述写上)
    • 准则就是要方便追溯问题

    五、git-flow

    • 多个版本同时进行开发。1.0版本还在改bug阶段,1.1要进行开发
    • 多个团队同时进行开发。某个团队开发一个功能分支,另外一个团队需要另一个功能分支
    • 新版刚发不久,发现严重bug需立即修复
    • 是构建在Git之上的一个组织软件开发活动的模型,是在Git之上构建的一项软件开发最佳实践
    • 工作流定义了一个围绕项目发布的严格分支模型。虽然比功能分支工作流复杂几分,但提供了用于一个健壮的用于管理大型项目的框架

    六、git-flow分支

    • master:存放的应该是随时可供在生产环境中部署的代码(Production Ready state)。当开发活动告一段落,产生了一份新的可供部署的代码时,master分支上的代码会被更新。同时,每一次更新,最好添加对应的版本号标签
    • develop:保存当前最新开发成果的分支。通常这个分支上的代码也是可进行每日夜间发布的代码(Nightly build
    • release:当开发结束后用来提测的分支,所有测试阶段的bug全部在此分支修复,测试结束后合并到 master develop 分支中
    • feature: 这个分支主要是用来开发一个新的功能,一旦开发完成,我们合并回Develop分支
    • hotfix: 当我们在Production发现新的Bug时候,我们需要创建一个Hotfix, 完成Hotfix后,我们合并回MasterDevelop分支

    七、总结

    • 一切皆分支,本质是分支管理
    • 严格规定了哪些分支从哪里产生,最终合并到哪些分支上
    • 结合SourceTree第三方工具很方便使用
    • 多人和多团队协作很有用
  • 相关阅读:
    [洛谷P4248][AHOI2013]差异
    [洛谷P4070][SDOI2016]生成魔咒
    [洛谷P3979]遥远的国度
    [CF551E]GukiZ and GukiZiana
    [洛谷P4721]【模板】分治 FFT_求逆
    [洛谷P4721]【模板】分治 FFT
    一键智能抠图-原理与实现
    国防科技大学单张RGB-D图像预测物体对称性
    在OpenCV中使用色彩校正
    Deformable DETR DETR 存在收敛速度慢等缺陷。为了解决这些问题,本文可变形 DETR,其注意力模块仅关注于参考点附近的一小部分采样点作为注意力模块中的 key 元素。可变形 DETR 可以在比 DETR 少 9/10 的训练轮数下,达到更好的性能(尤其是在小目标上)。在 COCO 基准上的大量实验表明了该方法的有效性。
  • 原文地址:https://www.cnblogs.com/destiLaugh/p/git.html
Copyright © 2011-2022 走看看