Ответ 1
Из того, что я понимаю, вам придется переключиться на локальную копию gh-страниц. Объедините мастер, а затем нажмите gh-pages
git checkout gh-pages
git merge master
git push origin gh-pages
Я создал простую ветвь gh-pages на github и в своем локальном репо. Я использовал автоматический генератор страниц для создания 5 файлов, которые он использует: images javascripts stylesheets index.html params.json
Я потянул это на свое местное репо и добавил js-markdown-extra.js в javascripts и отредактировал index.html, чтобы заменить раздел "контент" на скомпилированный README.md, созданный библиотекой меток.
Вставка в манекен README.md показала, что он отлично работает.
Затем я хочу просто нажать мой локальный мастер на (не на) ветвь удаленных gh-страниц, не изменяя 5 файлов веб-сайта.
Я не нашел способ сделать это. Мне сказали через http://oli.jp/2011/github-pages-workflow/, что это сработает: git push -f origin master: gh-pages
Я попробовал это на тестовом репо, и он не удался, в результате получилось 404 (нажатие локальных gh-страниц, сделанных для трюка уценки, исправлено)
Итак, есть ли способ вставить master, как подмножество gh-страниц?
В противном случае существует ли простой способ объединить мастер в gh-страницы локально, не удаляя 5 файлов веб-сайта?
Я знаю, как "зеркалировать" все это, так что 5 файлов будут в репо, но я бы хотел избежать этого беспорядка.
Из того, что я понимаю, вам придется переключиться на локальную копию gh-страниц. Объедините мастер, а затем нажмите gh-pages
git checkout gh-pages
git merge master
git push origin gh-pages
Если я правильно вас понимаю, кажется, что вы создали фиктивный Readme и другие файлы на своей локальной ветки мастера, но предназначались для их включения в ветвь gh-pages. Если это так, самым безопасным вариантом является объединение основной ветки в ветку gh-pages (при условии, что у вас нет других файлов на главном сервере, которых вы бы, скорее всего, не имели на ветке gh-pages). Команда, предлагаемая git push -f origin master:gh-pages
, подтолкнет вашу локальную ведущую ветвь к ветке gh-pages. Я не совсем уверен, что вы имеете в виду, но в vs на, поскольку имена ветвей - это просто указатели в git.
Вот хороший отчет рабочий процесс github, который я использовал, чтобы понять, как взаимодействовать между ветвями master и gh-pages.
paul irish от google порекомендовал его в комментариях к другой статье - у него были превосходные примеры.
как насчет использования поддерева git, чтобы служить вашей веткой gh-pages
?
git checkout master
git subtree push --prefix . origin gh-pages
в соответствии с документацией git-subtree на исходный код:
Поддеревья позволяют включать подпроекты в подкаталог основного проекта, опционально включая всю историю подпроекта.
В нашем случае, мы можем быть в состоянии псевдоним один и тот же путь (корневой путь; .
) в качестве виртуальной копии мастер - ветки (я не проверял, хотя).
кстати, я узнал о поддеревьях после столкновения с этой сущностью кобиизмом.