첫 번째 Github 패키지 만들기

Github는 2019년 5월부터 NPM 패키지와 같은 패키지 관리 서비스인 Github Package Registry를 도입했습니다. 즉, 소스 코드 옆에서 비공개 또는 공개 패키지를 관리할 수 있습니다.

이 글을 쓰는 시점에서 이 새로운 서비스를 사용하려면 베타에 가입해야 합니다.

다음은 첫 번째 Github 패키지를 만들기 위해 따를 수 있는 단계입니다.

1단계: 개인 액세스 토큰 생성



Github 계정 로그인 > 설정 > 개발자 설정



2단계: npm.pkg.github.com에 로그인합니다.



dnguyen:~ dalenguyen$ npm login --registry=https://npm.pkg.github.com
Username: GitHub-username
Password: your-personal-access-token
Email: (this IS public) [email protected]
Logged in as dalenguyen on https://npm.pkg.github.com/.

3단계: 소스 코드 준비



저는 이미 TypeScript Package Starter를 만들었습니다. Github에서 복제할 수 있습니다.

git clone https://github.com/dalenguyen/typescript-package-starter.git


프로젝트 구조는 다음과 같습니다.

dist 
--index.js
src
--index.ts
test
--index.spec.ts

이 패키지에는 하나의 간단한 기능만 있습니다: helloWorld

export const helloWorld = () => 'Howdy!'


패키지를 Github Package Registery에 게시하려면 publishConfig를 추가해야 합니다. 그렇지 않으면 패키지를 NPM 패키지 레지스트리에 게시합니다.

{
  "name": "typescript-package-starter",
  "version": "1.0.0",
  "description": "TypeScript boilerplate for NPM or Github Packages",
  "main": "dist/index.js",
  "types": "dist/index.d.ts",
  "scripts": {
    "test": "mocha --timeout 60000 --exit -r ts-node/register test/**/*.spec.ts",
    "build": "tsc",
    "deploy": "npm publish"
  },
  "author": "Dale Nguyen",
  "license": "ISC",
  "repository": {
    "type": "git",
    "url": "git+https://github.com/dalenguyen/typescript-package-starter.git"
  },
  .........................
  "publishConfig": {
    "registry": "https://npm.pkg.github.com/@dalenguyen"
  }
}

이렇게 하면 패키지 이름이 생성됩니다.
/typescript-package-starter. 자체 패키지로 작업할 때 package.json에서 사용자 이름을 바꿔야 합니다.

동료인 Alex 덕분에 리포지토리를 추가하여 동일한 GitHub 리포지토리에 여러 패키지를 게시할 수 있습니다.

4단계: 프로젝트를 Github 저장소로 푸시



코드를 준비한 후. github 저장소에 푸시합니다. Github.com에서 저장소를 생성해야 합니다.

git init
git add .
git commit -m "Create first github package"
git push origin master

6단계: 첫 번째 Github 패키지 게시



테스트를 실행하고 모든 것이 작동하는지 확인하십시오.

npm test

첫 번째 Github 패키지 배포

npm run build && npm deploy

그리고 짜잔



7단계: 첫 번째 Github 패키지 설치 시도



그 전에 .npmrc 파일을 만들어야 합니다.

// .npmrc
@your-username:registry=https://npm.pkg.github.com

그런 다음 패키지를 설치합니다.

dalenguyen$ npm i @dalenguyen/typescript-package-starter

npm notice created a lockfile as package-lock.json. You should commit this file.
npm WARN [email protected] No repository field.
+ [email protected] (as @dalenguyen/typescript-package-starter)
added 1 package from 1 contributor and removed 6 packages in 2.375s

8단계: 새로 만든 패키지 테스트



// index.js
const starter = require('@dalenguyen/typescript-package-starter')
console.log(starter.helloWorld())

index.js 파일 실행

dalenguyen$ node index.js
Howdy!

이제 첫 번째 Github 패키지를 만들고 게시하는 방법을 알았습니다. 다음 포스트에서는 .

좋은 웹페이지 즐겨찾기