grep: add --break
[gitweb.git] / t / t6050-replace.sh
index c907523e7e04542c6aada74f9b355ebcbae8c562..5c87f28e4ed8c8c8dc40fd561516dd8d0db791c9 100755 (executable)
@@ -53,7 +53,7 @@ test_expect_success 'set up buggy branch' '
      echo "line 12" >> hello &&
      echo "line 13" >> hello &&
      add_and_commit_file hello "2 more lines" &&
-     HASH6=$(git rev-parse --verify HEAD)
+     HASH6=$(git rev-parse --verify HEAD) &&
      echo "line 14" >> hello &&
      echo "line 15" >> hello &&
      echo "line 16" >> hello &&
@@ -205,9 +205,16 @@ test_expect_success 'fetch branch with replacement' '
      git branch tofetch $HASH6 &&
      (
          cd clone_dir &&
-         git fetch origin refs/heads/tofetch:refs/heads/parallel3
-         git log --pretty=oneline parallel3 | grep $PARA3
-         git show $PARA3 | grep "A U Thor"
+         git fetch origin refs/heads/tofetch:refs/heads/parallel3 &&
+         git log --pretty=oneline parallel3 > output.txt &&
+         ! grep $PARA3 output.txt &&
+         git show $PARA3 > para3.txt &&
+         grep "A U Thor" para3.txt &&
+         git fetch origin "refs/replace/*:refs/replace/*" &&
+         git log --pretty=oneline parallel3 > output.txt &&
+         grep $PARA3 output.txt &&
+         git show $PARA3 > para3.txt &&
+         grep "O Thor" para3.txt
      )
 '
 
@@ -229,6 +236,20 @@ test_expect_success 'index-pack and replacements' '
        git index-pack test-*.pack
 '
 
-#
-#
+test_expect_success 'not just commits' '
+       echo replaced >file &&
+       git add file &&
+       REPLACED=$(git rev-parse :file) &&
+       mv file file.replaced &&
+
+       echo original >file &&
+       git add file &&
+       ORIGINAL=$(git rev-parse :file) &&
+       git update-ref refs/replace/$ORIGINAL $REPLACED &&
+       mv file file.original &&
+
+       git checkout file &&
+       test_cmp file.replaced file
+'
+
 test_done