>[оверквотинг удален]
> cd git-test
> git init
> echo "123" > file; git status
> git commit -am "initial state"; git status
> echo "456" >> file; git status
> git add file; git status
> echo "789" >> file; git status
> После чего наконец понять, что есть три состояния изменения существующего с точки
> зрения git файла -- "сделано в рабочей копии" (unstaged), "добавлено
> в будущий коммит" (staged) и "закоммичено". Я это даже комментировать не буду. Просто запишу в образчик гордыни, номер очередной. Рассказывать с надменным видом собесденику то, что он давно знает, при этом не прислушиваясь, что же он, собственно, имел в виду, уже пойдя дальше.
> Да, можно продолжать рассусоливать
> о том, как бы врезаться между git status и git add/commit
> -a, но это в принципе race даже при возможности снупать ssh-сессии.
Hint: это предположение основано на том, что используется stock git, без закладок
> И это всё -- в ответ на предположение, что кто-то что-то правит
> "прям на сервере" в репо с чекаутнутой рабочей копией, что само
> по себе звучит немножко дико для git repo, в который пушат.
Зависит от организации рабочего процесса там на месте. Для одного "git repo, в который пушат" хватило бы и одного мастер-сервера (плюс еще несколько из-за высокой нагрузки). А там сотни, с разными аккаунтами на разных серверах. Что наводит на мысли (при неизвестности, как там именно обстоят дела), что всё не так тривиально, возможны варианты.
> А при нормальном рабочем воркфлове подделывать придётся pack'и со всеми
> вытекающими.
Опять же. Вы так уверены, что это единственно возможный вариант? Ну не буду мешать, жизнь со временем научит.