Root может использовать Git, но любая другая учетная запись: -bash: git: команда не найдена

#git #bash

#git #bash

Вопрос:

.bashrc (в учетной записи пользователя):

 export PATH=/usr/bin:$PATH
  

Как я могу заставить Git работать с учетными записями, отличными от Root?

Комментарии:

1. Зачем вам явно добавлять /usr/bin в $PATH ? Он уже должен быть там.

Ответ №1:

Как root , сделайте which git :

 [ 08:45 root@host ~ ]# which git
/usr/local/bin/git
  

затем возьмите возвращаемый путь ( /usr/local/bin/git или любой другой) и добавьте его (за исключением последней /git части) в эту строку пользователей .bashrc следующим образом:

 [ 08:45 jon@host ~ ]$ vi ~/.bashrc

export PATH=/usr/bin:$PATH:/usr/local/bin
  

Затем source .bashrc файл:

 [ 08:45 jon@host ~ ]$ source ~/.bashrc
  

Кроме того, убедитесь, что файл выполняется всеми (а не только root ) с chmod 755 помощью so, чтобы он выглядел так:

 [ 08:45 jon@host ~ ]$ sudo chmod 755 /usr/local/bin/git
[ 08:45 jon@host ~ ]$ ls -l /usr/local/bin/git
-rwxr-xr-x@ 1 root  root   613B Jan 12 15:26 git
  

Комментарии:

1. Я понял это до прочтения этого, но вы бы привели меня к ответу!

Ответ №2:

Моя проблема была решена путем внесения этой записи в мой файл deploy.rb: set :local_scm_command, :default

Пожалуйста, посмотрите запись по этой ссылке: https://github.com/capistrano/capistrano/wiki/2.x-From-The-Beginning

«Небольшое замечание: возможно, у вас установлена subversion (или любой другой SCM, который вы используете), но в месте, которое не указано в стандартном пути. (Стандартный путь обычно /bin:/usr/bin:/usr/sbin .) В этом случае Capistrano не сможет найти ваш исполняемый файл svn, и вам нужно будет явно указать Capistrano, где он находится. Для этого задайте :scm_command для пути на удаленных серверах, где он находится. Однако, если вы сделаете это, вы можете обнаружить, что Capistrano больше не может найти команду на локальном сервере; в этом случае установите для :local_scm_command значение :default (или для явного пути на вашем локальном сервере). «

Комментарии:

1. Голосование за понижение, потому что OP никогда ничего не упоминал о Ruby; на самом деле, он очень ясно дал понять, что имел в виду оболочку bash.