В git, в чем разница между висячим коммитом и висящим блобом?
Когда я делаю git fsck
Я вижу список висящих объектов. Некоторые из них называются висячими коммитами, а другие - висячими каплями. Мне было интересно, какова точная разница между этими двумя.
1 ответ
Решение
Git создает blob для каждого файла в хранилище (если такой же контент уже не существует). Висячие BLOB-объекты - это BLOB-объекты, не связанные с каким-либо коммитом, и они бесполезны, если ваш репозиторий не работает в случае сбоя диска и т. Д.
Вы можете увидеть их содержимое, используя git show <blob SHA-1>
,
Висячие коммиты - это коммиты, недоступные из HEAD
любой ветки. Вы все еще можете использовать их, например, вызывая git cherry-pick <SHA-1>
или же git reset <SHA-1>
,
Более подробное объяснение приведено в руководстве пользователя Git Скотта Чакона.