[email protected] (Trent W. Buck) writes:

> The command run by M-! (shell-command) runs in a tty if and only if the
> default-directory is over TRAMP.  The following test will print a zero
> in the echo area if fd 1 (stdout) is a tty:
>
>     M-! test -t 1; echo $?

Tramp needs a tty. It must communicate with the remote shell, for
example in order to determine the prompt, when a command is finished.

> This is a show-stopper issue when running git over tramp, because
>
>   1. git notes that stdout is a tty;
>   2. git invokes the pager;
>   3. the pager waits forever for input from /dev/tty; and
>   4. Emacs waits forever for the shell command to terminate.
>
> There are some obvious workarounds:
>
>  - customize the remote user's dotfiles; or
>  - when using git over tramp, ALWAYS pipe through cat

There are alternatives. Set the $GIT_PAGER environment variable in
`tramp-remote-process-environment', or call git with --no-pager. Both
can be done centrally.

Best regards, Michael.


_______________________________________________
Tramp-devel mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/tramp-devel

Reply via email to