一个强迫症的Git 选择

选择git

1,常常性的commit or 干净的历史web

  在本地(私有)的开发分支中,选择常常性的commit,以便于实时记录修改,回退等操做。eg.develop,feature...spa

    实现方式: commitblog

  在发布(公共)的分支中,选择干净的历史。eg.master,release...图片

    实现方式:(1)  merge --squash开发

         (2)  tag + merge --no-ffit

2,track 完整的项目(包含图片等非代码文件) or 经gitigore剔除后的纯净代码项目编译

gitignore 是在本地用的,用于部分更新的配置文件。不适合与服务端共享!ast

 

原则上,尽可能少添加gitigore条目配置

  gitigore添加规则:

  1,编译环境配置路径

  2,编译后的程序或库文件

  3,剔除随着业务增加占用大量空间的路径,例如web项目中的upload

 

备注

1,tag依托于分支而存在,用tag标记版本

2,经过A分支分出B分支,又经过merge --no-ff 合并到A分支,则B分支中的历史commit,仍会出现在A的历史commit中。

3,判断是否使用merge --squash选项最根本的标准是,待合并分支上的历史是否有意义。

相关文章
相关标签/搜索