Можно ли использовать Git между двумя рабочими станциями без «центрального» хранилища? - PullRequest
2 голосов
/ 30 ноября 2010

Я перешел из SVN в Git для некоторого домашнего программирования, настроив репозиторий Git на моем диске ReadyNAS.Затем я создал репозиторий, который я клонировал на два разных ноутбука.

Эти ноутбуки имеют изменения, которые зафиксированы, но не перенесены в центральное хранилище;это потому, что центральный репозиторий / диск NAS находится где-то на лодке и не будет виден в течение 6-8 недель!Таким образом, мой вопрос заключается в том, что в то же время у меня есть оба ноутбука в одной сети, и я хотел бы перенести коммиты локального репозитория с одного ноутбука на другой.

Возможно ли это?Я использую Windows на обоих ноутбуках и использую «Git Bash», устанавливаемый на каждом из них.

Ответы [ 2 ]

3 голосов
/ 30 ноября 2010

Да, конечно.Git-репозиторий - это просто набор файлов, и все, что вам нужно, это какой-то способ получить к ним доступ.Например, вы можете создать пустой «центральный» репозиторий в общей папке на одном компьютере, а затем выдвинуть / вытащить из него локальные клоны обоих компьютеров, которые вы используете для разработки.

1 голос
/ 01 декабря 2010

Да, вы можете.Даже без дополнительного голого центрального репо на одном из двух ноутбуков (который заменит исходное центральное репо).

Единственный недостаток при работе без голого центрального репо заключается в том, что вы не можете вернуться к извлеченной ветке,Скажем, вы работаете на master на обоих ноутбуках и клонировали репо на ноутбуке2 с ноутбука1.

Прежде чем откатывать изменения с ноутбука2 на ноутбук1, вам нужно выполнить

laptop1> git checkout other_branch

сначала на ноутбуке1, прежде чем вы сможете выполнить push .:

laptop2> git push 

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

...