Играя с git
, я иногда пробую кое-что, а затем прерываю команды, которые занимают слишком много времени (например, некоторые команды git svn
, которые зависают во время проблем с сетью). Это заставило меня задуматься:
Всегда ли безопасно принудительно прерывать команду (Ctrl-C или kill
)? Что если команда завершилась аварийно (закончилась память, ошибка, проблемы с сетью/ФС)? Являются ли изменения в хранилище "транзакционными" в том смысле, что незавершенные изменения "откатываются" (как в версионной файловой системе)? Или в этом случае я рискую повредить хранилище?
Я уверен, что умные люди, работающие над git, должны были принять это во внимание, но я не смог найти никакой информации в руководстве по git или в Интернете.