> [!date] published: 2021-11-09 Github 블로그로 옮긴지는 오래 되었지만... 이번에 블로그를 정리한 김에 시작부터 차근차근 정리해보려고 합니다. ## 🚀 Hexo Github 블로그를 만들기 위해서 사용하는 프레임워크는 Hexo 말고도 Jekyll, Hugo 등 여러가지가 있다. 하지만 내가 Hexo를 선택한 이유는 무엇보다도 Jekyll의 Ruby, Hugo의 Go 보다는 Hexo의 JS에 더 익숙했기 때문이다. 각각의 장점이 있으므로 이것저것 체험해 보고 잘 맞는 도구를 사용하는게 좋을 것 같다. ## 🚀 Hexo 설치하기 Hexo를 설치하기 위해서는 Node.js와 Git이 설치되어 있어야 한다. (설치 링크 : [Node.js](https://nodejs.org/en/), [Git](https://git-scm.com/)) 설치를 완료하면 비로소 Hexo를 설치할 수 있다. ```shell npm install -g hexo-cli ``` 다음으로는 hexo 블로그가 될 폴더를 초기화 해주어야 한다. ```shell hexo init 블로그폴더이름 cd 블로그폴더이름 npm install ``` 이렇게 하면 블로그 폴더 내부에 여러가지 파일들이 생성되는데 자주 사용한 것들을 정리하면 다음과 같다. ``` . ├── _config.yml : 사이트 전반적인 설정 파일 ├── scaffolds : post의 기본 형태(템플릿)를 설정할 수 있다. 내부 파일을 원하는대로 바꿔주면 된다. ├── source : post와 같은 사이트 콘텐츠들이 있는 폴더 ├── themes : 테마 폴더 ``` 이후에 설명하겠지만 원격서버를 돌려서 설치가 잘 되었는지 확인해 볼 수 있다. ```shell hexo s ``` ## 🚀 Github page와 연결하기 연결하기 위해서는 사이트와 연결할 새로운 repository를 만들어줘야 한다. 해당 내용은 다른 곳에도 많이 정리되어 있기도 하고, [공식문서](https://docs.github.com/en/pages)에 아주 자세히 설명되어 있기 때문에 따로 정리하지는 않았다. 설명을 따라서 사이트와 연결할 수 있는 repository를 준비한다. 다음으로는 hexo-deployer-git을 설치해준다. ```shell npm install hexo-deployer-git --save ``` 그 다음 `_config.yml` 파일에서 아래의 내용으로 수정해준다. ```yaml # Deployment ## Docs: https://hexo.io/docs/one-command-deployment deploy: type: git repo: https://github.com/yoouyeon/yoouyeon.github.io branch: master ``` 이때 repo에는 .git으로 끝나는 url이 아닌 주소창에 보이는 그 url을 넣어줘야함에 주의한다. 그리고 정적파일을 생성한 뒤에, deploy하면 블로그 배포가 완료된다. ```shell hexo d -g ``` ## 🚀 자주 쓰이는 명령어 정리하기 ### ✨ post 생성 ```shell hexo new "new post title" ``` 포스트 제목에 띄어쓰기가 없는 경우에는 따옴표로 묶어줄 필요 없지만, 띄어쓰기가 있는 경우에는 **반드시** 따옴표로 묶어주어야 공백 부분이 `-`로 대체된 제목의 파일이 생성된다. ### ✨ 로컬 서버 구동 ```shell hexo server (또는) hexo s ``` post를 수정하거나 테마를 바꾸는 등의 변경사항이 있을 경우에 로컬 서버에서 돌려본 후에 배포하는 것이 좋다. 서버를 구동한 뒤에 파일을 수정하면 즉시 그 결과가 반영되어 확인할 수 있다. ### ✨ 정적 파일 생성 ```shell hexo generate (또는) hexo g ``` ### ✨ 배포 ```shell hexo deploy (또는) hexo d ``` 보통은 정적파일 생성 후에 배포를 하므로 `-g (-generate)` 옵션을 넣어주면 정적파일 생성과 배포를 한번에 할 수 있다. ```shell hexo d -g ```