Re: cvsimport still not working with cvsnt
- From
- Guy Rouillier <guyr@burntmail.com>
- Date
- Feb 27, 2011, 05:20 UTC
- Message-ID
- <4D69DF29.8030701@burntmail.com>
- In-Reply-To
- <7vaahnbmu2.fsf@alter.siamese.dyndns.org>
On 2/23/2011 12:24 AM, Junio C Hamano wrote:
Show 18 quoted lines
> Guy Rouillier<guyr@burntmail.com> writes: > >> ... Note that this issue is not unique to CVSNT. What does CVS do >> with CVSROOT containing a space character? > > IIRC, the comparison is done against canonicalized cvsroot string, so > that you can try to connect to :pserver:Xz.Com:/path/to/repo even > after you ran "cvs -d :pserver:xz.com:/path/to/repo login" and I > wouldn't be surprised if the canonicalization involved quoting SP. > Since August 2009 nobody has complained with the current code that > doesn't do any canonicalization, and I take that as a sign that > nobody sane so far used a cvsroot with a space in it ;-). But that > doesn't mean nobody sane has been using a cvsroot with an equal sign > in it, so we would need to at least avoid splitting at an equal sign > when reading from .cvsroot. > > It probably is a good idea to port the cvsroot canonicalization code > to cvsimport in any case.
As I suspected after reading how the cvspass file is read and written, CVSNT doesn't work with repositories with an equal sign in the repository name. You can init it fine, and you can set up a password for it. But if you try to login things go very wrong:
guyr@gentoo-vm /data $ cvs -d ":pserver:guyr@gentoo-vm:2401:/data/cvs\=repo/cvsroot" login Logging in to :pserver:guyr@gentoo-vm:2401:/data/cvs\=repo/cvsroot CVS Password: Empty password used - try 'cvs login' with a real password cvs [login aborted]: /data/cvs\=repo/cvsroot: no such repository
I tried as many permutations as I could think of, escaping the equal sign, not escaping it, etc. None of them worked. I did verify my environment before running this test by setting up a repository without the equal sign in the name, and everything works fine.
Since CVSNT can't handle a repository with an equal sign in its name, I say we don't worry about this. I say the same about the original CVS with a repository name with embedded spaces. We certainly don't want to try to solve problems the original product doesn't solve.
-- Guy Rouillier