Skip to content

Latest commit

ย 

History

History
356 lines (270 loc) ยท 8.62 KB

File metadata and controls

356 lines (270 loc) ยท 8.62 KB

GitHub Pages ้™ๆ€็ฝ‘็ซ™

ไป€ไนˆๆ˜ฏ GitHub Pages๏ผŸ

GitHub Pages ๆ˜ฏๅ…่ดน็š„้™ๆ€็ฝ‘็ซ™ๆ‰˜็ฎกๆœๅŠก๏ผŒๅฏไปฅ็›ดๆŽฅไปŽไป“ๅบ“้ƒจ็ฝฒ็ฝ‘็ซ™ใ€‚

้€‚็”จๅœบๆ™ฏ๏ผš

  • ไธชไบบๅšๅฎข
  • ้กน็›ฎๆ–‡ๆกฃ
  • ไฝœๅ“้›†ๅฑ•็คบ
  • ๅญฆไน ็ฌ”่ฎฐ

ๅˆ›ๅปบ็ฝ‘็ซ™๏ผˆๅ›พๆ–‡่ฏฆ่งฃ๏ผ‰

ๆ–นๆณ•ไธ€๏ผš็›ดๆŽฅๅœจ main ๅˆ†ๆ”ฏ๏ผˆๆœ€็ฎ€ๅ•๏ผ‰

็ฌฌ 1 ๆญฅ๏ผšๅˆ›ๅปบ index.html ๆ–‡ไปถ

ๅœจไป“ๅบ“ไธญๅˆ›ๅปบไธ€ไธช index.html ๆ–‡ไปถ๏ผš

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>ๆˆ‘็š„็ฝ‘็ซ™</title>
</head>
<body>
    <h1>ๆฌข่ฟŽๆฅๅˆฐๆˆ‘็š„็ฝ‘็ซ™๏ผ</h1>
    <p>่ฟ™ๆ˜ฏๆˆ‘็š„็ฌฌไธ€ไธช GitHub Pages ็ฝ‘็ซ™ใ€‚</p>
</body>
</html>

็ฌฌ 2 ๆญฅ๏ผšๆไบคๅนถๆŽจ้€

git add index.html
git commit -m "ๆทปๅŠ ้ฆ–้กต"
git push

็ฌฌ 3 ๆญฅ๏ผšๅฏ็”จ GitHub Pages

  1. ๆ‰“ๅผ€ไป“ๅบ“้กต้ข
  2. ็‚นๅ‡ป Settings ๆ ‡็ญพ
  3. ๅทฆไพง่œๅ•ๆ‰พๅˆฐ Pages
  4. Source ้€‰ๆ‹ฉ main ๅˆ†ๆ”ฏ
  5. ็‚นๅ‡ป Save
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  GitHub Pages                                โ”‚
โ”‚                                             โ”‚
โ”‚  Build and deployment                        โ”‚
โ”‚                                             โ”‚
โ”‚  Source: [Deploy from a branch โ–ผ]            โ”‚
โ”‚                                             โ”‚
โ”‚  Branch:                                     โ”‚
โ”‚  [main โ–ผ]  [/ (root) โ–ผ]                     โ”‚
โ”‚                                             โ”‚
โ”‚  โ˜‘ Save  โ† ็‚นๅ‡ปไฟๅญ˜                          โ”‚
โ”‚                                             โ”‚
โ”‚  Your site is live at                        โ”‚
โ”‚  https://username.github.io/repo-name/      โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

็ฌฌ 4 ๆญฅ๏ผš่ฎฟ้—ฎ็ฝ‘็ซ™

้ƒจ็ฝฒๅฎŒๆˆๅŽ๏ผˆ้€šๅธธ้œ€่ฆ 1-2 ๅˆ†้’Ÿ๏ผ‰๏ผŒ่ฎฟ้—ฎ๏ผš

https://ไฝ ็š„็”จๆˆทๅ.github.io/ไป“ๅบ“ๅ/

ๆ–นๆณ•ไบŒ๏ผšไฝฟ็”จ docs ็›ฎๅฝ•

็ฌฌ 1 ๆญฅ๏ผšๅˆ›ๅปบ docs ็›ฎๅฝ•

mkdir docs

็ฌฌ 2 ๆญฅ๏ผšๅˆ›ๅปบ index.html

echo "<h1>Hello World</h1>" > docs/index.html

็ฌฌ 3 ๆญฅ๏ผšๆไบคๅนถๆŽจ้€

git add docs/
git commit -m "ๆทปๅŠ ๆ–‡ๆกฃ็ซ™็‚น"
git push

็ฌฌ 4 ๆญฅ๏ผš้…็ฝฎ Pages

  1. ๆ‰“ๅผ€ไป“ๅบ“ Settings โ†’ Pages
  2. Source ้€‰ๆ‹ฉ main ๅˆ†ๆ”ฏ็š„ /docs ็›ฎๅฝ•
  3. ็‚นๅ‡ป Save

ๆ–นๆณ•ไธ‰๏ผšไฝฟ็”จ GitHub Actions

็ฌฌ 1 ๆญฅ๏ผš้…็ฝฎ Pages

  1. ๆ‰“ๅผ€ไป“ๅบ“ Settings โ†’ Pages
  2. Source ้€‰ๆ‹ฉ GitHub Actions
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  GitHub Pages                                โ”‚
โ”‚                                             โ”‚
โ”‚  Build and deployment                        โ”‚
โ”‚                                             โ”‚
โ”‚  Source: [GitHub Actions โ–ผ]                  โ”‚
โ”‚                                             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

็ฌฌ 2 ๆญฅ๏ผšๅˆ›ๅปบๅทฅไฝœๆตๆ–‡ไปถ

ๅˆ›ๅปบ .github/workflows/pages.yml๏ผš

name: Deploy to Pages

on:
  push:
    branches: [main]

permissions:
  contents: read
  pages: write
  id-token: write

jobs:
  build:
    runs-on: ubuntu-latest
    steps:
    - uses: actions/checkout@v4
    - run: npm ci && npm run build
    - uses: actions/upload-pages-artifact@v3
      with:
        path: ./dist
        
  deploy:
    needs: build
    runs-on: ubuntu-latest
    environment:
      name: github-pages
      url: ${{ steps.deployment.outputs.page_url }}
    steps:
    - id: deployment
      uses: actions/deploy-pages@v4

่‡ชๅฎšไน‰ๅŸŸๅ

่ดญไนฐๅŸŸๅ

ๆŽจ่ๅŸŸๅๆœๅŠกๅ•†๏ผš

  • ้˜ฟ้‡Œไบ‘
  • ่…พ่ฎฏไบ‘
  • ไธ‡็ฝ‘
  • GoDaddy

่ฎพ็ฝฎๆญฅ้ชค

็ฌฌ 1 ๆญฅ๏ผšๆทปๅŠ  CNAME ๆ–‡ไปถ

ๅœจไป“ๅบ“ๆ น็›ฎๅฝ•ๅˆ›ๅปบ CNAME ๆ–‡ไปถ๏ผš

echo "yourdomain.com" > CNAME
git add CNAME
git commit -m "ๆทปๅŠ ่‡ชๅฎšไน‰ๅŸŸๅ"
git push

็ฌฌ 2 ๆญฅ๏ผš้…็ฝฎ DNS

ๅœจๅŸŸๅๆœๅŠกๅ•†ๆŽงๅˆถๅฐๆทปๅŠ ๏ผš

่ฎฐๅฝ•็ฑปๅž‹ ไธปๆœบ่ฎฐๅฝ• ่ฎฐๅฝ•ๅ€ผ
CNAME @ username.github.io
CNAME www username.github.io

็ฌฌ 3 ๆญฅ๏ผšๅฏ็”จ HTTPS

  1. ๆ‰“ๅผ€ Settings โ†’ Pages
  2. ๅ‹พ้€‰ Enforce HTTPS
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  GitHub Pages                                โ”‚
โ”‚                                             โ”‚
โ”‚  Custom domain: [yourdomain.com]            โ”‚
โ”‚                                             โ”‚
โ”‚  โ˜‘ Enforce HTTPS  โ† ๅ‹พ้€‰ๅฏ็”จ                โ”‚
โ”‚                                             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ไฝฟ็”จ Jekyll๏ผˆๅ†…็ฝฎๅทฅๅ…ท๏ผ‰

Jekyll ๆ˜ฏ GitHub Pages ๅ†…็ฝฎ็š„้™ๆ€็ซ™็‚น็”Ÿๆˆๅ™จ๏ผŒๅฏไปฅไฝฟ็”จ Markdown ๅ†™ไฝœใ€‚

ๅŸบๆœฌ้…็ฝฎ

ๅˆ›ๅปบ _config.yml ๆ–‡ไปถ๏ผš

title: ๆˆ‘็š„ๅšๅฎข
description: ไธ€ไธช็ฎ€ๅ•็š„ๅšๅฎข
theme: minima

ๅˆ›ๅปบๆ–‡็ซ 

ๅœจ _posts ็›ฎๅฝ•ๅˆ›ๅปบ Markdown ๆ–‡ไปถ๏ผš

---
layout: post
title: "Hello World"
date: 2024-01-01
categories: blog
---

่ฟ™ๆ˜ฏๆˆ‘็š„็ฌฌไธ€็ฏ‡ๆ–‡็ซ ใ€‚

## ๆ ‡้ข˜

ๆญฃๆ–‡ๅ†…ๅฎน...

ไธป้ข˜้€‰ๆ‹ฉ

# _config.yml
remote_theme: pages-themes/cayman@v0.2.0
plugins:
  - jekyll-remote-theme

ๆŸฅ็œ‹้ƒจ็ฝฒ็Šถๆ€

ๆŸฅ็œ‹ Pages ้ƒจ็ฝฒๅކๅฒ

  1. ๆ‰“ๅผ€ไป“ๅบ“ Actions ๆ ‡็ญพ
  2. ็‚นๅ‡ป pages build and deployment ๅทฅไฝœๆต
  3. ๆŸฅ็œ‹้ƒจ็ฝฒ็Šถๆ€
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Actions                                     โ”‚
โ”‚                                             โ”‚
โ”‚  workflows / pages build and deployment      โ”‚
โ”‚                                             โ”‚
โ”‚  โœ“ Deploy to GitHub Pages                    โ”‚
โ”‚    โœ“ build                                   โ”‚
โ”‚    โœ“ deploy                                  โ”‚
โ”‚                                             โ”‚
โ”‚  ้ƒจ็ฝฒๆ—ถ้—ด: 2 ๅˆ†้’Ÿๅ‰                          โ”‚
โ”‚  ็Šถๆ€: ๆˆๅŠŸ โœ“                                โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ๆŸฅ็œ‹ Pages ่ฎพ็ฝฎ

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  GitHub Pages                                โ”‚
โ”‚                                             โ”‚
โ”‚  Your site is published at                   โ”‚
โ”‚  https://username.github.io/repo-name/      โ”‚
โ”‚                                             โ”‚
โ”‚  Last deployment: 2 minutes ago              โ”‚
โ”‚  Deployment status: โœ“ Success               โ”‚
โ”‚                                             โ”‚
โ”‚  [Visit site]  โ† ็‚นๅ‡ป่ฎฟ้—ฎ็ฝ‘็ซ™               โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

้™ๅˆถ

้™ๅˆถ ่ฏดๆ˜Ž
ไป“ๅบ“ๅคงๅฐ 1GB
ๅ‘ๅธƒ็ซ™็‚นๅคงๅฐ 1GB
ๅธฆๅฎฝ 100GB/ๆœˆ
ๆž„ๅปบๆฌกๆ•ฐ ๆฏๅฐๆ—ถๆœ€ๅคš 10 ๆฌก

ๅธธ็”จๆก†ๆžถ้ƒจ็ฝฒ

React (Create React App)

- name: Build
  run: npm run build
  
- name: Deploy
  uses: peaceiris/actions-gh-pages@v3
  with:
    github_token: ${{ secrets.GITHUB_TOKEN }}
    publish_dir: ./build

Vue

- name: Build
  run: npm run build
  
- name: Deploy
  uses: peaceiris/actions-gh-pages@v3
  with:
    github_token: ${{ secrets.GITHUB_TOKEN }}
    publish_dir: ./dist

ๅฎž่ทต็ปƒไน 

็ปƒไน ๏ผšๅˆ›ๅปบไฝ ็š„็ฌฌไธ€ไธช GitHub Pages ็ฝ‘็ซ™

ไปปๅŠก 1๏ผšๅˆ›ๅปบไป“ๅบ“

  1. ๅœจ GitHub ๅˆ›ๅปบๆ–ฐไป“ๅบ“ my-first-website
  2. ๅ…‹้š†ๅˆฐๆœฌๅœฐ

ไปปๅŠก 2๏ผšๅˆ›ๅปบ็ฝ‘็ซ™ๆ–‡ไปถ

  1. ๅˆ›ๅปบ index.html ๆ–‡ไปถ
  2. ่พ“ๅ…ฅ็ฎ€ๅ•็š„ HTML ไปฃ็ 
  3. ๆไบคๅนถๆŽจ้€

ไปปๅŠก 3๏ผšๅฏ็”จ GitHub Pages

  1. ๆ‰“ๅผ€ไป“ๅบ“ Settings โ†’ Pages
  2. Source ้€‰ๆ‹ฉ main ๅˆ†ๆ”ฏ
  3. ็‚นๅ‡ป Save

ไปปๅŠก 4๏ผš่ฎฟ้—ฎ็ฝ‘็ซ™

  1. ็ญ‰ๅพ… 1-2 ๅˆ†้’Ÿ
  2. ่ฎฟ้—ฎ https://ไฝ ็š„็”จๆˆทๅ.github.io/my-first-website/
  3. ็œ‹ๅˆฐ็ฝ‘็ซ™ๅ†…ๅฎน่กจ็คบๆˆๅŠŸ

้ชŒ่ฏๆ–นๆณ•๏ผš

  • ็ฝ‘็ซ™ๅฏไปฅๆญฃๅธธ่ฎฟ้—ฎ
  • ๆ˜พ็คบไฝ ๅˆ›ๅปบ็š„ๅ†…ๅฎน

ไธ‹ไธ€ๆญฅ

GitHub Projects ้กน็›ฎ็ฎก็† โ†’