Notion2Github - en

Notion2Github - ko

노션에서 깃헙으로의 자동 동기화


<aside> ⚠️ 유의사항: Notion2Github은 Jamie Alexandre이 만든 비공식 노션 API인 notion-py 프로젝트에 의존하고 있습니다. 공식 API가 아니기 때문에 안정적이지 않을 수 있습니다. 프로덕션 환경에서 사용하고자 한다면, 노션 공식 API 출시를 기다리는 것을 권장합니다.

</aside>


사용법


바로 시작하기

  1. github.com/{your_id}/{your_repo}/settings/secrets/actions 으로 이동합니다.

  2. 노션의 token_v2 를 레포지토리의 Secrets으로 설정합니다.

    https://s3-us-west-2.amazonaws.com/secure.notion-static.com/1ab66564-6667-4b94-a7d7-6021dfa0bcd4/readme-image-0.png

    How To Find Your Notion v2 Token - Red Gregory

    Encrypted secrets

  3. 레포지토리의 .github/workflows/**.yml 파일에 워크플로우를 생성합니다.

몇 가지 예시입니다.

워크플로우 예제

예제 1 (main 브랜치에 push & pull request 시에 실행)

name: Notion2Github
on:
  pull_request:
  push:
    branches:
      - main
jobs:
  auto-sync-from-notion-to-github:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Notion2Github
        uses: younho9/[email protected]
        with:
          database-url: '<https://www.notion.so/acc3dfd0339e4cacb5baae8673fddfad>'
          docs-directory: docs
        env:
          NOTION_TOKEN: ${{ secrets.NOTION_TOKEN }}

      - name: Format documents
        uses: creyD/[email protected]
        with:
          prettier_options: --write ./docs/**/*.md
          commit_message: 'docs: Update docs (auto)'
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

예제 2 (정해진 시간에 실행)

name: Notion2Github
on:
  schedule:
    - cron: '0 14 * * *'
jobs:
  auto-sync-from-notion-to-github:
    runs-on: ubuntu-latest
    steps:
      - name: Checkout code
        uses: actions/checkout@v2

      - name: Notion2Github
        uses: younho9/[email protected]
        with:
          database-url: '<https://www.notion.so/acc3dfd0339e4cacb5baae8673fddfad>'
          docs-directory: docs
        env:
          NOTION_TOKEN: ${{ secrets.NOTION_TOKEN }}

      - name: Format documents
        uses: creyD/[email protected]
        with:
          prettier_options: --write ./docs/**/*.md
          commit_message: 'docs: Update docs (auto)'
        env:
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

크론탭 설정에 유용한 사이트

실사용 예제

younho9/narkdown