2015-12-11 3 views
0

Этот вопрос кажется очевидным, но я не могу найти прямой ответ в моем поиске stackoverflow и других уголках Интернета.изменение удаленного репо для проекта, раздвоенного из github на локальном компьютере (Rstudio)

У меня есть проект, над которым я работаю, используя R-студию на локальной машине. Проект начался, потянув от репо на Github. Я не могу нажать на это репо, так как это не мое, и у меня нет разрешения. Неважно, я хотел бы создать новый репозиторий github, чтобы сохранить все мои изменения в исходном репо и текущем состоянии проекта. Я не могу просто ввести:

git remote add origin https://github.com/user/new_repo.git 

Потому что есть уже отдаленное происхождение. Я получаю эту ошибку:

fatal: remote origin already exists. 

Право. Это ясно. Происхождение - это исходный репозиторий github, из которого я его вытащил, а также тот, который мне не разрешено обновлять, потому что это не мой код. Непосредственная. Я хочу изменить источник репозитория на: https://github.com/user/new_repo.git (новое репо, которое я только что настроил на github), но сохраните всю историю работы, как я изменил проект.

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

ответ

0

Я решил эту проблему, используя советы @manishrw и несколько других сообщений. Мне нужно сделать несколько вещей:

во-первых, мне нужно менять начало удаленного URL в файле .git/config. Это можно выполнить, как описано в @manishrw, и фактический путь к файлу URL должен быть ssh://[email protected]/user/new_repo.git. Итак, из домашнего справочника вы должны ввести:

git remote set-url origin ssh://[email protected]/user/new_repo.git 

Пока все хорошо. Однако у меня все еще были проблемы, поскольку я работал с удаленного компьютера, который никогда не был аутентифицирован. Я получаю сообщение об ошибке:

Permission denied (publickey). fatal: The remote end hung up unexpectedly 

Второй, Чтобы решить эту проблему, я должен был установить свое имя пользователя и адрес электронной почты для GitHub на удаленной машине, а затем сгенерировать ключ SSH. Я следовал инструкциям here, которые я описываю ниже:

  1. Установить имя пользователя и электронной почты на оболочке в R студии. Это ваше имя пользователя и адрес электронной почты github.com.

    git config --global user.name "your_username" git config --global user.email "your_email @ example.ком»

  2. В RStudio, перейдите в меню Инструменты/Глобальные параметры/Git SVN

  3. Нажмите„Создать ключ RSA ...“и следуйте инструкциям. Вы можете установить пароль здесь, но его нет необходимости.

  4. Нажмите "вид открытого ключа" и скопировать ключ.

  5. скопируйте ключ к настройке учетной записи Github (Редактирование ключей профиль/SSH/Добавить ключа SSH).

Чтобы проверить, что SSH-аутентификации работает, попробуйте запустить

ssh -T [email protected] 

и вы должны получить что-то вроде

Hi your_username! You’ve successfully authenticated, but GitHub does not provide shell access. 

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

0

Это должно быть сделано.

git remote set-url origin newurl 

EDIT:

При штамповке с мерзавцем только для чтения адреса (в основном, когда вы не войти), то вы не получите чтения + доступ на запись.

Репозиторий должен изменить способ его нажатия, используя ssh. Следуйте этому answer, чтобы изменить конфигурацию репо на вашем ПК на ssh.

+0

Я сделал это, но когда я иду, чтобы нажать, я получаю эту ошибку: 'error: Ошибка запрашиваемого URL: 403 Запрещено при доступе к https: // github.com/user/new_repo.git/info/refs' – colin

+0

Если бы вы могли изменить вопрос, чтобы точно описать этот вопрос, это было бы полезно и для других! – manishrw

+0

Я внес изменения в файл конфигурации, как указано в другом сообщении. Теперь я получаю эту ошибку, когда я нажимаю: 'Permission denied (publickey). фатальный: удаленный конец неожиданно повесил трубку' – colin

Смежные вопросы