Мне нравится ваш собственный ответ о настройке paths.default-push = .
- это просто и понятно, что оно будет работать.
Другим вариантом может быть крючок предварительного нажатия:
[hooks]
pre-push = if [ $HG_PATS == "[]" -o $HG_PATS == "['default']" ]; then
read -p "Really push to default? " -n 1; echo
[ "$REPLY" == "y" ]
fi
(Здесь я воспользуюсь тем, как можно разделить длинное значение на несколько строк, вставив их в конфигурационный файл Mercurial.)
Нажим по умолчанию выглядит так
% hg push
Really push to default? n
warning: pre-push hook exited with status 1
где я набрал n
. Хуки проверяют как отсутствие аргументов ($HG_PATS == "[]"
), так и значение по умолчанию в качестве аргумента ($HG_PATS == "['default']"
) и будут запрашивать вас только в этих случаях. Переменная $HG_PATS
была введена в Mercurial 1.6.
PS: Я видел, как вы обновили вопрос и попросили найти решение в PowerShell, но, боюсь, я ничего не знаю об этом языке. Однако вы должны быть в состоянии самостоятельно поднять важные понятия из этого ответа.