Недавно встретил подобную проблему, и не так много ответов.Большинство блогов покажут вам, как это сделать, исходя из концепции create-react-app
, но за исключением того, что вы более самостоятельны.
Вот быстрый:
Во-первых, убедитесь, что вы понимаете команды, которые вы выполняете.Излишне говорить, что сначала я тоже ошибался, поэтому ... gh-pages -d build
буквально означает, что вы хотите "опубликовать свою страницу" на основе папки "build /".Вот что -d
или --dir means.
read more here [install and use gh-pages-cli][1]. So start by either
making sure you have the folder "build/" or better point it to where
the files you want to bundle are located in your project.<br>
[Have a look at scripts in my package.json file][2] (incase you are
curious, the
-b`` означает ветку, из которой вы хотите «опубликовать»).
Если вышеприведенное не решит вашу проблему,точно так же как для меня, потому что команда успешно опубликована , но я все еще продолжал получать 404 Error
, когда я пытался получить доступ к странице на https://<my-username>/github.io/<my-repository>/
.
Так вот альтернатива, которую я использовал:
- Создайте новую ветку
gh-pages
из ветви, в которой есть версия проекта, которую вы хотите опубликовать. - Запустите
git push origin gh-pages
, чтобы отправить эту ветку в удаленный репозиторий, которыйразмещено на github. - Обратите внимание, что github настроен на публикацию любого кода проекта, который есть в этой ветке -
gh-pages
.Подтвердите это, щелкнув вкладку settings
в своем репо, и если вы перейдете вниз, вы увидите что-то вроде этого под заголовком "Github Pages". - Некоторые ключевые вещи, которые нужнопомните: во-первых, ваш
index.html
(основной шаблон) должен находиться непосредственно в корневой папке вашего проекта (а не в подпапках).Корневая папка моего проекта была /fast-React/
, поэтому я поместил свою индексную страницу в /fast-React/index.html
.И, во-вторых, зафиксируйте ваши связанные / собранные файлы.В большинстве проектов связанные * / build-файлы добавляются в .gitignore
, так что вам лучше их зафиксировать, по крайней мере, в пределах этой gh-pages
ветви. Вот почему - они должны быть выбраны вашим тегом <script>
, скорее всего.
Смотрите этот тестовый проект как , опубликованный здесь.Удачи.