1

У меня есть GitLab на моем сервере, и, конечно, Git в качестве моей системы хранилища.

Но у меня есть проблема, интегрируя их друг с другом. Похоже, я создаю проект в GitLab и добавляю файл README (репозитории хранятся так, как я вижу в /var/opt/gitlab/git-data/repositories).

Таким образом, проект должен быть создан в репозитории /var/opt/gitlab/git-data/repositories/wojsza , все, что я вижу в этой папке, - это имя проекта с расширением git (в данном случае playground.git).

Когда я пытаюсь сделать git status или git remote -v я получаю

fatal: not a git repository (or any of the parent directories): .git

То же самое, если я попытаюсь его клонировать (git clone git@example.com:wojsza/playground.git)

fatal: 'wojsza/playground.git' does not appear to be a git repository
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

Но когда я делаю несколько новых ручных репозиториев, используя git init в моей домашней папке, это работает, и я могу клонировать его, но в GitLab это не распознается.

Что может быть источником этой проблемы.

2 ответа2

1

Это не то, как вы (обычно) используете Gitlab-репозиторий или любое размещенное в сети Git-репо (Gitlab, Github, Bitbucket ...)

Репозиторий Gitlab предназначен для использования в качестве удаленного, а не локального репозитория.

На домашней странице проекта Gitlab есть кнопка "Клонировать". Он содержит URL, SSH или HTTPS (или оба) в зависимости от вашей конфигурации Gitlab. Этот URL-адрес должен использоваться на вашем компьютере в команде git clone для создания локального экземпляра проекта, затем вы можете выполнить git push и git pull s для отправки ваших изменений в репозиторий Gitlab.

Здесь, на странице Gitlab для Gitlab CE:

Кнопка «Клон» в правой части страницы проекта


редактировать

Еще одна интересная вещь: в зависимости от конфигурации Gitlab вы можете создать локальное git-репо на вашем компьютере с помощью git init , а затем объявить несуществующий проект Gitlab как удаленный с

git remote add origin https://gitlab.example.com/path/to/repo.git

Затем при первом git push будут созданы соответствующий проект Gitlab и репо. Это зависит от вашей конфигурации Gitlab и может быть не авторизовано в вашем экземпляре. И вам может понадобиться явно указать ветвь, которую нужно отправить, поскольку в вашей локальной ветке не будет установлен ни один отслеживающий / удаленный филиал.

-2

У меня была та же проблема, и я решил ее, указав весь URL при клонировании репо. В вашем случае: git clone git@example.com:/var/opt/gitlab/git-data/repositories/wojsza/playground.git

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .