/images/profile.png

hexo + github + blog ์—ฐ๋™ํ•˜๊ธฐ

๋“ค์–ด๊ฐ€๊ธฐ์— ์•ž์„œ ์˜ˆ์ „๋ถ€ํ„ฐ ๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ•ด์•ผ์ง€ ํ•˜๊ตฌ์„œ tistory, naver blog ๋“ฑ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์œผ๋กœ ์‹œ์ž‘์„ ํ–ˆ์—ˆ์ง€๋งŒ ์ด๋ ‡๋‹คํ•  ์šด์˜์ด ์•ˆ๋˜์—ˆ๊ณ  ์‚ฌ์‹ค ์—ด์ •์ด ๋ถ€์กฑํ–ˆ์—ˆ๋‹ค. ์ง์ ‘ ํ™ˆํŽ˜์ด์ง€๋ฅผ ๋งŒ๋“ค๊ธฐ์—๋Š” ๋„ˆ๋ฌด ๋งŽ์€ ํ—ˆ๋“ค์ด ์žˆ๋‹ค๋ณด๋‹ˆ (์„œ๋ฒ„๊ตฌ์ถ•, ํ˜ธ์ŠคํŒ…, ๋„๋ฉ”์ธ ๋“ฑ …) ๊ณ„์† ์ฐจ์ผํ”ผ์ผ ๋ฏธ๋ฃจ๊ณ  ์žˆ์—ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‹ค github์—์„œ ์ œ๊ณตํ•˜๋Š” pages๋ผ๋Š” ๊ฑธ ์ด์šฉํ•ด์„œ ๋ฌด๋ฃŒ๋กœ ๋„๋ฉ”์ธ๊ณผ ์›นํ˜ธ์ŠคํŒ…์„ ํ• ์ˆ˜ ์žˆ๋‹ค๋Š” ๋ถ€๋ถ„์„ ์•Œ๊ฒŒ๋˜์—ˆ๊ณ , ๊ฑฐ๊ธฐ์—๋‹ค jekyll์„ ์ด์šฉํ•˜๋ฉด ์„ค์น˜ํ˜• ๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ• ์ˆ˜ ์žˆ๋‹ค๋Š”๊ฒƒ์— ๋†€๋ผ์› ๋‹ค. ํ•˜์ง€๋งŒ jekyll์„ ์ ์šฉํ•ด๋ณด๋ ค๊ณ  ์ด๊ฒƒ์ €๊ฒƒ ํ•˜๋‹ค๋ณด๋‹ˆ ruby๋ผ๋Š” ์–ธ์–ด๋กœ ๋งŒ๋“ค์–ด์ ธ์žˆ๊ณ  ์ปค์Šคํ„ฐ๋งˆ์ด์ง•์ด ์–ด๋ ต๋‹ค๋Š” ๋ถ€๋ถ„์„ ํ™•์ธ, ์ข€๋” ์•Œ์•„๋ณด๋‹ค hexo ๋ผ๋Š” ๊ฑธ๋กœ ํ•ด๋‹น ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋˜์—ˆ๋‹ค. ํ•„์ž์ฒ˜๋Ÿผ ๋‚จ๋“ค๊ณผ๋Š” ๋‹ค๋ฅธ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ๊ฑฐ๋‚˜, git command ๊ณต๋ถ€๋„ ํ•˜๋ฉด์„œ ๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ•ด๋ณผ ์‚ฌ๋žŒ๋“ค์€ ํ•ด๋‹น ๊ธ€์„ ์ฒœ์ฒœํžˆ ๋”ฐ๋ผ์˜ค๋ฉด ์ข‹์„๊ฒƒ ๊ฐ™๋‹ค. hexo ์‹œ์ž‘ํ•˜๊ธฐ hexo ๋ผ๋Š”๊ฑธ ์‹œ์ž‘ํ•˜๊ธฐ ์œ„ํ•ด ๋ช‡๊ฐ€์ง€ ์ค€๋น„๋ฌผ์ด ์žˆ๋‹ค. node ์„ค์น˜ git ์„ค์น˜ github์— ๋ธ”๋กœ๊ทธ๋กœ ์‚ฌ์šฉํ•  ๋นˆ repository ์ƒ์„ฑ github์— hexo ์„ค์ •์„ ์ €์žฅํ•  ๋นˆ repository ์ƒ์„ฑ ์œ„ 4๊ฐ€์ง€(?!)๊ฐ€ ์ „๋ถ€ ์„ค์น˜ ๋˜์—ˆ๋‹ค๊ณ  ๊ฐ€์ •์„ ํ•˜๊ณ  ์‹œ์ž‘์„ ํ•ด๋ณด๊ฒ ๋‹ค. hexo ์„ค์น˜ ๊ฐ„๋‹จํ•˜๋‹ค. hexo ํŽ˜์ด์ง€์—๋„ ๋‚˜์™€์žˆ๋Š”๊ฒƒ์ฒ˜๋Ÿผ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•ด์ฃผ๋ฉด ๋œ๋‹ค. $ npm install -g hexo-cli ๋ธ”๋กœ๊ทธ๋กœ ์šด์˜ํ•  ํด๋” hexo ์ดˆ๊ธฐํ™” ํด๋” ๊ตฌ์กฐ๋กœ ๊ตฌ์„ฑ์ด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ์ž„์˜์˜ ํด๋”๋ฅผ ํ•˜๋‚˜ ๋งŒ๋“ค๊ณ  ํ•ด๋‹น ํด๋”๋ฅผ hexo ๋ช…๋ น์–ด๋กœ ์ดˆ๊ธฐํ™” ์‹œ์ผœ์ค€๋‹ค. $ mkdir <๋””๋ ‰ํ† ๋ฆฌ๋ช…> $ hexo init <๋””๋ ‰ํ† ๋ฆฌ๋ช…> ๋กœ์ปฌ์„œ๋ฒ„ ๋„์›Œ๋ณด๊ธฐ ์ด์ œ ๋กœ์ปฌ์—์„œ ์„œ๋ฒ„๋ฅผ ๋„์›Œ์„œ ๋ธ”๋กœ๊ทธ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธ์„ ํ•ด๋ณด๋ฉด ๋œ๋‹ค. $ hexo s (or server) ๊ฐ„ํ˜น ์„œ๋ฒ„๊ฐ€ ์‹คํ–‰์ด ์•ˆ๋˜๊ฑฐ๋‚˜ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒ, ์ˆ˜์ •ํ•œ ๋ถ€๋ถ„์ด ๋ฐ˜์˜์ด ์•ˆ๋œ๋‹ค๋ฉด clean ๋ช…๋ น์–ด๋ฅผ ํ•œ๋ฒˆ ํ•ด์ค€ ๋‹ค์Œ์— ๋‹ค์‹œ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ํ•ด์ฃผ๋ฉด ๋˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ๋‹ค. $ hexo clean $ hexo s (or server) http://localhost:4000 ์„ ์ ‘์†ํ•ด์„œ ์ •์ƒ์ ์œผ๋กœ ํŽ˜์ด์ง€๊ฐ€ ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธ์„ ํ•ด๋ณด์ž. ํŽ˜์ด์ง€๊ฐ€ ์ •์ƒ์ ์œผ๋กœ ๋‚˜์˜จ๋‹ค๋ฉด ์„ฑ๊ณต! ๊ธ€ ์ž‘์„ฑ ์•„๋ž˜ ๋ช…๋ น์–ด๋ฅผ ์‹คํ–‰ํ•˜๋ฉด /source/_post/ ์•„๋ž˜์— .md ํŒŒ์ผ์ด ์ƒ์„ฑ์ด ๋œ๋‹ค. $ hexo new <๊ธ€ ์ œ๋ชฉ> ํ•ด๋‹น ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๊ธฐ ํŽธํ•œ ์—๋””ํ„ฐ๋กœ ์—ด์–ด์„œ ๋งˆํฌ๋‹ค์šด ๋ฌธ๋ฒ•์— ๋งž์ถ”์–ด ์ˆ˜์ •์„ ํ•˜๋ฉด ๋! ์™œ ๋‘๊ฐœ์˜ repository๊ฐ€ ํ•„์š”ํ•œ๊ฐ€ ์•„๋ž˜์—์„œ ์ด์•ผ๊ธฐ ํ•˜๊ฒ ์ง€๋งŒ, ํ•˜๋‚˜๋Š” ์‹ค์ œ ๋ธ”๋กœ๊ทธ ๋‚ด์šฉ์ด ์˜ฌ๋ผ๊ฐˆ ์ €์žฅ์†Œ์ด๊ณ  ๋‹ค๋ฅธ ํ•˜๋‚˜๋Š” ๋ธ”๋กœ๊ทธ๋ฅผ ์šด์˜ํ•˜๊ณ  ์žˆ๋Š” hexo ์ž์ฒด๋ฅผ ์ €์žฅํ•  ์ €์žฅ์†Œ์ด๋‹ค. hexo ์ •๋ณด๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์ง€ ์•Š์„๊บผ๋ผ๋ฉด(ํ•„์ž์ฒ˜๋Ÿผ ๋‹ค์–‘ํ•œ PC์—์„œ ์—…๋กœ๋“œ ํ™˜๊ฒฝ์„ ๊ตฌ์ถ•ํ•˜์ง€ ์•Š์„๊บผ๋ผ๋ฉด) ํ•˜๋‚˜์˜ ๋ ˆํŒŒ์ง€ํ† ๋ฆฌ๋งŒ ํ•„์š”ํ• ์ˆ˜๋„ ์žˆ๋‹ค. github ์…‹ํŒ… ์ง€๊ธˆ๋ถ€ํ„ฐ๊ฐ€ ์•Œ์งœ๋ฐฐ๊ธฐ๋‹ค. ์ฆ‰ ์ด๊ธ€์„ ํฌ์ŠคํŒ… ํ•˜๋Š” ์˜๋ฏธ. ๋‹ค๋ฅธ ๊ธ€๋“ค์—์„œ๋„ hexo ์‚ฌ์šฉ๋ฒ•์„ ์นœ์ ˆํ•˜๊ฒŒ ์•Œ๋ ค ์ฃผ์…จ์œผ๋‚˜ github์™€์˜ ์—ฐ๋™, ๊ทธ๋ฆฌ๊ณ  ์–ด๋–ค์‹์œผ๋กœ ์šด์˜ํ•ด์•ผํ• ์ง€๋Š” ์ฐพ๊ธฐ ํž˜๋“ค์—ˆ๋‹ค. ํ•„์ž๋Š” ๊ฐ์œผ๋กœ ๊ทธ๋Ÿฐ๊ฐ€๋ณด๋‹ค(?)ํ•˜๊ณ ์„œ ํ„ฐ๋“ํ•œ ๋ฐ”๋ฅผ ๊ณต์œ ํ•˜๋ คํ•œ๋‹ค. (์ด๊ฒŒ ์ •๋‹ต์€ ์•„๋‹ˆ์ง€๋งŒ, ๋‚˜๋Š” ์ด๋ ‡๊ฒŒ ์‚ฌ์šฉํ•˜๋Š”๊ฒŒ ๋งž๊ฒ ๋‹ค ์‹ถ์–ด..) ์ผ๋ฐ˜์ ์œผ๋กœ github์—์„œ ๋ธ”๋กœ๊ทธ๋กœ ์‚ฌ์šฉํ•  repository๋ฅผ ๋งŒ๋“ค๊ฒŒ ๋˜๋ฉด http://(github์•„์ด๋””).github.io/(repository์ด๋ฆ„) ์œผ๋กœ ๋ธ”๋กœ๊ทธ๊ฐ€ ๋งŒ๋“ค์–ด ์ง€๋Š”๋ฐ ๋ญ”๊ฐ€ ์กฐ๊ธˆ ์ด์ƒํ•ด์„œ ๊ฐ„์ง€๊ฐ€ ์•ˆ๋‚˜์„œ ์ฐพ๊ณ  ์ฐพ์•„์„œ ์•„๋ž˜์™€ ๊ฐ™์€ ๋ฐฉ์‹์œผ๋กœ ํ•˜๊ฒŒ ๋˜์—ˆ๋‹ค. ํ•„์ž์˜ github ์•„์ด๋””๋Š” taetaetae ์ด๊ณ  ๋„๋ฉ”์ธ์€ ์•„์ด๋”” ๊ทธ๋Œ€๋กœ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ http://taetaetae.github.io ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์—ˆ๋‹ค. ๋”ฐ๋ผ์„œ github์— repository์ด๋ฆ„์„ taetaetae.github.io๋กœ ๋งŒ๋“ค์–ด์•ผ ํ•œ๋‹ค. ์—ฌ๊ธฐ๊นŒ์ง€๋งŒ ํ•˜๋ฉด ์ผ๋‹จ github์— ๋ฐฐํฌํ• ์ˆ˜ ์žˆ๋Š” ์ค€๋น„๊ฐ€ ๋˜์–ด์žˆ๋Š” ์ƒํƒœ hexo๋กœ ๋ฐฐํฌํ•˜๊ธฐ ํฌ์ŠคํŒ…ํ•œ ๊ธ€์ด ์ •์ƒ์ ์œผ๋กœ ๋“ฑ๋ก์ด ๋œ ๊ฒƒ์„ ๋กœ์ปฌ์„œ๋ฒ„์—์„œ ํ™•์ธ์ด ๋˜์—ˆ์œผ๋ฉด ์ด ์ƒํƒœ๋ฅผ ์กฐ๊ธˆ์ „ ๋งŒ๋“  github repository์œผ๋กœ ๋ฐฐํฌ(์ •ํ™•ํžˆ ๋งํ•˜๋ฉด git push)ํ•ด์ค˜์•ผ ํ•œ๋‹ค. ๊ทธ์ „์— ์ตœ์ƒ์œ„ ํด๋”์— ์žˆ๋Š” _config.yml ํŒŒ์ผ์„ ์—ด์–ด์„œ github ์ •๋ณด๋ฅผ ์ž…๋ ฅํ•ด ์ค˜์•ผ ํ•œ๋‹ค. ํ•˜๋‹จ ์˜์—ญ Deployment ๋ถ€๋ถ„์— ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘์„ฑํ•˜๊ณ  ์ €์žฅํ•œ๋‹ค. # Deployment deploy: type: git repo: https://github.com/taetaetae/taetaetae.github.io branch: master ๊ทธ ๋‹ค์Œ hexo ์—์„œ github๋กœ ๋ฐฐํฌํ• ์ˆ˜์žˆ๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ์„ค์น˜ํ•ด์ค€๋‹ค. $ npm install hexo-deployer-git --save ์ด์ œ ์„ค์ •ํ•œ github์— ๋ฐฐํฌ๋ฅผ ํ•˜๋ฉด ๋! $ hexo deploy 1๋ถ„~3๋ถ„ ๋’ค์— ๋„๋ฉ”์ธ์„ ์ ‘์†ํ•˜์—ฌ ์ •์ƒ์ ์œผ๋กœ ํŽ˜์ด์ง€๊ฐ€ ๋‚˜์˜ค๋Š”์ง€ ํ™•์ธํ•˜๊ณ , github์— ํŒŒ์ผ๋“ค์ด push๊ฐ€ ์ž˜ ๋˜์—ˆ๋Š”์ง€๋ฅผ ํ™•์ธํ•œ๋‹ค. ํ–ฅํ›„ ๊ด€๋ฆฌ hexo ์ •๋ณด ์ €์žฅ ๋‚˜์ค‘์— ๋‹ค๋ฅธ PC์—์„œ๋„ ๋ธ”๋กœ๊ทธ๋ฅผ ํฌ์ŠคํŒ… ํ•  ๊ฒฝ์šฐ๊ฐ€ ์žˆ์œผ๋‹ˆ hexo๋ฅผ ์ด์šฉํ•˜์—ฌ ํฌ์ŠคํŒ… ํ•œ ํ™˜๊ฒฝ ์ž์ฒด๋ฅผ ์ €์žฅ ํ•ด์•ผํ•  ํ•„์š”๊ฐ€ ์ƒ๊ฒผ๋‹ค. ๋”ฐ๋ผ์„œ ๋งŒ๋“ค์—ˆ๋˜ ํด๋” ๋˜ํ•œ github์— ์—…๋กœ๋“œ๋ฅผ ํ•ด๋†“๋Š”๊ฒŒ ์ข‹์„๊ฒƒ ๊ฐ™๋‹ค (์ง€๊ทนํžˆ ๊ฐœ์ธ์ ์ธ ์ƒ๊ฐ) git command ์„ค๋ช…์€ ๋”ฐ๋กœ ์ •๋ฆฌํ•˜์ง€ ์•Š๊ฒ ๋‹ค.

์ฒซ๋ฒˆ์งธ ํฌ์ŠคํŒ…

์‹œ์ž‘์€ ์–ธ์ œ๋“ ์ง€ ์ƒˆ๋กญ๊ณ  ๋–จ๋ฆฌ๊ณ  ๊ฐ€์Šด๋ฒ…์ฐจ๋Š” ์ˆœ๊ฐ„์ด๋‹ค. ๊ณผ์—ฐ ์ด ๋ธ”๋กœ๊ทธ๋ฅผ ์ž˜ ์šด์˜ํ• ์ˆ˜ ์žˆ์„๋Ÿฐ์ง€.. ์ œ๋Œ€๋กœ ํ•œ๋ฒˆ ๊ด€๋ฆฌ ํ•ด๋ณด๊ณ , ๋‚˜๋งŒ์˜ ๊ณต๊ฐ„์œผ๋กœ ๊พธ๋ฉฐ๋ณด์ž!