Как посмотреть команды Mercurial, выпущенные Tortoise HG? - PullRequest
8 голосов
/ 08 апреля 2010

Есть ли способ узнать, какие команды Mercurial выдает Tortoise HG? Например, если я использую команду «Полка» в «Черепахе», я бы хотел посмотреть, как (и если) она вызывает «hg shelve» под капотом.

Ответы [ 3 ]

4 голосов
/ 09 апреля 2010

В некоторых инструментах есть опция «Вид-> Всегда показывать вывод». Это вызывает команды для запуска в окне консоли. Хотя часто отображаемая командная строка усекается, потому что она может содержать пароли.

TortoiseHg использует Mercurial на нескольких уровнях API, поэтому нет универсального места для получения всех команд, которые он выдает. Но пара печатных заявлений может сделать вас довольно далеко.

tortoisehg / hgtk / hgcmd.py - в CmdRunner :: execute (), напечатать cmdline tortoisehg / util / hglib.py - в hgcmd_toq (), вывести аргументы

Чтобы увидеть операторы печати, вам обычно нужно установить THGDEBUG в своей среде и запустить hgtk с опцией --nofork.

В частности, полку трудно перехватить, потому что почти весь этот код является внутренним для TortoiseHg. У нас есть локальная копия расширения полки и мы обращаемся к ней напрямую.

0 голосов
/ 28 ноября 2017

Я уверен Ответ Стива Борхо точен, но есть другой более простой подход, который во многих случаях может составлять 90% от того, что требуется:

TortoiseHG имеет вид журнала, который можно активировать с помощью этой кнопки на панели инструментов: enter image description here.

Он покажет много команд hg во время их выполнения, включая их вывод.

Это то же самое, что меню «Вид» / «Показать журнал» (или ^L).

0 голосов
/ 08 апреля 2010

Вы можете увидеть stderr, только если какая-то команда вызывает проблему, , активировав DEBUG_THG.

Но, насколько я знаю, нет журнала команд для TortoiseHg .

И TortoiseGit не очень хорош в этой функции либо .

...