Нажатие от источника к клону: фатально: не похоже на репозиторий git

Я работаю локально, и у меня есть исходный репозиторий под названием «пример» (этот репозиторий был создан с нуля). Я клонировал его в "clone_example". Оба имеют только одну ветвь, называемую master.

При внесении изменений в основную ветку моего clone_example и попытке отправить ее в источник все работает нормально. Я использую:

git push origin master

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

фатальный: 'clone_example' не является репозиторием git

фатально: не удалось прочитать из удаленного репозитория.

Пожалуйста, убедитесь, что у вас есть правильные права доступа и репозиторий существует.

Код, который я использую:

git push my_clone master

Я следую учебнику, и, хотя я выполнил все шаги, я получил эту ошибку. Я также попробовал команду «git init» в своем репозитории клонов, но все равно получаю эту ошибку.

Я использую Bash для Ubuntu для Windows, может ли это иметь какое-либо отношение к этому? Спасибо.


person Casia Hospi    schedule 12.12.2017    source источник
comment
Возможный дубликат Как мне выполнить начальную отправку в удаленный репозиторий с помощью Git?   -  person Tim Biegeleisen    schedule 12.12.2017
comment
Я уже нашел, что читал, но не смог установить связь. Я не работаю с сервером... возможно, это мое плохое понимание Git, но я не вижу сходства.   -  person Casia Hospi    schedule 12.12.2017
comment
Что такое my_clone по сравнению с clone_example?   -  person Oliver Charlesworth    schedule 12.12.2017
comment
@OliverCharlesworth из документации. Я понимаю, что имя, которое мы даем клонированному репо при создании соединения, не обязательно должно совпадать с именем каталога? В любом случае, ошибка Git указывает, что clone_example, а не my_clone, когда говорится, что это не каталог git, поэтому я предположил, что соединение правильное.   -  person Casia Hospi    schedule 12.12.2017
comment
Я думаю, я спрашиваю, делали ли вы когда-нибудь git remote add ... в исходном репо и с каким псевдонимом? Представители автоматически ничего не знают о своих клонах.   -  person Oliver Charlesworth    schedule 12.12.2017
comment
Да, я сделал. При использовании git remote я вижу, что происхождение связано с клоном и наоборот.   -  person Casia Hospi    schedule 12.12.2017


Ответы (1)


фатальный: 'clone_example' не является репозиторием git

Похоже, вы не инициализировали свою папку как репозиторий git, вы упомянули, что начали с нуля.

git init

сделает работу.

относительно второй части:

фатальный: Не удалось прочитать из удаленного репозитория.
Убедитесь, что у вас есть правильные права доступа и что репозиторий существует.

Убедитесь, что у вас есть пульт с:

git remote -vv

Если вы не видите никаких выходных данных, создайте удаленное репо на своем сервере, а затем добавьте его в локальное репо как удаленное.

# map remote repository to your local repository
git remote add origin <url>

Если вы используете ssh в качестве удаленного URL-адреса, вам также придется добавить свой ключ ssh на свой сервер, если его еще нет.

# create ssh key
ssh-keygen

# copy the key into our server settings 
# (depend upon your server where to paste the key )
# assuming using defaults:
cat ~/.ssh/id_rsa.pub 
person CodeWizard    schedule 12.12.2017
comment
Если бы это уже не было репозиторием Git, то OP не смог бы его клонировать. - person Oliver Charlesworth; 12.12.2017
comment
Он упомянул в q:this repository was created from scratch - person CodeWizard; 12.12.2017
comment
@CodeWizard Я инициализировал свое происхождение как репозиторий git. Я также использовал git remote, и у меня есть соединение с clone_example (я назвал его my_clone). Вот почему я не понимаю, почему это не работает. - person Casia Hospi; 12.12.2017
comment
Я предполагаю, что это означает локальную инициализацию git вместо клонирования с удаленного сервера. - person Oliver Charlesworth; 12.12.2017
comment
Кроме того, для решения этой проблемы не обязательно использовать удаленный сервер (хотя я согласен с тем, что наличие центрального репозитория обычно имеет больше смысла с точки зрения рабочего процесса). - person Oliver Charlesworth; 12.12.2017
comment
@OliverCharlesworth Я действительно не использую сервер. Для целей руководства я использую простой каталог (скажем, он называется Zero), где я создал исходный каталог и клонировал его внутри того же каталога (Zero). Итак, теперь у меня есть 2 каталога внутри каталога Zero. Один из них является источником, а другой - клоном, и я пытаюсь поиграть с командами Git, чтобы изучить их. Я понятия не имею, как ключ ssh подойдет к этому сценарию. Или, может быть, я что-то упускаю. - person Casia Hospi; 12.12.2017