[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#7791: 24.0.50; vc-annotate doesn't work on large SVN files
From: |
Glenn Morris |
Subject: |
bug#7791: 24.0.50; vc-annotate doesn't work on large SVN files |
Date: |
Fri, 07 Jan 2011 15:13:49 -0500 |
User-agent: |
Gnus (www.gnus.org), GNU Emacs (www.gnu.org/software/emacs/) |
Mark A. Hershberger wrote:
> Works on the file when I check it out anonymously on the http transport,
> but when I use my credentials on the svn+ssh transport it fails in both
> emacs from trunk and emacs23.
Hmph, now I see it too, only with svn+ssh:
svnadmin create /path/to/repo
get Article.php, stick it in /some/dir
svn import /some/dir file:///path/to/repo
svn checkout svn+ssh://hostname/path/to/repo dir
If instead checked out via local file:/// it works fine.
Changing vc-svn-annotate-command to not run asynchronously seems to
make it work. I can only guess that for some reason Emacs mistakenly
thinks the asynchronous version finishes sooner than it actually does.
I remembered this old comment from INSTALL.CVS (back when it was
called INSTALL.CVS):
If you execute cvs commands inside Emacs, specifically if you use
pcl-cvs, output from CVS may be lost due to a problem in the
interface between ssh, cvs, and libc. Corrupted checkins are
also known to have happened.
To fix the problem, save the following script into a file, make it
executable, and set CVS_RSH to the file name of the script:
#!/bin/bash
exec 2> >(exec cat >&2 2>/dev/null)
exec /usr/bin/ssh "$@"
If I do the same trick with SVN_SSH, it seems to work OK asynchronously.
So I guess svn may be subject to the same issue as cvs.