rОбычный git-репозиторий подразумевает, что вы будете использовать его как рабочую директорию, поэтому вместе с файлами проекта в актуальной версии, git хранит все служебные, «чисто-репозиториевские» файлы в поддиректории .git. В удаленных репозиториях нет смысла хранить рабочие файлы на диске (как это делается в рабочих копиях), а все что им действительно нужно — это дельты изменений и другие бинарные данные репозитория. Вот это и есть «чистый репозиторий».
2
Удаление последних коммитов
rGit позволяет исправить сообщение или файлы в случае, если коммит уже сделан. Это просто сделать с последним коммитом с помощью git commit —amend. Все от последнего коммита добавится обратно в stage area и git попытается сделать новый коммит. Это дает возможность исправить сообщение коммитта или добавить новые файлы в отслеживаемую область. Для более сложных исправлений, которые находятся не в последнем коммите (если изменения запушены), необходимо использовать git revert.Новейший коммит можно получить с помощью псевдонима HEAD:$ git revert HEADДля других коммитов лучше использовать идентификатор: $ git revert <id commit>
1