{"componentChunkName":"component---src-templates-post-template-jsx","path":"/works/posts/2020-12-09--001","result":{"data":{"site":{"siteMetadata":{"title":"Blog by Eunyoung","subtitle":"작업 기록 블로그","copyright":"© All rights reserved.","author":{"name":"EunYoung","twitter":"#"},"disqusShortname":"","url":"https://ssongey.github.io"}},"markdownRemark":{"id":"d89cd7fc-6a8b-5009-9e8f-b8258cfe70c0","html":"<p><strong>1. gatsby-cli 설치 및 프로젝트 생성 (lumen 테마 사용)</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">yarn</span> <span class=\"token function\">add</span> -g gatsby-cli\n$ gatsby new devHistoryBlog https://github.com/GatsbyCentral/gatsby-v2-starter-lumen</code></pre></div>\n<p><strong>2. gatsby 로컬 서버 구동 (기본포트 8000)</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token builtin class-name\">cd</span> devHistoryBlog\n$ gatsby develop</code></pre></div>\n<p><strong>3. github repository 연동</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">//git remote <span class=\"token function\">add</span> origin <span class=\"token punctuation\">[</span>repository_url<span class=\"token punctuation\">]</span>\n$ <span class=\"token function\">git</span> remote <span class=\"token function\">add</span> origin https://github.com/SangBeo/devHistoryBlog.git</code></pre></div>\n<ul>\n<li>[브랜치 생성]<br>\ngithub 페이지는 최종적으로 master의 파일들이 배포된다.<br>\nmaster에서 gatsby 파일 관리와 gh-pages의 빌드를 같이 하니 난잡해서 보기 좋지 않다.<br>\n그래서 개발은 develop 브랜치에서 진행하고 master 브랜치는 gh-pages로 배포할때만 사용한다<br>\n-> develop branch : gatsby 파일 구조를 관리<br>\n-> master : build 된 파일들을 github 페이지에 배포</li>\n</ul>\n<p>3.1. develop 브랜치 생성</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">//-m 옵션을 이용하여 develop 브랜치로 이동\n$ <span class=\"token function\">git</span> branch -m develop</code></pre></div>\n<p>3.2. 커밋과 푸쉬</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">git</span> <span class=\"token function\">add</span> *\n$ commit -m <span class=\"token string\">\"init commit\"</span>\n//push 시 -u 옵션을 붙여 이후 push 할때마다 develop 브랜치로 푸쉬한다\n$ <span class=\"token function\">git</span> push -u origin develop</code></pre></div>\n<p>\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/38a65/1.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 960px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 79.16666666666667%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAQCAYAAAAWGF8bAAAACXBIWXMAABJ0AAASdAHeZh94AAACgklEQVQ4y5VTx2ocQRTc/wcf7aN/wKAP8MFXgy8Gg8EIJ4mVtKtJneP0lOv1alc4XDxD0a9Tdb20s8ZgGGaMKuJ+DDjOATHljhAzUi6Xudg+RBweRyhjoY0jLKwPcFzPpWKXEwmcRggBtRSklPqlEBMcDyYhoy1zscPTRZnXtWFtjeOKwjUZd/Lyoi1yzvj/b+t/2xpFBGzbhl1ZgVhAd/hCbdzkMaJwI4RMBae5ICbxoFzmtVBhJEF7ohfCWjy8PcDqA2KYuOrRVoe1WqzF0LZ9foLFxnFrntcjVBrw3fzE3t9hpC2v7FIYMQ+f4fQ3WPUVKdzy0oGvHvu4VcEDQLumPaK/JW7Q4h2ux494ef0aL768wpubK/I17CRTN/sDMzdhVrYj0/3MjDb6L64x7h0SAiWZtR6K8Cbhw8MnXP14i3f796iNSZl0wH6wuJ8cRlMw+xVHnTgPGO2KyTUYxsnmDZ6xPsOmhkF7TCpB6wrr1h7HnfWRNchaYmZ8Wjsc7eOkcRiJyWBcTD8zzAaWKnPdEDKTlirPFwyLxkzlnVDKxXsGnHJX1lGjb+taYVjwhkVrrOuQAlbaMNOp11ut62W0zvfa7YTSDY9LRGTchFDz0rKoDqU0FmU60UJ75poU97lEzujd4vyJUOpvZuxyPRWTdIzjpqMqKxCbsO6kNJdzHT4TenaUdNMTYcGoc49d35TL1nalpvfrs9uiNDFEfxJ2l0naCaX6j0tmPLbeSqJKyMRdpXUnOcdP3E75b5flMXcmlEZXrjB7J4Uxxu62KHXe94PSpzKKkpPL228IvHNx2bMM9kPE4mpXqKlqnmZMgnnBxET0kRi5Fv+RFFEunsn3C0wP2GTW8yfXAAAAAElFTkSuQmCC'); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"1\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/d9199/1.png\"\n        srcset=\"/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/8ff5a/1.png 240w,\n/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/e85cb/1.png 480w,\n/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/d9199/1.png 960w,\n/devHistoryBlog/static/f6762a3447b66ffb0bcdd9c10bcb04a8/38a65/1.png 1075w\"\n        sizes=\"(max-width: 960px) 100vw, 960px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    <br>\n그럼 위와 같이 develop 브랜치에 소스 push가 된다.</p>\n<p><strong>4. gh-pages 설치 및 설정 파일 수정, 그리고 Deploy</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">$ <span class=\"token function\">yarn</span> <span class=\"token function\">add</span> --dev gh-pages</code></pre></div>\n<p>4.1. gatsby-config.js 수정\n\n  <a\n    class=\"gatsby-resp-image-link\"\n    href=\"/devHistoryBlog/static/9b9f7bf8ba35b6c0af38da64066cf443/b0122/3.png\"\n    style=\"display: block\"\n    target=\"_blank\"\n    rel=\"noopener\"\n  >\n  \n  <span\n    class=\"gatsby-resp-image-wrapper\"\n    style=\"position: relative; display: block;  max-width: 416px; margin-left: auto; margin-right: auto;\"\n  >\n    <span\n      class=\"gatsby-resp-image-background-image\"\n      style=\"padding-bottom: 67.5%; position: relative; bottom: 0; left: 0; background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAOCAYAAAAvxDzwAAAACXBIWXMAABJ0AAASdAHeZh94AAACBUlEQVQ4y31U2XLbMAzUx7RJZN0USfHS4St2JjN96f9/y3YFH3XSpA87AEl5ASwAZ/vhN6I+YUgH+OmESidU8xnN8Req8Qw97WC3CX0aUSmHvNbYNAab1qDoaGuDl1LjuejFZk69QncLerfAhj1cOiKv+KGZUNIvwxE1g5g5QMWAznsGiQK7jVAukcj8Jbw5tyhyrtZzf71T4svb5vJ28wXF7bvLfTbqdwxqD+1mNHpkKVZKNMygGZz48TxLRmaOGHZJ/C54Kf0xoUuGpb2kzMg/+fhjjV71olXOO9GKEN0IuadueXUlKfRHDQ86InYetnVYVMSsAtp6IFFgSQzyoj7g6VrmXZ4HMiFMfcTZjFhojyzZdQE5M7HbkSWyu2OUZpglSckFJXkuHjX+VLJmZm/s4omEe9oVnfJoXUTVW9TGoVytdbyj3w5fEt0Jh2FGsDM8s1S1hWOApuGPKivlPV27KX7+fal3wjBzDklo7ETtSFKsolND+vfR+DQi/0Pmx6M05cCSt31CYzzCcuDAjtLRUlnZiNWu58eGfIUscs0Sm7EjNBuifJQG6CmhXf1phN1NcPsZ3bBuBYmr75Gl3TuCnnFwW+z9DsEsKBT3mSNUEgWDFO2KtUkJZRc5j7e7f8EMX2Wwa25FO87YqIGbMWGQP4QAf5xoI/xhEr913BBq/J2efwBqtL1h4lKbbQAAAABJRU5ErkJggg=='); background-size: cover; display: block;\"\n    >\n      <img\n        class=\"gatsby-resp-image-image\"\n        style=\"width: 100%; height: 100%; margin: 0; vertical-align: middle; position: absolute; top: 0; left: 0; box-shadow: inset 0px 0px 0px 400px white;\"\n        alt=\"3\"\n        title=\"\"\n        src=\"/devHistoryBlog/static/9b9f7bf8ba35b6c0af38da64066cf443/b0122/3.png\"\n        srcset=\"/devHistoryBlog/static/9b9f7bf8ba35b6c0af38da64066cf443/8ff5a/3.png 240w,\n/devHistoryBlog/static/9b9f7bf8ba35b6c0af38da64066cf443/b0122/3.png 416w\"\n        sizes=\"(max-width: 416px) 100vw, 416px\"\n      />\n    </span>\n  </span>\n  \n  </a>\n    </p>\n<ul>\n<li>url 수정</li>\n<li>pathPrefix 추가\n4.2. package.json 필요시 수정</li>\n</ul>\n<p>4.3. Deploy</p>\n<div class=\"gatsby-highlight\" data-language=\"bash\"><pre class=\"language-bash\"><code class=\"language-bash\">//build 및 master branch로 push\n$ <span class=\"token function\">yarn</span> deploy</code></pre></div>\n<p><strong>5. 실행</strong></p>\n<div class=\"gatsby-highlight\" data-language=\"html\"><pre class=\"language-html\"><code class=\"language-html\">http://sangbeo.github.io/devHistoryBlog</code></pre></div>","fields":{"tagSlugs":["/tags/gatsby/","/tags/react/"],"slug":"/works/posts/2020-12-09--001"},"frontmatter":{"title":"Gatsby 구축","tags":["Gatsby","React"],"date":"2019-08-18","description":"gatsby + gh-pages + github"}}},"pageContext":{"slug":"/works/posts/2020-12-09--001"}},"staticQueryHashes":[]}