Yarn (패키지 관리자)
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
Yarn은 JavaScript 패키지 관리를 위한 소프트웨어로, npm과 유사한 기능을 제공한다. 플러그인, 제약 조건, 오프라인 캐시, Plug'n'Play, 프로토콜, 릴리스 워크플로, 작업 공간, 제로 인스톨 등 다양한 기능을 지원한다. Yarn은 npm과 비교하여 패키지 설치 속도가 빠르고, 패키지 버전 고정 및 데이터 무결성 검사를 위한 기능을 제공한다. Yarn은 npm을 사용하여 전역으로 설치할 수 있으며, `yarn add` 명령어를 통해 패키지를 설치한다.
더 읽어볼만한 페이지
- 패키지 관리 시스템 - 패키지 관리자
컴퓨터 프로그램의 설치, 업데이트, 제거를 자동화하는 패키지 관리자는 소프트웨어 패키지 관리, 의존성 관리, 설정 관리 기능을 제공하여 다양한 운영 체제와 프로그래밍 언어에서 활용된다. - 패키지 관리 시스템 - 제거 프로그램
제거 프로그램은 컴퓨터에 설치된 소프트웨어를 완전히 제거하기 위해 로거, 제거 프로그램, 분석기, 감시자 등의 도구를 활용하며, 설치 기록을 바탕으로 프로그램 및 관련 파일을 삭제하고 레지스트리를 정리하는 기능을 제공한다. - 자바스크립트 프로그래밍 도구 - 파이어버그 (소프트웨어)
2005년 조 휴이트가 개발한 파이어버그는 웹 개발 생산성 향상에 기여한 파이어폭스 확장 기능 기반의 오픈 소스 웹 개발 도구였으나, 파이어폭스 개발자 도구에 기능이 통합되며 더 이상 사용이 불가능해졌다. - 자바스크립트 프로그래밍 도구 - 그런트
그런트는 자바스크립트 기반의 작업 실행 도구로, package.json과 Gruntfile을 통해 프로젝트를 구성하고 다양한 플러그인을 활용하여 작업 확장이 용이한 프로젝트 자동화 도구이다. - 공식 웹사이트에 알 수 없는 변수를 사용한 문서 - 브루클린 미술관
브루클린 미술관은 1823년 브루클린 견습생 도서관으로 시작하여 현재 약 50만 점의 소장품을 보유한 뉴욕 브루클린 소재의 미술관으로, 다양한 분야의 예술 작품을 전시하며 특히 아프리카 미술과 여성주의 미술에 대한 기여가 크다. - 공식 웹사이트에 알 수 없는 변수를 사용한 문서 - 광주지방기상청
광주지방기상청은 광주광역시와 전라남도 지역의 기상 예보, 특보, 관측, 기후 정보 제공 등의 업무를 수행하는 기상청 소속 기관으로, 1949년 광주측후소로 설치되어 1992년 광주지방기상청으로 개편되었으며, 기획운영과, 예보과, 관측과, 기후서비스과와 전주기상지청, 목포기상대를 두고 있다.
Yarn (패키지 관리자) - [IT 관련 정보]에 관한 문서 | |
---|---|
기본 정보 | |
![]() | |
개발자 | Various |
최초 릴리스 | 2016년 6월 18일 |
최신 릴리스 날짜 | }} |
프로그래밍 언어 | TypeScript JavaScript |
플랫폼 | 크로스 플랫폼 |
장르 | 패키지 관리자 |
라이선스 | BSD 2-Clause License |
웹사이트 | Yarn 공식 웹사이트 |
2. 역사
Yarn 1.0은 전이적 종속성의 버전을 강제로 재정의할 수 있었다.[5][6]
2. 1. 버전 1.0
Yarn 1.0은 전이적 종속성의 버전을 강제로 재정의할 수 있었다.[5][6]3. 기능
사용자는 Yarn용 플러그인을 직접 작성할 수 있다. 플러그인은 새로운 리졸버, 페처, 링커, 명령어를 추가할 수 있으며, 일부 이벤트에 등록하거나 서로 통합될 수도 있다. Yarn의 대부분의 기능은 플러그인을 통해 구현되며, 여기에는 미리 설치된 플러그인인 `yarn add`와 `yarn install`도 포함된다.
Yarn의 제약 조건은 사용자가 범위가 지정된 워크스페이스 전체에서 종속성 또는 매니페스트 필드에 대한 규칙을 적용할 수 있도록 한다.
다운로드된 패키지는 캐시되어 단일 파일로 저장된다. 따라서 네트워크 연결 없이도 패키지를 설치할 수 있다.
Plug'n'Play는 `node_modules` 폴더 없이 Node 프로젝트를 실행할 수 있게 해주는 기능이다. 종속성 패키지 파일의 해결 방법과 위치는 Plug'n'Play 제어 파일을 통해 정의된다. 이 기능은 구조화되지 않은 `node_modules` 아키텍처를 수정하고 Node.js 애플리케이션의 시작 시간을 단축하는 것을 목표로 한다.
사용자는 특정 패키지를 해결하기 위해 어떤 프로토콜을 사용할지 정의할 수 있다. 예를 들어, `git` 프로토콜은 Git 저장소에서 공개 패키지를 다운로드하는 데 사용되며, `patch` 프로토콜은 원본 패키지의 패치 적용 복사본을 만드는 데 사용된다.
릴리스 워크플로는 루트 패키지가 업그레이드될 때 모노레포 작업 공간 간의 상대 패키지를 자동으로 업그레이드한다.
작업 공간은 여러 프로젝트가 동일한 저장소에서 함께 작업할 수 있도록 지원한다. 소스 코드가 수정되면 다른 관련 항목에 자동으로 변경 사항을 적용하며, 설치 명령을 한 번만 실행하여 여러 패키지를 한 번에 설치할 수 있게 해준다.
제로 인스톨은 코드를 로컬로 가져온 직후 패키지를 설치해야 할 필요성을 해결한다.
3. 1. 플러그인
사용자는 Yarn용 플러그인을 직접 작성할 수 있다. 플러그인은 새로운 리졸버, 페처, 링커, 명령어를 추가할 수 있으며, 일부 이벤트에 등록하거나 서로 통합될 수도 있다. Yarn의 대부분의 기능은 플러그인을 통해 구현되며, 여기에는 미리 설치된 플러그인인 `yarn add`와 `yarn install`도 포함된다.3. 2. 제약 조건
Yarn의 제약 조건은 사용자가 범위가 지정된 워크스페이스 전체에서 종속성 또는 매니페스트 필드에 대한 규칙을 적용할 수 있도록 한다.3. 3. 오프라인 캐시
다운로드된 패키지는 캐시되어 단일 파일로 저장된다. 따라서 네트워크 연결 없이도 패키지를 설치할 수 있다.3. 4. Plug'n'Play
Plug'n'Play는 `node_modules` 폴더 없이 Node 프로젝트를 실행할 수 있게 해주는 기능이다. 종속성 패키지 파일의 해결 방법과 위치는 Plug'n'Play 제어 파일을 통해 정의된다. 이 기능은 구조화되지 않은 `node_modules` 아키텍처를 수정하고 Node.js 애플리케이션의 시작 시간을 단축하는 것을 목표로 한다.3. 5. 프로토콜
사용자는 특정 패키지를 해결하기 위해 어떤 프로토콜을 사용할지 정의할 수 있다. 예를 들어, `git` 프로토콜은 Git 저장소에서 공개 패키지를 다운로드하는 데 사용되며, `patch` 프로토콜은 원본 패키지의 패치 적용 복사본을 만드는 데 사용된다.3. 6. 릴리스 워크플로
릴리스 워크플로는 루트 패키지가 업그레이드될 때 모노레포 작업 공간 간의 상대 패키지를 자동으로 업그레이드한다.3. 7. 작업 공간 (Workspaces)
작업 공간은 여러 프로젝트가 동일한 저장소에서 함께 작업할 수 있도록 지원한다. 소스 코드가 수정되면 다른 관련 항목에 자동으로 변경 사항을 적용하며, 설치 명령을 한 번만 실행하여 여러 패키지를 한 번에 설치할 수 있게 해준다.3. 8. 제로 인스톨 (Zero-Installs)
제로 인스톨은 코드를 로컬로 가져온 직후 패키지를 설치해야 할 필요성을 해결한다.4. npm과의 비교
Yarn은 로컬 캐시에서 패키지를 설치할 수 있어 네트워크 연결이 없는 환경에서도 작업이 가능하다.[7] Yarn은 패키지 버전을 강력하게 바인딩(고정)한다. 데이터 무결성 보장을 위해 체크섬을 사용하는 반면, npm은 SHA-512를 사용하여 다운로드된 패키지의 데이터 무결성을 검사한다.[8][14] Yarn은 패키지를 병렬로 설치하는 반면, npm은 한 번에 하나의 패키지를 설치한다.
Yarn은 패키지 버전을 강력하게 고정하여 의존성으로 인한 문제를 줄인다.[7][8][14]
Yarn은 데이터 무결성을 보장하기 위해 체크섬을 사용한다.[8][14] 반면 npm은 SHA-512를 사용하여 다운로드된 패키지의 데이터 무결성을 검사한다.[8][14]
Yarn은 패키지를 병렬로 설치하여 설치 속도가 빠른 반면, npm은 패키지를 한 번에 하나씩 설치한다.[7][8][14]
4. 1. 설치 방식
Yarn은 로컬 캐시에서 패키지를 설치할 수 있어 네트워크 연결이 없는 환경에서도 작업이 가능하다.[7] Yarn은 패키지 버전을 강력하게 바인딩(고정)한다. 데이터 무결성 보장을 위해 체크섬을 사용하는 반면, npm은 SHA-512를 사용하여 다운로드된 패키지의 데이터 무결성을 검사한다.[8][14] Yarn은 패키지를 병렬로 설치하는 반면, npm은 한 번에 하나의 패키지를 설치한다.4. 2. 패키지 버전 관리
Yarn은 패키지 버전을 강력하게 고정하여 의존성으로 인한 문제를 줄인다.[7][8][14]4. 3. 데이터 무결성
Yarn은 데이터 무결성을 보장하기 위해 체크섬을 사용한다.[8][14] 반면 npm은 SHA-512를 사용하여 다운로드된 패키지의 데이터 무결성을 검사한다.[8][14]4. 4. 설치 속도
Yarn은 패키지를 병렬로 설치하여 설치 속도가 빠른 반면, npm은 패키지를 한 번에 하나씩 설치한다.[7][8][14]5. 사용법
Yarn을 전역으로 설치하려면 npm을 사용한다.[9]
```shell
npm install -g yarn
```
특정 패키지를 설치하려면 `yarn add package-name` 명령어를 사용한다.[9] 개발 및 테스트 목적으로 패키지를 설치할 때는 `yarn add package-name --dev` 명령어를 사용한다.[9] 초기 버전에서는 `yarn install package-name --save-dev` 형태로 사용되었다.[9]
5. 1. Yarn 설치
Yarn은 npm을 사용하여 전역으로 설치할 수 있다.[9]```shell
npm install -g yarn
5. 2. 패키지 설치
Yarn을 사용하여 특정 패키지를 설치하려면 `yarn add package-name` 명령어를 사용한다.[9] 개발 및 테스트 목적으로 패키지를 설치할 때는 `yarn add package-name --dev` 명령어를 사용한다.[9] 초기 버전에서는 `yarn install package-name --save-dev` 형태로 사용되었다.[9]참조
[1]
웹사이트
Earliest releases of yarn
https://github.com/y[...]
2016-06-18
[2]
웹사이트
Package management basics
https://developer.mo[...]
2022-09-28
[3]
웹사이트
5 best JavaScript Package Managers
https://www.dunebook[...]
2022-02-05
[4]
웹사이트
Yarn: A new package manager for JavaScript
https://engineering.[...]
2016-10-11
[5]
웹사이트
Announcing Yarn 1.0
https://engineering.[...]
2024-10-05
[6]
웹사이트
How to fix Security Vulnerabilities in NPM Dependencies in 3 Minutes
https://hackernoon.c[...]
2024-10-05
[7]
웹사이트
Package Manager – NPM and Yarn Explained with Examples
https://www.sitepoin[...]
2021-09-21
[8]
웹사이트
How To Install and Use the Yarn Package Manager for Node.js
https://www.digitalo[...]
2021-08-10
[9]
웹사이트
Yarn vs npm: Everything You Need to Know
https://codesweetly.[...]
2023-02-04
[10]
웹사이트
Earliest releases of yarn
https://github.com/y[...]
2016-06-18
[11]
웹사이트
Package management basics
https://developer.mo[...]
2022-09-28
[12]
웹사이트
5 best JavaScript Package Managers
https://www.dunebook[...]
2022-02-05
[13]
웹사이트
Yarn: A new package manager for JavaScript
https://engineering.[...]
2016-10-11
[14]
웹사이트
How To Install and Use the Yarn Package Manager for Node.js
https://www.digitalo[...]
2021-08-10
[15]
웹인용
Questions & Answers
https://v3.yarnpkg.c[...]
2023-08-20
[16]
웹인용
Earliest releases of yarn
https://github.com/y[...]
2016-06-18
[17]
웹인용
Yarn: A new package manager for JavaScript
https://engineering.[...]
2016-10-11
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com