Как удалить внешний репозиторий origin
Перейти к содержимому

Как удалить внешний репозиторий origin

  • автор:

как удалить origin git?

Не смог разобраться с гитхабом. По своей глупости несколько раз удалял репозиторий и создавал новый. В итоге проект пушиться не хотел (так и не разобрался) по этому пришлось менять origin master на origin11 master origin1111 master ну и так далее. Теперь такой вопрос. Как удалить все эти origin11 master ? И как пушить просто изменения ? в visual studio code после каждого изменения делаю коммит (с этим вроде разобрался) , а дальше не понимаю

Отслеживать
задан 18 июн 2020 в 21:58
user389240 user389240

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

git remote remove — удаление

git remote rename — переименование

Отслеживать
ответ дан 19 июн 2020 в 4:05
Герман Борисов Герман Борисов
10.5k 14 14 серебряных знаков 38 38 бронзовых знаков

Highly active question. Earn 10 reputation (not counting the association bonus) in order to answer this question. The reputation requirement helps protect this question from spam and non-answer activity.

    Важное на Мете
Похожие

Подписаться на ленту

Лента вопроса

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.12.8.2394

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Команда git remote add origin для работы с удаленными репозиториями

Как создать удаленный репозиторий, подключиться к нему и какие команды Git использовать.

Эта инструкция — часть курса «Введение в Git».

Смотреть весь курс

Введение

В этой инструкции мы научим вас создавать удаленный репозиторий, подключаться к нему различными методами и покажем, какие команды Git использовать.

Немного теории

Совместной разработка в Git предполагает, что у разработчиков, работающих над каким-то проектом, есть своя копия репозитория, соответственно и своя локальная история в зависимости от модели ветвления. Так как разработчикам обычно нужно поделиться серией коммитов, а не каким-то одним, в Git есть возможность делиться целыми ветками между репозиториями.

Удаленный репозиторий – это репозиторий, размещенный в локальной или интернет сети. Удаленный репозиторий используется для того, чтобы делиться и обмениваться кодом между разработчиками в рамках сети. Его также можно использовать, если вы разрабатываете проект на нескольких устройствах.

Ветки слежения – это ссылки на определенное положение веток удаленного репозитория. Перемещение веток слежения происходит автоматически при выполнении команд, которые будут показаны дальше.

Имена веток слежения имеют вид / . Если один из разработчиков произвел отправку на удаленный сервер ветки develop, когда у второго разработчика есть своя локальная ветка develop, то удаленная ветка будет называться origin/develop и соответственно быть веткой слежения. При разработке orgin по умолчанию называется удаленный сервер.

Создание удаленного репозитория

Создадим новый репозиторий на GitHub. Для этого на сайте GitHub кликните на значок плюса справа сверху или перейдите по ссылке.

Перед нами откроется следующая форма:

форма создания репозитория

  • Owner (владелец) – выбрать персональный аккаунт, который будет иметь полный доступ к данному репозиторию.
  • Repository name (название репозитория) – при названии репозитория принято использовать PascalCase (составные слова с заглавной буквы) и kebab-case (составные слова через дефис).
  • Description (описание) – описание проекта.
  • Public – кто угодно может просматривать репозиторий, но коммитить смогут только те аккаунты, которым вы предоставите доступ.
  • Private – никто, кроме вас, не сможет коммитить или просматривать данный репозиторий без права доступа.
  • Add a README file – создает readme.md файл, который нужен для добавления длинного описания.

После нажатия Create repository нас перекинет на страницу нашего нового репозитория.

страница репозитория

Сейчас в созданном github repo нет никаких файлов. Чтобы их выгрузить из локального репозитория, нужно подключиться к удаленному.

Настройка подключения к удаленному репозиторию

Добавление удаленного репозитория. Команда git remote add origin

Чтобы добавить удаленный репозиторий и присвоить ему название, которое используется для удобства как сокращение адреса, просто выполните команду

git remote add origin

По умолчанию удаленный репозиторий называется origin, о чем было сказано ранее, но можно присваивать любое название.

Ссылочные объекты у подключаемого удаленного репозитория будут скопированы.

Подключение по HTTPS

git remote add origin https://github.com/ИМЯПОЛЬЗОВАТЕЛЯ/РЕПОЗИТОРИЙ.git

С помощью https будет проще работать на нескольких устройствах нежели с перемещением ssh ключей между ними. А порт 443, который используется данным протоколом, обычно открыт. Но для работы с этим способом подключения может понадобиться введения логина и пароля, например, при клонировании приватного репозитория.

Подключение по SSH

git remote add origin git@github.com:ИМЯПОЛЬЗОВАТЕЛЯ/РЕПОЗИТОРИЙ.git

Чтобы подключить репозиторий по ssh, нужно произвести генерацию пары SSH-ключей:

  • В Git Bash прописываете одну из двух команд, вставив свою почту от GitHub аккаунта:
ssh-keygen -t ed25519 -C "ПОЧТА_GitHub_АККАУНТА" ssh-keygen -t rsa -b 4096 -C "ПОЧТА_GitHub_АККАУНТА"
  • В директории С:/Users/имяпользователя/.ssh/ появятся файлы приватного и публичного (.pub) ключей. Публичный ключ необходимо прописать в настройках GitHub аккаунта, в разделе SSH Keys > Add new.

SSH является более безопасным протоколом, чем HTTPS, но и к тому же позволяет не прописывать каждый раз пароль, вместо этого сравнивается публичный ключ с хранящимся у вас.

Для изменения адреса подключенного удаленного репозитория используется:

git remote set-url

Первое значение ( ) — название удаленного репозитория, второе значение ( ) — новый url.

Основы работы с удаленным репозиторием Git

Просмотр удаленного репозитория

Для того чтобы просмотреть список названий удаленных репозиториев, которые были добавлены, используйте команду:

git remote

Указав ключ -v, можно просмотреть, какие адреса в добавленных удаленных репозиториях используются для чтения и записи.

Полный список удаленных ссылок можно получить с помощью команды:

git ls-remote

Либо для получения удаленных веток и дополнительной информации используйте команду:

git remote show

— название удаленного репозитория, которое ему дали после подключения. Можно использовать и url интересующего удаленного репозитория.

облако команд

Изменение удаленного репозитория

Чтобы отправить изменения (имя ветки) на сервер , задействуйте команду:

git push

Если ветка, которую вы хотите отправить, не отслеживается, то добавьте флаг —set-upstream. На примере ветки develop это будет выглядеть вот так:

git push --set-upstream origin develop

В GitHub же есть кнопка (Add file) для загрузки или создания файлов прямо в удаленном репозитории.

add file

Так же возможно переименование удаленного репозитория с прежнего имени на новое .

git remote rename

Получение изменений из удаленного репозитория

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

git fetch [remote-name]

локальный репозиторий после git fetch

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

Если ветка настроена на отслеживание удаленной ветки, то можно использовать более удобную команду:

git pull 

Данная команда заменяет прописывание двух команд:

git fetch; git merge

Есть и универсальнее способ: клонирование репозитория. Клонирование копирует все файлы и коммиты удаленного репозитория, после чего уже можно использовать предыдущую команду — git fetch, если понадобятся новые изменения из удаленного репозитория.

git clone [url]

Клонирование может быть по HTTPS, либо по SSH. Рассмотрим каждый вариант.

  1. По HTTPS
  • Может быть использовано независимо от видимости репозитория.
  • Понадобятся имя пользователя и пароль аккаунта GitHub. В качестве пароля используется персональный токен доступа. Сгенерировать персональный токен доступа можно в настройках профиля GitHub (Settings > Developer Settings > Personal access tokens).
  • Команда будет иметь вид:
git clone https://github.com/ИМЯПОЛЬЗОВАТЕЛЯ/РЕПОЗИТОРИЙ.git
  1. По SSH
  • Доступ к гиту предоставляется по защищенному протоколу.
  • Необходимо сгенерировать пару SSH-ключей и добавить публичный ключ в аккаунт GitHub.
  • Команда будет иметь вид:
git clone git@github.com:ИМЯПОЛЬЗОВАТЕЛЯ/РЕПОЗИТОРИЙ.git

В GitHub есть зеленая кнопка (Code), кликнув на которую можно будет скопировать url-адрес для выбранного способа клонирования или скачать архивом данный репозиторий.

клонирование ветки

Для клонирования определенной ветки репозитория, допишите флаг —single-branch:

git clone --single-branch [url]

После работы git clone отслеживание удаленный ветки ставится автоматически.

Если же при клонировании вы хотите другое название (не origin) удаленному репозиторию, то выполните:

git clone -o ticgit

Тогда по умолчанию ветка слежения будет иметь вид ticgit/master (tcgit — пример названия удаленного репозитория).

Работа git clone пошагово выглядит так:

репозитории после клонирования

  1. Создается новая директория.
  2. В ней создается репозиторий посредством выполнения git init.
  3. Выполняется команда git remote add origin, которая добавляет по URL (назван origin) удаленный репозиторий.
  4. Подхватываются новые изменения данного удаленного репозитория через git fetch.
  5. С помощью git checkout извлекается последний коммит в рабочую директорию.

Удаление удаленного репозитория

Если интересует убрать подключение к удаленному репозиторию, то используйте команду

git remote rm

Где — название репозитория. Вместе с тем удалятся настройки и отслеживаемые ветки.

Чтобы удалить сам удаленный репозиторий, это нужно сделать на сервере, на котором он размещен. На GitHub перейдите в раздел настроек (“Settings”), проскрольте до самого низа, где будет поле Danger Zone. Нажмите на Delete this repository, в открывшемся новом поле введите *Имя пользователя*/*Названия репозитория* для подтверждения удаления. В нашем случае это T.Rex/git-remote-add-origin.

поле для удаления репозитория

Заключение

Мы создали удаленный репозиторий, узнали про подключение удаленного репозитория разными способами, рассмотрели команды clone, fetch, push, pull для взаимодействия с ним.

Руководство по git stash

Управление удаленными репозиториями

Узнайте, как работать с локальными репозиториями на компьютере и удаленными репозиториями, размещенными в GitHub.

Platform navigation

Adding a remote repository

To add a new remote, use the git remote add command on the terminal, in the directory your repository is stored at.

The git remote add command takes two arguments:

  • A remote name, for example, origin
  • A remote URL, for example, https://github.com/OWNER/REPOSITORY.git
$ git remote add origin https://github.com/OWNER/REPOSITORY.git # Set a new remote $ git remote -v # Verify new remote > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) 

For more information on which URL to use, see «About remote repositories.»

Troubleshooting: Remote origin already exists

This error means you’ve tried to add a remote with a name that already exists in your local repository.

$ git remote add origin https://github.com/octocat/Spoon-Knife.git > fatal: remote origin already exists. 

To fix this, you can:

  • Use a different name for the new remote.
  • Rename the existing remote repository before you add the new remote. For more information, see «Renaming a remote repository» below.
  • Delete the existing remote repository before you add the new remote. For more information, see «Removing a remote repository» below.

Changing a remote repository’s URL

The git remote set-url command changes an existing remote repository URL.

Tip: For information on the difference between HTTPS and SSH URLs, see «About remote repositories.»

The git remote set-url command takes two arguments:

  • An existing remote name. For example, origin or upstream are two common choices.
  • A new URL for the remote. For example:
    • If you’re updating to use HTTPS, your URL might look like:
    https://github.com/OWNER/REPOSITORY.git 
    • If you’re updating to use SSH, your URL might look like:
    git@github.com:OWNER/REPOSITORY.git 

    Switching remote URLs from SSH to HTTPS

    1. Open Terminal Terminal Git Bash .
    2. Change the current working directory to your local project.
    3. List your existing remotes in order to get the name of the remote you want to change.
    $ git remote -v > origin git@github.com:OWNER/REPOSITORY.git (fetch) > origin git@github.com:OWNER/REPOSITORY.git (push) 
    git remote set-url origin https://github.com/OWNER/REPOSITORY.git 
    $ git remote -v # Verify new remote URL > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) 

    The next time you git fetch , git pull , or git push to the remote repository, you’ll be asked for your GitHub username and password. When Git prompts you for your password, enter your personal access token. Alternatively, you can use a credential helper like Git Credential Manager. Password-based authentication for Git has been removed in favor of more secure authentication methods. For more information, see «Managing your personal access tokens.»

    You can use a credential helper so Git will remember your GitHub username and personal access token every time it talks to GitHub.

    Switching remote URLs from HTTPS to SSH

    1. Open Terminal Terminal Git Bash .
    2. Change the current working directory to your local project.
    3. List your existing remotes in order to get the name of the remote you want to change.
    $ git remote -v > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) 
    git remote set-url origin git@github.com:OWNER/REPOSITORY.git 
    $ git remote -v # Verify new remote URL > origin git@github.com:OWNER/REPOSITORY.git (fetch) > origin git@github.com:OWNER/REPOSITORY.git (push) 

    Troubleshooting: No such remote ‘[name]’

    This error means that the remote you tried to change doesn’t exist:

    $ git remote set-url sofake https://github.com/octocat/Spoon-Knife > fatal: No such remote 'sofake' 

    Check that you’ve correctly typed the remote name.

    Renaming a remote repository

    Use the git remote rename command to rename an existing remote.

    The git remote rename command takes two arguments:

    • An existing remote name, for example, origin
    • A new name for the remote, for example, destination

    Example of renaming a remote repository

    These examples assume you’re cloning using HTTPS, which is recommended.

    $ git remote -v # View existing remotes > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) $ git remote rename origin destination # Change remote name from 'origin' to 'destination' $ git remote -v # Verify remote's new name > destination https://github.com/OWNER/REPOSITORY.git (fetch) > destination https://github.com/OWNER/REPOSITORY.git (push) 

    Troubleshooting: Could not rename config section ‘remote.[old name]’ to ‘remote.[new name]’

    This error means that the old remote name you typed doesn’t exist.

    You can check which remotes currently exist with the git remote -v command:

    $ git remote -v # View existing remotes > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) 

    Troubleshooting: Remote [new name] already exists

    This error means that the remote name you want to use already exists. To solve this, either use a different remote name, or rename the original remote.

    Removing a remote repository

    Use the git remote rm command to remove a remote URL from your repository.

    The git remote rm command takes one argument:

    • A remote name, for example, destination

    Removing the remote URL from your repository only unlinks the local and remote repositories. It does not delete the remote repository.

    Example of removing a remote repository

    These examples assume you’re cloning using HTTPS, which is recommended.

    $ git remote -v # View current remotes > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) > destination https://github.com/FORKER/REPOSITORY.git (fetch) > destination https://github.com/FORKER/REPOSITORY.git (push) $ git remote rm destination # Remove remote $ git remote -v # Verify it's gone > origin https://github.com/OWNER/REPOSITORY.git (fetch) > origin https://github.com/OWNER/REPOSITORY.git (push) 

    Note: git remote rm does not delete the remote repository from the server. It simply removes the remote and its references from your local repository.

    Troubleshooting: Could not remove config section ‘remote.[name]’

    This error means that the remote you tried to delete doesn’t exist:

    $ git remote rm sofake > error: Could not remove config section 'remote.sofake' 

    Check that you’ve correctly typed the remote name.

    Further reading

    Как проверить существование внешнего репозитория origin

    uchet-jkh.ru

    При работе с системой управления версиями Git вы, вероятно, встретились с ошибкой «Внешний репозиторий origin уже существует». Эта ошибка возникает, когда вы пытаетесь добавить удаленный репозиторий, но Git уже определил репозиторий под именем «origin». Несколько ситуаций могут вызвать эту ошибку, но существуют несколько простых шагов, которые вы можете предпринять, чтобы ее избежать.

    Во-первых, перед добавлением удаленного репозитория «origin» убедитесь, что этот репозиторий еще не существует. Откройте командную строку и выполните команду «git remote -v», чтобы увидеть список уже существующих удаленных репозиториев. Если репозиторий «origin» отображается в списке, значит он уже определен. В этом случае вам потребуется использовать другое имя для удаленного репозитория.

    Если вы все-таки хотите использовать «origin» в качестве имени удаленного репозитория, то вам необходимо удалить существующий «origin» перед добавлением нового. Вы можете сделать это с помощью команды «git remote remove origin». После этого вы сможете добавить новый удаленный репозиторий с именем «origin» без ошибки.

    Если вы хотите добавить удаленный репозиторий вместо существующего «origin», вы можете использовать другое имя для нового удаленного репозитория. Например, вы можете использовать команду «git remote add upstream https://github.com/organization/repo.git», чтобы добавить новый удаленный репозиторий под именем «upstream».

    Внимательность и уверенность при выполнении этих шагов помогут вам избежать ошибки «Внешний репозиторий origin уже существует» и продолжить работу с Git без проблем.

    Избегаем ошибки «Внешний репозиторий origin уже существует»

    При работе с Git иногда может возникнуть ошибка «Внешний репозиторий origin уже существует». Эта ошибка возникает, когда вы пытаетесь добавить удаленный репозиторий под именем «origin», но такой репозиторий уже существует.

    Чтобы избежать этой ошибки, необходимо проверить, существует ли уже удаленный репозиторий с именем «origin». Для этого выполните команду:

    Эта команда отобразит список всех удаленных репозиториев, связанных с вашим локальным репозиторием Git. Если в этом списке уже есть запись с именем «origin», то это означает, что удаленный репозиторий уже добавлен.

    Если удаленный репозиторий «origin» уже существует, то вам необходимо использовать другое имя при добавлении нового удаленного репозитория. Например, вы можете использовать имя «fork» или «upstream». Для этого выполните команду:

    • git remote add fork

    Вместо вставьте URL вашего нового удаленного репозитория.

    Теперь новый удаленный репозиторий будет добавлен под именем «fork», и вы избежите ошибки «Внешний репозиторий origin уже существует».

    Как правильно настроить git-репозиторий с нуля

    Git — это распределенная система контроля версий, которая позволяет отслеживать изменения в исходном коде проекта и управлять ими. Настройка git-репозитория — первый шаг к использованию всех возможностей Git и совместной работы над проектом. Вот несколько важных шагов, которые помогут вам правильно настроить git-репозиторий с нуля.

    Первым шагом является установка Git. Вы можете загрузить установщик с официального сайта Git и установить его на свой компьютер.

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

    Перейдите в папку проекта и выполните команду git init для создания нового репозитория Git. После этого Git начнет отслеживать изменения в файлах этой папки.

    Вы можете добавить файлы в свой репозиторий, чтобы Git начал отслеживать изменения в них. Для этого используйте команду git add :

    Коммиты — это снимки состояния проекта в определенный момент времени. Вы можете создать коммит, чтобы сохранить изменения в репозитории. Для этого используйте команду git commit :

    Если вам нужно удалить файл из репозитория, используйте команду git rm :

    Git позволяет создавать ветки, которые позволяют разрабатывать функционал независимо. Вы можете создать новую ветку с помощью команды git branch и переключаться между ветками с помощью команды git checkout . Чтобы слить изменения из одной ветки в другую, используйте команду git merge .

    Теперь, когда вы знаете основы настройки git-репозитория с нуля, вы готовы начать работу с Git и использовать его инструменты для управления вашим проектом. Получите больше опыта, изучая документацию Git и экспериментируя с его командами.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *