2009-10-21 5 views
4

У меня GIT работает на сервере Solaris.SSH - ksh: git: не найдено

С компьютера Windows я установил cygwin, чтобы попытаться клонировать репозиторий, размещенный на сервере.

я сделать следующее:

 
$ git clone [email protected]:project.git 
ksh: git-upload-pack: not found 

Так что я стараюсь

 
$ ssh [email protected] echo \$PATH 
/usr/bin 

Похоже, мерзавец не в/USR/BIN/а в/USR/местные/бен /. Я попытался изменить PATH в .bashrc в моем домашнем каталоге на сервере, чтобы добавить/usr/local/bin/... но он, похоже, не работает.

Что я делаю неправильно?

+0

Что такое эхо $ PATH? – Mark

+0

показывает:/usr/bin – ddallala

ответ

9

~/.bashrc считывается без оболочек входа, но только Баш, и ваш сервер использует Ksh.
~/.profile есть (я думаю) универсальный файл инициализации, но он считывается только с помощью оболочек входа.
~/.kshrc является типичным стартовым файлом, считанным ksh, но только если ENV Значение переменной окружения задано (но см. SendEnv в man-странице ssh_config).


Также вы всегда можете пройти --upload-pack=/usr/local/bin/git-upload-pack опции «мерзавец клон» (а затем установить remote.origin.uploadpack переменные конфигурации), если вы не можете установить PATH на пульте дистанционного управления. И, конечно, remote.origin.receivepack, если он не может найти git-receive-pack.

+0

Мне не удалось установить PATH с помощью .profile, поэтому я попробовал ваш метод, и он отлично работал. Небольшая модификация, пришлось делать: git config remote.origin.receivepack/usr/local/bin/git-receive-pack – ddallala

+0

Thx для помощи Jakub. Извините, я случайно удалил свой голос, и он говорит мне: «Голосовать слишком старо, чтобы меняться, если этот ответ не отредактирован» – ddallala

0

Мне пришлось добавить/usr/local/bin в мой путь в .profile, чтобы его можно было подобрать на solaris (и получить git upload-pack для работы). Я всегда думал, что это были мои ящики, которые были плохо сконфигурированы, но, возможно, не так ...

+0

Согласен, только что поймал, что .bashrc, скорее всего, не получает неинтерактивный вход git. – Cascabel

4

Похоже, что ваша оболочка на машине Solaris - ksh, а не bash, поэтому ваш .bashrc не читается. Попробуйте положить изменения в .profile