1#!/bin/sh 2 3test_description='git p4 support for file type change' 4 5. ./lib-git-p4.sh 6 7test_expect_success 'start p4d' ' 8 start_p4d 9' 10 11test_expect_success 'create files' ' 12 ( 13 cd "$cli" && 14 p4 client -o | sed "/LineEnd/s/:.*/:unix/" | p4 client -i && 15 cat >file1 <<-EOF && 16 text without any funny substitution business 17 EOF 18 cat >file2 <<-EOF && 19 second file whose type will change 20 EOF 21 p4 add file1 file2 && 22 p4 submit -d "add files" 23 ) 24' 25 26test_expect_success SYMLINKS 'change file to symbolic link' ' 27 git p4 clone --dest="$git" //depot@all && 28 test_when_finished cleanup_git && 29 ( 30 cd "$git" && 31 git config git-p4.skipSubmitEdit true && 32 33 rm file2 && 34 ln -s file1 file2 && 35 git add file2 && 36 git commit -m "symlink file1 to file2" && 37 git p4 submit && 38 p4 filelog -m 1 //depot/file2 >filelog && 39 grep "(symlink)" filelog 40 ) 41' 42 43test_expect_success SYMLINKS 'change symbolic link to file' ' 44 git p4 clone --dest="$git" //depot@all && 45 test_when_finished cleanup_git && 46 ( 47 cd "$git" && 48 git config git-p4.skipSubmitEdit true && 49 50 rm file2 && 51 cat >file2 <<-EOF && 52 This is another content for the second file. 53 EOF 54 git add file2 && 55 git commit -m "re-write file2" && 56 git p4 submit && 57 p4 filelog -m 1 //depot/file2 >filelog && 58 grep "(text)" filelog 59 ) 60' 61 62test_done 63