显示导致冲突的提交的作者和提交消息

2023-12-22

我有两个长期运行的分支dev,以及一个遥远的未来版本称为future。我们通过从显示错误的标签分支、修复它,然后向两个分支打开拉取请求来为受支持的版本创建修复程序。如果“未来”分支中存在冲突,我们的开发人员应该创建一个新分支,解决冲突,并向未来打开另一个 PR。

不幸的是,我们的团队足够大,以至于很多第二个 PR 还没有被制作出来。我现在需要弄清楚哪些具体提交导致了冲突。我可以手动执行此操作,方法是在每个冲突的文件上运行 gitblame,并查看文件两侧的提交======行,但这实际上并没有给我足够的信息,而且我必须为每个冲突和每个文件手动运行 gitblame。

有更容易的方法吗?理想情况下,我想要相当于:

Commit X: <coworker1> I updated something.
Commit Y: <coworker2> Something fixed.
Conflicts: 
   some/file/here
   a/different/file.

对于每一个冲突。

尽管任何只给我冲突提交列表的东西都足以保证赏金。


你可以很容易地接近:

git ls-files -u | cut -f2- | uniq \
| while read conflicted; do
        echo @@@ conflicted file $conflicted touched in this merge by:
        git log HEAD...MERGE_HEAD --left-right --format='    %h %aN %s' -- "$conflicted"
done

实际上,这只是您关心的右分支(正在合并的分支)提交作者 - 左分支已经被合并,让任何触及您已经得到的内容的人都可以解决它。

Add --topo-order使用 log 命令来列出每个分支的提交。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示导致冲突的提交的作者和提交消息 的相关文章

  • Git - 推送到远程存储库中的远程跟踪分支

    当简单地做git push到远程存储库 其master分支得到更新 对于非裸存储库来说 这是不希望出现的情况 最近的 Git 版本显示的警告消息清楚地表明了这一点 我希望能够推送到远程存储库 并拥有其之一远程追踪分支进行更新 稍后 当我登录
  • Gerrit 安装后无法克隆所有项目存储库

    我有一个新设置的 Gerrit 实例 目前只有两个存储库 所有项目 binutils 测试 尝试克隆所有项目时 我收到以下错误 git clone ssh user hostname 29418 All Projects Initializ
  • git在Windows和Linux之间切换后强制刷新索引

    我有一个Windows和Linux共享的磁盘分区 格式 NTFS 它包含一个 git 存储库 约 6 7 GB 如果我只使用Windows or 只使用Linux操作 git 存储库一切正常 但是每次切换系统的时候git status命令将
  • Git 命令显示我对给定远程的权限

    同事可以从远程存储库获取数据 但不能推送到远程存储库 我怀疑他对遥控器只有读权限而没有写权限 我可以通过多种方法来检查这一点 但我想不出他可以在 git 中使用的方法 是否有 git 命令可以显示给定远程存储库的权限 No Git 本身不处
  • `git rm --cached` 和 `git update-index --assume-unchanged` 之间的区别?

    我不明白之间的区别git rm cached and git update index assume unchanged 我知道git rm cached
  • 在 git repo 中查找超过 x MB 且 HEAD 中不存在的文件

    我有一个 Git 存储库 用于存储随机的内容 主要是随机脚本 文本文件 我设计的网站等 随着时间的推移 我删除了一些大型二进制文件 通常为 1 5MB 这些文件会增加存储库的大小 而我在修订历史记录中不需要这些文件 基本上我希望能够做到 m
  • git subtree pull -P 不管 总是合并冲突

    问题 即使我没有进行任何更改 每次尝试拉入子树时 我都会遇到合并冲突 我在做什么 In 子树仓库 Make some changes git commit am Changes made git push origin master In
  • SSH 到 Openshift 服务器失败

    我正在 openshift 服务器上使用 jboss catridge 我希望与其他人共享此实例并添加其他用户的公钥 id rsa pub 当其他人尝试访问该实例时 他会收到以下错误 我在他的实例中尝试了同样的方法 但看到了同样的错误 与
  • git push heroku master 权限被拒绝

    我正在关注 ruby railstutorial 我运行命令 git push heroku master 它吐出了这个错误 Permission denied publickey fatal Could not read from rem
  • 为什么我无法创建/签出该分支?

    我正在尝试创建本地 Git 分支 但它不起作用 以下是我正在使用的命令 tablet edit11 git checkout b edit 11 Switched to a new branch edit 11 tablet edit11
  • 如何正确使用“mvn release:prepare”?

    我尝试了这个命令 用dryrun在我的 Maven 项目上进行测试 mvn release clean release prepare DdryRun true DgenerateBackupPoms false Dtag solocal
  • `git ls-files -s` 输出中不同字段的含义是什么?

    在 Git 中 命令返回的典型结果行git ls files s好像 100755 be2c2e9b0966253096472d4b482c458bc892e493 0 gitignore 这些字段是什么意思 不用再犹豫了git ls fi
  • Composer 用于下载私有 GitHub 存储库

    我无法使用 Composer 下载 github 私人存储库 php composer phar update 我收到以下错误 The https api github com repos company private1 https ap
  • 第一次使用node.js - “ReferenceError:节点未定义”

    我刚刚安装了node js 我尝试编写应该检查版本的node v 但它不起作用 这是输出 gt node v ReferenceError node is not defined at repl 1 2 at REPLServer self
  • 如何合并两个连续的 git 存储库

    我有一个相当独特的情况 我有一个名为 Project1 的存储库 我在其中工作了一些时间 几个月 一年后 我创建了存储库 Project1 Again 从 Project1 停止的地方开始 现在 我希望修订历史记录是连续的 因此我希望它们合
  • git 别名中的 AWK 语句

    我正在尝试创建一个 git 别名来以特定格式打印日志中的所有拉取请求 但是 我在使用 AWK 删除双空格时遇到问题 这是使用以下命令的 git log 的输出 git log merges grep pull request pretty
  • Git - 创建拉取请求而不分叉

    使用 git 已经有一段时间了 关于 git pull request 有很多教程和解释 其动机是什么等等 我遇到两种情况 1 分叉 git 仓库 我查看了一些公共 git 存储库并决定我想要做出贡献 所以我 通过以下方式创建重复的存储库F
  • 在 Azure DevOps 项目之间移动存储库时保留拉取请求

    我在同一帐户内有两个 Azure DevOps 项目 我想将存储库从一个项目移动到另一个项目 这一页探索如何在具有完全保真历史记录的团队项目之间移动 git 存储库 https learn microsoft com en us azure
  • 如何克隆特定的 Git 标签

    From git clone 1 手册页 http git scm com docs git clone branch还可以在结果存储库中的该提交处获取标签并分离 HEAD 我试过 git clone branch
  • 当当前分支上有未提交的更改时签出另一个分支

    大多数时候 当我尝试签出另一个现有分支时 如果我在当前分支上有一些未提交的更改 Git 会不允许我这样做 所以我必须首先提交或隐藏这些更改 然而 有时 Git 确实允许我在不提交或存储这些更改的情况下签出另一个分支 并且它会将这些更改携带到

随机推荐

  • 正则表达式如何匹配除空行之外的所有行尾?

    如果我有文字 AAAAAA BBBBBB CCCCCC DDDDDD EEEEEE FFFFFF GGGGGG HHHHHH 我想匹配除空行之外的所有行尾并将行尾替换为制表符 s 部分有效 但它也匹配非空行的最后一个字符 不起作用 什么是正
  • GNU 语句表达式的编译器支持

    哪些现代编译器支持 Gnu 语句表达式 C 和 C 语言 我应该在什么版本中使用语句表达式 语句表达式就像 code code retval int b 56 int c int a a sin b a 我已经知道一些这样的编译器 海湾合作
  • 如何编写一个以 C++ 代码作为输入的 C++ 代码生成器?

    我们有一个 CORBA 实现 可以为我们自动生成 Java 和 C 存根 由于 CORBA 生成的代码很难使用 因此我们需要围绕 CORBA 代码编写包装器 帮助器 所以我们有一个两步代码生成过程 是的 我知道这很糟糕 CORBA IDL
  • PHP/MySQL 更好的用户搜索

    为了让代码焕发新的活力 我大部分时间都是在 14 多年前编写的 我发现我当时写的可爱的小设置 在某些地方缺乏 即处理用户输入 Lesson 永远不要低估用户通过验证器注入垃圾 拼写错误和欺骗的能力 旧方法已达到临界质量 因为 SELECT
  • 在 Ubuntu 16.04 Xenial 上安装 PostGIS

    我想在 Ubuntu xenial 16 04 上安装带有 PostgreSQL 9 6 的 PostGIS 2 3 sudo sh c echo deb http apt postgresql org pub repos apt trus
  • php.ini 和 .htaccess 有什么区别?

    假设我想改变的值 php value post max size 20M in htaccess post max size 20M in php ini 两者都会执行相同的操作 那么有什么区别php ini and htaccess 中的
  • 如何从意图服务向活动发送消息[重复]

    这个问题在这里已经有答案了 基本上 我有一个带有进度对话框的活动 我正在向意图发送一条消息 以从互联网加载所有数据 而应用程序中不会出现任何问题 但是 我能够向服务发送消息 但无法将消息重新发送到活动 该怎么办 以下是我向服务发送消息的方式
  • stl::list 对象的最大数量

    问题是在数据集中找到周期性图形模式 所以我有 1000 个时间步长 每个时间步长都有一个图表 编码为整数 因此 该图可能出现 999 个可能的周期 我还定义了一个相位偏移 定义为 时间步模周期 对于在周期为 2 的第 5 个时间步长中首次出
  • 在没有 cookie 的情况下保留浏览器客户端 javascript/HTML 数据

    我创建了一个使用 Python HTML 和 javascript 的网站 主主页有 19 个可编辑变量字段 如果我更改任何这些字段值 然后离开页面 单击我的其他链接选项卡之一 然后返回我的主页 我的所有变量都会重置回默认值 因为页面会重新
  • 如何在 python 中获得按创建日期排序的目录列表?

    获取目录中所有文件的列表 按日期排序 的最佳方法是什么 创建 修改 在 Windows 机器上使用 python 我过去曾使用 Python 脚本执行此操作来确定目录中最后更新的文件 import glob import os search
  • 为什么我不能将 Number 转换为 Double?

    weight是一个字段 数字在火库 https firebase google com docs firestore manage data data types 设置100 int weight json weight double we
  • 我什么时候应该在片段中获得宽度视图

    我在 Linearlayout 中以编程方式添加视图 按钮 LinearLayout 通过 Fragment 中的 XML 进行布局 我想获取按钮宽度 但总是返回0 我用谷歌搜索了这个问题 getWidth 仅适用于WindowFocusC
  • 仅在执行路径上应用传递

    我有一个过程正在分析整个模块 使用runOnFunction 但我想将它应用到每个执行路径上 执行路径是指从程序中的某个点 用 start 注释 开始到程序的终止点 用 end 注释 的指令序列 我假设我必须通过构造 CallGraph 将
  • 使用索引、使用临时、使用文件排序 - 如何解决这个问题?

    我正在开发一个事件跟踪系统 该系统使用一些查找表以及主日志记录表 在我正在编写的报告中 可以选择一个对象来查看统计信息 该界面按重要性递减的顺序显示所有对象 即点击数 两个表的架构 稍微精简 但您明白了要点 CREATE TABLE IF
  • 在 IIS6 上安装 ASP.NET 4.0 和 ASP.NET 2.0

    我读过您创建新应用程序池的位置 一个用于 2 0 站点 一个用于 4 0 站点 但是在创建池来配置框架时我没有看到任何选项 我的问题是我有几个 2 0 站点作为默认网站运行 我在新的虚拟目录下添加了 WCF 4 0 服务 并将框架设置为 4
  • 如何减少最小 Linux 进程的内存占用

    考虑以下 C 程序 pause c void main pause 在 x64 Linux 3 0 0 16 generic 上使用命令 gcc Ospause c opause 进行编译会生成大小约为 8KB 的可执行文件 当我运行这个可
  • 列出具有架构名称的所有存储过程

    任何人都可以建议一种列出数据库中所有存储过程及其模式名称的方法吗 谢谢 SELECT schema OBJECT SCHEMA NAME object id name FROM sys procedures or SELECT schema
  • 如何分步“验证”Symfony 表单 - 而不是调用 $form->isValid()

    我在 Ubuntu 上使用 Symfony 1 3 6 我有一个包含很多字段的表单 我不想一次性显示所有字段 这可能会吓到用户 而是想将表单分成多个阶段 以便用户可以仅填写显示的字段 在每个步骤 阶段 有点像向导 为此 我需要为表单编写自定
  • 了解 Git 和 GitHub 的基础知识 [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我不完全理解使用Git或Github的目的 我知道这有助于跟踪您的更改 并且有助于人们与其他人合作 但我不与任何人合作 所以我不知道这
  • 显示导致冲突的提交的作者和提交消息

    我有两个长期运行的分支dev 以及一个遥远的未来版本称为future 我们通过从显示错误的标签分支 修复它 然后向两个分支打开拉取请求来为受支持的版本创建修复程序 如果 未来 分支中存在冲突 我们的开发人员应该创建一个新分支 解决冲突 并向