본문으로 바로가기

[npm] 프로젝트 배포하기

category 공유/Node, NPM 2024. 7. 1. 18:56

[npm] 프로젝트 배포하기

구현한 함수와 타입을 npm에 배포해보겠습니다.
그전에 npmjs 사이트에 접속하셔서 회원가입부터 하셔야 합니다.
해당 부분은 생략하도록 하겠습니다.

회원가입 링크 : 이동하기

회원가입이 완료되었다는 가정하에 배포 해보도록 하겠습니다.

npm에 배포하기

npm 로그인

아래 작업들을 진행하기 앞서 npm에 로그인을 먼저 해줍니다.
아래 명령어를 입력하시면 됩니다.

npm login

그럼 홈페이지로 이동하게 되는데 로그인을 하시면 됩니다. 로그인이 정상적으로 되었는 지 확인하는 방법은 터미널에 아래 명령어를 입력해보세요.

npm whoami

본인 계정이 표시되면 정상적으로 로그인이 된 것입니다.

패키지 이름 정하기

그 다음으로 해야할 것이 패키지의 이름을 정하는 것입니다.
제일 중요하면서도 어려운 것입니다.
그러나 이번에는 테스트를 위한 패키지 명이니 대충 지어주도록 하겠습니다.

ts-function으로 진행하려고 했지만 이미 존재하여 ts-function-for-test 로 진행하도록 하겠습니다.
존재하는 패키지인지 아닌지 확인하는 간단한 방법이 있습니다.

npm info 패키지 이름
npm info ts-function-for-test
npm info react

react를 입력한 경우 아래처럼 정보가 나타납니다.
이 경우 해당 패키지 이름을 사용할 수 없습니다.

그러나 ts-function-for-test의 경우 아래처럼 404로 출력됩니다.
이 경우 해당 패키지 이름을 사용할 수 있습니다.

README 파일 & package.json 작성하기

해당 부분을 자세하게 확인하고 싶으시면 다른 블로그나 홈페이지를 확인하시는 것을 추천드립니다.
이 게시글에서는 간단하게 알아보겠습니다.

README 파일에는 간단하게 해당 패키지의 정보를 적어주시면 됩니다.
package.json에 아래 내용을 추가 및 변경 하였습니다.
전체 코드는 하단 github을 참고해주세요.

{
  "name": "ts-function-for-test",
  "version": "0.0.1",
  "description": "Test project for npm publish",
  "keywords": [
    "test"
  ],
  "repository": {
    "url": "https://github.com/Codiving/ts-function"
  },
  "author": "Codiving",
  "license": "MIT",
  ...
}

패키지 배포하기

패키지를 배포하시기 전에 꼭 저번 게시글에서 보았던 build를 하셔야 합니다.
그렇지 않으면 정상적으로 배포가 되지 않을 수 있습니다.
아래 명령어를 이용하여 배포하시면 됩니다.

npm publish

패키지 정상 배포된 것 확인하기

패키지를 배포하자마자 검색이 되지 않을 수도 있습니다.
짧게는 몇 분, 길게는 수시간을 소요될 수 있습니다.

그러나 확인할 수 있는 방법은 많이 있습니다.
정상적으로 배포가 된 경우 성공 메일이 수신이 됩니다.
또한 검색만 안되는 것이지 직접 url로 접속이 가능합니다.
npm install 패키지 이름으로 설치도 가능합니다.
npm info 패키지 이름으로 정보를 확인할 수도 있습니다.

버전 업데이트 하기

코드가 수정된 경우 버전을 업데이트를 하고 배포를 해야합니다.
코드 수정이 완료가 되었다면 아래 명령어를 입력하시면 됩니다.

npm version patch

그렇다면 package.json 파일에 있는 version이 변경된 것을 확인할 수 있습니다.
그 다음 배포와 동일한 명령어를 사용하시면 됩니다.

npm publish

패키지 삭제하기

배포한 패키지를 삭제하고 싶은 경우가 있습니다.
72시간 내에 진행을 하셔야 쉽게 삭제가 가능합니다.
이후 삭제는 메일로 문의를 해야 가능할 것 같습니다.
npm에서는 삭제보단 deprecate를 권장하고 있습니다.

명령어는 아래와 같습니다.

npm unpublish 패키지 이름@버전
npm unpublish ts-function-for-test@0.0.1

npm unpublish 패키지 이름 -f
npm unpublish ts-function-for-test -f

위처럼하면 정상적으로 삭제가 가능합니다.

이번 게시글에서는 npm 배포, 버전 업데이트 및 삭제를 알아보았습니다.
모두 본인의 프로젝트를 잘 배포하시길 바랍니다.

혹시 따라오지 못 하신 분은 아래 github 주소를 확인해보세요.
해당 소스코드 : 이동하기

반응형