mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-02 18:57:46 +00:00
crlf: script to generate expected crlf data
Include a shell script that will generate the expected CRLF data, calling git.git to capture its output as a test resource for the current platform.
This commit is contained in:
parent
bd5e59ee72
commit
bf8c0a9b91
73
tests/generate_crlf.sh
Normal file
73
tests/generate_crlf.sh
Normal file
@ -0,0 +1,73 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
set -e
|
||||
|
||||
if [ "$1" == "" -o "$2" == "" ]; then
|
||||
echo "usage: $0 crlfrepo directory [tempdir]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
input=$1
|
||||
output=$2
|
||||
tempdir=$3
|
||||
|
||||
set -u
|
||||
|
||||
create_repo() {
|
||||
local input=$1
|
||||
local output=$2
|
||||
local tempdir=$3
|
||||
local systype=$4
|
||||
local autocrlf=$5
|
||||
local attr=$6
|
||||
|
||||
local worktree="${output}/${systype}/autocrlf_${autocrlf}"
|
||||
|
||||
if [ "$attr" != "" ]; then
|
||||
local attrdir=`echo $attr | sed -e "s/ /,/g" | sed -e "s/=/_/g"`
|
||||
worktree="${worktree},${attrdir}"
|
||||
fi
|
||||
|
||||
if [ "$tempdir" = "" ]; then
|
||||
local gitdir="${worktree}/.git"
|
||||
else
|
||||
local gitdir="${tempdir}/generate_crlf_${RANDOM}"
|
||||
fi
|
||||
|
||||
echo "Creating ${worktree}"
|
||||
mkdir -p "${worktree}"
|
||||
|
||||
git clone --no-checkout --quiet --bare "${input}/.gitted" "${gitdir}"
|
||||
git --work-tree="${worktree}" --git-dir="${gitdir}" config core.autocrlf ${autocrlf}
|
||||
|
||||
if [ "$attr" != "" ]; then
|
||||
echo "* ${attr}" >> "${worktree}/.gitattributes"
|
||||
fi
|
||||
|
||||
git --work-tree="${worktree}" --git-dir="${gitdir}" checkout HEAD
|
||||
|
||||
if [ "$attr" != "" ]; then
|
||||
rm "${worktree}/.gitattributes"
|
||||
fi
|
||||
|
||||
if [ "$tempdir" != "" ]; then
|
||||
rm -rf "${gitdir}"
|
||||
fi
|
||||
}
|
||||
|
||||
if [[ `uname -s` == MINGW* ]]; then
|
||||
systype="windows"
|
||||
else
|
||||
systype="posix"
|
||||
fi
|
||||
|
||||
for autocrlf in true false input; do
|
||||
for attr in "" text text=auto -text crlf -crlf eol=lf eol=crlf \
|
||||
"text eol=lf" "text eol=crlf" \
|
||||
"text=auto eol=lf" "text=auto eol=crlf"; do
|
||||
|
||||
create_repo "${input}" "${output}" "${tempdir}" \
|
||||
"${systype}" "${autocrlf}" "${attr}"
|
||||
done
|
||||
done
|
||||
|
Loading…
Reference in New Issue
Block a user