threads / discuss / 3715

git push refspec URL weirdness

Subject: git push refspec URL weirdness

## tl;dr

2 messages between Mar 25, 2006 and Mar 25, 2006.

replies: 1people: 2as markdown or json

Jon Loeliger· Mar 25, 2006, 03:42 UTC · lore

I wanted to git push some bits to a remote repo and set up this .git/refs/remotes/publish file:

    URL: git+ssh://www.example.com/some/path/repo.git
    Push: my-branch:public-branch
So that I could "git push publish".

The ssh on the far side is listening on port 1234 and not the default 22. So I slapped this into my ~/.ssh/config file on the local machine:

    Host www.example.com
    Port 1234

This worked great for a straight "ssh www.example.com" connection. However, git still complained that port 22 was refusing connections. It was. Git shouldn't have been trying to use it.

So Junio suggested taking advantage of the fact that the default refspec uses git+ssh and use this instead:

    URL: www.example.com:/pub/software/linux-2.6-86xx.git
    Push: my-branch:public-branch
Which just worked.
So this is either a bug report or google food. :-)
jdl
Junio C Hamano· Mar 25, 2006, 06:22 UTC · re: Jon Loeliger · lore

Re: git push refspec URL weirdness

Jon Loeliger <jdl@jdl.com> writes:
Show 9 quoted lines
> So Junio suggested taking advantage of the fact that the
> default refspec uses git+ssh and use this instead:
>
>     URL: www.example.com:/pub/software/linux-2.6-86xx.git
>     Push: my-branch:public-branch
>
> Which just worked.
>
> So this is either a bug report or google food. :-)

Actually, I did not suggest it as a workaround (I've never used git+ssh:// URL myself -- I'm old fashioned -- and always used host:path syntax). If git+ssh:// insists on the fixed port, it surely is broken, but I do not see how it would make a difference. In either case, connect.c::git_connect() goes PROTO_SSH codepath which never opens a tcp connection itself -- it just calls the same "ssh" command.

← back to recent threads