Клонирование репо от кого-то другого Гитуба и отталкивание его на репо на моем Github
Я клонировал репо на https://github.com/railstutorial/sample_app_rails_4 и внес много изменений в него (я использовал его как отправную точку для своего собственного приложения), и теперь я хотел бы нажать измененное приложение на репо на моей собственной учетной записи github.
Как я могу изменить, с чем связано репозиторий github?
Ответы
Ответ 1
Как говорит Deefour, ваша ситуация не так сильно отличается от ситуации в Изменить URI (URL) для удаленного репозитория Git. Когда вы clone
репозиторий, он добавляется как remote
вашего, под именем origin
. Что вам нужно сделать сейчас (поскольку вы больше не используете старый источник) это изменение origin
URL:
$ git remote set-url origin http://github.com/YOU/YOUR_REPO
Если исходный репозиторий будет часто обновляться, и вы хотите получать эти обновления время от времени, вместо редактирования origin
было бы лучше добавить новый remote
:
$ git remote add personal http://github.com/YOU/YOUR_REPO
Или, может быть, даже вызовите старый upstream
:
$ git remote rename origin upstream
$ git remote add origin http://github.com/YOU/YOUR_REPO
Затем, когда вы хотите получить изменения от upstream
, вы можете сделать:
$ git fetch upstream
Как источник, это образец хранилища (кажется, что-то вроде шаблона для начала), я не думаю, что есть необходимость его сохранить или не развернуть - я пойду с первой альтернативой здесь.
Ответ 2
GitHub: git clone
репозиторий другого пользователя и git push
в ваш собственный репозиторий
Я буду ссылаться на чужой репозиторий в качестве другого репозитория.
-
Создать новый репозиторий github.com. (это ваш репозиторий)
- Дайте ему то же имя, что и другой репозиторий.
- Не инициализируйте его с помощью README, .gitignore или лицензии.
-
Клонировать другой репозиторий на локальном компьютере. (если вы еще этого не сделали)
-
git clone https://github.com/other-account/other-repository.git
-
Переименуйте текущий "источник" локального репозитория на "вверх по течению".
-
git remote rename origin upstream
-
Дайте локальному репозиторию "источник", указывающий на ваш репозиторий.
-
git remote add origin https://github.com/your-account/your-repository.git
-
Нажмите локальный репозиторий в свой репозиторий на github.
Теперь "origin" указывает на ваш репозиторий и "восходящий" точки на другой репозиторий.
- Создайте новую ветку для изменений с помощью
git checkout -b my-feature-branch
.
- Вы можете
git commit
, как обычно, в свой репозиторий.
- Используйте
git pull upstream master
, чтобы вытащить изменения из другого репозитория в основную ветку.
Ответ 3
Вы можете сделать это, создав новый удаленный доступ из своего локального репозитория (через командную строку).
git remote add <name> <url>
то вы можете позвонить:
git push <name> <repo_name>
Чтобы заменить установленный по умолчанию "исходный" пульт дистанционного управления, вы можете запустить следующее:
git remote rm origin
git remote add origin <url>
Ответ 4
Я думаю, что "самый вежливый способ" сделать это:
- Выполните оригинальное репо на своей учетной записи GitHub.
- Оформить новую ветку для ваших изменений
git checkout -b <your_branch_name>
(если вы этого не сделали раньше)
- Добавить новый пульт для локального репозитория:
git remote add github <your_repository_ssh_url>
- Нажмите свою красивую новую ветку в репозиторий github:
git push github <your_branch_name>
Таким образом, у вас будет развернуто репо на оригинальное, с вашими изменениями, внесенными в отдельную ветку. Этот способ будет проще, если вы захотите отправить запрос на перенос в исходное репо.
Ответ 5
Удалить git и перезапустить.
Ваша цель, вероятно, разместить это репо на вашем и сделать его вашим.
Идея состоит в том, чтобы удалить .git/
и повторно инициализировать.
Ответ 6
Взято из Git переместить все в новое происхождение
в основном вам нужно связать новое репо с вашей папкой
git remote add origin <address>
git push origin <branchname>
Ответ 7
У меня была аналогичная ситуация, но в моем случае то, что мне просто нужно было сделать, было предложено, но с https, например:
$ git remote set-url origin https://github.com/YOU/YOUR_REPO