github.com/x-oss-byte/git-lfs@v2.5.2+incompatible/t/t-mergetool.sh (about) 1 #!/usr/bin/env bash 2 3 . "$(dirname "$0")/testlib.sh" 4 5 begin_test "mergetool works with large files" 6 ( 7 set -e 8 9 reponame="mergetool-works-with-large-files" 10 git init "$reponame" 11 cd "$reponame" 12 13 git lfs track "*.dat" 14 printf "base" > conflict.dat 15 git add .gitattributes conflict.dat 16 git commit -m "initial commit" 17 18 git checkout -b conflict 19 printf "b" > conflict.dat 20 git add conflict.dat 21 git commit -m "conflict.dat: b" 22 23 git checkout master 24 25 printf "a" > conflict.dat 26 git add conflict.dat 27 git commit -m "conflict.dat: a" 28 29 set +e 30 git merge conflict 31 set -e 32 33 git config mergetool.inspect.cmd ' 34 for i in BASE LOCAL REMOTE; do 35 echo "\$$i=$(eval "cat \"\$$i\"")"; 36 done; 37 exit 1 38 ' 39 git config mergetool.inspect.trustExitCode true 40 41 yes | git mergetool \ 42 --no-prompt \ 43 --tool=inspect \ 44 -- conflict.dat 2>&1 \ 45 | tee mergetool.log 46 47 grep "\$BASE=base" mergetool.log 48 grep "\$LOCAL=a" mergetool.log 49 grep "\$REMOTE=b" mergetool.log 50 ) 51 end_test