зеркало из https://github.com/dotnet/tye.git
39 строки
943 B
Bash
39 строки
943 B
Bash
|
#!/usr/bin/env bash
|
||
|
|
||
|
set -euo pipefail
|
||
|
|
||
|
#
|
||
|
# Functions
|
||
|
#
|
||
|
__usage() {
|
||
|
echo "Usage: $(basename "${BASH_SOURCE[0]}") <Arguments>
|
||
|
|
||
|
Arguments:
|
||
|
<Arguments>... Arguments passed to the 'git' command. Any number of arguments allowed.
|
||
|
|
||
|
Description:
|
||
|
This script cleans the repository interactively, leaving downloaded infrastructure untouched.
|
||
|
Clean operation is interactive to avoid losing new but unstaged files. Press 'c' then [Enter]
|
||
|
to perform the proposed deletions.
|
||
|
"
|
||
|
}
|
||
|
|
||
|
git_args=()
|
||
|
|
||
|
while [[ $# -gt 0 ]]; do
|
||
|
case $1 in
|
||
|
-\?|-h|--help)
|
||
|
__usage
|
||
|
exit 0
|
||
|
;;
|
||
|
*)
|
||
|
git_args[${#git_args[*]}]="$1"
|
||
|
;;
|
||
|
esac
|
||
|
shift
|
||
|
done
|
||
|
|
||
|
# This incantation avoids unbound variable issues if git_args is empty
|
||
|
# https://stackoverflow.com/questions/7577052/bash-empty-array-expansion-with-set-u
|
||
|
git clean -dix -e .dotnet/ -e .tools/ ${git_args[@]+"${git_args[@]}"}
|