Onde você deve instalar pedras preciosas para com Rubygems para o desenvolvimento?

StackOverflow https://stackoverflow.com/questions/1610100

  •  05-07-2019
  •  | 
  •  

Pergunta

Se você não instalar gemas com sudo em um Mac, por padrão, eles serão colocados em um diretório como

.gem/ruby/1.8/gems/

Se você instalar por com sudo, meu entendimento é que eles são normalmente colocados nos diretórios do sistema, assim:

 /usr/local/lib/ruby/gems/1.8/gems/

Há uma boa razão pela qual você deve instalar gemas com sudo em vez disso, diferente de simplesmente deixar que os outros compartilhá-los com você? *

Estou sob a impressão de que você sudo instalar gems, porque se você como usuário bob instalar as gemas dentro bob 's diretório, em seguida, um usuário como www -data (usado por passageiros / Apache no Ubuntu Linux quando servindo arquivos), para usá-los - esta é a única razão que você iria usá-los como este

?

Ou é a melhor prática agora usar algo como Rubi Versão Gestor vez agora?

Eu realmente aprecio ouvir de alguns desenvolvedores Ruby mais experientes sobre onde você armazenar seus e porquê.

Foi útil?

Solução

Running gem install com meios sudo você está executando a instalação como um usuário administrador e como tal irá instalá-lo para todo o sistema. Se executar como um usuário normal, ele vai apenas colocar as pedras em seu diretório pessoal.

Para a sua máquina de desenvolvimento ou servidor, /usr/local/lib/ruby/gems/1.8/gems/ é quase certamente o lugar certo para colocar pedras preciosas. Se você estiver em algum tipo de hospedagem ou brincar com versões de desenvolvimento de algumas jóias, por todos os meios compartilhados, mantê-los em seu diretório home para que você não sobrecarregar o sistema para outros usuários.

Eu não ouvi do Ruby Versão Manager antes. Eu vou dar uma olhada.

Outras dicas

AFAIK, Ruby Versão Manager (RVM) é direcionado mais a torná-lo simples para trabalhar com várias versões Ruby (1.8.6, 1.8.7, 1.9.1, ressonância magnética, JRuby, etc etc) na mesma máquina. Uma vez que muitas gemas incluem específico da versão e / ou elementos compilados, diferentes versões gema pode ser necessária para o uso dentro dessas versões Ruby. RVM permite alternar ambiente Rubi mas dentro desse ambiente que você [sudo] gem install o mesmo de sempre.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top