На одной машине (IP-адрес 192.168.1.2) я создаю репозиторий Мерзавца
$ cd /home/hap/working
$ git init
$ (add some files)
$ git add .
$ git commit -m 'Initial commit'
И у меня есть другая машина на той же сети Wi-Fi. Как я могу получить клон от другой машины?
Вам нужно использовать git + ssh URL для выполнения клонирования Git:
git clone git+ssh://hap@192.168.1.2/~/working
Чтобы разбить его:
git + ssh
сообщает Git, что вы хотите использовать ssh для подключиться к репозиторию Git. hap
- ваше имя пользователя (я полагаю, основываясь на домашнем каталоге в вашем вопросе). 192.168.1.2
- это компьютер, к которому вы хотите подключиться. ~ / working
- это путь к вашему репозиторию Git на удаленном компьютере (так что ~
- ваш дом directory) Еще кое-что, на что следует обратить внимание:
hap
Я предполагаю, что на обеих машинах вы установили Git.
Теперь ваши действия зависят от того, какие службы у вас установлены, то есть как вы можете подключиться с одной машины к другой.
Самый простой случай - это когда у вас есть sshd
, запущенный на машине, которую вы хотите клонировать с, и вы можете ssh с машины, которую вы хотите клонировать на, на машину, с которой вы хотите клонировать.
Если вы можете сделать это
ssh 192.168.1.2
(или если у вас другое имя пользователя на другой машине, ssh user@192.168.1.2
), то вы должны иметь возможность клонировать через SSH, как Josiah писал:
git clone git+ssh://hap@192.168.1.2/~/working
Если вы хотите продолжать пересылать / передавать данные между машинами, вы должны настроить аутентификацию с открытым ключом для SSH, чтобы не нужно было предоставлять пароль при каждом переходе.
Если на исходной машине не установлен sshd, вы можете клонировать, используя "умный" протокол HTTP, если у вас установлен веб-сервер и вы можете установить CGI-скрипты (см. git-http-backend manpage), или вы можете клонировать по "тупому" протоколу HTTP, если у вас установлен веб-сервер, но вы можете обслуживать только статические файлы (вам нужно будет сначала запустить git update-server-info
в исходном репозитории), или вы можете клонировать с помощью rsync, если он у вас установлен.
В крайнем случае, вы можете использовать "git bundle" для создания архива, который вы можете переместить, например, с помощью USB pendrive и клонировать из него.