threads / discuss / 1611

suggestion: store the URL somewhere in .git/

Subject: suggestion: store the URL somewhere in .git/

## tl;dr

4 messages between Aug 22, 2005 and Aug 23, 2005.

replies: 3people: 3as markdown or json

Jeff Carr· Aug 22, 2005, 20:08 UTC · lore

It would be nice if the URL could be stored somewhere in .git/ This makes it a lot easier to update repositories because you don't always have to go and track down where you got it in the first place. Something like this perhaps:

~$ cat .git/location rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/ ~$ git-pull-script

Then something like below could be added to handle that easy enough.
Jeff

--- git-pull-script.orig 2005-07-31 22:23:50.000000000 -0700 +++ git-pull-script 2005-08-22 13:01:22.000000000 -0700

@@ -4,13 +4,24 @@
 # cogito.]
 #

+LOCATION="$@"
+
+if [ ! $LOCATION ]
+then
+	if [ -f .git/location ]
+	then
+		LOCATION=`cat .git/location`
+	fi
+fi
+
 . git-sh-setup-script || die "Not a git archive"
-. git-parse-remote "$@"
+. git-parse-remote "$LOCATION"
 merge_name="$_remote_name"

-git-fetch-script "$@" || exit 1
+git-fetch-script "$LOCATION" || exit 1

 git-resolve-script \
 	"$(cat "$GIT_DIR"/HEAD)" \
 	"$(cat "$GIT_DIR"/FETCH_HEAD)" \
 	"Merge $merge_name"
+
Johannes Schindelin· Aug 22, 2005, 20:18 UTC · re: Jeff Carr · lore

Re: suggestion: store the URL somewhere in .git/

Hi,
On Mon, 22 Aug 2005, Jeff Carr wrote:
> It would be nice if the URL could be stored somewhere in .git/ This
> makes it a lot easier to update repositories because you don't always
> have to go and track down where you got it in the first place.
This is why your original target (when you clone) is stored as "origin".

Hth, Dscho

Jeff Carr· Aug 23, 2005, 01:46 UTC · re: Johannes Schindelin · lore

Re: suggestion: store the URL somewhere in .git/

On 08/22/2005 01:18 PM, Johannes Schindelin wrote:
Show 11 quoted lines
> Hi,
> 
> On Mon, 22 Aug 2005, Jeff Carr wrote:
> 
> 
>>It would be nice if the URL could be stored somewhere in .git/ This
>>makes it a lot easier to update repositories because you don't always
>>have to go and track down where you got it in the first place.
> 
> 
> This is why your original target (when you clone) is stored as "origin".

OK. I rsync'ed the repository directly so a origin file wasn't created. That explains that. So my small "feature" request reduces to adding something like this to git-pull-script. Thanks, Jeff

diff --git a/git-pull-script b/git-pull-script
--- a/git-pull-script
+++ b/git-pull-script
@@ -1,10 +1,20 @@
 #!/bin/sh
 #
+ORIGIN="$@"
+
+if [ ! $ORIGIN ]
+then
+	if [ -f .git/branches/origin ]
+	then
+		ORIGIN=`cat .git/branches/origin`
+	fi
+fi
+
 . git-sh-setup-script || die "Not a git archive"
-. git-parse-remote "$@"
+. git-parse-remote "$ORIGIN"
 merge_name="$_remote_name"

-git-fetch-script "$@" || exit 1
+git-fetch-script "$ORIGIN" || exit 1

 git-resolve-script \
 	"$(cat "$GIT_DIR"/HEAD)" \
Junio C Hamano· Aug 23, 2005, 05:16 UTC · re: Jeff Carr · lore

Re: suggestion: store the URL somewhere in .git/

Jeff Carr <jcarr@linuxmachines.com> writes:
> So my small "feature" request reduces to adding
> something like this to git-pull-script. Thanks, Jeff

Somebody else earlier asked for fetch and pull to default to "origin" URL, and the necessary change is already in the proposed updates branch.

← back to recent threads