Как вытащить запрос на страницу вики на GitHub?
Я увидел страницу wiki на GitHub, которая не открыта для редактирования. Затем я разветкил проект, отредактировал его "мой конец" и попытался выполнить запрос на растяжение. Оказывается, вики не находятся в проекте, и нет возможности внести в него изменения.
Помимо электронной рассылки, есть ли способ продолжить, если я хочу предложить изменение в вики в этом случае?
В этот момент я узнал, что кажется альтернативой в разделе "Вопросы с похожими заголовками", но я не мог выполнить запрос на перенос тем не менее, и поэтому я не уверен, что подмодули - хороший способ для этой цели. Теперь я вижу, что я мог бы каким-то образом разветкить его... Так это путь?
Ответы
Ответ 1
GitHub не поддерживает запросы на pull для репозитория wiki, только основной репозиторий (это немного позор, IMO, но я могу это понять).
Вот интересный способ, которым один проект управляет обновлениями сообщества в своей вики, сохраняя при этом жесткий контроль, как и для исходного кода:
Мой предлагаемый рабочий процесс таков:
- Вручную создайте вилку вики Taffy в своей учетной записи Github:
- Создайте новый репозиторий в своей учетной записи github. Позвольте называть его "Taffy-Wiki".
- Клонирование реплики Taffy wiki на локальную машину где-нибудь:
git clone [email protected]:atuttle/Taffy.wiki.git
- Удалите исходный пул "origin" и добавьте репозиторий github в качестве нового "источника"
git remote rm origin
и git remote add origin [email protected]:<YOUR_USERNAME>/Taffy-Wiki.git
- Сделайте свои предложенные изменения локально, затем нажмите их на свою учетную запись github:
git push -u origin master
('-u origin master' требуется только первый раз, а затем просто git push
) - Отправьте билет официальному трекеру по проблеме Taffy с просьбой рассмотреть ваши изменения и объединить их. Не забудьте указать ссылку на свое репо и описать, что вы изменили.
- Goto # 2
(Из Как вы можете внести вклад в документацию Taffy.)
Если бы это был я, я бы создал проблему в основном репозитории (то есть тот, который вы разветвляли), предлагая обновление вики. Если проблемы не включены, отправьте электронное письмо о единственном, что я могу себе представить.
Ответ 2
Я применил к этому другой подход, который заключается в том, чтобы помещать один и тот же контент как в основной репозиторий, так и в вики. Это не всем по вкусу, но Risk-First - это в основном вики с несколькими страницами Jekyll в основном репо.
Это означает, что процесс pull-запрос/fork работает нормально. Тем не менее, после слияния pull-запроса я должен сделать дополнительный шаг: перетащить в мой локальный репозиторий, а затем перенести как в основной репозиторий, так и в вики, который git прекрасно поддерживает с несколькими источниками URL:
localhost:website robmoffat$ git remote show origin
* remote origin
Fetch URL: [email protected]:risk-first/website.git
Push URL: [email protected]:risk-first/website.wiki.git
Push URL: [email protected]:risk-first/website.git
HEAD branch: master
Чтобы добиться этого, я объединил коммиты из обоих репо следующим образом:
Как объединить два репозитория Git?
А затем нажмите на оба репозитория следующим образом:
Git - отправка кода на два пульта
Надеюсь, это кому-нибудь поможет.
Ответ 3
Если вы в порядке, чтобы иметь документ с одной страницей (мне действительно нравится больше), вы можете захватить README.MD
и поместить содержимое вики.
Не только он будет отслеживаться как часть обычного репозитория, он также будет отображаться на главной странице.
Можно начать с быстрой справки, а затем перейти к более подробному описанию/инструкциям, чтобы обычные пользователи сначала набрали более общую информацию.
Ответ 4
Вы не можете отозвать запрос, но вы можете открыть вопрос, вставить ссылку на свою вики-страницу и позволить им слиться с вашей вики-страницей.
Полные инструкции (СОЗДАНО ЗДЕСЬ: https://gist.github.com/larrybotha/10650410):
----------START КОПИРОВАНИЯ ИЗ ВЫШЕГО GITHUB GIST------------
Слияние изменений вики из репо Github
Это вдохновлено (или в основном скопировано) из романа Иванова " Как объединить изменения в Github Wiki из одного репозитория в другое ", и служит для того, чтобы в случае, если что-то случится с оригинальной статьей, информация здесь остается приятной и безопасной.
терминология
OREPO: оригинальное репо - репо, созданное или поддерживаемое владельцем
FREPO: разветвленное репо, которое предположительно имеет обновления в своей вики, еще не в OREPO
Содействие
Если вы хотите внести свой вклад в вики репо, который вы подписали, сделайте следующее:
- развить репо
- клонировать только вики на вашу машину:
$ g clone [FREPO].wiki.git
- внести изменения в свое локальное вики-репо
- внесите свои изменения в GitHub
Когда вы будете готовы сообщить автору, что у вас есть изменения, сделайте следующее:
- открыть вопрос на OREPO
- предоставьте прямую ссылку на ваш репозиторий Wiki Git для простоты слияния: например, [ FREPO ].wiki.git
Слияние изменений
Как владелец OREPO, вы теперь получили сообщение о том, что в вашей вики есть обновления на чужом FREPO.
Если изменения в вики были отменены из последних вики OREPO, вы можете сделать следующее:
$ git clone [OREPO].wiki.git
$ cd [OREPO].wiki.git
# squashing all FREPO changes
$ git pull [FREPO].wiki.git master
$ git push origin master
Если вики OREPO впереди того, откуда разветвляется FREPO, сделайте следующее:
$ git clone [OREPO].wiki.git
$ cd [OREPO].wiki.git
$ git fetch [FREPO] master:[FREPO-branch]
$ git checkout [FREPO-branch]
#checkout to last OREPO commit
$ git reset --hard [last-OREPO-commit-hash]
# do massive squash of all FREPO changes
$ git merge --squash [email protected]{1}
$ git commit -m "Wiki update from FREPO - [description]"
$ git checkout master
# cherry-pick newly squashed commit
$ git cherry-pick [OREPO-newly-squashed-commit]
$ git push
----------END КОПИЯ-ПАСТА ИЗ ВЫШЕГО GITHUB GIST------------