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

Git ветвь: gh-pages

У меня есть репо на GitHub. Недавно я обнаружил страницы GitHub, и я хочу их использовать.
Я хотел бы создать эту новую ветку, а затем, когда мне нужно, либо зафиксировать на ветке master, либо в ветке gh-pages.

Как я могу это сделать? Мне нужно создать другую папку внутри моего репо?

4b9b3361

Ответ 1

Вы можете найти этот учебник полезным:

Настройка GitHub Pages "gh-pages" ветвь ветки и "master" как вложенные папки родительской папки проекта ( "гроссмейстер" ).

Для меня этот подход кажется более простым, чем при использовании git checkout gh-pages каждый раз, когда вы хотите редактировать содержимое gh-страниц. Дайте мне знать, что вы думаете ^ _ ^

Изменить: Я обновил ссылку на учебник - спасибо @Cawas. Старый tuotial (не рекомендуется) был https://gist.github.com/825950

Ответ 2

В более поздних версиях git есть альтернатива методу git symbolic-ref, который объяснил Чандру. Это позволяет избежать необходимости использовать команды нижнего уровня.

git checkout --orphan gh-pages
git rm -rf .

Ответ 3

В вашем локальном клоне,

git symbolic-ref HEAD refs/heads/gh-pages
rm .git/index 
git clean -fdx

Затем git checkout gh-pages и напишите ваши страницы. git push origin gh-pages, когда вы готовы опубликовать страницы.

Ответ 4

Создание страниц проекта вручную

Добавление нового набора страниц для проекта вручную - это простой если вы привыкли использовать командную строку git.

https://help.github.com/articles/creating-project-pages-manually

Ответ 5

Есть еще одно решение вашей проблемы: Забудьте о gh-pages и ветвлении; Поместите ваши статические файлы, которые, как предполагается, будут обслуживаться внутри каталога /docs, а затем перейдите к настройкам вашего проекта и сообщите github для обслуживания контента /docs.

Для получения дополнительной информации см. this

Ответ 6

Публиковать статический сайт следующим образом:

git subtree push --prefix www origin gh-pages

Где www - каталог корня doc, в котором находятся ваши статические файлы. Ваш статический сайт теперь доступен: https://[user_name].github.io/[repo_name]/

Ответ 7

Типичным способом является переход ветвей: git checkout master, если вы хотите работать с мастером и git checkout gh-pages, если хотите работать с gh-pages.

Начиная с git 2.5, вы можете одновременно проверять обе ветки (в разных каталогах). См. https://github.com/blog/2042-git-2-5-including-multiple-worktrees-and-triangular-workflows. Настройка через git worktree add -b gh-pages ../gh-pages origin/gh-pages.

Бонус: если содержимое подкаталога вашего тэга master является содержимым gh-pages, используйте script, предоставленный в https://github.com/X1011/git-directory-deploy.

Ответ 8

Являются ли ваши gh-страницы и главная ветка ТОЧНО одной и той же структурой папок? Если это так, почему вы хотите иметь две ветки? просто поддерживайте одну ветвь gh-pages! но если по какой-либо причине вы хотите иметь обе ветки, которые постоянно синхронизируются, лучше всего использовать git rebase. См. Здесь:
http://lea.verou.me/2011/10/easily-keep-gh-pages-in-sync-with-master/

Вы также можете вишневым выбрать только файлы, которые вам нужны, из мастера и нажимать их на gh-страницы, используя специальный прецедент git checkout. См. Здесь:
http://oli.jp/2011/github-pages-workflow/#gh-pages-workflow
http://nicolasgallagher.com/git-checkout-specific-files-from-another-branch/

Чтобы справиться с той же проблемой, я пришел к выводу, что gh-страницы обычно будут иметь другую базу кода, чем master. Другими словами, gh-страницы должны включать только содержимое папки dist/build/publish вашего проекта, тогда как мастер будет включать ваши файлы конфигурации, неустановленные сценарии и стили и т.д.

Мое предложение состояло в том, чтобы создать gh-страницы как ветку --orphan и включить в нее только готовый к публикации материал. Вы должны клонировать от своего хозяина в другом локальном каталоге, используйте git checkout --orphan gh-pages для создания gh-страниц, а затем удалите все ненужные файлы с помощью git rm -rf .. Оттуда вы можете продолжить и нажать на gh-страницы после добавления ваших файлов только для публикации. Подробнее см. В документах Github:
https://help.github.com/articles/creating-project-pages-manually/

Удачи.