Git Product home page Git Product logo

github-pages's Introduction

Deploy Vite project jako GitHub Pages

Návod je pro nás účastníky Czechitas kurzů React nebo Digitální akademie: Web, abychom si mohli své projekty založené pomocí příkazu

npm init kodim-app@latest nazev-projektu react

publikovat na GitHub Pages.

Níže uvedený postup je užitečný za předpokladu, že dokážeme u sebe na localhostu projekt sestavit pomocí příkazu npm run build a následně jej publikovat na svůj GitHub účet.

Před pushnutím do repozitáře na svém GitHub účtu

  1. V souboru .gitignote zakomentujeme pomocí znaku # řádek č. 3, na kterém se nachází package-lock.json

    screenshot

  2. V souboru vite.config.js před řádek č. 5 (root: './src') přidáme řádek base: '/name-repository/' a názvem svého repozitáře, na kterém chceme deploy GitHub Pages, v mém případě

    gh-pages base: '/gh-pages/'.

  3. Stále v souboru vite.config.js přidáme cestu o adresář výš ../ u publicDir:

    publicDir: '../../public',

    screenshot

Soubory .gitignote a vite.config.js nezapomeneme uložit.

Po úspěšném pushnutí svého repozitáře na GitHub účet

  1. V nastavení svého repozitáře přes menu Settings > Pages > u Source Deploy from a branch vybereme GitHubActions

    screenshot

  2. Pod tím klikneme na create your own, kde na stránce pojmenujeme libovolným názvem soubor, ale musí být s příponou .yml, v mém případě main.yml

    screenshot

  3. Vymažeme jeho obsah a vložíme níže uvedený kód, který je převzatý z oficiálních stránek Vite.

    # Simple workflow for deploying static content to GitHub Pages
    name: Deploy static content to Pages
    
    on:
      # Runs on pushes targeting the default branch
      push:
        branches: ['main']
    
      # Allows you to run this workflow manually from the Actions tab
      workflow_dispatch:
    
    # Sets the GITHUB_TOKEN permissions to allow deployment to GitHub Pages
    permissions:
      contents: read
      pages: write
      id-token: write
    
    # Allow one concurrent deployment
    concurrency:
      group: 'pages'
      cancel-in-progress: true
    
    jobs:
      # Single deploy job since we're just deploying
      deploy:
        environment:
          name: github-pages
          url: ${{ steps.deployment.outputs.page_url }}
        runs-on: ubuntu-latest
        steps:
          - name: Checkout
            uses: actions/checkout@v4
          - name: Set up Node
            uses: actions/setup-node@v3
            with:
              node-version: 18
              cache: 'npm'
          - name: Install dependencies
            run: npm install
          - name: Build
            run: npm run build
          - name: Setup Pages
            uses: actions/configure-pages@v3
          - name: Upload artifact
            uses: actions/upload-pages-artifact@v2
            with:
              # Upload dist repository
              path: './dist'
          - name: Deploy to GitHub Pages
            id: deployment
            uses: actions/deploy-pages@v2
    

    a změny commitneme.

    V hlavním adresáři budeme mít tuto cestu k souboru .github/workflows/main.yml

  4. Vrátíme se zpět do svého repozitáře a pokud byly naše stránky úspěšně deploynuty, zobrazí se nám zelená ✔.

    screenshot

  5. Jako poslední krok u About kliknutí na ikonu nastavení ⚙ zatrhneme "Use your GitHub Pages website" a změny uložíme.

    screenshot

Nyní se můžeme těšit ze svého projektu, který jsme dokázaly publikovat přes GitHub Pages 🥳.

https://wendykr.github.io/gh-pages/

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.