명령줄에서 블로그 구축 및 실행

14998 단어 Node.jsGitHubHexo
GitHub Pages 및 Hexo를 사용하여 명령줄만 사용(Bash on Ubuntu의 터미널)
블로그를 구축, 게시 및 편집합니다.

선결 조건

  • Windows
  • Bash on Ubuntu
  • Mac의 경우
  • 표준 단말기
  • 0.github에서 <username>.github.io 저장소 준비

  • 을 사용자 이름으로 바꾸기
  • 제 경우는sakkuntyo입니다.github.이것은 io라는 저장소입니다.
  • 처음 만들어진 빈 저장소라면 그 후의 구축 작업은 순조롭게 끝날 것이다.
  • 명령으로 이 절차를 진행하려면gem에 설치할 수 있는hub명령을 사용하고github에 저장소를 만들 수 있습니다.
  • 1.node 설치


    다음 명령은 nvm를 사용하여 nodejs를 설치합니다.
    $ git clone https://github.com/creationix/nvm ~/.nvm
    $ source ~/.nvm/nvm.sh
    $ echo "source ~/.nvm/nvm.sh" >> ~/.bashrc
    $ nvm install 10.16.3
    
    노드js의 10.16.3을 사용했지만 8.11.0에서도 동작을 확인할 수 있다.

    2. github 저장소 닫기


    다음 명령을 사용하여github의 저장소를 닫습니다.
    $ git clone https://github.com/<username>/<username>.github.io
    $ cd <username>.github.io # 
    

    3. hexo-cli 설치


    nodejs에 첨부된 npm 명령을 사용하여 설치합니다.
    $ npm install -g hexo
    $ hexo version
    hexo-cli: 2.0.0
    os: Linux 4.4.0-18362-Microsoft linux x64
    http_parser: 2.8.0
    node: 10.16.3
    v8: 6.8.275.32-node.54
    uv: 1.28.0
    zlib: 1.2.11
    brotli: 1.0.7
    ares: 1.15.0
    modules: 64
    nghttp2: 1.39.2
    napi: 4
    openssl: 1.1.1c
    icu: 64.2
    unicode: 12.1
    cldr: 35.1
    tz: 2019a
    

    4. 프로젝트 만들기


    hexo 명령을 사용하여 항목을 만듭니다.
    hexo init 명령에서 지정한 항목 이름은 프로젝트의 폴더 이름입니다.
    당장 꺼, 뭐든지 돼.
    # hexo init <任意のプロジェクト名>
    # mv ./<任意のプロジェクト名>/* ./
    # mv ./<任意のプロジェクト名>/.* ./
    # rm -r <任意のプロジェクト名>
    

    5._config.yml 편집


    _config.yml에서 최소한의 설정을 하고 각자의 줄을 바꿉니다.
    vim에서 편집하기 어려우면 "notepad_config.yml"등에서 다른 편집기를 열어 편집하십시오.
    닫을 때 키보드에서 놓지 말고 Alt + F4 등으로 끄세요.
    수첩->notepad_config.yml
    vscode -> code _config.yml
    $ vim _config.yml
    
  • 블로그 정보
  • language:로 시작하는 줄을 language:ja
  • 로 변경
  • 내부에 사용된 자체 URL
  • "url:"로 시작하는 줄을 "url:https:/.github.io/"
  • 배포 대상 설정
  • "type:"으로 시작하는 줄을 "type:git"
  • 로 변경합니다.
  • 상기 줄의 다음 줄에'repo:https://github.com/\/.github.io'를 추가하여hexo 명령으로 배치할 때의 대상이 되는 원격 저장소입니다.
  • 상기 줄의 다음 줄에'branch:master'를 추가하여hexo 명령으로 배치할 때 푸시하는 지점이 됩니다.
  • 상기 줄의 다음 줄에'message:hexo deploy'를 추가하여hexo 명령으로 배치할 때 제출 메시지가 됩니다.
  • 다음은 개작 후의 예이다
    # Hexo Configuration
    ## Docs: https://hexo.io/docs/configuration.html
    ## Source: https://github.com/hexojs/hexo/
    
    # Site
    title: さっくんちょブログ
    subtitle:
    description:
    keywords:
    author: 佐々木 大輔
    language: ja
    timezone:
    
    # URL
    ## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
    url: http://github.com/sakkuntyo/sakkuntyo.github.com
    root: /
    permalink: :year/:month/:day/:title/
    permalink_defaults:
    
    # Directory
    source_dir: source
    public_dir: public
    tag_dir: tags
    archive_dir: archives
    category_dir: categories
    code_dir: downloads/code
    i18n_dir: :lang
    skip_render:
    
    # Writing
    new_post_name: :title.md # File name of new posts
    default_layout: post
    titlecase: false # Transform title into titlecase
    external_link: true # Open external links in new tab
    filename_case: 0
    render_drafts: false
    post_asset_folder: false
    relative_link: false
    future: true
    highlight:
      enable: true
      line_number: true
      auto_detect: false
      tab_replace:
    
    # Home page setting
    # path: Root path for your blogs index page. (default = '')
    # per_page: Posts displayed per page. (0 = disable pagination)
    # order_by: Posts order. (Order by date descending by default)
    index_generator:
      path: ''
      per_page: 10
      order_by: -date
    
    # Category & Tag
    default_category: uncategorized
    category_map:
    tag_map:
    
    # Date / Time format
    ## Hexo uses Moment.js to parse and display date
    ## You can customize the date format as defined in
    ## http://momentjs.com/docs/#/displaying/format/
    date_format: YYYY-MM-DD
    time_format: HH:mm:ss
    
    # Pagination
    ## Set per_page to 0 to disable pagination
    per_page: 10
    pagination_dir: page
    
    # Extensions
    ## Plugins: https://hexo.io/plugins/
    ## Themes: https://hexo.io/themes/
    theme: landscape
    
    # Deployment
    ## Docs: https://hexo.io/docs/deployment.html
    deploy:
      type: git
      repo: https://github.com/sakkuntyo/sakkuntyo.github.io
      branch: master
      message: hexo deploy!
    

    6. 마스터 지점에 배포


    .github.io 메모리 라이브러리에서 마스터 지점으로 전송할 때
    github, https://을 통해.github.io에 배치합니다.
    hexo deploy 명령을 사용하여 배치할 원본을 생성하고master에 제출하고 전송합니다.
    $ hexo deploy -g
    INFO  Start processing
    INFO  Files loaded in 114 ms
    INFO  Generated: 2019/09/18/hello-world/index.html
    INFO  Generated: archives/2019/index.html
    INFO  Generated: index.html
    INFO  Generated: archives/index.html
    INFO  Generated: archives/2019/09/index.html
    INFO  5 files generated in 176 ms
    ERROR Deployer not found: git
    
    아이고, 나 git 못 찾을 것 같아.
    hexo를 배치할 때 사용하는git는hexo-deployer-git 도구와 같습니다.
    다음 명령을 사용하여 설치합니다.
    $ npm install hexo-deployer-git --save
    
    hexo deploy 명령을 다시 사용하여 배치합니다.
    github 사용자 이름과 비밀번호가 들리면 입력하고 입력하십시오.
    $ hexo deploy -g
    INFO  Start processing
    INFO  Files loaded in 113 ms
    INFO  0 files generated in 156 ms
    INFO  Deploying: git
    INFO  Clearing .deploy_git folder...
    INFO  Copying files from public folder...
    INFO  Copying files from extend dirs...
    On branch master
    nothing to commit, working tree clean
    Username for 'https://github.com': sakkuntyo
    Password for 'https://[email protected]':
    Counting objects: 46, done.
    Delta compression using up to 12 threads.
    Compressing objects: 100% (36/36), done.
    Writing objects: 100% (46/46), 507.96 KiB | 10.58 MiB/s, done.
    Total 46 (delta 3), reused 0 (delta 0)
    remote: Resolving deltas: 100% (3/3), done.
    To https://github.com/sakkuntyo/sakkuntyo.github.io
     * [new branch]      HEAD -> master
    Branch 'master' set up to track remote branch 'master' from 'https://github.com/sakkuntyo/sakkuntyo.github.io'.
    INFO  Deploy done: git
    

    7. 배포 확인


    https://.github.검사
  • Windows
  • Win+R 키를 눌러 "microsoft-edge:https://.github.io“
  • Mac의 경우
  • open https://.github.io
  • 닫을 때 키보드에서 놓지 말고 Alt + F4 등으로 끄세요.

    페이지를 볼 수 있습니다.

    8. 편집 브랜치 작성 및 푸시


    마스터로 전송된 저장소는 내용만 표시합니다
    hexo init로 만든 디렉터리가 사라지면 같은 프로젝트에서 다시 투고할 수 없습니다.
    따라서 게시물 작업에 대한 별도의 지점을 만듭니다.
    pull 아까 밀었던 마스터 지점.
    $ git pull
    
    편집 지점을 만들고 모든 파일을 위탁 관리 위치로 전송합니다.
    $ git checkout -b edit
    $ git add --all
    $ git commit -m "編集用ブランチ作成"
    $ git push origin HEAD
    
    프로젝트 폴더를 삭제하거나 다른 PC 등에서 글을 편집할 때 다음 명령을 사용하여 편집 지점을 닫고 나중에 조작하십시오.
    $ git clone https://github.com/<username>/<username>.github.io -b edit
    $ cd <username>.github.io
    $ git branch
    * edit
    

    9. 글 추가


    hexo new 명령을 통해 글을 추가할 수 있습니다.
    추가 기사는~/입니다.github.io/source/_posts/아래에서 만듭니다.
    $ hexo new "テスト"
    INFO  Created: ~/<username>.github.io/source/_posts/テスト.md
    
    추가된 글을 편집합니다.
    표시를 통해 설명할 수 있습니다.
    $ vim source/_posts/テスト.md
    
    다음은 개작 후의 예이다
    ---
    title: テスト
    date: 2019-09-21 12:0:0
    tags:
    ---
    
    # テスト
    
    - テスト
      - テスト
    
    ## テスト2
    
    ```bash
    $ echo "Hello World"
    \```
    
    ### テスト3
    
    |a|b|
    |-|-|
    |c|d|
    
    배치
    $ hexo deploy -g
    
    https://.github.io를 다시 확인하고 배치된 것을 확인합니다.

    확인 후 추가된 글을 편집 지점의 관리 대상으로 밀어넣고 저장합니다.
    $ git branch
    * edit
      master
    $ git add source
    $ git commit -m "テスト記事を追加"
    $ git push origin HEAD
    

    좋은 웹페이지 즐겨찾기