97 lines · 1.3 KB · Shell
RawDownload
#!/bin/bashset -eu -o pipefail  git init -qgit config commit.gpgsign falsegit config core.autocrlf false git checkout -q -b main if [ -n "${1:-}" ]; then  mkdir "$1"  cd "$1"fi touch fgit add fgit commit -qm 'f added' echo m > fgit commit -qam 'f modified' rm fgit commit -qam 'f deleted' echo m > fgit add fgit commit -qam 'f re-added same content' mv f f.tmpmkdir fmv f.tmp f/fgit add f/git commit -qam 'f mode modified to dir f/' echo m >> f/fgit commit -qam 'f/f modified' touch agit add agit commit -qam 'a added' touch f/a f/bgit add f/git commit -qam 'f/a f/b added' rm f/fln -s a f/fgit commit -qam 'f/f mode changed to link' git mv a bgit commit -qam 'a renamed to b' git rm -r ftouch fgit add fgit commit -qam 'f/ changed into file f' mkdir dtouch d/fgit add dgit commit -qam 'add d/f' rm -r d/git commit -qam 'delete d/' touch c d egit add .git commit -qam 'add /c /d /e' mkdir gtouch g/agit add ggit commit -qam 'add g/a' git rm c d egit commit -qam 'remove /c /d /e' git rm ftouch ffgit add ffgit commit -qam 'rm /f, add /ff' touch g/aagit rm g/agit add g/aagit commit -qam 'rm g/a, add g/aa' git rm fftouch fgit add fgit commit -qam 'rm /ff, add /f' rm g/aatouch g/agit add g/agit commit -qam 'rm g/aa, add g/a'