From: Martin Eisenhardt <list-receive@mneisen.org>
To: Git Mailing List <git@vger.kernel.org>
Cc: Eric Wong <normalperson@yhbt.net>
Subject: Possible bug in git-svn
Date: Sat, 12 May 2007 18:24:08 +0200 [thread overview]
Message-ID: <200705121824.14190.list-receive@mneisen.org> (raw)
[-- Attachment #1: Type: text/plain, Size: 2675 bytes --]
Hello Eric,
hello list,
I came across what might just possibly be a bug in git-svn. My apologies if
this was already handled somewhere on the list but I was not able to find
this exact problem mentioned before.
Let's say I run a SVN repository at svn+ssh://svn@example.com/repos and have
it set up as described at
http://svnbook.red-bean.com/nightly/en/svn.serverconfig.svnserve.html#svn.serverconfig.svnserve.sshtricks
In essence, there is only one user "svn" with access to the repository, and
every developer has his/her public key in ~svn/.ssh/authorized_keys with a
line like
command="svnserve -t --tunnel-user=harry -r /svn/" TYPE1 KEY1
harry@example.com
This is desirable to limit the developers access to the repository; no shell,
access restricted to svn's home directory.
Now let's assume that within this repository, there are several projects, so
we have f.e. the following structure:
+-proj1-+-trunk
| +-branches
| +-tags
|
+-proj2-+-trunk
| +-branches
| +-tags
+-[more projects]
I have no problem setting up a local .git tracking such a project using
$ git-svn init svn+ssh://svn@example.com/repos/proj1/trunk
$ git-svn fetch
After having made local changes and commited them to git, I want to push them
to the remote subversion repository:
$ # do some work
$ git-commit -a
$ git-svn dcommit
The last command gives me (invariably):
Couldn't find a repository: No repository found
in 'svn+ssh://example.com/repos/proj1/trunk' at at /home/mneisen/bin/git-svn
line 403
What is odd is that git-svn uses the URL-prefix svn+ssh://example.com/[...]
instead of the correct svn+ssh://svn@example.com/[...], i.e., git-svn drops
the user name.
This behavior is surprisingly inconsistent as git-svn uses the correct user
name while fetching and stores it correctly in .git/config.
The server log contains the following lines:
May 12 18:18:50 [sshd] Accepted keyboard-interactive/pam for mneisen from
217.229.32.249 port 37685 ssh2
May 12 18:18:50 [sshd(pam_unix)] session opened for user mneisen by (uid=0)
May 12 18:18:51 [sshd(pam_unix)] session closed for user mneisen
which supports my suspicion that git-svn drops the user name for dcommit and
uses the current account name instead.
A git repository on the same machine as the subversion repository is able to
track the SVN repository, so it seems that my problems are directly related
to the combination of git-svn and the svn+ssh transport of subversion.
If this an error on my part, please advise me how to solve it.
Kind regards
Martin Eisenhardt
[-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --]
next reply other threads:[~2007-05-12 16:31 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-12 16:24 Martin Eisenhardt [this message]
2007-05-12 21:40 ` Possible bug in git-svn Eric Wong
2007-05-13 7:53 ` [PATCH] git-svn: don't drop the username from URLs when dcommit is run Eric Wong
2007-05-13 13:22 ` Possible bug in git-svn Martin Eisenhardt
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=200705121824.14190.list-receive@mneisen.org \
--to=list-receive@mneisen.org \
--cc=git@vger.kernel.org \
--cc=martin.eisenhardt@mneisen.org \
--cc=normalperson@yhbt.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).