GIT - '~/repo.git/' не является командой git

У меня проблема с удаленным репозиторием git и локальным репо (с использованием SmartGit).

Я создаю удаленное репо на моем сервере через ssh:

> cd ~
> git init repo.git
> cd repo.git
> touch readme
> git add .
> git commit -m "Initial commit"

Отсюда все кажется идеальным. Сейчас я пытаюсь клонировать репо с помощью Smartgit с командой

ssh://user@server:22/~/repo.git

Все хорошо клонируется. Я делаю изменения в файле readme, сохраняю его и пытаюсь зафиксировать, нажать и получить ошибку:

The remote end hang up unexpectedly
git: '~/repo.git' is not a git command. See 'git --help'

Что я делаю неправильно? Спасибо.

3 ответа

Решение

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

GIT_TRACE=2 git push origin master

и посмотрим, что происходит для устранения проблемы.

Обновить:

Пытается git-receive-pack

Попробуйте сделать ниже:

git config --global remote.origin.receivepack "git receive-pack"

А затем сделайте толчок снова.

Другие вещи, которые вы можете попробовать:

На удаленном сервере настройте пустое хранилище:

git init --bare

А затем попробуйте клонировать и подтолкнуть к нему.

Я бы предложил использовать полный путь вместо домашнего ярлыка (~), например, git clone ssh://user@server/home/tuergeist/repo

Это работает для меня на Linux, а также на WindowsXP в Git Bash.

Вы также должны соблюдать .git расширение, это может сбить с толку ваши инструменты, так как он ожидает пустое хранилище. (Но я не уверен)

Вам не нужно указывать порт 22; это порт по умолчанию для SSH. Кроме того, SSH является значением по умолчанию, если вы укажете user@server:path,

Попробуйте клонировать просто...

user@server:~/repo.git

вместо.

Другие вопросы по тегам