问题标签 [automerge]

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.

0 投票
2 回答
677 浏览

git - Bitbucket 服务器 - 在自动合并期间忽略某些文件

我想从 Bitbucket Server 中的自动合并中忽略我的项目版本文件,因为这个文件对于不同的分支总是不同的。为此,我在存储库的 .gitconfig 中创建了一个类似于以下内容的合并驱动程序

我在存储库的根目录中添加了具有以下内容的 .gitattribute 文件(以忽略此文件进行合并):

但是,Bitbucket Server 似乎没有在我的仓库中使用 .gitconfig 设置,并且它总是在这个文件上发生冲突。如何配置 bitbucket 服务器以读取和应用我在 .gitconfig 中的设置?

0 投票
1 回答
42 浏览

git - 为什么在这种情况下自动合并在 bitbacket 中不起作用?

我为分支模型做了这样的配置

分支模型

在我创建发布分支并将其合并以通过拉取请求进行开发后:

分支

预计我会自动合并以进行开发以掌握,但没有发生任何事情。

0 投票
1 回答
221 浏览

git - 防止自动更改日志合并

我有以下设置:

前提条件:变更日志保存在开发分支中名为 CHANGELOG.md 的文件中,部分如下所示:

比我创建它的功能分支。在特性分支中,新特性 3 被添加到变更日志中:

之后从开发分支发布并合并回它,看起来像这样:

如果我现在将开发分支合并到功能分支中,则 CHANGELOG.md 文件会自动合并(没有冲突),如下所示:

问题:自动合并将 Feature3 放在错误的位置(低于 1.1.0 而不是未发布)。为了防止这种情况,我只找到了一种解决方案:将此文件标记为 .gitattributes 中的二进制文件(以始终引发冲突)。但是 .gitattributes 没有被 GitHub 评估。

问题:保留更新日志,Git 和 GitHub 似乎是最先进的。为什么没有其他人有同样的问题?至少我找不到任何关于它的问题或解决方案。

更让我困惑的是:很多人要求与我的问题相反。他们遇到冲突并希望使用 merge=union 自动合并它。我误解了什么还是我的方法有误?

0 投票
1 回答
184 浏览

github - GitHub 自动合并选项未显示在拉取请求中

根据 GitHub 的文档,在我的 repo 设置中启用“允许自动合并”后,我应该会在我的拉取请求中看到一个显示“启用自动合并”的按钮。我不。

在此处输入图像描述

在此处输入图像描述

我已经打开了新的 PR,切换了允许的合并类型,并将我的回购可见性切换为公开,但没有任何效果。

0 投票
1 回答
46 浏览

git - git revert 单个文件期间的冲突

我在一个非常基本的用例上使用 git revert ,以了解它的实际工作原理,但我面临以下问题。我已经阅读了几篇关于类似情况的帖子,但在我看来,没有一个给出明确的答案。我已经在网上冲浪,甚至只是表面上阅读了有关 reset/revert 命令的部分 Git 文档,但仍然无法弄清楚这里发生了什么。任何帮助表示赞赏。

这些是我正在执行的确切步骤,按以下顺序:

  1. 创建一个~/gittest目录并testfile在其中创建一个文件。
  2. 将以下行添加到testfilecommit 1
  3. 执行git add testfile; git commit -m 'commit 1'
  4. 将以下行添加到testfilecommit 2
  5. 执行git add testfile; git commit -m 'commit 2'
  6. 将以下行添加到testfilecommit 3
  7. 执行git add testfile; git commit -m 'commit 3'

此时我执行git log --oneline,这是输出:

ba1810 (HEAD -> master) 提交 3
88bc443 提交 2
802d820 提交 1

现在testfile看起来像这样:

提交 1
提交 2
提交 3

我想要完成的是恢复提交88bc443,因此期望说提交 2的行消失,所以testfile最终看起来像这样:

提交 1
提交 3

在尝试执行还原操作之前,我git status确实执行了我的工作树是干净的:

在分支主机上
没有什么可提交的,工作树干净

因此,当我执行时git revert 88bc443,出现以下错误:

自动合并测试
冲突(内容):合并测试
错误中的冲突:无法恢复 88bc443... 提交 2
提示:解决冲突后,标记更正的路径
提示:使用 'git add' 或 'git rm'
提示:和使用 'git commit' 提交结果

这些是tesfile错误提示后的 git 指示符:

提交 1
<<<<<<< HEAD
提交 2
提交 3
=======
>>>>>>> 88bc443 的父级 ... 提交 2

我根本没有进行任何合并。以上是我在终端上执行的唯一指令。我已经阅读了 revert 是如何在合并之后/之前在分支之间工作的,但我看不出在这种情况下冲突会存在哪里,因为没有覆盖我试图通过任何后续提交恢复的行。我正在处理单个文件,甚至不在分支或远程存储库之间。

Git 版本:2.25.1
操作系统:Linux Mint 20.2

0 投票
1 回答
51 浏览

c# - 获取给定 SVN 分支的更新并获取冲突文件中最后提交的用户名的程序

我正在尝试用 C# 编写一个程序,该程序可以列出所选分支中的所有冲突文件。该程序将列出在冲突文件中最后提交的用户名。

实际上,我们有多个项目和一个集中式项目,其中多个分支代码使用 python AutoMerge 服务器合并。

https://github.com/LivePersonInc/Auto-Merger

目前我在查找冲突时面临很多问题,因为即使 VS 也不会在构建时显示所有冲突文件。所以我正在寻找一个解决方案如何开始。任何帮助将不胜感激。

我编写了以下方法,它将扫描所有具有冲突 SVN 关键字的文件:


我需要帮助来实施 TakeSVNUpdate 和 CheckSVNLog 方法。

任何帮助将不胜感激。