Как вы проверяете, находится ли ртутное РЕПО в чистом состоянии?
как пользователь, я обычно использую hg st
чтобы проверить состояние РЕПО и убедиться, что оно находится в чистом состоянии, без измененных файлов.
здесь я хотел бы сделать это программно. Я знаю, что я также могу использовать hg st
для этого, но выход меньше, чем идеально подходит для потребления компьютерной программой. Есть ли лучший способ проверить, находится ли ртутное РЕПО в чистом состоянии?
3 ответов
если вы hg identify --id
команда, она будет суффиксом ID с +
символ, когда репозиторий изменил файлы. (Примечание: этот флаг не сообщает о неотслеженных файлах.)
если вы grep вывод этой команды для +
персонажа, вы можете использовать код, чтобы определить, есть ли изменения или нет:
$ hg init
$ hg identify --id | grep --quiet + ; echo $?
1
$ touch a
$ hg identify --id | grep --quiet + ; echo $?
1
$ hg add a
$ hg identify --id | grep --quiet + ; echo $?
0
вы должны использовать hg summary
:
$ hg init
$ echo blablabla > test.txt
$ hg summary
parent: -1:000000000000 tip (empty repository)
branch: default
commit: 1 unknown (clean)
update: (current)