On Fri, 16 Mar 2001, Tom Roche wrote:
> [EMAIL PROTECTED] 16 Mar 2001 23:23:26 +0100
>
> On Fri, 16 Mar 2001, Tom Roche wrote:
>>> now that remote compilation works, next on my agenda is remote
>>> version control.
>
>> Well, the idea with CVS is that you have your own working
>> directory, which need not be on the CVS server. So maybe it is best
>> to just use CVS to fetch a working directory to your desktop
>> machine?
>
> Actually, I think not, but perhaps you can correct my reasoning.
>
> I'm working remotely in development space (on Solaris) on an
> Apache-based app, and locally on a w2k box. Four characteristics
> are notable:
>
> * files in my devspace symlink to the appropriate spots in
> Apachespace
Oh. Hm. I never thought anybody would do it like this. Hm.
> Thus IMHO the superior option is to do as much as possible (other
> than actually edit) remotely, hence my interest in tramp. So how to
> do remote VC? Should be transparent, but it isn't fully. If I open a
> CVSed file in tramp, e.g. (broken for mail)
>
> /r@t:[EMAIL PROTECTED]:/local/dev/tlroche/webassign/
> ScoreAnalysis.pm
>
> I see
>
> (CPerl CVS:17061:1.12 Abbrev)
17061 is your user id on the remote host? Tramp does not know that
this is your user id. There is a problem with interoperation between
VC and Tramp in this regard. Not sure what to do about it.
> in the modeline. (BTW: how does one copy the contents of the
> modeline into a buffer?)
I know of no good way. You could run Emacs in an xterm and then user
xterm's copy and paste... (Same for a DOS box.) But I know that this
is not a real solution.
> But if I then do
>
> C-x v =
>
> I get
>
> *vc-diff*
>> /bin/ksh: cvs: not found
>
> How do I make ksh find cvs? And why is ksh able to sense CVS stuff
> but not able to find cvs?
When Tramp starts a ksh on the remote host, it also sets up the
environment. It goes through a list of directories and adds them to
$PATH if they exist. Just add directories to tramp-remote-path and
they will appear in $PATH.
ksh does not sense CVS stuff -- that's Emacs looking for a CVS
subdir. Emacs needs to run the `cvs' binary for the actual
operations, of course. But it can find out about the version number
without running `cvs'.
> Note that I don't get CVS access at login by default. To use it, I
> run a script via .mycshrc that fixes my path to match wherever CVS
> is in AFSspace (which I gather changes fairly often). This script
> is, I have been told, quite csh-specific: I haven't looked at it,
> and am not even sure where it's located. I also apparently need to
> run it from the terminal, since I've found the magic doesn't work
> when run from a script (other than .mycshrc).
Is it practical for you to add a directory to tramp-remote-path?
If not, you might be able to tell Tramp to run a certain command when
it sets up the shell, and then you could use that to frob $PATH. But
there is no builtin functionality for doing this.
kai
--
Be indiscrete. Do it continuously.