Git push / clone на новый сервер - PullRequest
       11

Git push / clone на новый сервер

124 голосов
/ 10 сентября 2009

Я только изучаю Git, и есть кое-что, что я не могу отработать. Могу ли я отправить копию на другой сервер где-нибудь еще после создания и использования git-репозитория локально на моем Mac? Я нахожусь за брандмауэром, поэтому, к сожалению, я не могу запустить git clone с другой машины.

Ответы [ 5 ]

132 голосов
/ 10 сентября 2009
  1. git remote add имя url
  2. git push имя филиал

Пример:

git remote add origin git@github.com:foo/bar.git
git push origin master

См. Документацию по git push - вы можете установить пульт в качестве пульта по умолчанию для данной ветви; если вы этого не сделаете, имя origin является особенным. Только один git push будет делать то же самое, что и git push origin эта ветка (для любой ветви, на которой вы находитесь).

75 голосов
/ 10 сентября 2009

Сначала вы можете создать на локальном компьютере клон репозитория

.
git clone --bare /path/to/repo /path/to/bare/repo.git  # don't forget the .git!

Теперь заархивируйте новый каталог repo.git с помощью tar / gzip или любого другого любимого инструмента архивации, а затем скопируйте архив на сервер.

Разархивируйте репо на вашем сервере. Затем вам нужно будет настроить удаленный доступ в локальном хранилище:

git remote add repo-name user@host:/path/to/repo.git #this assumes you're using SSH

После этого вы сможете нажимать и извлекать из удаленного репо:

git push repo-name branch-name
git pull repo-name branch-name
9 голосов
/ 10 сентября 2009

Существует много способов перемещения репозиториев, git bundle - хороший способ, если у вас недостаточно доступности сети. Поскольку репозиторий Git - это просто каталог, полный файлов, вы можете «клонировать» репозиторий, создав копию каталога .git любым удобным для вас способом.

Самый эффективный способ - использовать где-нибудь внешний репозиторий (используйте GitHub или настройте Gitosis ), а затем git push.

6 голосов
/ 04 марта 2015
remote server> cd /home/ec2-user
remote server> git init --bare --shared  test
add ssh pub key to remote server
local> git remote add aws ssh://ec2-user@<hostorip>:/home/ec2-user/dev/test
local> git push aws master
1 голос
/ 10 сентября 2009

Вы можете отправить ветку на удаленный сервер, скажем, github . Сначала вам нужно будет выполнить первоначальную настройку проекта, затем клонировать ваш проект и:

git push <remote repo> <your branch>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...