将 diff 文件导入到补丁中?

将 diff 文件导入到补丁中?

有没有办法将 diff 输出通过管道传输到patch? -i 参数用于指定 diff 文件,但我只想更动态地执行此操作,因为我将定期更新经常更改的目录。

对于 instacne,类似的东西

patch -b | diff -Nub . /current-files

man 文件说

-i patchfile  or  --input=patchfile
Read the patch from patchfile.  If patchfile is -, read from standard input, the default.

但是当我尝试时,我只是在屏幕上看到差异的输出,没有应用任何更改:

testb $> ls
file.txt

testb $> patch -i - | diff -Nub . ../testa
diff -Nub ./file.txt ../testa/file.txt
--- ./file.txt  2011-07-12 09:40:08.195467000 -0400
+++ ../testa/file.txt   2011-07-12 09:39:11.181666500 -0400
@@ -1,9 +1,7 @@
 ijaosdfji
 jaiosdfjio
 jklasdkml
-asdkml
-s;lnk
-lsadjkl
-asdfas
-asdf
+klasdkml
+nas;lnk
+jklsadjkl

diff -Nub ./file2.txt ../testa/file2.txt
--- ./file2.txt 1969-12-31 19:00:00.000000000 -0500
+++ ../testa/file2.txt  2011-07-12 09:39:44.196235000 -0400
@@ -0,0 +1,6 @@
+aljksdf
+jklasdflkjlknm
+nksalk;
+klaskl;
+ioasjdoiaj
+lkmasd'lkm

testb $> ls
file.txt

答案1

你不想反过来吗?

diff -Nub . /current-files | patch -b

答案2

patch -p1 << EOF
diff --git a/debian.master/config/config.common.ubuntu b/debian.master/config/config.common.ubuntu
index 5ff32cb997e9..8a190d3a0299 100644
--- a/debian.master/config/config.common.ubuntu
+++ b/debian.master/config/config.common.ubuntu
@@ -10153,7 +10153,7 @@ CONFIG_VIDEO_ZORAN_ZR36060=m
 CONFIG_VIPERBOARD_ADC=m
 CONFIG_VIRTIO=y
 CONFIG_VIRTIO_BALLOON=y
-CONFIG_VIRTIO_BLK=m
+CONFIG_VIRTIO_BLK=y
 CONFIG_VIRTIO_BLK_SCSI=y
 CONFIG_VIRTIO_CONSOLE=y
 CONFIG_VIRTIO_INPUT=m
EOF

示例来自:https://askubuntu.com/questions/281763/is-there-any-prebuilt-qemu-ubuntu-image32bit-online/1081171#1081171

相关内容