Hexo를 이용한 GitHub Blog 만들기

Hexo란 간편하게 만들 수 있는 블로그 프레임 워크다. 더 많은 정보는 공식 홈페이지 Hexo 에서 볼 수 있다. Hexo로 블로그를 만드는 방법을 소개 하려 글을 쓴다. Hexo를 사용해서 깃에 블로그를 만들기 위해서는 github 계정이 있어야 하고, node가 깔려한다. 링크를 타고 가서 nodejs를 다운받을 수 있다.

github Repository 만들기

GitHub 에서는 GitHub Repository에서 웹을 호스팅 할수 있는 기능을 제공 한다. 더 많은 정보는 공식 홈페이지 GitHub Pages 에서 볼 수 있다. 우선 Repository를 만들어야 한다. 이미 주소가 있기 때문에 빨간 경고창이 나오지만 처음이라면 경고창이 나오지 않을테니 [username].github.io 로 Repository로 만들면 된다. Public, Private는 블로그에는 영향을 주지 않는다. 이제 Create repository를 눌러서 Repository를 생성한다.
make_repo

Hexo 설치

Hexo를 설치하기 위해 윈도우에서는 Git 에서 다운받을 수 있는 GitBash를 사용할 것이다. 링크 한 홈페이지에 들어가서 Download를 하고 끝가지 설치 하면 GitBash가 깔릴 것이다. 아래는 gitbash 화면이다.
gitbash

이제 hexo를 다음 명령어를 입력해서 설치한다. git bash에서 가만히 멈춰 있는 것 처럼 보여도 다운받는 과정이다.

1
$ npm install -g hexo-cli

아래는 설치가 완료된 모습이다.
install_hexo

이제 다운받은 hexo를 이용해서 블로그의 내용이 담길 폴더를 생성하고 초기화 해준다.

1
$ hexo init (your_blog_name)

아래는 초기화가 완료된 모습이다.
init_hexo

hexo init 까지 마치면 명령을 실행한 폴더 안에 (your_blog_name) 이라는 폴더가 생긴다. 이 폴더에 들어가서 로컬에서 hexo가 어떻게 보여지는지 확인 할 수 있다. hexo server를 실행 후 localhost:4000 으로 들어가서 확인해보자.

1
2
$ cd your_blog_name
$ hexo server

hexo_server

Deploy 설정하기

Deployt란 배포를 뜻하고 방금 로컬에서 테스트한 서버를 github 블로그에 들어갔을 때 보여지게 하는 과정이다. Hexo에서는 Deploy기능을 제공해 주는데 우리는 위에서 만든 github Repository 주소를 지정해주면 Deploy시 자동으로 commit 과 push가 되면서 블로그가 갱신된다. 그래서 개인 설정을 해야하는데 개인 설정은 (your_blog_name)의 _config.yml 을 수정하면 된다.

1
$ vi _config.yml

우리가 수정할 부분은 #Site, #URL, #Deployment 이다.

#Site 에서는 title에 블로그 제목, subtitle에 문구, description에 설명, author에 이름, language에 언어를 적어준다. 이 부분은 홈페이지에 보이는 내용들을 수정 할 수 있다.

#URL 에서는 url 부분을 github Repository의 git 주소를 적어둔다 https://github.com/[username]/[username].github.io.git

config1

#Deployment 에서는 github주소와 어떤 브랜치에 올릴지 정하는데 우린 master브랜치로 하면 된다.
config2

GitHub에 Deploy하기

이제 설정은 마쳤고 github에 배포만 해주면 된다. 배포를 하기 위해서 hexo-deploy-git을 설치한다. 작업하고 있던 (your_blog_name) 폴더 안에서 명령어를 실행한다.

1
$ npm install --save hexo-deployer-git

설치를 마친 후 배포하는 명령을 실행한다.

1
2
$ hexo generate
$ hexo deploy

deploy 후 [username].github.io 에 들어가면 GitHub Blog가 완성된다.

Hexo 후기

  • 블로그 포스팅은 github에 저장 되지만 블로그 내용을 담고 있는 폴더 (your_blog_name) 을 따로 관리해 주어야 한다.

  • 블로그 테마 바꾸는 법은 후에 포스팅 하겠다.