MyTetra Share
Делитесь знаниями!
Как перенести локальный GIT-репозитарий на сервер вместе со всей историей
Время создания: 07.06.2012 23:43
Текстовые метки: git, локальный, удаленный, репозиторий, ветка, перенос, опубликовать, публикация
Раздел: Компьютер - Программирование - Системы контроля версий (VCS) - Git
Запись: xintrea/mytetra_syncro/master/base/133909819896vydwe1ol/text.html на raw.github.com

Разработка с применением GIT обычно начинается с того, что вначале программист держит локальный GIT репозитарий на своей рабочей машине, и ежедневно коммитит в него. Но наступает момент, когда нужно перенести репозитарий на сервер для совместной работы или синхронизации с разных компьютеров. Перенести нужно вместе со всей историей коммитов. В этой статье написано как это сделать.

Итак, предположим, что у нас создан на GitHub.com или на BitBucket.org новый репозитарий. URL этого репозитария пусть будет следующим:

https://username@bitbucket.org/username/funnyproject.git

Находясь в рабочей директории даем две команды:


$ git remote add server https://username@bitbucket.org/username/funnyproject.git

$ git push server master:master


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

Далее предполагается, что теперь при выполнении команд push и pull, GIT должен работать с вышеуказанным сервером. Другими словами, сервер должен быть установлен по-умолчанию. Для этого обязательно нужно дать команду:

$ git config remote.origin.url https://username@bitbucket.org/username/funnyproject.git

После которой git push и git pull будут по-умолчанию работать с сервером. Если этого не сделать, при push будет ошибка:


fatal: No destination configured to push to.

А при pull тоже будет похожая ошибка:

fatal: No remote repository specified. Please, specify either a URL or a
remote name from which new revisions should be fetched.

Так что устанавливайте значение конфигурационной переменной remote.origin.url в URL сервера, как это показано выше. Или можно воспользоваться следующей командой:


git remote set-url origin https://username@bitbucket.org/username/funnyproject.git


Узнать, какие настройки сделаны в текущем GIT репозитарии можно с помощью команды:

$ git config --list

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

$ git add .
$ git commit -a
$ git push

А перед началом работы теперь нужно синхронизироваться с сервером с помощью команды:

$ git pull

Надеюсь, этот рецепт поможет вам сберечь часы, потраченные на раскопки в документации.


Так же в этом разделе:
 
MyTetra Share v.0.65
Яндекс индекс цитирования