Подтвердить что ты не робот

Как использовать Git в среде sneakernet?

В моем проекте есть несколько тестовых ПК, которые на 100% отключены от сети. Мы также используем USB-накопитель для передачи файлов и с этих ПК. Некоторые разработки происходят во время тестов на этих ПК. Мы переносим zips обновленных файлов с информацией о версии, закодированной в имени zip файла.

Мой вопрос в том, как лучше всего использовать Git для управления передачей файлов sneakernet (или репозиториев или что?) между ПК проектного офиса и тестовыми компьютерами. Это не обычный "случай использования", который часто представлен для пользователей ноутбуков, которые "отключены" и развиваются в каком-то углу кафе, а затем возвращаются в сеть.

У кого-нибудь есть опыт в таких сценариях?


Также см. ответ git bundle create --all для передачи полного репо

4b9b3361

Ответ 1

Использование Git с несвязанными компьютерами легко с помощью git bundle.

См. справочную страницу .

Ответ 2

Вы также можете сохранить клон репозитория на USB-накопителе. "нажмите" с сетевого компьютера на USB-накопитель, затем "нажмите" с диска uSB в центральный репозиторий.

Возможно, лучше иметь репозиторий USB-накопителей со своим собственным рабочим каталогом (также на USB-накопителе). Затем "тянуть" на USB-накопитель с сетевого компьютера и "нажимать" с USB-накопителя на центральный репозиторий. Когда это произойдет, вы можете слить, если необходимо, на USB-накопитель.

Ответ 3

Читатели, которые попадают сюда, вероятно, также заинтересованы в using-git-on-usb-stick-for-travelling-code, который имеет большой набор сходств. Вероятно, это не сработает для моей среды, где есть два варианта использования движений sneakernet/редактирования (т.е. Два отдельных USB-накопителя), но это возможность.

Все зависит от того, насколько вы доверяете переносному диску, и если инструменты могут работать, когда вы не подключили его.

Ответ 4

Я нашел этот учебник еще более полезным, чем справочная страница, потому что он дает пример того, как Git проверяет, что входящий пакет и целевой репозиторий совместно используют общий предок:

http://git-scm.com/blog/2010/03/10/bundles.html