https://github.com/git/git
Raw File
Tip revision: 2137ce01f83d254e4917c107901a5a04f61e8c16 authored by Junio C Hamano on 07 April 2013, 15:58:30 UTC
Git 1.8.1.6
Tip revision: 2137ce0
remotes2config.sh
#!/bin/sh

# Use this tool to rewrite your .git/remotes/ files into the config.

. git-sh-setup

if [ -d "$GIT_DIR"/remotes ]; then
	echo "Rewriting $GIT_DIR/remotes" >&2
	error=0
	# rewrite into config
	{
		cd "$GIT_DIR"/remotes
		ls | while read f; do
			name=$(printf "$f" | tr -c "A-Za-z0-9-" ".")
			sed -n \
			-e "s/^URL:[ 	]*\(.*\)$/remote.$name.url \1 ./p" \
			-e "s/^Pull:[ 	]*\(.*\)$/remote.$name.fetch \1 ^$ /p" \
			-e "s/^Push:[ 	]*\(.*\)$/remote.$name.push \1 ^$ /p" \
			< "$f"
		done
		echo done
	} | while read key value regex; do
		case $key in
		done)
			if [ $error = 0 ]; then
				mv "$GIT_DIR"/remotes "$GIT_DIR"/remotes.old
			fi ;;
		*)
			echo "git config $key "$value" $regex"
			git config $key "$value" $regex || error=1 ;;
		esac
	done
fi
back to top