标签: git-flow

使用git-flow的多个开发分支

我目前正在寻找git-flow,并试图弄清楚如何将它用于我参与的项目.

我查看了各种git-flow教程,我对git非常熟悉.因此,我不需要任何关于git的技巧,而是直接使用git-flow的工作流程.

情况如下:

当我重新定义一个版本(让我们称之为1.0)时,这就得到了开发的分支,这很好.现在让我说我开始研究2.0,添加新功能.当然,一旦完成,我想将它们合并到开发中.现在1.0上的修复很好,所以我们也说我生成了几个版本1.0.1,1.0.2等.所有这些也将更新开发分支,这也很好.到目前为止,麻烦,我可以独立开发2.0和1.0.x的修补程序的功能.

但是,假设某人要求1.1版本的新功能.现在我有一个问题.如果我创建一个功能分支,这将基于开发分支,它可能已经包含2.0内容,我可能不希望在1.1版本中.

有一种简单的方法,可以独立处理这些2.0和1.1的变化吗?

我已经看到了几种可能性:

  • 在开发的最后发布位置创建一个新分支.将开发重新定位到此位置并重命名另一个开发分支.但是,此分支不包含1.0.1等的任何修补程序.

  • 在2.0完成之前,不要合并2.0的功能.然而,在最后一刻,我将不得不将大量未合并的更改保持打开状态.如果2.0发布并且之后要求更改为1.0.x,这也无济于事.

这对git flow来说有可能吗?即,一旦新版本的工作开始甚至完成,早期版本的版本是基于什么?

git version-control git-flow branching-strategy

21
推荐指数
2
解决办法
9596
查看次数

什么是TDD的良好git工作流程?

我非常喜欢Gitflow分支模型
http://nvie.com/img/git-model@2x.png,

但我不确定在哪里放置TDD周期 - 我应该只使用一个功能分支并在每次写入或提交时提交通过测试(加上重构后)?创建一个子分支并将"已完成"单元合并到功能分支中?我是应该每次都进行失败的测试,还是只有在通过之后?

以下是我目前在功能分支上所做的事情:

  1. 写一个测试,提交
  2. 由于不存在接口,测试可能会产生错误,修复此问题,修改提交
  3. 使(现在只有失败的)测试通过,修改提交
  4. 重构,新提交
  5. 转到1

git tdd workflow git-flow

21
推荐指数
3
解决办法
3410
查看次数

`git flow release finish`非交互式

我如何git flow release finish以不要求合并提交消息的方式使用?该-m标志不提供这一点,因为我的预期.

当然,目标是能够以不需要交互的方式编写脚本.

git command-line git-flow

21
推荐指数
4
解决办法
6031
查看次数

将develop分支设置为pull请求的默认值

我希望默认情况下将pull请求合并到功能分支中.

我主张使用git流,所以当为一个功能提交一个pull请求时,pull请求需要合并到develop中,而不是master.

一些管理人员评论说,作为人,团队领导可能会忽略这一事实并将错误的拉取请求合并到主人,导致后期发布问题.

我们希望降低合并地狱的风险,因此这将大大有助于实现这一目标.

编辑:我正在使用名为hubflow的gitflow分支(http://datasift.github.com/gitflow/).默认情况下,创建 git hf feature start [tik-123] 要素分支时,会根据规范创建要素分支,但也会将其推送到原点.我们想要这个用于合作.功能完成后,开发人员将转到github中的功能分支并发出拉取请求.然后,如果要在sprint中发布该功能,团队负责人将检查pull请求并将该功能合并到dev中.

git github git-flow pull-request hubflow

21
推荐指数
3
解决办法
2万
查看次数

Git Flow如何使用QA测试版本和新功能?

我们在最新的iOS项目中使用Git Flow,我正在尝试使用QA的方式,以便他们可以测试最新版本,以及测试新功能,而无需担心修复了哪些错误哪个分支.

目前,他们已经在release/v1.0.1分支机构进行了测试,该分支机构已经修复了多个错误release/v1.0.同时,我一直致力于为v1.1发布计划的新功能,但同时从develop分支机构分支出来release/v1.0.1,因此没有任何错误修复.

今天,QA部门希望将我的新功能用于试驾.但是,如果我从我的分支创建它们,那么他们已经重新测试和关闭的错误修复都不在那里.因此,我会收到大量关于已经重新引入的错误的投诉和恐慌......我想避免哪些错误!

那么,让他们测试这个的最佳方法是什么?我可以合并release/v1.0.1到我的功能分支,但是我应该确保在发布develop之前我没有合并回来release/v1.0.1...而且我想在一定程度上,这打破了Git Flow方法.我可以创建一个全新的分支,仅用于QA测试,它将我的功能合并release/v1.0.1,但是我如何处理他们在这个分支上找到的任何错误?在QA之后,我将它合并到哪里?

最重要的是,我必须考虑构建号和版本号,以便它们有意义.目前,版本号是用于发布的版本号,并且构建号随着QA的每个新构建而递增.但是,如果他们从两个独立的分支接收构建,我最终可能会发生构建数字冲突,这会引起混淆.

处理这些问题的最佳方法是什么?

git testing qa branching-and-merging git-flow

21
推荐指数
1
解决办法
1万
查看次数

单个存储库中的多个项目的结构化版本(Git流)(monorepo)

我正在使用Git Flow和多个项目,每个项目都有自己的存储库.

我期待这些存储库合并成一个单一的monorepo.主要原因是跨多个项目共享依赖项目,这意味着我们需要跨多个存储库提交修复(请参阅上面链接中的跨项目更改).

Facebook和谷歌似乎成功使用了这个模型(参见:这个fb谈话,以及谷歌的谈话).

如何在为多个项目使用单个存储库的同时继续使用类似于Git Flow的东西?

虽然有用,但我所链接的谈话并未涉及分支和标记等细节,以及它们如何从单个主干/主服务器组织不同的项目发布.

我没和Git Flow结婚.我正在寻找如何在monorepo中构建版本.

git git-flow

21
推荐指数
1
解决办法
2955
查看次数

Git:如何从一个分支挑选提交并为另一个分支创建拉取请求?

我有两个分支机构dev& master. 我正在使用位桶。

我需要从开发分支中挑选一些提交。

然后需要为master分支创建拉取请求。

由于我的dev环境有很多东西,其中一些无法直接合并到master.

因此,从分支中获取提交 <id 1>, <id 2> dev。把他们带到一起。创建拉取请求以与master分支合并。

git bitbucket git-flow

21
推荐指数
2
解决办法
7万
查看次数

在Windows/Linux上是否有对git-flow的IDE/GUI支持?

  1. Git有git-flow支持的GUI前端吗?

    我们的团队在Windows和Linux上使用Eclipse IDE.管理着用git-svn 逐渐感染它们,现在正在寻找下一步来利用真正分支的力量(而不是git-svn-rebase/dcommit).Git-flow似乎或多或少都是我们现在所需要的.然而,我们中的一些人仍然依赖于GUI,它使一切变得更容易销售和提升.

    所以,理想情况下,我正在寻找一种从Eclipse访问它的简单方法.EGit似乎还不支持它 - 我正在考虑将它们作为外部工具添加.欢迎提出想法 - 在Eclipse中或在Eclipse之外.

  2. 如果上面的答案是否定的,这可能是GUI上瘾者的问题吗?

    我知道git-flow工具实际上非常薄,通过手动执行带有或不带gui的'raw'命令很容易实际跳过它(例如,我发现在gitk中操作分支很方便).

    一方面,我更愿意尽量减少手工工作,减少错误空间(再次考虑团队的经验).OTOH,我的猜测是我们可以开始只使用develos/release/hotfix分支(稍后引入功能分支),在这个设置中人们只需要正常拉/推.他们不会看到很多git-flow - 它只会作为设置发布和东西的人(大多数是我:)的帮手.这有意义吗?

注意:实际上git-svn/trunk仍然存在 - 对于更偶尔的非git用户.我计划将其与'develop'保持同步(显然忽略了合并历史的压缩合并).希望这将是流畅的名言吗?

eclipse git git-svn git-gui git-flow

20
推荐指数
2
解决办法
1万
查看次数

寻找一种方法使用git flow自动化"bump version"

我已经使用git flow几个月了,它运行得很好.我想自动化"凹凸版"操作.

项目是PHP,footer.php有一个令牌替换为当前的发布标记.我确信,随着git日志和PHP文件的一些问题,一切都应该解决,但我认为有人之前做过这个...

有任何想法吗?

git bash awk version-numbering git-flow

19
推荐指数
3
解决办法
1万
查看次数

在git flow中重命名一个分支

是否可以使用git-flow重命名功能分支?

我试图寻找了git flow helpgit flow feature help,也是混帐流的cheatsheet,但也没有什么.

或者,只是使用它是否安全git branch -m feature/new_name

git branch git-flow

18
推荐指数
3
解决办法
1万
查看次数