Собираем
информацию
по крупицам
Статьи - Компьютерное

Система контроля версий GIT

Как перенести локальный GIT-репозитарий на сервер вместе со всей историей
07-06-2012
23:01:39

Разработка с применением 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 репозитарии можно с помощью команды:

 

$ git config --list

 

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

 

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

 

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

 

$ git pull

 

Надеюсь, этот небольшой пошаговый рецепт поможет вам.

 


К списку "Компьютерное"

Интересное на сайте


Программирование на C++ и Qt » Как в Linux глобально отловить нажания клавиш в X11 (XWindow)

Несколько раз я пытался найти пример кода, который бы позволял отслеживать события нажатия и отжатия клавиш в нашем любимом X-сервере. Важный момент: ...


Программирование на C++ и Qt » Пример функции обратного вызова на C++ / Qt

В этой статье я кратко опишу готовое решение по вопросу о том, как в C++ / Qt написать функцию обратного вызова (callback-функцию).   Задача: ест...


Qt » MyTetra Web Client (english page)

Official page(Rus / Eng)   MyTetra Web Client - is internet-service for fast access to MyTetra data from browser.   Actual version: 0.17 MyT...

RSS подписка

Подпишитесь на новости сайта по RSS

Поделиться этой страницей


Статистика


О, смотри-ка какое хорошее место. Дайте два!

Внимание!


На этом сайте разрабатывается программа MyTetra и её родственные проекты. Доступны к просмотру следующие базы знаний:

 

База Xintrea (1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20)

База Rarrugas (1, 2)

База Balas

База YellowRaven

База Yurons

База Lesnik757

База Shandor

База Sirrichar

База Anatolean

База Аrmagedec

База SorokinRed

База Deadelf79

База Fadk

 

Требуют доработки:

 

База Tairesh

База Ivnglkv

База Kolyag87

База Andyk101

База Garik456456

База Harpokrat

База SalexIzyh

База Duwaz

 

Подробности на странице MyTetra Share.

 WebHamster.Ru
 Домик любопытного хомячка
Яндекс индекс цитирования
Почтовый ящик