Я новичок в Git / GitHub и столкнулся с проблемой. Я создал тестовый проект и добавил его в локальный репозиторий. Сейчас я пытаюсь добавить файлы / проект в удаленный репозиторий.
Вот что я сделал (и это сработало) -
git remote add origin git://github.com/my_user_name/my_repo.git
Теперь, когда я пытаюсь отправить репозиторий в GitHub, используя следующую команду, я получаю следующую ошибку:
git push origin master
Ошибка -
fatal: remote error:
You can't push to git://github.com/my_user_name/my_repo.git
Use git@github.com:my_user_name/my_repo.git
Ответы:
GitHub не поддерживает проталкивание протокола Git, на что указывает использование вами начала URL
git://
. Как говорится в сообщении об ошибке, если вы хотите отправить, вы должны использовать либо SSH URL,git@github.com:my_user_name/my_repo.git
либо протокол «smart HTTP», используяhttps://
URL, который GitHub показывает вам для вашего хранилища.(Обновление: к моему удивлению, некоторые люди, по-видимому, подумали, что под этим я подразумевал, что «https» означает «умный HTTP», а я - нет. У Git раньше был протокол «тупой HTTP», который не позволял пушить раньше). был введен «умный HTTP», который использует GitHub - его можно было бы использовать как либо, так
http
иhttps
. Различия между протоколами передачи, используемыми Git, объяснены в ссылке ниже.)Если вы хотите изменить URL-адрес источника, вы можете просто сделать:
или
Более подробная информация доступна в 10.6 Git Internals - Transfer Protocols .
источник
Используйте ответ Марка Лонгаира , но обязательно используйте ссылку HTTPS на хранилище:
Вы можете использовать тогда
git push origin master
.источник
git push
и работает.Использование решения Марка Лонгаира
git remote set-url...
совершенно очевидно. Вы также можете получить то же поведение, непосредственно редактируя этот раздел файла .git / config:перед:
после:
(И наоборот,
git remote set-url...
вызов производит вышеуказанное изменение.)источник
Существует простое решение для кого-то нового в этом:
Отредактируйте файл конфигурации в вашем локальном каталоге .git (
config
). Изменитьgit:
наhttps:
ниже.источник
У меня возникла эта проблема после обновления клиента Git , и внезапно мой репозиторий не смог выдвинуть.
Я обнаружил, что какой-то старый пульт имел неправильное значение
url
, даже через мой активный в данный момент пульт имел такое же значениеurl
и работал нормально.Но был также
pushurl
параметр, поэтому добавление его для старого пульта работало для меня:Перед:
ПРИМЕЧАНИЕ. Эта часть файла config не использовалась целую вечность, но новый клиент пожаловался на неправильный URL:
Поэтому я добавил
pushurl
параметр к старому пульту:источник
Эта ошибка возникает, когда вы клонируете репозиторий, используя такой вызов:
По сути, это означает, что вы являетесь пользователем, работающим только по запросу, который не может вносить изменения.
Я исправил это, открыв
.git/config
файл моего репо и изменив строку:чтобы:
Этот
ssh+git
протокол сgit
пользователем является механизмом аутентификации, предпочитаемым Github.Другие ответы, упомянутые здесь, технически работают, но все они, кажется, обходят ssh, требуя, чтобы вы вручную вводили пароль, который вы, вероятно, не хотите.
источник
Если вы зайдете на http://github.com/my_user_name/my_repo, вы увидите текстовое поле, в котором вы можете выбрать путь git к вашему хранилищу. Вы хотите использовать это!
источник
Я добавил свой pubkey на github.com, и это было успешно:
Но я получил ошибку «Вы не можете нажать» после того, как ошибочно сделал это:
Вместо того, чтобы делать то, что я должен был сделать:
источник
Чтобы установить
https
глобально вместоgit://
:источник
Приведенные ниже команды исправят проблему.
источник
Самый быстрый способ преодолеть это - заменить
origin
его предложением.Вместо этого
git push origin master
используйте:источник