Я должен вручную удалить все зависимые драгоценные камни?

Мы можем добавить метод в массив.

Array.prototype.getRandomVal = function(){
    return this[Math.floor(Math.random()*this.length)];
};

messages.getRandomVal();
40
задан Hola 4 June 2009 в 20:14
поделиться

2 ответа

Насколько я знаю, вы правы, в команде gem нет простого встроенного способа сделать это.

Однако вы можете проверить gem-prune, который может помочь очистить репозиторий гемов после удаления dm-core.

http://github.com/ddollar/gem-prune/tree/master

11
ответ дан 27 November 2019 в 01:43
поделиться

Этот фрагмент кода делает это за меня:

def gem_deps(name)
  if `gem dependency #{name}` =~ /(Gem #{name}-.*?)(Gem|\z)/m
    $1.split("\n").grep(/runtime\s*\)/).map do |line|
      line[/[\w-]+/]
    end.compact
  else
    []
  end
end

def gem_recursive_uninstall(name)
  deps = gem_deps(name)
  if deps.empty?
    system('sudo','gem','uninstall',name)
  else
    puts("Uninstall #{name} with dependencies: #{deps.join(', ')}? [y/n]")
    if gets.chomp[/y/]
      system(*(%w{sudo gem uninstall} + [name] + deps))
    end
  end
end

Взято с http://github.com/cldwalker/irbfiles/blob/master/. irb / libraries / gem.rb

1
ответ дан 27 November 2019 в 01:43
поделиться