使用 git 在整个文件上“接受他们的”或“接受我的”的简单工具

2024-04-25

我不需要可视化合并工具,而且我也不想必须 vi 冲突文件并手动在 HEAD(我的)和导入的更改(他们的)之间进行选择。大多数时候,我要么想要他们的所有更改,要么想要我的所有更改。通常这是因为我的更改使其上升并通过拉动返回给我,但可能在各个地方进行了轻微修改。

是否有一种命令行工具可以消除冲突标记并根据我的选择选择所有一种或另一种方式?或者一组 git 命令,我可以用自己的别名来执行每个命令。

# accept mine
alias am="some_sequence;of;commands"
alias at="some_other_sequence;of;commands"

这样做是相当烦人的。 对于“接受我的”我尝试过:

randy@sabotage ~/linus $ git merge test-branch
Auto-merging Makefile
CONFLICT (content): Merge conflict in Makefile
Automatic merge failed; fix conflicts and then commit the result.

randy@sabotage ~/linus $ git checkout Makefile 
error: path 'Makefile' is unmerged

andy@sabotage ~/linus $ git reset --hard HEAD Makefile 
fatal: Cannot do hard reset with paths.

我应该如何摆脱这些变化标记?

我可以:

git reset HEAD Makefile; rm Makefile; git checkout Makefile

但这似乎有点绕,一定有更好的方法。此时,我不确定 git 是否认为合并发生了,所以我认为这不一定有效。

反之,“接受他们的”同样是混乱的。 我能弄清楚的唯一方法是:

git show test-branch:Makefile > Makefile; git add Makefile;

这也给了我一个混乱的提交消息,其中有两次 Conflicts: Makefile 。

有人可以指出如何以更简单的方式执行上述两个操作吗?谢谢


解决方案非常简单。git checkout <filename>尝试从中签出文件索引,因此合并失败。

您需要做的是(即结账commit):

查看您自己的版本您可以使用one of:

git checkout HEAD -- <filename>

or

git checkout --ours -- <filename>

(警告!:如果你正在变基--ours and --theirs被交换了。)

or

git show :2:<filename> > <filename> # (stage 2 is ours)

查看其他版本您可以使用one of:

git checkout test-branch -- <filename>

or

git checkout --theirs -- <filename>

or

git show :3:<filename> > <filename> # (stage 3 is theirs)

您还需要运行“add”将其标记为已解决:

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

使用 git 在整个文件上“接受他们的”或“接受我的”的简单工具 的相关文章

  • 使用 git,如何在冲突期间“使用他们的”?

    使用 git 如何执行 使用他们的 类型的分支合并命令 该命令应该用原始版本覆盖我的本地版本 要将您的 master 替换为 origin master git checkout master git branch M master old
  • Github 贡献图中未显示进度?

    我在 github 中的存储库是公开的 当我通过命令行将文件从本地系统推送到 github 时 新贡献不会显示在贡献直方图中 但是 当我将任何文件直接添加到 github 的存储库中时 贡献会显示在直方图中 这是什么原因呢 一个可能的原因是
  • Git checkout 分支从其他分支留下目录树

    我有一个branch2 其源是branch1 并重命名了源自branch1 的目录 当签出branch1时 重命名的目录仍然存在 但没有标记为未暂存的修改 重命名的目录当然不会作为branch1 上的提交出现 为什么会出现这种情况 上述目录
  • 为什么 Pandas 内连接给出 ValueError: len(left_on) 必须等于“right”索引中的级别数?

    我正在尝试将 DataFrame A 内部连接到 DataFrame B 并且遇到错误 这是我的加入声明 merged DataFrameA join DataFrameB on Code Date 这是错误 ValueError len
  • jenkins构建完成后如何将更改推送到github?

    我有一个 jenkins 作业 它从 github 克隆存储库 然后运行 powershell 脚本来增加文件中的版本号 我现在正在尝试将该更新文件发布回 github 上的原始存储库 因此当开发人员提取更改时 他会获得最新的版本号 我尝试
  • 将源代码从 git 迁移到 TFVC

    我们使用的是Visual Studio Online 我们使用TFS的git支持 我们现在想停止使用 git 并使用 TFVC 将源代码迁移到 TFVC 的最佳解决方案是什么 假设您正在 VSO 中创建另一个项目并移动源代码 按照目前的情况
  • 没有工作树就无法使用 Git-Windows-git-pull

    我在 Windows 上遇到与 Git 相关的问题 无法从 git 上的存储库中提取更改 我能够添加 提交和推送我的更改 但不能拉取 它给了我一个错误 致命 C Git libexec git core git pull 不能在没有 工作树
  • jquery 克隆组合框无法运行

    我有下表 当我按下第一个按钮时 我调用 jquery 来克隆第一行并添加新行 table class table table striped table bordered bootstrap datatable style font siz
  • git:显示所有已修改的文件 - 已暂存和未暂存

    我需要一个命令给我所有修改过的文件 这包括暂存 即新添加的文件 和非暂存更改 在普通列表我可以在脚本中使用它 虽然这个问题可能听起来很熟悉 但我只找到接近我想要做的命令 git ls files m 列出 非分阶段 修改但忽略了上演的和新的
  • git rebase 开发分支

    抱歉 只是另一个 变基 问题 但我对此感到困惑 我有时会将开发分支上的提交推送到远程 原始 现在 关于 rebase 总是提到的一件事是 如果您推送了更改 则永远不要 rebase 这意味着 我永远无法重新调整我的开发分支 只能合并它 在功
  • 如何为特定存储库配置 AWS CodeCommit 配置文件

    我有以下问题 作为我工作的一部分 我处理多个 AWS 账户 每个账户都有一个单独的 AWS CodeCommit 存储库和特定于账户的 IAM 用户 这会导致不同的用户 ID 我想找到一种方法来配置我的 ssh 以根据存储库访问不同的帐户
  • 为什么 git 在 git add 上出现“断言失败”错误?

    我分叉了一个存储库 然后将其克隆到我的 Mac 上 YATC目录 我在另一个目录中有一个先前创建的 Xcode 项目 TwitterTimeline 我将其复制到 YATC directory I did git add 在 YATC 目录
  • 从 bazaar 转换为 git 并同步它们的正确方法

    我在 bazaar 中有一个开发存储库 我想将其转换为 git 并保持同步 我需要这个 因为我将与不了解 bazaar 的人分享我的代码 首先我需要将我的 bazaar 存储库转换为 git 我用谷歌搜索了一下 发现this http as
  • 如何从现有的远程分支创建本地分支?

    我想从现有的远程分支 假设是远程 A 创建一个分支 然后将更改提交到存储库 我已使用以下命令从现有的远程 A 创建本地分支 git checkout remote A git branch master remote A 现在我已经使用以下
  • 通过 Git/SVN 将前缀 ? 添加到代码中

    怎么加前缀 v VersionNumber使用 Git SVN 高效地访问存储库中的每个文件 我发现 SO 使用这种做法为其存储库中的每个特定文件提供版本号 他们使用SVN 我想知道如何使用 Git 做同样的事情 举几个例子 1 2 在你的
  • Git Visual Studio 与 Bitbucket confluence 连接到现有项目错误/获取失败

    如何使用 Visual Studio 17 从现有 Bitbucket GIT 存储库中提取数据 Error git 因致命错误而失败 找不到 xyz 存储库 I added 这个迷雾 https marketplace visualstu
  • 如何修复 GitHub 拉取请求中被 git rebase 破坏的提交顺序?

    当我编写代码时 我会将其分解为小的逻辑更改 以便轻松快速地进行审查 为此 我使用git rebase i 交互式 压缩 删除和更改提交的顺序 我注意到这有时会导致 GitHub 拉取请求的提交顺序不同 尽管该顺序保留在远程分支上 例如 co
  • git 克隆密码存储或缓存在哪里?

    环境定义 使用Windows 10操作系统 我使用 githttps git scm com https git scm com 和 Github 的 Git Shell 背景 当我发出如下所示的 git clone 命令时 git clo
  • 如何调试 Jenkins 作业中无法运行程序“C:\Program Files\Git”?

    我正在使用 jenkins 构建我的 git 项目 这是我在查看日志时收到的错误 我在 jenkins 中使用 git 插件 您将如何解决该错误消息 Started by user anonymous Building in workspa
  • 如何在 NetBeans 中执行“git Blame”?

    NetBeans 内置了对 git 的支持 我可以做一个git blame在 NetBeans 内 如果是这样 怎么办 I googled https www google nl search q netbeans git blame它 但

随机推荐

  • 理想的 Android Studio gitignore 文件

    我最近创建了一个 Android 项目 但这是我第一次使用 Android Studio 我将该项目放在 Git 文件夹中 以便能够通过 Git 与其他开发人员远程工作 我发现默认的 gitignore 文件包含以下内容 iml gradl
  • RESTful API 设计:更新 (PUT) 中不可更改的数据是否应该是可选的?

    我正在实现 RESTful API 并且我不确定对于无法更改的数据的存在是否存在 社区接受 行为 例如 在我的 API 中 有一个 文件 资源 该资源在创建时包含许多在创建后无法修改的字段 例如文件的二进制数据以及与其关联的一些元数据 此外
  • 如何让mysql每隔1小时自动运行一次查询?

    我的数据库中有整数值 我想随着时间的流逝而减少它 我该怎么做 您不需要减少该值 您可以只存储基础值并创建一个视图来快速计算该值 像这样的东西 create table hourly base value int starttime date
  • 我在 Golem Shiny 应用程序中使用 {future} 和 {furrr} 函数时收到错误,它来自哪里?

    我目前正在开发一个名为 package name 的 Golem Shiny 应用程序 这是我的要求 我创建的一些函数需要使用来自 furrr and future 包 但是 每当我尝试运行它们时 都会收到以下错误 错误 没有名为 pack
  • jgit - 基于文件扩展名的 git diff

    我正在使用 JGit API https www eclipse org jgit https www eclipse org jgit 访问 git 存储库 在 git 存储库中 我还存储 txt 文件和其他文件格式 我遇到了一个要求 我
  • NetBeans - 将所有内容部署在一个 jar 中[重复]

    这个问题在这里已经有答案了 可能的重复 将外部库放入 JAR 中 https stackoverflow com questions 2034180 put external library to the jar 我有 NetBeans 6
  • 反馈两个进程的stdin和stdout

    我有两个进程通过标准输入和标准输出相互连接 假设我有进程 A 和进程 B B 的标准输出需要输入到 A 的标准输入中 A 的标准输出需要输入到进程 B 的标准输出中 是否有一种简单的方法可以用简单的命令来表达这种关系 或者是否有一个基本的
  • 如何摆脱 Firefox 中用作链接的边框和图像?

    我认为奇怪的问题更多的是我不确定它叫什么 但我有一个包含在链接中的 img example li a href link img a li Now I have the css border rules all to 0 So their
  • 使用 JNDI 在 Tomcat 上设置 WMQ V8 连接工厂

    目前 我们的 Tomcat 配置 JNDI 是基于当前有效的此建议 如何使用 JMS 和 JNDI 连接到 Websphere MQ MQ 系列 服务器 http wiki apache org tomcat HowTo How do I
  • Bitbucket 和 Azure DevOps 之间的集成

    我的要求是我想将我的 Bitbucket 存储库与 Azure DevOps CI 服务器集成 以便一旦我将代码推送到 bitbucket 存储库中 我的管道就会在 Azure DevOps CI 服务器中触发 因为我已经在 Bitbuck
  • 检查用户是否登录ajax页面更改

    作为我正在构建的网络应用程序的一部分 我需要在用户更改页面时检查用户是否已登录 在普通的非ajax站点上 这很容易 因为我可以将PHP会话条件语句放在标头中 并且在每次页面更改时调用的标头将确定是否显示登录页面 但将其视为头文件仅在 aja
  • openssl-使用密钥和 IV 解密 Base64 字符串

    我正在尝试解密已在 openssl 中使用 aes256 加密的 base64 字符串 我获得了会话密钥和 IV 它们是用我的密钥加密的 我将它们转换为十六进制 以便可以使用以下 openssl 命令 openssl enc d aes25
  • 具有专用启动键的 DynamoDB 全球二级索引

    通过全局二级索引查询 DynamoDB 表时是否可以指定独占开始键 我正在使用 aws java sdk 版本 1 6 10 并使用QueryExpression and a DynamoDBMapper 这是我想做的事情的要点 Mappe
  • 将自定义 DQL 函数与 Doctrine 和 Symfony2 一起使用时出错

    我使用 Symfony 2 和 ORM Doctrine 我想创建并注册自定义 DQL 函数 其实我想用SQL函数 CAST http dev mysql com doc refman 5 5 en cast functions html
  • NSNotification 被 UITabBarController 多次调用

    我有一个UITabBarController 有 4 个选项卡 这些选项卡中的每一个都是一个单独的UIViewController 我在这 4 个使用 VC 的每一个上都有对象NSNotification按下某个物体后执行动作 4 个 VC
  • Android 上的热点/网络共享模式下的组播支持

    我有一个原型 Android 应用程序 它正在侦听多播数据包以 发现 要与之通信的客户端 套接字设置类似于 InetAddress group InetAddress getByName 228 1 2 3 MulticastSocket
  • 在 Azure Function App 中配置 Application Insights 的云角色名称

    我想设置从我的 Azure Function App v2 发送到应用程序洞察的遥测数据的 cloud rolename 我的 host json 中的 AI 配置如下所示 applicationInsights sampling isEn
  • 如何解析具有多个小数点的字符串

    我想将诸如 10 0 20 之类的字符串解析为数字 以便比较 C net 中具有相同格式的另一个字符串 例如 我将比较这两个数字 看看哪个数字小于另一个数字 如果 10 0 30 我不确定应该使用哪种解析方法 因为在这种情况下 decima
  • 如何从元组数组创建字典?

    假设我有可以识别的对象数组 并且我想从中创建字典 我可以轻松地从数组中获取元组 如下所示 let tuples myArray map return 0 id 0 但我看不到字典的初始化程序来获取元组数组 我错过了什么吗 我是否已经为此功能
  • 使用 git 在整个文件上“接受他们的”或“接受我的”的简单工具

    我不需要可视化合并工具 而且我也不想必须 vi 冲突文件并手动在 HEAD 我的 和导入的更改 他们的 之间进行选择 大多数时候 我要么想要他们的所有更改 要么想要我的所有更改 通常这是因为我的更改使其上升并通过拉动返回给我 但可能在各个地