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

Как два ноутбука могут git нажимать/тянуть друг к другу без Интернета

Скажите моему со-хакеру, и я окажусь на необитаемом острове. Обычно мы нажимаем и тянем к github для синхронизации друг с другом. Как бы вы порекомендовали нам это сделать, когда у нас нет связи с внешним миром?

(Пользователь @bee, и у меня действительно есть эта проблема, поскольку я печатаю это, хотя, очевидно, не так, как я отправляю это. В нашем случае у нас есть Mac-ноутбуки - OSX Snow Leopard - но я думаю, что было бы лучше рассматривать этот вопрос в целом.)

4b9b3361

Ответ 1

Самое простое решение - это, вероятно, просто настроить беспроводную сеть и SSH для ноутбуков. Вы можете настроить свой пульт с помощью

$ git remote add cohacker [email protected]:/path/to/repo.git

Теперь вы можете нажимать/тянуть к вашему сердечному содержимому:

$ git pull cohacker master
 ... hack away ...
$ git push cohacker master

Ответ 2

Возьмите SD-карту или USB-накопитель или что-то в этом роде. Создайте там голый репозиторий. Затем одно нажатие на это репо, размонтировать карту/палку, отдать ее другому, чтобы вытащить ее.

cd /path/to/usbstick
mkdir repo
cd repo
git init --bare
cd /path/to/local/repo
git remote add usb /path/to/usbstick/repo
git push usb --all

Одна другая машина

cd /pat/to/local/repo
git remote add usb /path/to/usbstick/repo
git fetch usb --all

Ответ 3

Одним из решений, совместимым с вашим сценарием, будет совместное использование через USB-накопитель один файл через git bundle

Это позволяет вам:

  • считают, что один файл ( "пакет" ) является восходящим репо, к которому каждый пользователь может обновить указанный пакет, и из которого они могут извлекать новые коммиты.
  • Не пытайтесь синхронизировать большую коллекцию файлов/метаданных в рамках открытой структуры репо.
  • не полагайтесь на какой-либо сетевой/серверный процесс.

Ответ 4

Запуск сервера git локально должен работать, если вы находитесь в одной сети. Один нажимал бы на его собственную машину, другой - на другую машину (на основе локального IP-адреса).

Ответ 5

Для начала - получите эту книгу - http://book.git-scm.com/

Незаменимый

Во-вторых, есть раздел на стр. 40 под названием "Распределенные рабочие процессы"

Это должно охватывать то, что вам нужно, просто используйте ssh в качестве протокола comms (при условии, что вы знакомы с ssh из командной строки)