Добавить вилку Github в существующее хранилище - PullRequest
17 голосов
/ 27 августа 2011

Я устанавливаю проект Octopress, следуя приведенным инструкциям (http://octopress.org/docs/setup/), в котором вы создаете Github-репозиторий и создаете локальный репозиторий на своем компьютере. На своем локальном компьютере вы добавляете удаленное устройство в исходный репозиторий Octopress, а затем выдаетеКоманда "git pull". Затем вы добавляете пульт дистанционного управления в свой репозиторий Github, чтобы вы могли перенести свои изменения в свой репозиторий.

Все это работает настолько, насколько это возможно, но не создает форкаисходный проект, то есть нет очевидного (для новичка) способа выдать запрос на извлечение в исходный репозиторий Octopress.

Есть ли способ добавить ветку оригинального репозитория Octopress в мой экземплярэтот репозиторий на Github?

Если нет способа, могу ли я безопасно удалить свой экземпляр Github Octopress, разветвить оригинал на Github, а затем добавить новый удаленный из моего локального репозитория в недавно разветвленный Octopress

Ответы [ 3 ]

13 голосов
/ 27 августа 2011

Хотя люди склонны думать о своем репо на Github как о «официальном», помните, что это социальное, а не техническое различие. С точки зрения git каждый репо находится на равных условиях. Это означает, что если вы поместили каждый коммит в локальное хранилище, вы можете безопасно удалить тот на Github. Затем просто раскошелите проект Octopress на github, настройте его в качестве удаленного в локальном репо и нажмите. Git не волнует, из какого репо вы изначально получили коммит. Это "просто работает".

6 голосов
/ 27 августа 2011

Мне неизвестно о каком-либо способе превратить вашу пустую копию github в развилку github, поэтому

Если нет способа, могу ли я безопасно удалить свой экземпляр Github изOctopress, раскошелиться на Github, а затем добавить новый пульт из моего локального хранилища в разветвленный Octopress?

- это путь.Удалите свой собственный репозиторий github, нажмите кнопку форка в репозитории octoprocess и клонируйте ваш форк на локальный компьютер.

Если вы уже внесли какие-либо изменения, которые вы хотите сохранить, я бы сказал, что используя git format-patch сохранить их в виде серии файлов исправлений и git apply-patch применить их к клону вашего нового репозитория, вероятно, проще, чем использовать старый в качестве удаленного (на локальном компьютере).

0 голосов
/ 13 сентября 2017

Если я понимаю ОП. У них есть Git-репо, и теперь они решили, что он должен был раздвоить другое репо. Задним числом они хотели бы, чтобы он стал форком, не нарушая команду, использующую репо, и направляя ее на новое репо.

Я думал о переименовании нового репо на место. так что если в команде текущие клоны, и выбирает, и тянет example.git

  1. настройка нового репо, являющегося форком, example_fork.git
  2. переименовать example.git в example_deprecated.git
  3. быстро переименуйте example_fork.git в example.git.

Я слышал, что любой, у кого уже был клон, встретит ошибку своего рода (так что это не избежит неудобств, а также я надеюсь)

Я также видел предложения использовать Force Push: Маркировка репо как форка в github, после факта

.

Но теперь мне интересно, если тема обсуждения более точно сформулирована как " установка удаленного вышестоящего узла существующего репозитория ". Обсуждено здесь: Добавление удаленного апстрима в репозиторий git в сегменте битов

на основе отзывов, приведенных здесь: Чего помогает Git Remote Add Upstream? Я думаю, что это, в принципе, позволило бы ретроактивное разветвление, как я хочу, и, как я думаю, ОП просит.

Я еще не пробовал.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...