<p>хаб псевдоним скрывает git-alias</p>

Созданный на 26 мар. 2012  ·  9Комментарии  ·  Источник: github/hub

hub alias , похоже, не учитывает --noop , поэтому он скрывает git-alias из https://github.com/visionmedia/git-extras.

Поскольку это команда, специфичная для концентратора, и она полезна только во время установки, я предлагаю либо:

  • сообщить ему о --noop
  • скрыть его как параметр, а не команду, т.е. hub [--alias|--shell-alias] [SHELL]
  • заставить его работать, только если $0 явно hub
bug ¯\_(ツ)¯

Самый полезный комментарий

Для любой команды, если вы хотите полностью пропустить hub из оболочки, просто выполните command git ... . Например, command git alias .

Все 9 Комментарий

Мне потребовалось время, чтобы понять, о чем вы говорите. По сути, hub alias затеняет другие команды git-alias которые могут существовать в системе (в данном случае одна предоставляется git-extras), верно?

Я поддерживаю ваше предложение 3. Однако такое поведение может удивить некоторых, потому что в любом другом случае вызов hub <something> должен быть идентичен git <something> (когда hub имеет псевдоним git ). Мне нужно обдумать это.

Спасибо за предупреждение!

Извините, если я не понял; вы меня правильно поняли.

Может ли что-то вроде hub alias-command работать так же хорошо и быть более понятным?

Или что-то подобное ...

Во-первых, --noop не пересылает все команды на git . Он просто показывает, что будет выполнено hub , но не выполняет его.

Мне нравится идея заставить hub alias работать только в том случае, если команда вызывалась как hub а не git . Однако я не знаю, как это сделать технически; значение $0 для меня равно hub , независимо от того, вызвал ли я его через псевдоним git или нет.

Следующий вариант - сделать его собственным флагом, например hub --alias . Однако это нарушает обратную совместимость с людьми, которые уже встроили eval "$(hub alias -s)" - это оболочка.

@cdlm @mislav Делает ли хаб бесполезными псевдонимы git-extras, если у меня git псевдоним хаба? Разве я не могу использовать какие-либо из замечательных псевдонимов git-extras, упомянутых здесь https://github.com/tj/git-extras/blob/master/Commands.md ?

Вы можете использовать все команды git-extras, кроме git alias и git fork из этого репо, потому что hub alias и hub fork будут иметь приоритет.

Вместо этого вы можете использовать git-alias и git-fork или обойти псевдоним git с помощью \ (обратная косая черта): \git alias . Я не эксперт по go, но я возился с этим, и независимо от того, как я запускаю исполняемый файл go, os.Args[0] всегда дает истинное имя исполняемого файла, то есть hub , как @ - сказал

В случае hub alias возможно, вы можете использовать тот факт, что -s передается для выполнения hub alias , в противном случае распечатайте уведомление о прекращении поддержки или перейдите к git команда.

Для любой команды, если вы хотите полностью пропустить hub из оболочки, просто выполните command git ... . Например, command git alias .

Да, и это имеет тот же эффект, что и обратная косая черта \ , _e.g._ \git

Была ли эта страница полезной?
0 / 5 - 0 рейтинги