* Problem using GIT CVS-server
@ 2006-05-03 8:11 Panagiotis Issaris
2006-05-03 8:17 ` Andreas Ericsson
2006-05-03 10:11 ` Martin Langhoff
0 siblings, 2 replies; 13+ messages in thread
From: Panagiotis Issaris @ 2006-05-03 8:11 UTC (permalink / raw)
To: git
Hi,
I've tried using git-cvsserver, but keep running into problems:
When doing a checkout, it only checks out a small subset of
the total amount of files in the repository and reports a warning/error.
When doing a subsequent update, it doesn't seem to do anything,
but reports two error messages/warnings.
I'm using yesterdays GIT and try to serve my local copy of the GIT
repository using git-cvsserver.
export CVSROOT=:ext:takis@localhost:/usr/local/src/git/.git
export CVS_SERVER=git-cvsserver
takis@issaris:/tmp/a/b$ cvs co -d project-master master
takis@localhost's password:
cvs checkout: Updating project-master
U project-master/Makefile
U project-master/README
U project-master/cache.h
U project-master/cat-file.c
U project-master/commit-tree.c
U project-master/init-db.c
U project-master/read-cache.c
U project-master/read-tree.c
U project-master/show-diff.c
U project-master/update-cache.c
U project-master/write-tree.c
closing dbh with active statement handles
takis@issaris:/tmp/a/b$ cd project-master/
takis@issaris:/tmp/a/b/project-master$ cvs -z3 update -PAd
takis@localhost's password:
server doesn't support gzip-file-contents
closing dbh with active statement handles
takis@issaris:/tmp/a/b/project-master$
With friendly regards,
Takis
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 8:11 Problem using GIT CVS-server Panagiotis Issaris
@ 2006-05-03 8:17 ` Andreas Ericsson
2006-05-03 8:26 ` Panagiotis Issaris
2006-05-03 10:11 ` Martin Langhoff
1 sibling, 1 reply; 13+ messages in thread
From: Andreas Ericsson @ 2006-05-03 8:17 UTC (permalink / raw)
To: Panagiotis Issaris; +Cc: git
Panagiotis Issaris wrote:
> Hi,
>
> I've tried using git-cvsserver, but keep running into problems:
> When doing a checkout, it only checks out a small subset of
> the total amount of files in the repository and reports a warning/error.
> When doing a subsequent update, it doesn't seem to do anything,
> but reports two error messages/warnings.
>
...
> takis@issaris:/tmp/a/b$ cd project-master/
> takis@issaris:/tmp/a/b/project-master$ cvs -z3 update -PAd
> takis@localhost's password:
> server doesn't support gzip-file-contents
Drop -z3 from command-line. git-cvsserver has no compression support.
--
Andreas Ericsson andreas.ericsson@op5.se
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 8:17 ` Andreas Ericsson
@ 2006-05-03 8:26 ` Panagiotis Issaris
2006-05-03 8:44 ` Andreas Ericsson
0 siblings, 1 reply; 13+ messages in thread
From: Panagiotis Issaris @ 2006-05-03 8:26 UTC (permalink / raw)
To: Andreas Ericsson; +Cc: git
Hi,
Andreas Ericsson wrote:
> [...]
>
> Drop -z3 from command-line. git-cvsserver has no compression support.
Thanks!
Ahum, painful. That should have been obvious :), but I'm kinda programmed
to use "-z3 -PAd" whenever I do a cvs update. I didn't even notice the
z3 in
my own typing :->
Without the z3, it gives the same error/warning as on checkout:
takis@issaris:/tmp/a/b/project-master$ cvs update -PAd
takis@localhost's password:
closing dbh with active statement handles
takis@issaris:/tmp/a/b/project-master$
With friendly regards,
Takis
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 8:26 ` Panagiotis Issaris
@ 2006-05-03 8:44 ` Andreas Ericsson
0 siblings, 0 replies; 13+ messages in thread
From: Andreas Ericsson @ 2006-05-03 8:44 UTC (permalink / raw)
To: Panagiotis Issaris; +Cc: git
Panagiotis Issaris wrote:
> Hi,
>
> Andreas Ericsson wrote:
>
>> [...]
>>
>> Drop -z3 from command-line. git-cvsserver has no compression support.
>
>
> Thanks!
>
> Ahum, painful. That should have been obvious :), but I'm kinda programmed
> to use "-z3 -PAd" whenever I do a cvs update. I didn't even notice the
> z3 in
> my own typing :->
>
>
> Without the z3, it gives the same error/warning as on checkout:
> takis@issaris:/tmp/a/b/project-master$ cvs update -PAd
> takis@localhost's password:
> closing dbh with active statement handles
> takis@issaris:/tmp/a/b/project-master$
>
That error message comes from your client. I have no idea why, and now
that I'm a git fanatic I'll stay blissfully ignorant of CVS' internal
workings. Martyn and Martin (the dynamic duo that wrote the cvsserver
thingie) might be able to tell you more.
--
Andreas Ericsson andreas.ericsson@op5.se
OP5 AB www.op5.se
Tel: +46 8-230225 Fax: +46 8-230231
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 8:11 Problem using GIT CVS-server Panagiotis Issaris
2006-05-03 8:17 ` Andreas Ericsson
@ 2006-05-03 10:11 ` Martin Langhoff
2006-05-03 11:11 ` Martin Langhoff
2006-05-03 11:41 ` Panagiotis Issaris
1 sibling, 2 replies; 13+ messages in thread
From: Martin Langhoff @ 2006-05-03 10:11 UTC (permalink / raw)
To: Panagiotis Issaris; +Cc: git
On 5/3/06, Panagiotis Issaris <takis@lumumba.uhasselt.be> wrote:
> I've tried using git-cvsserver, but keep running into problems:
Panagiotis,
thanks a lot for the feedback! cvsserver has mainly been
tried/debugged with a few repositories, mainly the moodle.git
repository that we host, which is an import from a CVS repo.
> When doing a checkout, it only checks out a small subset of
> the total amount of files in the repository and reports a warning/error.
Hmmm. 100% reproduceable -- looking at it now.
> When doing a subsequent update, it doesn't seem to do anything,
> but reports two error messages/warnings.
...
> closing dbh with active statement handles
I thought we had gotten rid of those. In any case, I don't see that
error, and it's just a silly warning from DBI, as we are using cached
statements. As it happens when cvsserver is shutting down, it doesn't
actually break the protocol.
> server doesn't support gzip-file-contents
That warning is harmless, and always there. I did look once at
implementing gzip compression, but in some cases it implies creating
extra temp files to calculate the size, so I've opted to leave it for
some other day.
OTOH, we could declare that we handle it, and never actually send a
gzipped file ;-) as long as we can handle gzipped content from the
client.
cheers,
martin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 10:11 ` Martin Langhoff
@ 2006-05-03 11:11 ` Martin Langhoff
2006-05-03 11:36 ` Panagiotis Issaris
2006-05-03 19:49 ` Junio C Hamano
2006-05-03 11:41 ` Panagiotis Issaris
1 sibling, 2 replies; 13+ messages in thread
From: Martin Langhoff @ 2006-05-03 11:11 UTC (permalink / raw)
To: Panagiotis Issaris; +Cc: git
On 5/3/06, Martin Langhoff <martin.langhoff@gmail.com> wrote:
> Hmmm. 100% reproduceable -- looking at it now.
Grumble. Some recent change has broken cvsserver -- if I rewind to the
commit I made of cvsserver, the checkout works correctly. I suspect
changes to git-diff-tree. However, I'll play dumb and try bisect to
see where it leads...
(Nice thing about bisecting with C code is that as you get closer the
delta is smaller, and the recompile is smaller too ;-)
Ok -- an hour's gone by and I'm still fidgeting with bisect. It seems
to have been broken soon after v1.3.0 but I'm having trouble nailing
the commit, and understanding WRF has changed.
Can you test with git v1.3.0?
martin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 11:11 ` Martin Langhoff
@ 2006-05-03 11:36 ` Panagiotis Issaris
2006-05-03 11:42 ` Martin Langhoff
2006-05-03 19:49 ` Junio C Hamano
1 sibling, 1 reply; 13+ messages in thread
From: Panagiotis Issaris @ 2006-05-03 11:36 UTC (permalink / raw)
To: Martin Langhoff; +Cc: git
Hi,
Martin Langhoff wrote:
> On 5/3/06, Martin Langhoff <martin.langhoff@gmail.com> wrote:
>
>> Hmmm. 100% reproduceable -- looking at it now.
>
>
> Grumble. Some recent change has broken cvsserver -- if I rewind to the
> commit I made of cvsserver, the checkout works correctly. I suspect
> changes to git-diff-tree. However, I'll play dumb and try bisect to
> see where it leads...
>
> (Nice thing about bisecting with C code is that as you get closer the
> delta is smaller, and the recompile is smaller too ;-)
>
> Ok -- an hour's gone by and I'm still fidgeting with bisect. It seems
> to have been broken soon after v1.3.0 but I'm having trouble nailing
> the commit, and understanding WRF has changed.
>
> Can you test with git v1.3.0?
Yes, I installed 1.3.0 using "make prefix=/tmp/testje install"
but, I'm getting the same problem (other then my failing typing
skills ;-) :
takis@issaris:/tmp/a/c$ export PATH=/tmp/testje/bin/:$PATH
takis@issaris:/tmp/a/c$ git --version
git version 1.3.0
takis@issaris:/tmp/a/c$ cvs co -d project-master master
takis@localhost's password:
Permission denied, please try again.
takis@localhost's password:
Permission denied, please try again.
takis@localhost's password:
cvs checkout: Updating project-master
U project-master/Makefile
U project-master/README
U project-master/cache.h
U project-master/cat-file.c
U project-master/commit-tree.c
U project-master/init-db.c
U project-master/read-cache.c
U project-master/read-tree.c
U project-master/show-diff.c
U project-master/update-cache.c
U project-master/write-tree.c
closing dbh with active statement handles
takis@issaris:/tmp/a/c$ which git
/tmp/testje/bin//git
With friendly regards,
Takis
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 10:11 ` Martin Langhoff
2006-05-03 11:11 ` Martin Langhoff
@ 2006-05-03 11:41 ` Panagiotis Issaris
1 sibling, 0 replies; 13+ messages in thread
From: Panagiotis Issaris @ 2006-05-03 11:41 UTC (permalink / raw)
To: Martin Langhoff; +Cc: git
Hi,
Martin Langhoff wrote:
> [...]
> thanks a lot for the feedback! cvsserver has mainly been
> tried/debugged with a few repositories, mainly the moodle.git
> repository that we host, which is an import from a CVS repo.
I didnt even know it existed! :) I was looking for an Eclipse plugin
(anyone heard anything about such a beast after 20060313?), when
I accidently stumbled upon the git-cvsserver manpage, somewhere
on the web.
> [...]
> That warning is harmless, and always there. I did look once at
> implementing gzip compression, but in some cases it implies creating
> extra temp files to calculate the size, so I've opted to leave it for
> some other day.
>
> OTOH, we could declare that we handle it, and never actually send a
> gzipped file ;-) as long as we can handle gzipped content from the
> client.
Not really an issue imho :) I just automatically type -z3 whenever I do
a CVS update :)
BTW, thanks for writing git-cvsserver!
With friendly regards,
Takis
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 11:36 ` Panagiotis Issaris
@ 2006-05-03 11:42 ` Martin Langhoff
2006-05-03 12:02 ` Panagiotis Issaris
0 siblings, 1 reply; 13+ messages in thread
From: Martin Langhoff @ 2006-05-03 11:42 UTC (permalink / raw)
To: Panagiotis Issaris; +Cc: git
On 5/3/06, Panagiotis Issaris <takis@lumumba.uhasselt.be> wrote:
> Yes, I installed 1.3.0 using "make prefix=/tmp/testje install"
> but, I'm getting the same problem (other then my failing typing
> skills ;-) :
The problem is that, while you are executing git-cvsserver from
/tmp/testje, git-cvsserver invokes git-log from the path, and that is
the "bad" git-log. Change your PATH in .bashrc so that the /tmp/testje
install takes precedence...
cheers,
martin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 11:42 ` Martin Langhoff
@ 2006-05-03 12:02 ` Panagiotis Issaris
0 siblings, 0 replies; 13+ messages in thread
From: Panagiotis Issaris @ 2006-05-03 12:02 UTC (permalink / raw)
To: Martin Langhoff; +Cc: git
Hi,
Martin Langhoff wrote:
> On 5/3/06, Panagiotis Issaris <takis@lumumba.uhasselt.be> wrote:
>
>> Yes, I installed 1.3.0 using "make prefix=/tmp/testje install"
>> but, I'm getting the same problem (other then my failing typing
>> skills ;-) :
>
>
> The problem is that, while you are executing git-cvsserver from
> /tmp/testje, git-cvsserver invokes git-log from the path, and that is
> the "bad" git-log. Change your PATH in .bashrc so that the /tmp/testje
> install takes precedence...
Prefixing /tmp/testje/bin to my PATH in .bashrc wouldnt work, so I just
replaced
my locally built GIT-.deb package with a locally built v1.3.0 version of
the package.
All worked fine now! :-)
With friendly regards,
Takis
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 11:11 ` Martin Langhoff
2006-05-03 11:36 ` Panagiotis Issaris
@ 2006-05-03 19:49 ` Junio C Hamano
2006-05-03 21:12 ` Martin Langhoff
1 sibling, 1 reply; 13+ messages in thread
From: Junio C Hamano @ 2006-05-03 19:49 UTC (permalink / raw)
To: Martin Langhoff; +Cc: git, Panagiotis Issaris
"Martin Langhoff" <martin.langhoff@gmail.com> writes:
> On 5/3/06, Martin Langhoff <martin.langhoff@gmail.com> wrote:
>> Hmmm. 100% reproduceable -- looking at it now.
>
> Grumble. Some recent change has broken cvsserver -- if I rewind to the
> commit I made of cvsserver, the checkout works correctly. I suspect
> changes to git-diff-tree. However, I'll play dumb and try bisect to
> see where it leads...
Ah, the "master" git-log is C-rewrite version and does not show
the parents on the "commit (.*)" line itself with --parents.
Could you see if the attached patch helps?
When Linus and I did the rewrite, we tried to be somewhat
careful not to break people's expectations, but at the same
time, we considered that the log/show/whatchanged frontends to
rev-list are primarily for human consumption, so we "improved"
the details a bit [*1*], which obviously broke cvsserver's use
of git-log.
*1* Another difference I know about is that whatchanged used to
start an entry with "diff-tree" but now says "commit" like
others in "log" family of frontends.
-- >8 --
diff --git a/git-cvsserver.perl b/git-cvsserver.perl
index 11d153c..71e384c 100755
--- a/git-cvsserver.perl
+++ b/git-cvsserver.perl
@@ -2076,14 +2076,15 @@ sub update
# TODO: log processing is memory bound
# if we can parse into a 2nd file that is in reverse order
# we can probably do something really efficient
- my @git_log_params = ('--parents', '--topo-order');
+ my @git_rl_params = ('--parents', '--topo-order', '--pretty');
if (defined $lastcommit) {
- push @git_log_params, "$lastcommit..$self->{module}";
+ push @git_rl_params, "$lastcommit..$self->{module}";
} else {
- push @git_log_params, $self->{module};
+ push @git_rl_params, $self->{module};
}
- open(GITLOG, '-|', 'git-log', @git_log_params) or die "Cannot call git-log: $!";
+ open(GITLOG, '-|', 'git-rev-list',
+ @git_rl_params) or die "Cannot call git-rev-list: $!";
my @commits;
^ permalink raw reply related [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 19:49 ` Junio C Hamano
@ 2006-05-03 21:12 ` Martin Langhoff
2006-05-03 21:21 ` Junio C Hamano
0 siblings, 1 reply; 13+ messages in thread
From: Martin Langhoff @ 2006-05-03 21:12 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Panagiotis Issaris
On 5/4/06, Junio C Hamano <junkio@cox.net> wrote:
> Ah, the "master" git-log is C-rewrite version and does not show
> the parents on the "commit (.*)" line itself with --parents.
Exactly.
> Could you see if the attached patch helps?
Will try it in a moment. Having thought about it, git-log is always
going to be tweaked for human consumption, so I should use something
geared for porcelains instead. git-rev-list does honour --parent, so
perhaps I should switch to using that instead?
cheers,
martin
^ permalink raw reply [flat|nested] 13+ messages in thread
* Re: Problem using GIT CVS-server
2006-05-03 21:12 ` Martin Langhoff
@ 2006-05-03 21:21 ` Junio C Hamano
0 siblings, 0 replies; 13+ messages in thread
From: Junio C Hamano @ 2006-05-03 21:21 UTC (permalink / raw)
To: Martin Langhoff; +Cc: git
"Martin Langhoff" <martin.langhoff@gmail.com> writes:
>> Could you see if the attached patch helps?
>
> Will try it in a moment. Having thought about it, git-log is always
> going to be tweaked for human consumption, so I should use something
> geared for porcelains instead. git-rev-list does honour --parent, so
> perhaps I should switch to using that instead?
I think that reasoning is prudent, but at the same time I think
the patch by Linus is also right, so I think we should do both
for this particular case.
Sorry about the breakage.
^ permalink raw reply [flat|nested] 13+ messages in thread
end of thread, other threads:[~2006-05-03 21:21 UTC | newest]
Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-05-03 8:11 Problem using GIT CVS-server Panagiotis Issaris
2006-05-03 8:17 ` Andreas Ericsson
2006-05-03 8:26 ` Panagiotis Issaris
2006-05-03 8:44 ` Andreas Ericsson
2006-05-03 10:11 ` Martin Langhoff
2006-05-03 11:11 ` Martin Langhoff
2006-05-03 11:36 ` Panagiotis Issaris
2006-05-03 11:42 ` Martin Langhoff
2006-05-03 12:02 ` Panagiotis Issaris
2006-05-03 19:49 ` Junio C Hamano
2006-05-03 21:12 ` Martin Langhoff
2006-05-03 21:21 ` Junio C Hamano
2006-05-03 11:41 ` Panagiotis Issaris
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).