[Unity] Github package npm ๋ฐฐํฌ
*Github Package ?
1. Unity package ๋ง๋ค๊ธฐ
package ๋ฅผ github registry ์ publish ํ๊ธฐ ์ํด์๋ registry ๋ฅผ ์ฐ๊ฒฐํด์ฃผ์ด์ผ ํ๋ค.
package ๋ฅผ registry ์ ์ฐ๊ฒฐํ๋ ๋ฒ์ ์ฌ๋ฌ ๊ฐ์ง๊ฐ ์๋ค.
๋๋ unity ํ๋ก์ ํธ ์ด๋ฏ๋ก Unity Package Manager ๋ฅผ ์ด์ฉํ ์ ์๋ package.json ํ์ผ์ ์ด์ฉํ๋ค.
package.json ํ์ผ ์์ publishConfig ํค์๋๋ฅผ ์ฌ์ฉํด์ package ๋ฅผ registry ๋ฅผ ์ฐ๊ฒฐํ๋ฉด ๋๋ค.
"publishConfig": {
"registry": "https://npm.pkg.github.com"
},
[package ๋ง๋ค ๋ ์ฃผ์์ฌํญ]
1) package ์ด๋ฆ(name)๊ณผ ๋ฒ์์๋ ์๋ฌธ์๋ง์ ์ฌ์ฉํด์ผ ํ๋ค.
2) npm ๋ฒ์ ์ tarball ํฌ๊ธฐ๋ 256MB ๋ณด๋ค ์์์ผ ํ๋ค.
์์ธ ๋ด์ฉ์ ํ๋จ ๊ฒ์๊ธ ์ฐธ๊ณ .
[Unity] Custom Unity Package in Git ๋งน๋ค๊ธฐ
ํ์ฌ์์ ํ๋ก์ ํธ ๊ฐ๋ฐ์ ํ์ํ ๊ณตํต๋ชจ๋์ ๊ฐ๊ฐ ๋ค์ด๋ฐ์ ์ ์๋ Editor ํ๋ฉด์ ํ๋ ๋ง๋ค๊ณ ์๋ค. ๋คํํ Unity ์์ Git ์ ์ฅ์ ์ ๋ณด๋ฅผ package.json ํ์ผ ์์ ๋ด์์ ๊ทธ ํ์ผ์ ๊ธฐ๋ฐ์ผ๋ก ์ ๋ณด๋ฅผ
i-believe-in-me.tistory.com
2. personal access token(classic) ์ธ์ฆํ์ผ ๋ง๋ค๊ธฐ
github token(classic) ์ ๋ฐ์์ .npmrc ํ์ผ์ ๋ง๋ ๋ค.
//npm.pkg.github.com/:_authToken=TOKEN
always-auth ์กฐ๊ฑด ์ถ๊ฐ๋ ๊ฐ๋ฅ!
3. npm Login
$ npm login --scope=@NAMESPACE --auth-type=legacy --registry=https://npm.pkg.github.com
username ๊ณผ password(personal access token(classic)) ์ ๋ ฅํ๋ฉด ๋ก๊ทธ์ธ ์ฑ๊ณต.
4. package publish
$ npm publish
npm publish ์ฑ๊ณต.
6. Github ์ Package ํญ์์ npm package ํ์ธ
npm ๋ ์ง์คํธ๋ฆฌ ์์ - GitHub Docs
ํจํค์ง๋ฅผ GitHub Packages์ ๊ฒ์ํ๊ณ GitHub Packages์ ์ ์ฅ๋ ํจํค์ง๋ฅผ npm ํ๋ก์ ํธ์ ์ข ์์ฑ์ผ๋ก ์ฌ์ฉํ๋๋ก npm์ ๊ตฌ์ฑํ ์ ์์ต๋๋ค. GitHub Packages is available with GitHub Free, GitHub Pro, GitHub Free for organiz
docs.github.com
Github packages ๋ก npm ํจํค์ง ๋ฐฐํฌ
์ฌ๋ฌ ํ๋ก์ ํธ์์ ๋ฐ๋ณต์ ์ผ๋ก ์ฌ์ฉ๋๋ ๊ณตํต๋ชจ๋์ด ์๋ค๋ฉด Don't repeat your code ์์น์ ๋ฐ๋ผ npm ๋ชจ๋๋ก ๋ฐฐํฌํด์ ์ฌ์ฉํ๊ณ ์ถ์ด์ง๋ค. npmjs ๋ฅผ ํตํด ํจํค์ง๋ฅผ ๋ง๋ค๊ณ ๋ฐฐํฌํ ์ ์์ง๋ง npmjs ๋ ๋น๊ณต
min9nim.vercel.app