Как я могу клонировать частный репозиторий GitLab?

Когда я делаю это:

git clone https://example.com/root/test.git

Я получаю эту ошибку:

фатальный: HTTP-запрос не выполнен

Когда я использую SSH:

git clone username [email protected]:root/test.git

Я получаю эту ошибку:

Инициализированный пустой репозиторий Git в /server/user/[email protected]:root/test.git/.git/
роковое: "пользователь" не является git-репозиторием
фатальный: удаленный конец неожиданно завис

Это частный репозиторий, и я добавил мои ключи SSH.

Ответ 1

Вы неправильно git clone username [email protected]:root/test.git свой ssh- clone: git clone username [email protected]:root/test.git

Это утверждение будет пытаться клонировать репозиторий с именем username в местоположение относительно вашего текущего пути, [email protected]:root/test.git.

Вы хотите оставить username:

git clone [email protected]:root/test.git

Ответ 2

Если вы пытаетесь сделать это с помощью GitHub, вы можете сделать это с помощью введенного SSH:

git clone https://[email protected]/username/repository

Ответ 3

Похоже, что нет простого решения для клонирования на основе HTTPS в отношении GitLab. Поэтому, если вы хотите клонировать на основе SSH, вы должны принять во внимание следующие три шага:

  • Правильно создайте ключ SSH, используя свой адрес электронной почты, используемый для регистрации. Я бы использовал имя файла по умолчанию для ключа для Windows. Не забудьте ввести пароль!

    $ ssh-keygen -t rsa -C "[email protected]" -b 4096
    
    Generating public/private rsa key pair.
    Enter file in which to save the key ($PWD/.ssh/id_rsa): [\n]
    Enter passphrase (empty for no passphrase):[your password]
    Enter same passphrase again: [your password]
    Your identification has been saved in $PWD/.ssh/id_rsa.
    Your public key has been saved in $PWD/.ssh/id_rsa.pub.
    
  • Скопируйте и вставьте все содержимое из недавно id_rsa.pub в меню "Настройка"> "Ключи SSH"> "Ключ" в своем профиле GitLab.

  • Подключайтесь локально:

    $ ssh -i $PWD/.ssh/id_rsa [email protected]
    
    Enter passphrase for key "$PWD/.ssh/id_rsa": [your password]
    PTY allocation request failed on channel 0
    Welcome to GitLab, you!
    Connection to gitlab.com closed.
    

Наконец, клонируйте любой частный или внутренний репозиторий GitLab!

$ git clone https://git.metabarcoding.org/obitools/ROBIBarcodes.git

Cloning into 'ROBIBarcodes'...
remote: Counting objects: 69, done.
remote: Compressing objects: 100% (65/65), done.
remote: Total 69 (delta 14), reused 0 (delta 0)
Unpacking objects: 100% (69/69), done.

Ответ 4

Перед тем как делать

git clone https://example.com/root/test.git

убедитесь, что вы добавили ключ ssh в вашу систему. Следуйте этому: https://gitlab.com/profile/keys.

После добавления выполните указанную выше команду. Он запросит ваше имя пользователя и пароль для gitlab, а при аутентификации будет клонирован.