Git:多个分支部署工作流程

时间:2017-03-07 10:55:42

标签: git bitbucket

我正在努力了解如何在处理多个分支机构时最好地改进我的工作流程,每个分支机构都将部署到特定环境。

让我们首先说我正在使用BitBucket来托管我的git存储库,我有三个分支:origin/masterorigin/stagingorigin/production

每当我完成一项新任务时,我都会将任务提交到我的本地分支master,然后将其推送到origin/master。之后,如果我想将该提交部署到暂存,我只需打开分支并运行“同步”(使用BitBucket功能),以便分支origin/stagingorigin/master匹配。

然而,当我在SourceTree上查看存储库时,感觉就像我弄得一团糟,这可能不是正确的做法。

这是SourceTree上的存储库的样子:

enter image description here

这就是它在BitBucket上的表现:

enter image description here enter image description here

首先:为什么origin/productionorigin/staging分别在origin/master之前提交4次和6次提交?

其次,如果我正在做的事情是错的/可以改进,你建议我做什么?

1 个答案:

答案 0 :(得分:1)

stagingmaster位于master分支之前,因为origin/production中没有合并提交。您可以在SourceTree屏幕截图中轻松看到这一点:Merged master into production是在master之前的四个(合并)提交,四个提交有staging消息。它与您的master分支类似。

您遇到这种情况是因为您反复将master分支合并到其他分支,但从未将其他分支合并回主分支。这没错。只要" Ahead"伯爵不打扰你,你已经完成了所有的设定。如果您希望在production之前没有提交,则可以将stagingmaster合并回master。这不会改变您的任何数据,合并提交将成为您{{1}} s'的一部分。历史也是如此。