git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Barkalow <barkalow@iabervon.org>
To: Junio C Hamano <junkio@cox.net>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 1/3] Move remote parsing into a library file out of builtin-push.
Date: Thu, 10 May 2007 04:33:40 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.64.0705100421490.18541@iabervon.org> (raw)
In-Reply-To: <7virb1ks1v.fsf@assigned-by-dhcp.cox.net>

On Thu, 10 May 2007, Junio C Hamano wrote:

> Daniel Barkalow <barkalow@iabervon.org> writes:
> 
> >> And I think it does today.
> >
> > Hmm, and I guess URIs on the command line work the same way. How about 
> > requiring a '/' somewhere in a repository argument in order to treat it as 
> > a repository instead of a remote name? Then "../next-door-neighbour" would 
> > work, "./gitcvs.git" would work (in the odd case where you actually have a 
> > bare repository sitting in your working directory), but we'd avoid the 
> > current default of pushing to a bare repository in "./origin/" if nothing 
> > at all is configured.
> 
> When I wrote the message you are responding to, I thought this
> was a regression from the current behaviour, which (IIRC--it's
> getting late and I am tired to double check) essentially says if
> the token is a name of the directory, the target repository is a
> local one, but "we'd avoid..." part seems to suggest that you
> actually did this deliberately as a fix to some problem in the
> current behaviour.  I am not however sure what it exactly is.
> Could you care to elaborate the part after "we'd avoid..." to
> clarify what the problem is, please?

The problem, in general, is that, if the remote name you specify (or 
"origin" if you don't specify any) is not configured as a remote, it is 
treated as a filename in the current directory for a local push. E.g.:

$ git init
$ git push
fatal: 'origin': unable to chdir or not a git archive
fatal: The remote end hung up unexpectedly

It's actually trying to push to ./origin/, which is totally nuts as a 
default repository to push to. Similarly, if you typo an actual remote 
name. Furthermore, builtin-push.c has an error message for the situation 
where the repository specification is wrong, suggesting that there is 
some invalid repository specification, but it isn't reachable. And it 
carefully prevents remote names from starting with a '/', suggestion that 
that is the distinguishing characteristic between directly-specified 
repository URIs and configured remotes (which can't really be right, of 
course).

I think the right answer is to say that configured remotes cannot contain 
slashes, and directly-specified URIs must contain slashes, and it'll all 
be clear.

	-Daniel
*This .sig left intentionally blank*

  reply	other threads:[~2007-05-10  8:33 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-05-10  2:04 [PATCH 1/3] Move remote parsing into a library file out of builtin-push Daniel Barkalow
2007-05-10  7:07 ` Junio C Hamano
2007-05-10  7:45   ` Daniel Barkalow
2007-05-10  7:52     ` Junio C Hamano
2007-05-10  8:04       ` Daniel Barkalow
2007-05-10  8:21         ` Junio C Hamano
2007-05-10  8:33           ` Daniel Barkalow [this message]
2007-05-10  8:43             ` Junio C Hamano
2007-05-10 16:40               ` Daniel Barkalow
2007-05-10  8:35         ` Junio C Hamano
  -- strict thread matches above, loose matches on Subject: below --
2007-05-12  2:39 Daniel Barkalow
2007-05-12  7:51 ` Junio C Hamano
2007-05-12 15:45 Daniel Barkalow
2007-05-12 19:27 ` Junio C Hamano

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=Pine.LNX.4.64.0705100421490.18541@iabervon.org \
    --to=barkalow@iabervon.org \
    --cc=git@vger.kernel.org \
    --cc=junkio@cox.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
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;
as well as URLs for NNTP newsgroup(s).