GIT_TRACE=1 git push
GIT_TRACE=1
добавляется в среду команды git push
.Назначение переменной действует только для этой команды.Это не влияет на любые последующие команды.
GIT_TRACE=1; git push
A Переменная оболочки с именем GIT_TRACE
установлена на 1
.Переменные оболочки отличаются от переменных среды .Дочерние процессы видят только переменные среды.Они не видят переменные оболочки.Это тонкое различие.И из-за этого git push
не видит настройки и не оказывает никакого влияния.
Кроме того, в отличие от выше, переменная продолжает устанавливаться на время действия скрипта.
Toчтобы сделать параметр видимым, вам нужно экспортировать его, преобразовав переменную оболочки в переменную окружения.
export GIT_TRACE=1; git push
Если вы не хотите, чтобы переменная влияла на какие-либо другие команды, вы можетезатем выполните обе команды в подоболочке.Переменные в подоболочке теряются по окончании подоболочки.
(export GIT_TRACE=1; git push)
Конечно, нет никаких причин делать это, поскольку GIT_TRACE=1 git push
делает то же самое, но лучше (не разворачивает подоболочку)).