您可以通过指定远程 URL(HTTPS 或 SSH)将任何 Git 存储库(或 tarball)添加为 yarn
的依赖项:
yarn add <git remote url> installs a package from a remote git repository.
yarn add <git remote url>#<branch/commit/tag> installs a package from a remote git repository at specific git branch, git commit or git tag.
yarn add https://my-project.org/package.tgz installs a package from a remote gzipped tarball.
这里有些例子:
yarn add https://github.com/fancyapps/fancybox [remote url]
yarn add ssh://github.com/fancyapps/fancybox#3.0 [branch]
yarn add https://github.com/fancyapps/fancybox#5cda5b529ce3fb6c167a55d42ee5a316e921d95f [commit]
(注意:Fancybox v2.6.1 在 Git 版本中不可用。)
要同时支持 npm 和 yarn,可以使用 git+url 语法:
git+https://github.com/owner/package.git#commithashortagorbranch
git+ssh://github.com/owner/package.git#commithashortagorbranch
对于 ssh 样式的 url,只需在 url 之前添加 ssh:
yarn add ssh://<whatever>@<xxx>#<branch,tag,commit>
yarn
拒绝遵守常见的 git
ssh url 语法时,这对我有用:有效:yarn add ssh://git@github.com:my-org/my-repo#commit_hash
无效:yarn add git@github.com:my-org/my-repo#commit_hash
纱线2
使用 Yarn 2 从远程 URL 安装略有改变。具体来说,remote URLs must be prefixed with the package name。所以对于 github 这意味着:
yarn add '<package name>@https://github.com/<github user>/<github repo>'
确保 <package name>
与存储库的 package.json
文件的 "name"
字段中的值匹配。
要定位特定分支,请通过 URL 片段添加 head=<branch>
或 commit=<full commit hash>
:
yarn add '<package name>@https://github.com/<github user>/<github repo>#head=<branch name>'
如果您尝试从 github 上的 Yarn monorepo 安装单个软件包,您可以将 workspace=<package name>
添加到 URL 片段:
yarn add '<package name>@https://github.com/<github user>/<github repo>#head=<branch name>&workspace=<package name>'
此处对此进行了描述:https://yarnpkg.com/en/docs/cli/add#toc-adding-dependencies
例如:
yarn add https://github.com/novnc/noVNC.git#0613d18
对于 GitHub(或类似)私有存储库:
yarn add 'ssh://git@github.com:myproject.git#<branch,tag,commit>'
npm install 'ssh://git@github.com:myproject.git#<branch,tag,commit>'
我将这种简短格式用于 github 存储库:
yarn add github_user/repository_name#commit_hash
不定期副业成功案例分享
git
。例如:yarn add ssh://git@github.com/fancyapps/fancybox#3.0
my-package-name@
。见这里:github.com/yarnpkg/berry/issues/994#issuecomment-591853492