mirror of
https://https.git.savannah.gnu.org/git/patch.git
synced 2026-01-27 09:54:55 +00:00
87 lines
1.4 KiB
Plaintext
87 lines
1.4 KiB
Plaintext
# Copyright 2010-2025 Free Software Foundation, Inc.
|
|
#
|
|
# Copying and distribution of this file, with or without modification,
|
|
# in any medium, are permitted without royalty provided the copyright
|
|
# notice and this notice are preserved.
|
|
|
|
# git diffs: criss-cross renames
|
|
|
|
. $srcdir/test-lib.sh
|
|
|
|
require cat
|
|
use_local_patch
|
|
use_tmpdir
|
|
|
|
# ==============================================================
|
|
# Criss-cross rename
|
|
|
|
echo 1 > f
|
|
echo 2 > g
|
|
|
|
cat > criss-cross-rename.diff <<EOF
|
|
diff --git a/g b/f
|
|
similarity index 100%
|
|
rename from g
|
|
rename to f
|
|
diff --git a/f b/g
|
|
similarity index 100%
|
|
rename from f
|
|
rename to g
|
|
EOF
|
|
|
|
check 'patch -p1 < criss-cross-rename.diff || echo "Status: $?"' <<EOF
|
|
patching file f (renamed from g)
|
|
patching file g (renamed from f)
|
|
EOF
|
|
|
|
check 'cat f' <<EOF
|
|
2
|
|
EOF
|
|
|
|
check 'cat g' <<EOF
|
|
1
|
|
EOF
|
|
|
|
# ==============================================================
|
|
# Copy-after-modify test case
|
|
|
|
ncheck 'seq 1 1000 > a'
|
|
|
|
cat > modified-twice.diff <<EOF
|
|
diff --git a/a b/a
|
|
index 1179824..912fcbd 100644
|
|
--- a/a
|
|
+++ b/a
|
|
@@ -998,3 +998,4 @@
|
|
998
|
|
999
|
|
1000
|
|
+a
|
|
diff --git a/a b/b
|
|
similarity index 99%
|
|
copy from a
|
|
copy to b
|
|
index 1179824..1c5afa7 100644
|
|
--- a/a
|
|
+++ b/b
|
|
@@ -998,3 +998,4 @@
|
|
998
|
|
999
|
|
1000
|
|
+b
|
|
EOF
|
|
|
|
check 'patch -p1 < modified-twice.diff || echo "Status: $?"' <<EOF
|
|
patching file a
|
|
patching file b (copied from a)
|
|
EOF
|
|
|
|
check 'cat a' <<EOF
|
|
`seq 1 1000`
|
|
a
|
|
EOF
|
|
check 'cat b' <<EOF
|
|
`seq 1 1000`
|
|
b
|
|
EOF
|