SouceTree 更改或重置gitFlow,或gitFlow个性化配置

最近公司代码管理有些混乱, 然后同学们尝试推行遵循GitFlow流程去管理代码,然后完整的遵循gitFlow指定的流程去管理代码,然后使用的是以下流程:


SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第1张图片
我们最终选择的gitflow流程.png

在使用的过程中,我们同学们习惯性使用一些第三方的git可视化管理工具,比如SourceTree,Tower等等,在这里,我梳理一下自己在使用SourceTree的时候,遇到的一些问题(也有可能是bug),具体遇到的问题如下:

初始化的GitFlow配置,配置错误后没有找到重置位置

SourceTree的gitFlow,对一个库第一次使用的时候,会弹出gitflow配置页面,内容如图:


SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第2张图片
gitflow默认配置.png

但是有时候,一个submodule库(下面提及的X)可能被多个主工程引用, 比如:

A工程组成 : A的模块+子模块X
B工程组成: B的模块+子模块X
C工程组成: C的模块+子模块X

由于三个工程都用到了子模块X,但是子模块X理论上基本上只会维户公共的git管理,而且由于ABC三个工程的发版日期,功能需求,开发进度各不相同,因此,如果三个工程都是有gitFlow的默认配置的话,无法满足我们的需求,所以我们需要个性化配置我们的gitFlow的信息,也就是针对每个工程,单独配置处于不同工程下的子模块的gitFlow的配置信息(其实就是默认的Product分支,develop分支,以及feature分支前缀等等,可以看上面的截图),此为我需要做的事情,以及遇到问题的一些上下文环境介绍完毕.

当我在A工程初始化gitFlow配置的时候,配置完成,然后使用ok,
然后我去B工程也去初始化gitFlow流程的时候,开发的时候,却发现不应该和A工程环境下的X的配置相同,但发现时,为时已晚,然后我就想到了我需要修改一下在B工程的X模块的gitFlow的配置信息

基于SourceTree修改gitFlow的配置信息或者删除gitFlow重新配置

基于这个想法,我去SourceTree的偏好设置中,挨个查看信息,都没有相关配置,然后在子模块的右上角,发现了一个设置按钮,个人猜测功能应该在里面,

SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第3张图片
image.png

最终发现在 Adcanced选中中的确有Config配置选项,然后点击Edit Config File,点击打开如图
SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第4张图片
image.png

将最下面的一个gitFlow的信息删除,以 []作为一项信息,将圈中的gitFlow的信息删除,然后保存,重新点击SourceTree的按钮,就会出现重新初始化gitFlow默认配置的了流程

ps: 如果有人问我为何不直接修改这个文件,因为我当时也不确定是否是这个文件控制的,我备份了一份,然后才敢修改的,还是要谨慎的

使用自己的分支前缀或者指定基于GitFlow的Product和Develop分支的配置,却不生效

在上面能够恢复到默认配置之后,已经沾沾自喜.但是在使用的指定的分支的时候,比如如下图:


SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第5张图片
yike是我们增加的在B工程的分支的后缀.png

然后保存,开始start New Feature,但是发现报错!错误如图:

错误如图.png

一直好奇,不应该出现和远程的develop出现歧义啊,然后想起来去刚刚的右边的设置里面看一下个性化的gitFlow的配置是否生效,顺便验证一下是否存在那个Config file里面,经过查看,发现文件里面的分支并没有按照我的个性化要求保存,却仍旧保存的是默认值.然后我就在配置文件里面添加上我们的后缀,之后重新开feature分支,然后成功开了feeature分支.

以上是我使用souceTree的giitFlow的时候遇到的问题,不知道是不是sourceTree的bug,如果有人可以理解或者指导一下,感激不尽!
ps: SourceTree自带gitFlow的功能.只需要在Toolbar(上方的工具栏上)右键,自定义ToolBar,将gitFlow拖到上面即可


SouceTree 更改或重置gitFlow,或gitFlow个性化配置_第6张图片
image.png

你可能感兴趣的:(SouceTree 更改或重置gitFlow,或gitFlow个性化配置)