Согласно странице руководства git-push:

Git поддерживает протоколы ssh, git, http и https (кроме того, ftp и ftps можно использовать для извлечения и rsync можно использовать для извлечения и отправки, но это неэффективно и не рекомендуется; не используйте их).

Скажем, я хочу транслировать это через JMS. Или, может быть, отправить его в базу данных через JDBC. Или, может быть, отправить его в другое приложение через JRMP. Или заархивируйте файл и используйте SMTP, чтобы отправить его другу. Вы получаете суть.

Это встроено в git или есть относительно простой / поддерживаемый (т.е. есть интерфейс) способ добавить дополнительные / пользовательские протоколы в git? Если это так, любая документация / учебные ссылки будут полезны.

1 ответ1

2

Есть .git/objects , который содержит BLOB- объекты , деревья, коммиты и теги. Выполнение любого вида git push основном включает 3 шага:

  1. Выяснить, какие объекты нужны удаленному, но еще нет;
  2. Упаковка (дедупликация) этих объектов для экономии места; а также
  3. Передача объектов.

git rev-parse --verify HEAD и git bundle могут помочь вам с шагами 1 и 2.


Читать подробнее: Git Internals - Git Objects · Git's Little Bundle of Joy

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .