이것은 지금 불타는 질문입니다. NPM은 수천 명의 개발자에게 효과적이지만 Facebook, Google과 같은 회사에서는 큰 효과가 없습니다. 어떤 이유로 든 node_modules 폴더를 삭제하고 프로젝트 콘솔에서 npm install
을 실행하면 npm은 각 패키지를 종속성과 함께 다운로드하여 너무 많은 시간을 낭비합니다. 원사는 이러한 목적에 적합합니다. 다운로드하는 모든 패키지를 캐시합니다. 이전에 패키지를 다운로드 한 적이 있다면 오프라인 모드에서도 설치할 수 있습니다. 또한 자원 활용도를 극대화하기 위해 작업을 병렬 처리하여 설치 시간이 로켓과 같이 지구의 중력에서 벗어나는 것을보다 빠르게합니다! 원 사는 매우 안전합니다. 코드가 실행되기 전에 체크섬을 사용하여 설치된 모든 패키지의 무결성을 확인합니다. 원 사는 신뢰할 수 있습니다. 그들의 말에 따르면, "Yarn은 한 시스템에서 작동하는 설치가 다른 시스템에서도 똑같이 작동 함을 보장 할 수 있습니다."
yarn why package-name
이 패키지가 설치된 이유와 다른 패키지가 의존하는 이유를 식별하는 이유는 무엇입니까?
yarn why react
대부분의 경우, NPM을 알고 있으면 이미 설정되어 있습니다!
그러면 프로젝트의 루트에 'package.json'파일이 추가됩니다.
npm init === yarn init
이들은 모두 동일합니다 :
npm link === yarn link
npm outdated === yarn outdated
npm publish === yarn publish
npm run === yarn run
npm cache clean === yarn cache clean
npm login === yarn login
npm logout === yarn logout
npm test === yarn test
'Install'은 원사의 기본 동작입니다.
npm install === yarn
The React Js library is saved in your package.json file:
npm install react --save === yarn add react
npm install -g @angular/cli === yarn global add @angular/cli
npm install --global yarn
이전에 npm을 설치하지 않았다면 웹 사이트 문서에서 자세한 내용을 확인하십시오. https://yarnpkg.com/en/docs/install
원사 설치 또는 설치에 대한 자세한 지침.
시스템에 npm
설치되어있는 경우 :
npm install --global yarn
MacOS :
brew install yarn
sudo port install yarn
(존재하지 않을 경우 노드 가 설치됨) Windows의 경우 :
choco install yarn
scoop install yarn
Linux :
Yarn은 종속성의 라이선스를 확인할 수 있으며 패키지의 종속성을 기반으로 라이선스를 생성 할 수도 있습니다.
yarn licenses
yarn licenses generate
원사주의 사항으로 작업하는 개인용 repos 사용 :
이것은 npm
사용하여 작동합니다.
"common-js": "git@bitbucket.org:<user-name>/<repo-name>.git#<identifier>"
yarn
사용하여 작동하지 않습니다. 이 변경은 필수 사항입니다.
"common-js": "git+ssh://git@bitbucket.org:<user-name>/<repo-name>.git#<identifier>"
예는 Bitbucket
사용하지만 github
은 동일합니다.
ssh 키는 로컬 시스템에 저장되는 것으로 가정합니다.