2016-03-03 55 views
0

我完成了一个本地branch1工作,并将其合并为master
现在,我想在我的应用程序另一个特点工作,所以我将创建第二个本地branch2,完成添加功能和合并也branch2掌握。只要我需要使用功能来实现我的应用程序,并且直到我的应用程序完成,这可以继续。
现在假设在所有这些实现之后,我想对作为branch1的作业的主题做一些改进或改变,比如静态页面about,helpcontact
是否可以检出并重新使用branch1进行这些更改或该分支不能再使用,而应该删除?
一段时间后,有可能是我最初可能想保留这些目的老话题枝相当堆积。但是,这些旧分支都已过时,不再像主分支创建时那样完整地复制主分支:这是成功完成merge的先决条件吗?旧分支可以被淹没吗?

回答

1

您可以使用这些老枝,但是......你应该从合并掌握新的变化之前,(这样你就可以在今后避免大的合并问题)。当你需要转生老枝做:

git checkout very-old-branch 
git pull ./ master 
# do some changes into very-old-branch 
git add . 
git commit -m 'changes in the very old branch' 
# need to merge very old branch with new changes into master again 
git checkout master 
git pull ./ very-old-branch 
git push origin master 

但是这将是最好不要是方士和公正创造新的分支,并在做出改变吧:)

2

分支/合并策略是你的决定,但你似乎描述了一个基于功能的工作流程。

在这种情况下,你已经合并了您的特性分支branch1后掌握,这功能的内容/史载的master由于合并分支英寸branch1随着时间变得无用甚至过时,因此您可以安全地将其删除,以便旧功能分支不会累积到您的存储库中。

如果你再看看你要添加到由branch1推出了功能的改进,你可以看到这些改进为新的功能,因此从master创建一个新的特性分支来执行这些改进。

你应该如何安排你的工作流程是相当主观的,最好的策略往往取决于项目是如何在组织方面的贡献者,以及如何将更改部署。

1

你应该采取gitflow看看。

它做这类发展作为你问

完整的工作流程是这样的一个非常著名的工作流。在你的情况下,你指的是功能分支(紫色的)。

相关的文章是在这里:
http://nvie.com/posts/a-successful-git-branching-model/

正如你可以看到你继续开发新的特性所有的时间,一旦你与他们做你只需将它们合并回dev(在你的情况可能是主)

enter image description here

相关问题