npm i gh-pages
package.json에 homepage
항목 추가
{
"name" : "asdfasdf",
"versios" : "1.0.0",
...
... ,
"homepage" : "your github pages URL" <---- 추가
}
gh-pages -d <배포할 경로>
예를 들어, 아래와 같은 디렉토리가 있다고 하자.
[User]
ㄴ[Project]
ㄴpackage.json
ㄴ[src]
ㄴ[public]
ㄴindex.html
ㄴglobal.css
ㄴ[build]
ㄴ(something files...)
또, 아래와 같은 상황을 가정하자
Users
Users/Project/public
그렇다면, 아래와 같이 명령을 입력할 수 있다.
gh-pages -d Project/public
package.json에 scripts.deploy
, scripts.predeploy
를 추가한다.
{
"name": "svelte-app",
"version": "1.0.0",
"private": true,
"scripts": {
"build": "rollup -c",
"dev": "rollup -c -w",
"start": "sirv public --no-clear",
"deploy" : "gh-pages -d public", <------- 추가
"predeploy" : "npm run build" <------- 추가
},
...
"devDependencies": {
...
}
}
설정이 끝난 뒤에는 아래 명령을 통해 배포할 수 있다.
deploy
명령을 내리면, 자동으로 predeploy
를 먼저 실행 한 다음 deploy
를 실행한다.
npm run deploy
deploy하는 경로에 CNAME이라는 이름의 파일을 만들고, 내용으로 도메인을 적어넣어야 한다. 그렇지 않으면 deploy할 때마다 github pages setting에서 custom domain설정이 초기화된다.
다시 아래와 같은 디렉토리가 있다고 하자. public
디렉토리를 배포하고자 한다면, 그 경로에 CNAME
이라는 이름의 파일을 만든다. (확장자 없음)
[User]
ㄴ[Project]
ㄴpackage.json
ㄴ[public]
ㄴindex.html
ㄴglobal.css
ㄴCNAME <---------- 추가
그리고 내용은 아래와 같이 구성한다.
www.example.com
svelte/template
, create-react-app
으로 프로젝트를 구성한 경우, 두 경우 모두 public
이라는 폴더에 CNAME
을 만들면 된다.