Вопрос по github, terminal – Github «фатально: удаленное происхождение уже существует»

362

Я пытаюсь следоватьУчебное пособие Майкла Хартла по Rails но я столкнулся с ошибкой.

Я зарегистрировался на Github и выпустил новый ключ SSH и создал новый репозиторий. Но когда я ввожу следующую строку в терминал, я получаю следующую ошибку:

Parkers-MacBook-Pro:.ssh ppreyer$ git remote add origin [email protected]:ppreyer/first_app.git
fatal: remote origin already exists.

Интересно, сталкивался ли кто-нибудь еще с этой проблемой?

Я столкнулся с той же проблемой и использовал команду "git remote rm origin" затем используйте команду git remote add origin URL. Akhzar Nazir
Если вы еще создали репозиторий git, посмотрите на.git/config файл, чтобы увидеть, если источник еще не объявлен. Denys Séguret

Ваш Ответ

16   ответов
27

Сначала сделайте:

git remote rm origin

затем

git remote add origin https://github.com/your_user/your_app.git

и вуаля! Работал на меня!

Зачем удалять происхождение? Есть ли способ добавить что-нибудь вместо источника?
1

cd existing_repo g,it remote rename origin old-origin
7

remote это просто URL вашего удаленного хранилища.

origin являетсяalias указывая на этот URL. Поэтому вместо того, чтобы писать полный URL каждый раз, когда мы хотим что-то добавить в наш репозиторий, мы просто используем этот псевдоним и запускаем:

git push -u origin master

Говорить, чтобы gitpush наш код из нашегоlocal master branch кremote origin repository.

Всякий раз, когда мыclone a repository, git создает этот псевдоним для нас по умолчанию. Также всякий раз, когда мы создаемnew repositoryМы просто создаем это сами.

В любом случае, мы всегда можем изменить это имя на что угодно, выполнив это:

git remote rename [current-name] [new-name]

Так как он хранится на стороне клиентаgit изменение приложения (на нашей машине) не повлияет ни на процесс разработки, ни на удаленный репозиторий. Помните, это толькоname указывая наaddress.

Единственное, что здесь меняется, переименовывая псевдоним, это то, что мы должны объявить этоnew name каждый раз, когда мы помещаем что-то в наш репозиторий.

git push -u my-remote-alias master

Очевидно, одно имя не может указывать на два разных адреса. Вот почему вы получаете это сообщение об ошибке. Уже есть псевдоним с именемorigin на вашей локальной машине. Чтобы увидеть, сколько у вас есть псевдонимов и каковы они, вы можете запустить эту команду:

git remote -v

Это покажет вам все псевдонимы, которые у вас есть, а также соответствующие URL-адреса.

Вы также можете удалить их, если хотите запустить это:

git remote rm my-remote-alias
So in brief: find out what do you have already, remove or rename them, add your new aliases.

Удачного кодирования.

21

когда вы создаете новый репозиторий, начиная со старого репозитория, который вы использовали в качестве шаблона (не делайте этого, если это не ваш случай). Полностью удалите файлы git старого репозитория, чтобы вы могли запустить новый:

rm -rf .git

А затем перезапустите новый git-репозиторий как обычно:

git init
git add whatever.wvr ("git add --all" if you want to add all files)
git commit -m "first commit"
git remote add origin [email protected]:ppreyer/first_app.git
git push -u origin master
11

какие удаленные репозитории вы подключили к локальным репозиториям, есть cmd:

git remote -v

Теперь, если вы хотите удалить удаленное хранилище (скажем, источник), то вы можете сделать следующее:

git remote rm origin
@NathanTuggy Нет, это полный ответ, и, по моему скромному мнению, более прямой, чем самый популярный в этой теме.
@daOnlyBG: я не уверен, как выглядел ответ, когда я его видел, поскольку это было до того, как комментарии были заблокированы в течение льготных периодов (и поэтому, возможно, они были отредактированы без уведомления). Но теперь, это достаточно полно, я согласен.
@NathanTuggy Woah, не знал, что когда-то были незаметные правки. Это объясняет
Это больше похоже на комментарий, чем на ответ. С немного большим количеством повторений,you will be able to post comments.
265

git remote rm origin
git remote add origin [email protected]:username/myapp.git

Работал !

Ура!

кто-нибудь может объяснить это? git remote rm origin
Нет необходимости делать это в 2 шага, когда вы можете сделать это в 1. Смотрите мой ответ.
@KickButtowski rm относится к команде удаления, используемой в * nix. Так что эта команда говорит git «удалить» сведения об удаленном сервере с именем «происхождение».
5

если вы запустите команду в каталоге без инициализации git. Если это так, запустите сначала:

git init
36

кто сталкивался с очень распространенной ошибкой "fatal: удаленный источник уже существует" или при попытке удалить источник, и вы получаете сообщение "error: не удалось удалить раздел конфигурации remote.origin", что вам нужно сделать, чтобы установить источник вручную.

В Windows POSH ~ Git для Windows PowerShell (и в приложении GitHub для Windows) есть проблема с этим.

Я столкнулся с этим, как и часто, снова, когда настраивал свою осьминогу. Итак, вот как я это сделал.

Сначала проверьте ваши пульты:

C:\gd\code\octopress [source +2 ~3 -0 !]> git remote -v
octopress       https://github.com/imathis/octopress.git (fetch)
octopress       https://github.com/imathis/octopress.git (push)
origin

Сначала вы заметите, что у моего источника нет URL. Любая попытка удалить его, переименовать и т. Д. Не удалась.

Итак, измените URL вручную:

git remote set-url --add origin https://github.com/eduncan911/eduncan911.github.io.git

Затем вы можете подтвердить, что это работает, запустивgit remote -v снова:

C:\gd\code\octopress [source +2 ~3 -0 !]> git remote -v
octopress       https://github.com/imathis/octopress.git (fetch)
octopress       https://github.com/imathis/octopress.git (push)
origin  https://github.com/eduncan911/eduncan911.github.io.git (fetch)
origin  https://github.com/eduncan911/eduncan911.github.io.git (push)

Это исправило десятки git-репозиториев, с которыми у меня были проблемы, GitHub, BitBucket GitLab и т. Д.

да, это помогло
@MennoGouw Я думаю, что это не по теме вопрос; но, как правило, это находится на панели инструментов Repo / home. Это также в настройках проекта.
Как мне найти URL при использовании gitlab?
Это сработало для меня. Спасибо @ eduncan911. В инструкциях github указано «git init». создать новый репозиторий в командной строке. Это создает удаленный источник без URL-адреса с использованием этого интерфейса PS.
3

root

если нет то используйте sudo

for removing origin :

git remote remove origin

для добавления происхождения:

Git Remote добавить происхождениеHttp: // giturl

6

что у вас уже есть пульт в вашем каталоге git. Если вы довольны этим пультом, вы можете нажать свой код. Если нет или если вы не можете нажать только:

git remote remove origin
git remote add origin [email protected]:ppreyer/first_app.git

Voil & # xE0; !

0

чтобы увидеть, сколько у вас есть псевдонимов и каковы они, вы можете инициировать эту команду git remote -v

Затем посмотрите, в каком хранилище вы находитесь тогда попробуй git remote set-url --add [Тогда ваша ссылка на репозиторий] git push -u мастер оригинала

32

git remote -v

Это вернет список в этом формате:

origin  [email protected]:github/git-reference.git (fetch)
origin  [email protected]:github/git-reference.git (push)

Это может помочь вам выяснить, каково оригинальное «происхождение»; указал на.

Если вы хотите сохранить удаленное соединение, которое вы видите с помощью -v, но при этом хотите следовать учебному пособию по Rails, не вспоминая & gposub; (или другое имя) для репозитория учебника, вы можете переименоватьother хранилище с командой:

git remote rename [current name] [new name]

как в:

git remote rename origin oldrepo

После этого вы сможете возобновить учебник.

717

$ git remote set-url origin [email protected]:ppreyer/first_app.git

Long version:

Как указывается в сообщении об ошибке, уже существует пульт с таким же именем. Таким образом, вы можете добавить новый пульт с другим именем или обновить существующий, если он вам не нужен:

Добавить новый пульт, называемый, например,github вместоorigin (который, очевидно, уже существует в вашей системе), выполните следующие действия:

$ git remote add github [email protected]:ppreyer/first_app.git

Помните, что везде в учебнике вы видите"origin" вы должны заменить его на"github", Например$ git push origin master теперь должно быть$ git push github master.

Однако, если вы хотите увидеть, что этоorigin который уже существует, вы можете сделать$ git remote -v, Если вы думаете, что это произошло по какой-то ошибке, вы можете обновить ее так:

$ git remote set-url origin [email protected]:ppreyer/first_app.git
Почему источник существует в его новом хранилище? Он должен решить проблему (например, убедитесь, что origin - правильный псевдоним для github) вместо создания нового псевдонима, который он должен будет напомнить.
Хорошо, это сработало, но затем, когда я перехожу к следующему шагу и вписываю git push -u origin master в терминал, я получаю следующую ошибку: ERROR: Repository not found. фатальный: удаленный конец неожиданно зависает Что это значит? ppreyer
Что значитgit remote -v выходы? Кроме того, вы можете попробоватьgit push origin master?
@zespri: использоватьgit remote set-url --add origin [email protected]/username/repo.git
git remote rm origin не совсем работает. Это произвелоerror: Could not remove config section 'remote.origin'
1

$ git remote add origin [email protected]:abc/backend/abc.git

In this command origin is not part of command it is just name of your remote repository. You can use any name you want.

First You can check that what it contains using below command

$ git remote -v

It will gives you result like this origin [email protected]:abc/backend/abc.git (fetch) origin [email protected]:abc/backend/abc.git (push) origin1 [email protected]:abc/backend/abc.git (fetch) origin1 [email protected]:abc/backend/abc.git (push)

if it contains your remote repository path then you can directly push to that without adding origin again

If it is not contaning your remote repository path

Then you can add new origin with different name and use that to push like $ git remote add origin101 [email protected]:abc/backend/abc.git

Or you can rename existing origin name add your origin

git remote rename origin destination

fire below command again

$ git remote -v

destination [email protected]:abc/backend/abc.git (fetch) destination [email protected]:abc/backend/abc.git (push)

It will change your existing repos name so you can use that origin name

Or you can just remove your existing origin and add your origin

git remote rm destination

4

например, загрузили в github, а затем загрузили в bitbucket, тогда он показывает этот тип ошибки.

Как удалить ошибку: удалите файл git-hub в своем проекте, а затем повторите следующие шаги ...

git init       
git remote add origin [email protected]:Yourname/firstdemotry.git  
git add -A  
git commit -m 'Message'  
git push -u origin master  
0

на bash мы можем заставить значение возврата кода завершения команды равным 0

Вы можете удалить старый пульт и добавить его снова

git remote remove $1 || true
git remote add $1 $2

Похожие вопросы