当前位置: 首页 > 知识库问答 >
问题:

如何获取git diff文件,并将其应用于作为同一存储库副本的本地分支?

夏华藏
2023-03-14

我有一本书。由同事创建的diff文件,并希望将该diff文件中列出的更改应用于同一存储库的本地分支。我无法访问该员工的pc或用于生成此差异文件的分支。

显然,我可以逐行重新键入所有内容,但我不想让系统受到人为错误的影响。最简单的方法是什么?

共有2个答案

松俊才
2023-03-14

您似乎也可以使用补丁命令。将diff放在存储库的根中,并从命令行运行补丁

patch -i yourcoworkers.diff

patch -p0 -i yourcoworkers.diff

如果他们没有使用--无前缀创建差异,则可能需要删除前导文件夹结构。

如果是,那么您可以使用以下方法删除文件夹中不适用的部分:

patch -p1 -i yourcoworkers.diff

p(n)表示要删除文件夹结构的多少部分。

有关创建和应用修补程序的详细信息,请参见此处。

你也可以用

git apply yourcoworkers.diff --stat 

查看默认情况下diff是否会应用任何更改。如果补丁没有正确应用,可能会说0个文件受到影响(不同的文件夹结构)。

裴甫
2023-03-14

将diff文件复制到存储库的根目录,然后执行以下操作:

git apply yourcoworkers.diff

有关apply命令的更多信息,请参见其手册页。

顺便说一下:通过文件交换整个提交的更好方法是发送方的命令git formd-patch和接收方的git am的组合,因为它还传输作者信息和提交消息。

如果补丁应用程序失败,并且从生成diff的提交实际上在您的回购中,您可以使用-3选项,该选项尝试在更改中合并。

它还可用于Unix管道,如下所示:

git diff d892531 815a3b5 | git apply
 类似资料:
  • 问题内容: 有什么方法可以读取文本文件并将内容存储在Jtable中?我有一个文本文件,其中包含有关某些过程的某些信息。就像一个具有列和各自值的表。是否可以获取.txt文件的内容并以Jtable的形式显示?我正在使用Eclipse和Window Builder。任何帮助将不胜感激。谢谢! 问题答案: 我将研究Oracle的教程: 读/写文本文件 JTable教程 当从文本文件中获取数据时,您需要将其

  • 我有一个文件,它的结构与python列表/字典相同,即。 有没有一些简单的方法如何阅读这个文件并将它转换成一个字典列表?

  • 我从事基于WordPress的项目,我想在WP的每个新版本中修补我的项目。为此,我想在两个提交或标记之间生成一个补丁。 例如,在我的repo中,我这样做:

  • 我想将文本文件或zip文件保存在一个文件夹中,该文件夹可以使用django framework上传到移动设备(Android、IOS)中。如何在请求中获取文件?提前谢谢

  • 问题内容: 我已经解决了这些问题,但似乎仍然无法解决。我有一个文本文件,分为几行。每行包含5个数据,中间用“,”分隔。我正在尝试读取此文件并将信息拆分为以下形式的字符串数组: 请有人可以帮我解决一个简单的解决方案!?谢谢!!!:) 数据示例: 样例代码: 公共无效的readFile(){ 错误 07-24 06:26:56.524:E / AndroidRuntime(27203):致命例外:主要

  • 我有一个方法接受InputStream作为参数。如何找到传递的处理程序正在处理哪个文件? 例如: 文件名应该替换为什么,以便显示处理程序打开的文件的名称。