WEB/REACT

[React] React๋ฅผ GitHub Page์— ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ…ํ•˜๊ธฐ(ํŽ˜์ด์ง€ ๋งŒ๋“ค๊ธฐ)

mingzoo 2021. 2. 2. 00:11

์˜ค๋Š˜์€ React JS๋กœ ์ž‘์„ฑํ•œ ์ฝ”๋“œ๋ฅผ ์–ด๋–ป๊ฒŒ github page์— ๋ฌด๋ฃŒ๋กœ ๋ฐฐํฌํ•  ์ˆ˜ ์žˆ๋Š”์ง€์— ๋Œ€ํ•ด์„œ ๊ณต๋ถ€ํ•ด๋ณด์•˜๋‹ค.

๊ฐ€๋” ๋ธ”๋กœ๊ทธ๋‚˜ ์‚ฌ์ดํŠธ๋“ค์„ ๋ณผ๋•Œ ์ฃผ์†Œ๊ฐ€ github.io๋ผ๊ณ  ์ž‘์„ฑ๋˜์–ด์žˆ๋Š”๊ฑธ ๋งŽ์ด ๋ดค์—ˆ๋Š”๋ฐ, ์ด ํ˜ธ์ŠคํŒ…์— ๋Œ€ํ•ด ์•Œ๊ธฐ ์ „๊นŒ์ง€๋Š” ๊ทธ๋ƒฅ ๊นƒํ—™์—์„œ ๋งŒ๋“ค์–ด๋†“์€ ๋ธ”๋กœ๊ทธ์ธ์ค„๋งŒ ์•Œ์•˜์—ˆ๋‹ค.

์†”์งํžˆ ์ด๊ฑธ ์•Œ๊ณ ๋‚˜๋‹ˆ ์ง€๊ธˆ ์™„์ „ ์‹ ์„ธ๊ณ„๋‹ค๐Ÿ˜ฒ

์ง€๊ธˆ ๋„ˆ๋ฌด ์‚˜๊ฝ‚ํ˜€์„œ ํ”ผ๊ณคํ•œ๋ฐ๋„ ๋ธ”๋กœ๊ทธ ํฌ์ŠคํŒ…์„ ํ•˜๊ณ  ์žˆ๋‹ค.

 

๋‚ด๊ฐ€ ์˜ค๋Š˜ ๊นƒํ—™ ํŽ˜์ด์ง€๋ฅผ ์‚ฌ์šฉํ•ด์„œ ๋งŒ๋“  ์›น์‚ฌ์ดํŠธ๋Š” ์˜ํ™”์†Œ๊ฐœ ์›น์ด๋‹ค. 

์œ„์˜ ๋งํฌ๋ฅผ ๋‹ฌ์•„๋†“์€๊ฒƒ๊ณผ ๊ฐ™์ด ๋‚ด๊ฐ€ ๋งŒ๋“  ์‚ฌ์ดํŠธ๋ฅผ ์ผ์‹œ์ ์œผ๋กœ yarn(npm) start๋กœ ์ผœ์„œ ๋งŒ๋“  ์‚ฌ์ดํŠธ๊ฐ€ ์•„๋‹Œ ๊ณ„์†ํ•ด์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.

์›น์— ๋“ค์–ด๊ฐ€๋ณด๊ธฐ ๊ท€์ฐฎ์€ ๋ถ„๋“ค์€ ์•„๋ž˜ ์›€์งค์„ ๋ณด๋ฉด ๋ฉ๋‹ˆ๋‹น

 

 


 

GitHub Page

github page๋Š” ๋ฌด์—‡์ผ๊นŒ ์•Œ์•„๋ณด๊ธฐ ์œ„ํ•ด ๋‚˜๋Š” ๊นƒํ—™์œ ํŠœ๋ธŒ์—์„œ ๊นƒํ—™ํŽ˜์ด์ง€์— ๋Œ€ํ•œ ๋™์˜์ƒ์„ ๋ณด์•˜๋‹ค.

์›น์‚ฌ์ดํŠธ์˜ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์„œ ๋ฐฐํฌํ•˜๊ธฐ๊นŒ์ง€๋Š” ์•„๋ž˜์˜ ์‚ฌ์ง„์ฒ˜๋Ÿผ ๊ต‰์žฅํžˆ ๋งŽ์€ ๊ณผ์ •์„ ๊ฑฐ์ณ์•ผํ•œ๋‹ค.

 

์˜คํ”ˆ์†Œ์Šค ๋“ฑ ๊ฐœ๋ฐœ์ž์—๊ฒŒ ๊ต‰์žฅํžˆ ์–‘์งˆ์˜ ์ •๋ณด๋ฅผ ๊ณต์œ ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋„์™€์ฃผ๋Š” ๊นƒํ—™์€ ๋ณด๋‹ค ๋” ํŽธ๋ฆฌํ•œ ์„œ๋น„์Šค๋ฅผ ์œ„ํ•ด์„œ database์™€ ์„œ๋ฒ„๊ฐ€ ๋”ฐ๋กœ ํ•„์š”ํ•˜์ง€ ์•Š๊ณ  ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ปดํ“จํ„ฐ์— ์–ด๋–ป๊ฒŒ ๋ฐฐํฌ๊ฐ€ ๋ ๊นŒ ๊ฑฑ์ •ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ๊ทธ ์‚ฌ์ดํŠธ์˜ ์ฝ˜ํ…์ธ ์— ๋”์šฑ๋” ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋งŒ๋“ค์–ด์กŒ๋‹ค๊ณ  ํ•œ๋‹ค.

๊ฐ„๋‹จํžˆ ๋งํ•ด์„œ, ์‚ฌ์ดํŠธ์˜ ๋ถ€๊ฐ€์ ์ธ ๊ฒƒ์— ํž˜์Ÿ์ง€ ์•Š๋„๋ก ๋„์™€์ค€๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

๊ทธ๋ฆฌ๊ณ  Git์„ ํ†ตํ•ด์„œ ๊ณ„์†ํ•ด์„œ ์ฝ”๋“œ๋ฅผ ๊ด€๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์•ˆ์ •์ ์ด๋ผ๋Š” ์žฅ์ ๋„ ์žˆ๋‹ค.

 


 

GitHub Page ํ˜ธ์ŠคํŒ…ํ•˜๊ธฐ

1. ๋ฆฌ์•กํŠธ ์•ฑ์„ ์ƒ์„ฑํ•ด์ค€๋‹ค

$ npx create-react-app appname
$ cd appname

 

 

2. Github์— ์ƒˆ ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด์ค€๋‹ค

 

๋ ˆํฌ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค์—ˆ์œผ๋ฉด http://username.github.io/reponame ์œผ๋กœ ๋“ค์–ด๊ฐˆ ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค.

ํ•˜์ง€๋งŒ, ์ € ์ƒํƒœ๋กœ ๋“ค์–ด๊ฐ€๋ฉด 404์—๋Ÿฌ๊ฐ€ ๋œฐ ๊ฒƒ์ด๋‹ค.

 

์ฝ”๋“œ์™€ ์ด ํŽ˜์ด์ง€๋ฅผ ์—ฐ๊ฒฐํ•ด์ฃผ๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•˜๋‹ค!

 

3. npm์„ ์‚ฌ์šฉํ•ด์„œ gh-pages ํŒจํ‚ค์ง€ ์„ค์น˜

$ npm i gh-pages

 

4. package.json์œผ๋กœ ๊ฐ€์„œ ์ถ”๊ฐ€

package.jsonํ•˜๋‹จ์— ํ™ˆํŽ˜์ด์ง€ url์„ ์ถ”๊ฐ€ํ•ด์ค€๋‹ค.

"homepage": "http://minjoo-park01.github.io/movie_app"

http://username.github.io/reponame ์ด๋Ÿฐ์‹์œผ๋กœ ํ™ˆํŽ˜์ด์ง€ ์ฃผ์†Œ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ๋ฉด๋œ๋‹ค.

 

5. package.json์—์„œ scripts ์ˆ˜์ •ํ•˜๊ธฐ

 "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "deploy": "gh-pages -d build",
    "predeploy": "npm run build"
  },

 

predeploy => npm run build๋ฅผ ํ•˜๊ณ , ์—ฌ๊ธฐ์„œ ์‹คํ–‰๋œ build๋Š” build script๋ฅผ ํ˜ธ์ถœํ•ด์„œ ๊ทธ ์Šคํฌ๋ฆฝํŠธ๊ฐ€ buildํด๋”๋ฅผ ์ œ๊ณต

deploy => gh-pages๋ฅผ ํ˜ธ์ถœํ•˜๊ณ  build ํด๋”๋ฅผ ์—…๋กœ๋“œ

 

6. React JS์•ฑ์„ deployํ•˜๊ธฐ

$ npm run build

build ํด๋”๋ฅผ ์–ป๊ฒŒ๋จ

์œ„ ๋ช…๋ น์–ด๋ฅผ ์ž‘์„ฑํ•˜๋ฉด npm์€ predeploy๋ฅผ ๋จผ์ € ํ˜ธ์ถœํ•ด์ค€๋‹ค.

 

$ npm run deploy

 

์ด๋Ÿฐ ์–˜๊ธฐํ•˜๋ฉด ์›ƒ๊ธฐ๊ฒ ์ง€๋งŒ, ์ด๋ฒˆ ์˜ํ™” ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด์„œ ๋„ˆ๋ฌด ์žฌ๋ฐŒ์—ˆ๋‹ค.

๋” ์—ด์‹ฌํžˆ ํ•ด๋ณด๊ณ  ๊ณต๋ถ€ํ•ด์„œ ์ข‹์€ ์‚ฌ์ดํŠธ๋ฅผ ๋งŒ๋“ค๊ณ ์‹ถ๋‹ค๐Ÿฅด

728x90