问题标签 [git-flow]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 如何使用 git 取消提交更改
我正在使用 git flow,不假思索地,我将代码提交到了错误的分支(功能),然后发布了它。
我需要获取该代码,将其从分支 1 中删除,然后将其移至正确的分支,即分支 2。
所有文件都存储在一个文件夹中,这可以使事情变得更容易,我只是不确定如何去做。
例如。
git - zsh 过分热心地尝试将功能更正为功能
我正在使用 git 和 zsh。我们的老板正在使用 git-flow。Zsh 一直问我是否将“功能”错误地输入为“功能”。一位同事出于这个原因停止使用 zsh,我们必须解决这个问题,让他重新回到 zsh 的光中!
更新:完全禁用自动更正
就像在接受的答案中一样,它只是correct_all,但是禁用 zsh 自动更正的语法因更新而异。以下应该是一个全面的:
DISABLE_CORRECTION="true" - 目前对我有用,从这里学到的
更新:禁用特定命令的自动更正
要专门禁用它自动更正命令,但不幸的是不是“功能”,因为它是一个目录(感谢下面的答案!),请参阅此解决方案以排除命令
git - 使用成功的 Git 分支模型支持多个版本
在我们公司,我们正在从 SvN 迁移到 Git(是的,迟到总比没有好)。有了这个,我们还尝试简化版本控制过程。为此,我找到了一篇有趣的文章:Vincent Driessen 的成功 Git 分支模型。
据我从文章中了解到,开发人员假设是线性发布。要清楚:
未提及对旧版本的支持。例如:我们最多支持三个主要版本,因为有些客户不想升级。所以想象我们有以下版本:
当在发布v8.0.0
后v9.0.0
发现一个严重的 bug 时,我们 checkout 标记v8.0.0
,修复 bug,并将其合并回develop
和master
分支。合并到master
gets标签v8.0.1
中。
在我看来有点奇怪,因为有两件事:
- 时间线将
master
如下所示v7.0.0 --> v8.0.0 --> v9.0.0 --> v8.0.1 --> v10.0.0
。我完全知道这是可能的,但它也可以接受吗? - 当我从
hotfix
to合并master
(并且在master
那个时刻)v9.0.0
并用v8.0.1
v8.0.0
v9.0.0
提前致谢!
git - 将版本合并到主版本中,没有结果差异
在工作中,我们有一个基于 git flow 的 git 工作流。我们有 3 个主要分支:dev、release 和 master
Dev 是我们目前正在做的事情,master 是我们在生产中所拥有的,而 release 是我们进行发布并进行最后一次错误修复的时候。当发布准备好时,发布分支被合并到 master 并推送到生产中。
在 master 中制作的任何修补程序也被推送到 dev (和发布分支(如果当前正在运行))
现在的问题是我们如何确保发布分支中的代码在合并后实际上是 master 中的代码?换句话说,release 和 master 之间应该没有差异(合并后)。
当从发布分支合并到 master 时,我们也不想处理冲突,所以任何一个都应该自动处理。
git - 具有共享代码库的多个产品的版本控制和发布管理
我目前正试图弄清楚,在我有一个 git 存储库的情况下,如何使用 git flow 进行发布管理,其中两个解决方案中有大约 15 个项目以及数据库脚本。
每个解决方案基本上都包含一个将生成可执行文件的项目和 10 多个包含两种解决方案(如 DAL、SAP 访问包装器等)使用的基本功能的项目。
解决方案一是为用户提供 UI 的应用程序。
解决方案二是 Windows 服务。
两种解决方案的发布与数据库不同步。这意味着通常只有三个中的一个或两个被释放。这导致不同的版本号。比如UI发布比较频繁,服务发布很少。数据库介于两者之间。因此,UI 可以有 2.1.15 版本、2.1.1 服务和 2.1.5 数据库。
现在,如何处理共享项目?他们应该使用 UI 的版本号还是服务的版本号?
我如何解释其中一个共享项目的更改不会自动触发两个解决方案的发布这一事实?这意味着同时,生产环境包含同一个项目的两个不同版本。这需要以某种方式反映在存储库中。
我在这里有点迷路,任何建议,经验等将不胜感激。
我可以自由地以任何方式构建存储库和代码库,如果有帮助,我可以创建其他存储库。
git - git flow release 以包含空格的消息结束
我怎样才能提供一个真实的消息git flow release finish
?
这就是我的尝试,它的输出如下所示:
我可以让它工作的唯一方法是当我不在消息中使用任何空格时。
git - `git flow release finish` 非交互方式
如何git flow release finish
以不要求合并提交消息的方式使用?正如我所料,该-m
标志没有提供此功能。
当然,目标是能够以不需要交互的方式编写脚本。
git - 下面的 git config 有什么区别
.git/配置 1
.git/配置 2
但是,在两个存储库中,当我输入 时branch -a
,都返回