Подтвердить что ты не робот

Клонирование репо от кого-то другого Гитуба и отталкивание его на репо на моем Github

Я клонировал репо на https://github.com/railstutorial/sample_app_rails_4 и внес много изменений в него (я использовал его как отправную точку для своего собственного приложения), и теперь я хотел бы нажать измененное приложение на репо на моей собственной учетной записи github.

Как я могу изменить, с чем связано репозиторий github?

4b9b3361

Ответ 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.

    • git push origin master

Теперь "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/ и повторно инициализировать.

  • перейдите в свою клонированную папку репо rm -rf .git
  • повторно инициализируйте его, а затем добавьте пульт дистанционного управления и сделайте первый щелчок.
    
    git init
    git add .
    git commit -m "your commit message"
    git remote add origin 
    git push origin master
    

Ответ 7

У меня была аналогичная ситуация, но в моем случае то, что мне просто нужно было сделать, было предложено, но с https, например:

$ git remote set-url origin https://github.com/YOU/YOUR_REPO