Проверьте, что будет совершено до фактического совершения - PullRequest
3 голосов
/ 01 марта 2010

Я нахожусь в процессе изучения Mercurial, и хотя я установил TortoiseHG, я все больше и больше обращаюсь к командной строке.

Так часто я хотел бы проверить, какой будет результат данной команды hg, прежде чем я ее на самом деле выполню. Есть ли какой-нибудь эквивалент переключателя -whatif, известный из PowerShell, который я могу использовать, или как вы будете проверять, что будет зафиксировано с использованием данного оператора hg commit?

Ответы [ 2 ]

2 голосов
/ 01 марта 2010

Когда вы делаете коммит, ваш редактор сообщений будет содержать список файлов, которые будут зафиксированы в игнорируемом разделе. Если вы фиксируете с hg -m "message", это не сработает, поскольку шаг редактора пропущен:

HG: Enter commit message.  Lines beginning with 'HG:' are removed.
HG: Leave message empty to abort commit.
HG: --
HG: user: User <user@user.land>
HG: branch 'default'
HG: changed myfile.yxy

Вы можете использовать hg commit и hg rollback, чтобы отменить последний коммит, если он содержал файл, который вы не хотели фиксировать. Откат работает до тех пор, пока вы не hg push перешли на другой репозиторий.

Статус работает с теми же шаблонами, что и коммит. Вы можете использовать hg status some/path/*, а затем hg commit some/path/* только заменив используемую команду.

2 голосов
/ 01 марта 2010

Часто переключатель -n или --dry-run показывает, что произошло бы с конкретной командой. commit не имеет переключателя -n, но вы можете запустить hg diff, чтобы увидеть реальные изменения, или hg status, чтобы увидеть, что происходит с каждым файлом.

...