是否应该在每次合并后删除dev分支然后创建?

时间:2014-03-19 16:21:54

标签: git merge

如果有分支名称dev,则它是正常的开发分支。

我应该在每次合并后删除它,然后创建一个新的吗?

如果不删除,分支网络是(所有合并使用--no-ff):

*   0019d6a - (HEAD, master) Merge branch 'dev' second (2 minutes ago)
|\
| * e6dcaf5 - (dev) add b.file (2 minutes ago)
* |   c39915b - Merge branch 'dev' (3 minutes ago)
|\ \
| |/
| * 352afa1 - add a.file (4 minutes ago)
|/
* d06fb93 - init (4 minutes ago)

版本c39915b是第一次合并,然后继续开发,进行第二次合并。

如果我删除并创建一个新版本,它将从版本c39915b开始:

*   4a4b8dc - (HEAD, master) Merge branch 'dev' second (7 seconds ago)
|\
| * afd5dfe - (dev) add b.file (16 seconds ago)
|/
*   c39915b - Merge branch 'dev' (3 minutes ago)
|\
| * 352afa1 - add a.file (4 minutes ago)
|/
* d06fb93 - init (4 minutes ago)

在第二种情况下,分支网络比第一种情况明确。

我不知道哪一个更好?


附加:

我看了git-flow并找到了这张照片:

git-flow

它使用第一个并将dev分支保留为长期分支。

1 个答案:

答案 0 :(得分:1)

在这种情况下,第二种方法随着时间的推移只需要做很多工作,绝对没有任何好处。

坚持使用分支并保持合并。而且,即使你一直坚持使用分支,你也可以获得第二种类型的历史记录。无论何时直接对master进行更改,都要将其合并到dev(不是dev中的dev,反过来)以使dev分支更新。