Как mergetool должен указывать на успешность слияния? - PullRequest
0 голосов
/ 19 февраля 2019

Я пишу программу для возможности объединения пользовательских двоичных файлов.Я хочу позволить git доверять коду выхода моей программы, но, похоже, плохо документировано, какие коды выхода указывают на успех.Документ для git-mergetool состояний.

Если пользовательский инструмент слияния правильно указывает успешность разрешения слияния с его кодом выхода, тогда переменная конфигурации mergetool.<tool>.trustExitCode может бытьустановите на true.В противном случае, git mergetool предложит пользователю указать успешность разрешения после выхода из пользовательского инструмента.

Но это не говорит мне, какие коды выхода использовать для какого случая.Есть идеи?

Спасибо заранее.

1 Ответ

0 голосов
/ 19 февраля 2019

Git следует стандартным соглашениям Unix / POSIX: 0 = успех, ненулевой обычно подразумевает какой-то сбой.

Часто (но не в Git) 2 используется для диагностики неправильного использования и / или --help выход;однако не менее часто --help приводит к успешному завершению, и это относится к Git.(Между тем * git not-a-git-command приводит к состоянию 1. То есть, ошибка, которая приводит к некоторой помощи, приводит к завершению 1, в то время как запрос для help выдает выход 0 в Git.)

У команды git bisect есть еще один специальный код завершения, а именно 125, который он интерпретирует необычно при возврате из команды, вызванной git bisect run;см. документацию , почему 125 означает, что он делает здесь.

...