Использование частных репозиториев GitHub в качестве зависимостей NPM: комплексное руководство

В современной среде разработки программного обеспечения часто используются сторонние зависимости для повышения производительности и эффективности. Хотя общедоступные репозитории на GitHub легко доступны как пакеты npm, что произойдет, если вы захотите использовать частный репозиторий GitHub в качестве зависимости npm? В этой статье мы рассмотрим несколько методов достижения этой цели, которые позволят вам использовать возможности частных репозиториев, сохраняя при этом удобство управления пакетами npm.

Методы использования частных репозиториев GitHub в качестве зависимостей NPM:

  1. Токен личного доступа GitHub:

    • Создайте токен личного доступа на GitHub с необходимыми разрешениями для репозитория.
    • В вашем проекте npm создайте или обновите файл .npmrcна корневом уровне.
    • Добавьте следующую строку в файл .npmrc:
      //npm.pkg.github.com/:_authToken=<YOUR_PERSONAL_ACCESS_TOKEN>
    • Замените <YOUR_PERSONAL_ACCESS_TOKEN>на сгенерированный токен.
    • Установите пакет с помощью следующей команды:
      npm install <USERNAME>/<REPO_NAME>
  2. Аутентификация по ключу SSH:

    • Создайте пару ключей SSH на своем локальном компьютере, если у вас ее еще нет.
    • Добавьте открытый ключ в свою учетную запись GitHub в разделе «Настройки» >«Ключи SSH и GPG».
    • В вашем проекте npm создайте или обновите файл .npmrcна корневом уровне.
    • Добавьте следующую строку в файл .npmrc:
      git+ssh://git@github.com/<USERNAME>/<REPO_NAME>.git
    • Замените <USERNAME>и <REPO_NAME>на свое имя пользователя GitHub и имя репозитория.
    • Установите пакет с помощью следующей команды:
      npm install
  3. Пакеты GitHub:

    • Включите пакеты GitHub для своего репозитория, выбрав «Настройки» >«Пакеты».
    • Создайте личный токен доступа с соответствующими разрешениями на чтение пакета.
    • В вашем проекте npm создайте или обновите файл .npmrcна корневом уровне.
    • Добавьте следующие строки в файл .npmrc:
      @<USERNAME>:registry=https://npm.pkg.github.com
      //npm.pkg.github.com/:_authToken=<YOUR_PERSONAL_ACCESS_TOKEN>
    • Замените <USERNAME>на свое имя пользователя GitHub и <YOUR_PERSONAL_ACCESS_TOKEN>на сгенерированный токен.
    • Установите пакет с помощью следующей команды:
      npm install @<USERNAME>/<REPO_NAME>
  4. Подмодули Git:

    • В вашем проекте npm перейдите в корневой каталог.
    • Добавьте частный репозиторий GitHub в качестве подмодуля с помощью следующей команды:
      git submodule add git@github.com:<USERNAME>/<REPO_NAME>.git
    • Зафиксируйте и отправьте изменения в репозиторий вашего проекта.
    • В файле package.jsonвашего проекта npm добавьте следующую строку в раздел dependencies:
      "<REPO_NAME>": "file:./<REPO_NAME>"
    • Замените <USERNAME>и <REPO_NAME>на свое имя пользователя GitHub и имя репозитория.
    • Установите пакет с помощью следующей команды:
      npm install

Следуя методам, изложенным в этом руководстве, вы можете легко включать частные репозитории GitHub в качестве зависимостей npm в свои проекты. Независимо от того, решите ли вы использовать токены личного доступа GitHub, аутентификацию по ключу SSH, пакеты GitHub или подмодули Git, эти методы позволят вам использовать преимущества частных репозиториев, одновременно беспрепятственно управляя вашими пакетами npm.