public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: Andreas Ericsson <ae@op5•se>
To: SLONIK.AZ@gmail•com
Cc: Junio C Hamano <gitster@pobox•com>, git@vger•kernel.org
Subject: Re: [PATCH] git-fetch should not strip off ".git" extension
Date: Mon, 20 Oct 2008 12:36:11 +0200	[thread overview]
Message-ID: <48FC5F1B.1050608@op5.se> (raw)
In-Reply-To: <ee2a733e0810180459m5fd20365s3c27bea5c1f3f704@mail.gmail.com>

Leo Razoumov wrote:
> When source git repository has extension ".git" like in "MyRepo.git"
> "git fetch" will drop ".git" extension and refer to it as "MyRepo".
> 
> Example:
> 
> sh$ git fetch -v ../MyRepo.git master
> From ../MyRepo
>  * branch            master     -> FETCH_HEAD
> 
> sh$ cat .git/FETCH_HEAD
> 6eb10bd105f2ef7f64c595100c0a850c5b3cfeb9           branch 'master' of ../MyRepo
> 
> Please, note that "git fetch" writes "../MyRepo" instead of "../MyRepo.git"
> 
> My workflow makes it convenient to have two distinct repositories
> (1) "MyRepo"      => where I work daily (WIP)
> (2) "MyRepo.git" => --bare repository accessible to others. "MyRepo"
> pushes ready changes to "MyRepo.git"
> Dropping ".git" extension causes confusion between these two quite
> similarly named repositories.
> 
> This problem can be easily solved by the patch below that removes the
> code that strips off ".git" extension.
> 
> --Leo--
> 
> ----8<-------------------
> 
>  builtin-fetch--tool.c |    2 --
>  builtin-fetch.c       |    2 --
>  2 files changed, 0 insertions(+), 4 deletions(-)
> 
> diff --git a/builtin-fetch--tool.c b/builtin-fetch--tool.c
> index 7460ab7..5d0b95f 100644
> --- a/builtin-fetch--tool.c
> +++ b/builtin-fetch--tool.c
> @@ -160,8 +160,6 @@ static int append_fetch_head(FILE *fp,
>  	for (i = remote_len - 1; remote[i] == '/' && 0 <= i; i--)
>  		;
>  	remote_len = i + 1;
> -	if (4 < i && !strncmp(".git", remote + i - 3, 4))
> -		remote_len = i - 3;
> 
>  	note_len = 0;
>  	if (*what) {
> diff --git a/builtin-fetch.c b/builtin-fetch.c
> index ee93d3a..28123a5 100644
> --- a/builtin-fetch.c
> +++ b/builtin-fetch.c
> @@ -348,8 +348,6 @@ static int store_updated_refs(const char *url,
> const char *remote_name,
>  		for (i = url_len - 1; url[i] == '/' && 0 <= i; i--)
>  			;
>  		url_len = i + 1;
> -		if (4 < i && !strncmp(".git", url + i - 3, 4))
> -			url_len = i - 3;
> 

Will this still play nicely with

   git clone foo.git

?

Otherwise, please also fix the fallout from this patch.

-- 
Andreas Ericsson                   andreas.ericsson@op5•se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231

  reply	other threads:[~2008-10-20 10:37 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-18 11:59 [PATCH] git-fetch should not strip off ".git" extension Leo Razoumov
2008-10-20 10:36 ` Andreas Ericsson [this message]
2008-10-20 15:08   ` Leo Razoumov
2008-10-20 18:37   ` Junio C Hamano
2008-10-21 10:23     ` Leo Razoumov
2008-10-21 16:56       ` Junio C Hamano
2008-10-21 22:06         ` Alex Riesen
2008-10-21 22:36           ` Junio C Hamano
2008-10-21 22:43             ` Alex Riesen
2008-10-22  7:55               ` Andreas Ericsson
2008-10-21 23:35             ` Junio C Hamano
2008-10-22 11:35             ` Leo Razoumov
2008-10-22 11:50             ` Leo Razoumov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=48FC5F1B.1050608@op5.se \
    --to=ae@op5$(echo .)se \
    --cc=SLONIK.AZ@gmail$(echo .)com \
    --cc=git@vger$(echo .)kernel.org \
    --cc=gitster@pobox$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox