Как добавить удаленный репозиторий Git на сервер Ubuntu? - PullRequest
41 голосов
/ 28 февраля 2011

Я создал Git-репозиторий на своем настольном компьютере (Windows 7) с:

git init
git add <all my files>
git commit -m "added my files"

Теперь я установил новый Ubuntu Server 10.10 на машину в моей локальной сети и установил OpenSSH. Мой домашний каталог - /home/jonas, и я создал каталог ~/code/ для моих проектов. Я могу войти на Ubuntu Server из Windows 7 с помощью Putty.

Я установил Git на сервер с sudo apt-get install git

Добавление удаленного репозитория

Теперь я хочу добавить свой Git-репозиторий с моего рабочего стола на сервер. Я пытался следовать инструкциям Pragmatic Version Control Используя Git .

С моего рабочего стола я запускаю следующие команды:

git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git
git push origin master

Но я получил это сообщение об ошибке:

fatal: 'jonas@192.168.1.180/home/jonas/code/myproject.git' does not appear to be
 a git repository
fatal: The remote end hung up unexpectedly

В чем проблема? Как мне создать удаленный репозиторий?


Как и предполагал PerfectlyNormal, я добавил : в адрес. Теперь он работал лучше, и мне пришлось вводить пароль на сервер, но затем я получил похожее сообщение об ошибке:

fatal: '/home/jonas/code/myproject.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

Нужно ли инициализировать Git-репозиторий на сервере, прежде чем я смогу git push к нему?

Ответы [ 7 ]

42 голосов
/ 28 февраля 2011
git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git

При использовании SSH адреса удаленных репозиториев могут быть выражены двумя способами.Один использует абсолютные пути и один использует относительные пути из домашнего каталога пользователей.Вы перепутали их.

Исправленная команда будет одной из следующих.

git remote add origin jonas@192.168.1.10:code/myproject.git
git remote add origin ssh://jonas@192.168.1.10/home/jonas/code/myproject.git
31 голосов
/ 28 февраля 2011

Вы установили репозиторий на удаленном сервере? Вам нужно запустить

mkdir -p /home/jonas/code/myproject.git
cd /home/jonas/code/myproject.git
git init --bare

на сервере для его настройки. Я рекомендую взглянуть на то, как настроить git-сервер в бесплатной ProGit book .

8 голосов
/ 28 февраля 2011

Первое, что я замечаю, это то, что вам не хватает «:». Должно быть git remote add origin jonas@192.168.1.10:/home/jonas/code/myproject.git

3 голосов
/ 13 марта 2014

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

Например,

cd c:\gits
git clone --bare c:\path\to\local\repository\some_project

, который создает some_project.git.

Затем

scp -r some_project.git login@some.server:/path/to/remote/gits/.

введите свой пароль или, возможно, у вас уже есть доступ к открытому / закрытому ключу.

2 голосов
/ 28 февраля 2011

вам нужно двоеточие:

git remote add origin jonas@192.168.1.10/home/jonas/code/myproject.git

должно быть:

git remote add origin jonas@192.168.1.10:/home/jonas/code/myproject.git
0 голосов
/ 16 октября 2018

Подключение вашего местного репо.на Git Remote Server Ubuntu

Создайте пользователя на удаленном сервере и назначьте разрешение для доступа по ssh, используя ssh-keygen на локальном сервере, и вставьте его .pub файл в ssh удаленного сервера.

Что делать на удаленном сервере

Сервер: XX.XXX.1XX.XX

Командная строка Inside Putty

  1. Перейдите в папку: cd ~/srv/git srv в корневом каталоге

  2. Создайте папку: mkdir your_file_name, а затем cd внутри вашего файла внутри вашей папки git

  3. инициализировать там git: git init --bare

       Done
    

Что делать на локальной машине

  1. создайте свой репозиторий ..

  2. инициализация Git: git init

  3. Создайте удаленное соединение: git remote add origin git@xx.xxx.xxx.xxx:/srv/git/your_file_name

  4. git push.

        Done
    

Если вы застряли в какой-либо точке, обратитесь: https://git -scm.com/ книга / а / v2 / Git-на-Server-наладка-в-Сервер .

0 голосов
/ 06 октября 2016

Взгляните на удобный скрипт git-create.bash от Эйке Кеттнер .Присвойте ему предпочитаемый удаленный адрес (jonas@192.168.1.10:code/myproject.git), и он автоматически войдет в SSH, чтобы создать каталог и инициализировать пустой репозиторий --bare для вас.Все, что вам нужно сделать, это добавить git remote и git push.

git-create.bash: создать новый пустой удаленный репозиторий git через ssh

Использование:

git-create.bash 'jonas@192.168.1.10:code/myproject.git'
git remote add origin 'jonas@192.168.1.10:code/myproject.git'
git push -u origin master
...