Как я могу клонировать из репозитория git с одной машины на другую? - PullRequest
2 голосов
/ 21 декабря 2011

Я клонировал репозиторий git с сервера на моем ноутбуке под управлением macosx.У меня есть ноутбук B под управлением Linux, как я могу клонировать из репозитория git на ноутбуке A?

Как я могу получить URL для клонирования?

Спасибо.

Ответы [ 4 ]

4 голосов
/ 21 декабря 2011

Если у вас есть SSH-сервер на ноутбуке 1, удаленный будет:

user@host:/path/to/repository

т. Е. Тип:

git clone user@laptopA:/path/to/repository
1 голос
/ 21 декабря 2011

Вам нужно настроить либо демон git, либо ssh

Так как вы хотите клонировать с Mac,

Первый способ - Использование git daemon, облегченного сервера

  1. Mac: Отправляйтесь в свой репозиторий на Mac, убедитесь, что он пуст, т.е. при запуске ls -lrt он должен выглядеть как

    drwxr-xr-x   4 fooo  admin  136 21 Dec 12:26 refs
    -rw-r--r--   1 fooo  admin  205 21 Dec 12:26 packed-refs
    drwxr-xr-x   4 fooo  admin  136 21 Dec 12:26 objects
    drwxr-xr-x   3 fooo  admin  102 21 Dec 12:26 info
    drwxr-xr-x  12 fooo  admin  408 21 Dec 12:26 hooks
    -rw-r--r--   1 fooo  admin   73 21 Dec 12:26 description
    -rw-r--r--   1 fooo  admin  161 21 Dec 12:26 config
    drwxr-xr-x   2 fooo  admin   68 21 Dec 12:26 branches
    -rw-r--r--   1 fooo  admin   23 21 Dec 12:26 HEAD
    

    Если это не так, выполните шаг 2

  2. Пробег git clone --bare /<Path to your repository>

  3. Создать пустой файл git-daemon-export-ok: echo '' > git-daemon-export-ok

  4. Выполнить

    git daemon --base-path=`pwd` --verbose --port=9418
    
  5. Linux: Клонировать ваш репозиторий git:

    git clone git://<mac os ip address> <name of folder you want to check out to> 
    

    пример -

    git clone git://192.168.1.2 javaAddOn
    

Второй способ - Использование ssh - [Немного сложнее]

  1. MAC: В Mac перейдите в Системные настройки => Удаленный вход в систему

  2. Открыть терминал для создания ключей SSH:

    cd ~
    ssh-keygen -t rsa    #Press enter for all default values
    cd .ssh
    cat id_rsa.pub >> authorized_keys
    
  3. LINUX: Выполните те же шаги, что и в шаге 2, пропуская создание authorized_keys

  4. Скопируйте авторизованные ключи с Mac в Ubuntu в ~ / .ssh / -

    scp <macuser>@<macip>:/Users/<macuser>/.ssh/authorized_keys ~/.ssh/
    
  5. Убедитесь, что вы можете ssh из Linux. ssh <macuser>@<macip>

  6. Если шаг 5 выполнен успешно, вы можете использовать git.

    git clone <macuser>@<macip>:<Full Path of the repository location
    

пример

    git clone pm@192.168.1:/Users/pm/repositories_git/JavaTasks

Наконец, если вы хотите развиваться как в Mac, так и в Linux и фиксировать в обоих, вы должны использовать второй способ, а затем проталкивать и извлекать изменения. У меня точно такая же настройка, но обычно я разрабатываю только в Linux, а затем помещаю изменения в Mac.

1 голос
/ 21 декабря 2011

Несмотря на то, что вы можете разместить свое хранилище на веб-сервере, вы можете упростить задачу, вы можете обмениваться файлами напрямую и напрямую клонировать из каталога (это будет файл filepath- \ linuxbox \ gitshare \ myproject).

Я рекомендую иметь клонируемое «основное» хранилище для упрощения объединения, если это необходимо, между машинами.

0 голосов
/ 21 декабря 2011

Я думаю, что-то вроде

git clone file://\\\\192.168.0.33\yourpath

будет работать

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...