[19주차 Day1] 스프린트 4 프로젝트: 오픈소스 기반의 웹 파이프라인 구축

반 히·2024년 7월 1일

데브코스

목록 보기
57/58
post-thumbnail

📚 Part 10 오픈소스 배포하기


📁 npm에 오픈소스 라이브러리 배포하기

📌 npm을 통한 오픈소스 배포

  • npm(https://www.npmjs.com/) 가입
    • npm에 소스를 배포하기 위해서는 먼저 npm에 가입해야한다.
  • package.json이 라이브러리 배포 시의 명세로써 기능한다.
  • npm init으로 절차에 따라 package.json을 작성 가능하다.
    • keywords: 해시 태그처럼 기능.
    • homepage: 홈페이지 설정
    • repository: 레포지토리 설정
  • .npmignore로 npm에 배포 시 무시할 파일들을 설정할 수 있다.
    • node_modules/는 default
  • .gitignore에도 node_modules 필수
  • npm login으로 로그인
    • npm whoami로 확인
  • npm publish로 배포
    • 배포 시 버전 변경
  • setting에서 설정 가능
    • maintainer 초대
    • 퍼블리시 접근 보안
  • npm unpublish <package_name>@<version>으로 패키지 언퍼블리시 가능
    • 퍼블리시 72시간 내에 언퍼블리시 가능
    • 언퍼블리시 후 24시간 동안 퍼블리시 불가능
    • 조건
      • 콜라보레이터 없음
        • 최근 1주간 다운로드 300회 이하
        • 다른 패키지에 대한 종속성 없음
  • npm version patch로 자동적으로 버전 업 가능
    • 안 된다면 뒤에 --force 혹은 --no-git-tag-verion 추가
    • npm version minornpm version major로 변경할 버전의 종류를 선택할 수 있다
  • npm deprecate로 버전을 사용하지 않는다는 의미

📌 Versioning

v1.0.4  
major.minot.patch
  1. Major: 하위 호환이 되지 않는 변경 사항
  2. Minor: 하위 호환이 되는 변경 사항
  3. Patch: 간단한 버그 수정


📚 Part 11 오픈소스 프로젝트 강의 나가는 말


📁 강의 나가는 말

📌 오픈소스 프로젝트 기여 주의점

  • 오픈소스 기여 연습은 본인 레포지토리나 연습용 프로젝트에만 진행하기
  • 만약 이미 운영중인 오픈소스에 PR 연습 절대 X (ex. express.js 오픈소스 테러 사건)

📌 오픈소스 프로젝트 마인드

  • 쉬운 난이도로 성공 경험을 늘리고 도전과제 도전하기
  • 도전과제 수행 시 오픈소스 기여 과정에 초점을 맞추고 진행하기 (시간에 연연하지 X)
  • 오픈소스 기연느 기여 여부보단 기여 과정에서 얻을 게 너무 많다.

0개의 댓글