git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH] Add a conversion tool to migrate remote information into the config

From
Johannes Schindelin <johannes.schindelin@gmx.de>
Date
May 3, 2006, 13:27 UTC
Message-ID
<Pine.LNX.4.63.0605031526280.6975@wbgn013.biozentrum.uni-wuerzburg.de>
Use this tool to rewrite the .git/remotes/* files into the config.
Signed-off-by: Johannes Schindelin <Johannes.Schindelin@gmx.de>
---
 contrib/remotes2config.sh |   35 +++++++++++++++++++++++++++++++++++
 1 files changed, 35 insertions(+), 0 deletions(-)
diff --git a/contrib/remotes2config.sh b/contrib/remotes2config.sh
new file mode 100644
index 0000000..25901e2
--- /dev/null
+++ b/contrib/remotes2config.sh
@@ -0,0 +1,35 @@
+#!/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=$(echo -n "$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-repo-config $key "$value" $regex"
+			git-repo-config $key "$value" $regex || error=1 ;;
+		esac
+	done
+fi
+
+
Message 1 of 1 in “Add a conversion tool to migrate remote information into the config”
  1. Add a conversion tool to migrate remote information into the configJohannes Schindelin, May 3, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.