【问题标题】:Applying git diff contents from a txt file从 txt 文件应用 git diff 内容
【发布时间】:2020-10-16 17:42:24
【问题描述】:

一位程序员朋友给我发了一个 txt 文件,其中包含差异信息。像这样,从txt-file内容开始:

diff --git a/myfolder/MyClass.java b/myfolder/MyClass.java
index 1234aa0d0554..5678bcasas 112233
--- a/myfolder/MyClass.java
+++ b/myfodler/MyClass.java
@@ -58,7 +58,7 @@ public class MyClass{
        [somecode here]
 - [some row] 
 + [some row]       

等等

如何使用命令行或源代码树将这些更改应用到 git? 我对 git 很陌生,我知道你可以应用 .patch 文件。我可以将此内容转换为补丁文件吗?或者最好的方法是什么?它只是一个 Java 家庭项目。

【问题讨论】:

标签: git diff git-diff git-patch


【解决方案1】:

要应用补丁,只需使用git apply

git apply /path/to/some-changes.patch

如果你只有差异,你可以添加一些缺失的信息

From: John Doe <email>
Date: Wed, 6 May 2020 22:53:29 +0200
Subject: the commit title

commit detail

diff --git a/myfolder/MyClass.java b/myfolder/MyClass.java
index 1234aa0d0554..5678bcasas 112233
[...]

【讨论】:

  • 如何制作描述的txt文件内容的补丁文件?
  • @SteveWaters 我已经添加了一个关于如何添加信息的示例,您可以使用git format-patch查看一些补丁示例
  • @SteveWaters : git apply 查看你给它的文件的内容;它可以命名为some-changes.patchsome-changes.txt,甚至some-changes.jpg,只要它的内容看起来像一个差异(例如:一个文本文件,它首先提到文件名,然后是行范围,然后是前缀为“的行” +" 或 "-" ...),git apply some-changes.jpg 将起作用。
  • 最后我可以用git apply --ignore-space-change --ignore-whitespace mychanges.txt做到这一点
猜你喜欢
  • 2021-03-04
  • 1970-01-01
  • 2012-02-07
  • 2012-05-12
  • 2022-06-11
  • 2022-11-10
  • 1970-01-01
  • 2012-11-04
  • 2011-12-07
相关资源
最近更新 更多