Я выполнил перечисленные вами шаги и не могу воспроизвести ошибку, которую вы получаете (fatal: Where do you want to fetch from today?
). Однако, если вы выполнили шаги, описанные в вопросе, у server
нет удаленных репозиториев - git pull
не будет работать, потому что у server
нет удаленных источников для извлечения. Я думаю, что это причина ошибки, которую вы получаете.
На данный момент у вас есть три репозитория: на сервере: myProject
, myRepo
и на ноутбуке myRepo
(клон из server
). Если я правильно понимаю вопрос, вы хотите использовать myProject
(на server
) и myRepo
(на Laptop
) для работы. Я предполагаю, что у вас есть myRepo
(на server
) в качестве плацдарма, откуда вы можете git push
и git pull
; вы сделали это правильно, потому что настроили его как репозиторий --bare
, что является разумным ходом.
Если вы будете следовать инструкциям triad
в его ответе, вы получите два репозитория: server
, который является репозиторием --bare
, и laptop
. Если вам удобно перенастраивать свои репозитории, я бы следовал инструкциям triad
s, примерно так:
- Сделайте где-нибудь репозиторий
--bare
. Это будет плацдарм. Назовите это чем-нибудь полезным, например, bareRepository
или как-то так.
- У вас есть репозиторий с некоторой работой в нем. В этом репозитории (на
server
или laptop
) добавьте bareRepository
в список удаленных устройств: git remote add <name> <url>
.
git push
свою работу из репозитория (2) в bareRepository
. Это обеспечит актуальность bareRepository
и еще много чего.
- Поскольку вы не можете работать из
bareRepository
, клонируйте его снова на любом компьютере, где нет рабочего репозитория (server
или laptop
). Поскольку вы клонируете bareRepository
, git будет рассматривать bareRepository
как origin
; вы можете git push origin
и git pull origin
сколько душе угодно, не путая репозиторий с рабочим деревом.
- Once you've set up the two working repositories (one on
laptop
, one on server
) and a --bare
repository (on either laptop
or server
), you should be able to sync your work happily:
- do some work
git commit
работа
git push origin
— получить работу в голом репо
- На другом компьютере:
git pull origin
для обновления вашей ветки.
person
simont
schedule
29.02.2012