Как установить программу с github на linux

Обновлено: 03.07.2024

Прежде чем вы начнете использовать Git, вы должны сделать его доступным на своем компьютере. Даже если он уже установлен, возможно, стоит обновить его до последней версии. Вы можете установить его как пакет или с помощью другого установщика, либо загрузить исходный код и скомпилировать его самостоятельно.

Эта книга написана с использованием Git версии 2.8.0. Хотя большинство команд, которые мы используем, должны работать даже в старых версиях Git, некоторые из них могут не работать или могут работать немного иначе, если вы используете более старую версию. Поскольку Git превосходно поддерживает обратную совместимость, любая версия после 2.8 должна работать нормально.

Установка в Linux

Если вы хотите установить основные инструменты Git в Linux с помощью бинарного установщика, обычно это можно сделать с помощью инструмента управления пакетами, который входит в ваш дистрибутив. Если вы работаете в Fedora (или в любом близком дистрибутиве на основе RPM, таком как RHEL или CentOS), вы можете использовать dnf :

Если вы используете дистрибутив на основе Debian, например Ubuntu, попробуйте apt :

Установка на macOS

Существует несколько способов установить Git на Mac. Вероятно, проще всего установить инструменты командной строки Xcode. В Mavericks (10.9) или выше вы можете сделать это, просто попробовав запустить git из терминала в первый раз.

Если он еще не установлен, вам будет предложено установить его.

Установщик Git macOS

Установка в Windows

Для автоматической установки можно использовать пакет Git Chocolatey. Обратите внимание, что пакет Chocolatey поддерживается сообществом.

Установка из исходного кода

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

Если вы хотите установить Git из исходного кода, вам потребуются следующие библиотеки, от которых зависит Git: autotools, curl, zlib, openssl, expat и libiconv. Например, если вы работаете в системе с dnf (например, Fedora) или apt-get (например, в системе на основе Debian), вы можете использовать одну из этих команд для установки минимальных зависимостей для компиляции и установки Git. двоичные файлы:

Чтобы иметь возможность добавлять документацию в различных форматах (doc, html, info), необходимы следующие дополнительные зависимости:

Пользователи RHEL и производных от RHEL, таких как CentOS и Scientific Linux, должны будут включить репозиторий EPEL для загрузки пакета docbook2X.

Если вы используете дистрибутив на основе Debian (Debian/Ubuntu/Ubuntu-производные), вам также потребуется пакет install-info:

Если вы используете дистрибутив на основе RPM (Fedora/RHEL/производные от RHEL), вам также потребуется пакет getopt (который уже установлен в дистрибутиве на основе Debian):

Кроме того, если вы используете Fedora/RHEL/производные RHEL, вам необходимо сделать следующее:

Гэри Ньюэлл был внештатным сотрудником, разработчиком приложений и тестировщиком программного обеспечения с более чем 20-летним опытом работы в сфере ИТ, работая с Linux, UNIX и Windows.

Райан Периан — сертифицированный ИТ-специалист, обладатель множества сертификатов в области ИТ и более 12 лет опыта работы на должностях поддержки и управления в сфере ИТ.

В этой статье

Перейти к разделу

Git с открытым исходным кодом — самая используемая система контроля версий в мире. Зрелый проект был разработан Линусом Торвальдсом, создателем операционной системы Linux, и он используется в огромном количестве программных проектов — как коммерческих, так и с открытым исходным кодом, — которые зависят от Git для контроля версий.

В этом руководстве показано, как получить проект из Git, как установить программное обеспечение в вашей системе и как изменить код, что требует знаний в области программирования.

Иллюстрация человека, работающего на компьютере

Как найти программы с помощью Git

Посетите веб-страницу изучения на GitHub, чтобы увидеть рекомендуемые и популярные репозитории, а также ссылки на руководства и обучение. Просмотрите различные категории приложений, которые вы хотите загрузить, и попробуйте их использовать, изменять, компилировать и устанавливать. Используйте поле поиска в верхней части экрана, где вы можете найти определенную программу или любую категорию программного обеспечения, доступного на сайте.

Пример клонирования репозитория Git

В терминологии Git загрузка репозитория означает его "клонирование". Это потому, что вы делаете точную копию репозитория Git на своем компьютере.Процедура проста, но в вашей системе должен быть установлен Git.

Если вы работаете в системе Linux, такой как Ubuntu, вам повезло. Git доступен в репозиториях пакетов вашего дистрибутива. Установите его так же, как и любое другое приложение. Почти каждый дистрибутив называет пакет «git».

Git является бесплатным и открытым исходным кодом, поэтому он не будет стоить вам ни копейки на любой платформе. Пользователи Windows могут найти последнюю версию на странице загрузки Git Windows. Пользователи Mac могут найти его на странице загрузки Git для Mac.

В этом руководстве будет использоваться небольшая программа командной строки cowsay, которая отображает сообщение коровы ASCII в виде всплывающей подсказки.

Для начала введите cowsay в поле поиска GitHub. Вы заметите, что есть несколько доступных версий, которые вы можете выбрать. Пример в этом руководстве будет работать один от разработчика "Шакон". Это довольно простая версия, написанная на Perl, поэтому с ней будет относительно легко работать и изменять ее.

GitHub page cowsay

Чтобы клонировать этот конкретный репозиторий cowsay, введите следующую команду в окно терминала.

Команда git запускает Git. Затем предлагается клонировать репозиторий и предоставляется ссылка на репозиторий Cowsay на GitHub. Ссылку на клонирование Git можно найти на GitHub в разделе «Клонировать» или «Загрузить» прямо над таблицей, отображающей содержимое репозитория.

Репозиторий клонов Git

Как скомпилировать и установить код

Сначала установите приложение, чтобы убедиться, что оно работает. Как вы это сделаете, зависит от проекта, который вы загрузили. Например, для проектов C, вероятно, потребуется запустить makefile с помощью команды make, тогда как для проекта cowsay в этом примере требуется запустить скрипт оболочки.

Откуда вы знаете, что делать?

Вы только что клонировали репозиторий в любой каталог, в котором находились, когда запускали команду 'clone'. Все из репозитория будет находиться в новом каталоге, названном в честь этого репозитория. В данном случае это ковбой. Перейдите в папку cowsay и перечислите ее содержимое.

Во время установки вас спросят, согласны ли вы установить cowsay в предоставленную по умолчанию папку. Вы можете либо нажать клавишу «Ввод», чтобы продолжить, либо ввести новый путь. Если вам нужен путь по умолчанию, вам, вероятно, придется повторно запустить команду с помощью «sudo».

Cowsay установить из Git

Как управлять Cowsay

Все, что вам нужно сделать, чтобы запустить cowsay, это ввести следующую команду:

Слова hello world появляются в речевом пузыре изо рта коровы.

Cowsay hello world

Изменение Cowsay

Теперь, когда вы установили cowsay, вы можете изменить файл, используя ваш любимый редактор. В этом примере редактор nano используется следующим образом:

Файл конфигурации Cowsay

Вы можете указать переключатели для команды cowsay, чтобы изменить глаза коровы.

Например, cowsay -g показывает знак доллара как глаза.

Вы можете изменить файл, чтобы создать параметр циклопа, чтобы при вводе cowsay -c у коровы был один глаз.

Первая строка, которую нужно изменить, это строка 46, которая выглядит следующим образом:

Это все доступные переключатели, которые можно использовать с cowsay. Чтобы добавить -c в качестве опции, измените строку следующим образом:

Между строками 51 и 58 вы видите следующие строки:

Как видите, для каждого параметра есть переменная, объясняющая, что будет делать переключатель. Например, $greedy = $opts['g]';

Добавьте одну строку для изменения ключа -c следующим образом:

В строке 144 есть подпрограмма, называемая "construct_face", которая используется для построения морды коровы.

Код выглядит следующим образом:

Для каждой из переменных, указанных ранее, есть разные пары букв, которые помещаются в переменную $eyes.

Добавьте один для переменной $cyclops:

Сохраните файл и выполните следующую команду, чтобы переустановить cowsay.

Теперь, когда вы запускаете cowsay -c hello world, у коровы только один глаз.

Одной из самых сильных сторон вашего дистрибутива Linux является его менеджер пакетов и соответствующий репозиторий программного обеспечения. С ними у вас есть все необходимые инструменты и ресурсы для загрузки и установки нового программного обеспечения на ваш компьютер в полностью автоматическом режиме.

Но, несмотря на все их усилия, сопровождающие пакетов не могут справиться со всеми вариантами использования. Они также не могут упаковать все доступное программное обеспечение. Так что все еще бывают ситуации, когда вам придется компилировать и устанавливать новое программное обеспечение самостоятельно. Что касается меня, то наиболее распространенная причина, по которой мне приходится компилировать какое-то программное обеспечение, — это когда мне нужно запустить очень конкретную версию или изменить исходный код, используя некоторые необычные параметры компиляции.

Если ваши потребности относятся ко второй категории, скорее всего, вы уже знаете, что делать. Но для подавляющего большинства пользователей Linux компиляция и установка программного обеспечения из исходного кода в первый раз может выглядеть как церемония инициации: несколько пугающая; но с обещанием войти в новый мир возможностей и престижного места в привилегированном сообществе.

[irp posts="13491″ name="Как установить и удалить программное обеспечение в Ubuntu"]

А. Установка программного обеспечения из исходного кода в Linux

И это именно то, что мы будем делать здесь. Для целей этой статьи предположим, что мне нужно установить NodeJS 8.1.1 в моей системе. Именно эта версия. Версия, недоступная в репозитории Debian:

Теперь установить NodeJs в Ubuntu или Debian довольно просто, если вы делаете это с помощью менеджера пакетов. Но давайте сделаем это через исходный код.

Шаг 1. Получение исходного кода с GitHub

Итак, давайте перейдем прямо туда.

Официальный репозиторий NodeJS на GitHub

Если вы не знакомы с GitHub, git или любой другой системой контроля версий, стоит упомянуть, что репозиторий содержит текущий исходный код программного обеспечения, а также историю всех изменений, внесенных в это программное обеспечение за многие годы. В конце концов, до самой первой строчки, написанной для этого проекта. Для разработчиков сохранение этой истории имеет много преимуществ. Для нас сегодня главным является то, что мы сможем получить исходники для проекта в том виде, в каком они были в любой момент времени. Точнее, я смогу получить исходники в том виде, в каком они были, когда была выпущена нужная мне версия 8.1.1. Даже если с тех пор было много модификаций.

Выберите тег v8.1.1 в репозитории NodeJS GitHub

На GitHub вы можете использовать кнопку «Ветвь» для перехода между различными версиями программного обеспечения. «Ветка» и «теги» — несколько связанные понятия в Git. По сути, разработчики создают «ветви» и «теги», чтобы отслеживать важные события в истории проекта, например, когда они начинают работать над новой функцией или публикуют выпуск. Я не буду вдаваться в подробности здесь, все, что вам нужно знать, это то, что я ищу версию с тегом «v8.1.1»

Репозиторий NodeJS GitHub, каким он был на момент создания тега v8.1.1

После выбора тега «v8.1.1» страница обновляется, и наиболее очевидным изменением является то, что тег теперь отображается как часть URL-адреса. Кроме того, вы заметите, что дата изменения файла также отличается. Исходное дерево, которое вы сейчас видите, существовало на момент создания тега v8.1.1. В каком-то смысле инструмент контроля версий, такой как git, можно рассматривать как машину для путешествий во времени, позволяющую перемещаться вперед и назад по истории проекта.

Скачать репозиторий NodeJS GitHub в виде кнопки ZIP

На данный момент мы можем загрузить исходный код NodeJS 8.1.1. Нельзя не заметить большую синюю кнопку, предлагающую скачать ZIP-архив проекта. Что касается меня, я скачаю и извлеку ZIP из командной строки для объяснения. Но если вы предпочитаете использовать инструмент с графическим интерфейсом, не стесняйтесь сделать это:

Загрузка ZIP-архива работает отлично. Но если вы хотите сделать это «как профессионал», я бы предложил использовать непосредственно инструмент git для загрузки исходников. Это совсем не сложно — и это будет приятное первое знакомство с инструментом, с которым вы часто сталкиваетесь:

Кстати, если у вас есть проблема, просто рассмотрите первую часть этой статьи как общее введение. Позже у меня будут более подробные пояснения для дистрибутивов на основе Debian и RedHat, чтобы помочь вам решить распространенные проблемы.

В любом случае, когда бы вы ни загружали исходный код с помощью git или в виде ZIP-архива, теперь у вас должны быть точно такие же исходные файлы в текущем каталоге:

Шаг 2. Понимание системы сборки программы

Обычно мы говорим о «компиляции исходников», но компиляция — это только один из этапов, необходимых для создания работающего программного обеспечения из исходников. Система сборки – это набор инструментов и методов, которые используются для автоматизации и формулирования этих различных задач, чтобы полностью создать программное обеспечение, выполнив всего несколько команд.

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

NodeJS использует систему сборки в стиле GNU, это популярный выбор в сообществе открытого исходного кода, и опять же, это хороший способ начать свое путешествие.

Написание и настройка системы сборки — довольно сложная задача, но для «конечного пользователя» системы сборки в стиле GNU облегчают задачу с помощью двух инструментов: configure и make .

Файл конфигурации представляет собой сценарий для конкретного проекта, который проверяет конфигурацию целевой системы и доступные функции, чтобы убедиться, что проект может быть построен, в конечном итоге учитывая особенности текущей платформы.

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

Инструмент make, с другой стороны, является инструментом POSIX, доступным в любой Unix-подобной системе. Он прочитает файл Makefile для конкретного проекта и выполнит необходимые операции для сборки и установки вашей программы.

Но, как и всегда в мире Linux, у вас все еще есть некоторая снисходительность в настройке сборки в соответствии с вашими конкретными потребностями.

Команда configure -help покажет вам все доступные параметры конфигурации. Опять же, это очень специфично для проекта. И, честно говоря, иногда необходимо покопаться в проекте, прежде чем полностью понять значение каждого параметра конфигурации.

Но есть как минимум одна стандартная опция GNU Autotools, которую вы должны знать: опция --prefix. Это связано с иерархией файловой системы и местом, где будет установлено ваше программное обеспечение.

[irp posts="14419″ name="8 советов и приемов Vim, которые сделают вас профессиональным пользователем"]

Шаг 3. FHS

Иерархия файловой системы Linux в типичном дистрибутиве в основном соответствует стандарту иерархии файловой системы (FHS)

В этом стандарте объясняется назначение различных каталогов вашей системы: /usr , /tmp , /var и т. д.

При использовании GNU Autotools и большинства других систем сборки место установки по умолчанию для вашего нового программного обеспечения будет /usr/local . Что является хорошим выбором, поскольку согласно FSH «Иерархия /usr/local предназначена для использования системным администратором при локальной установке программного обеспечения? Он должен быть защищен от перезаписи при обновлении системного программного обеспечения. Он может использоваться для программ и данных, которые доступны группе хостов, но не находятся в /usr».

Иерархия /usr/local каким-то образом копирует корневой каталог, и вы найдете там /usr/local/bin для исполняемых программ, /usr/local/lib для библиотек, /usr/local/share для независимых от архитектуры файлы и т.д.

Единственная проблема при использовании дерева /usr/local для пользовательской установки программного обеспечения заключается в том, что файлы для всего вашего программного обеспечения будут смешаны там. В частности, после установки нескольких программ будет сложно отследить, какой именно файл /usr/local/bin и /usr/local/lib какому программному обеспечению принадлежит. Однако это не вызовет никаких проблем с системой. В конце концов, /usr/bin — примерно такая же каша. Но это станет проблемой в тот день, когда вы захотите удалить установленное вручную программное обеспечение.

Чтобы решить эту проблему, я обычно предпочитаю устанавливать собственное программное обеспечение в поддереве /opt. Еще раз, чтобы процитировать FHS:

_”/opt зарезервирован для установки дополнительных пакетов программного обеспечения.

Пакет, устанавливаемый в /opt, должен размещать свои статические файлы в отдельном каталоге /opt/

дерево каталогов, где

это имя, описывающее программный пакет и

является зарегистрированным именем провайдера в LANANA»._

Поэтому мы создадим подкаталог /opt специально для нашей пользовательской установки NodeJS. И если когда-нибудь я захочу удалить это программное обеспечение, мне просто придется удалить этот каталог:

Что-либо, кроме «ok» после завершения команды make, будет означать, что в процессе сборки произошла ошибка. Поскольку мы запускали параллельную сборку из-за параметра -j, не всегда легко получить сообщение об ошибке, учитывая большой объем вывода, создаваемого системой сборки.

В случае возникновения проблемы просто перезапустите make , но на этот раз без параметра -j. И ошибка должна появиться ближе к концу вывода:

Наконец, после завершения компиляции вы можете установить свое программное обеспечение на его место, выполнив команду:

Б. Что делать, если при установке из исходного кода что-то пойдет не так?

То, что я объяснил выше, в основном то, что вы можете увидеть на странице «инструкции по сборке» хорошо задокументированного проекта. Но учитывая, что цель этой статьи состоит в том, чтобы позволить вам скомпилировать ваше первое программное обеспечение из исходных кодов, возможно, стоит потратить время на изучение некоторых распространенных проблем. Итак, я проделаю всю процедуру еще раз, но на этот раз со свежими и минимальными системами Debian 9.0 и CentOS 7.0, чтобы вы могли увидеть ошибки, с которыми я столкнулся, и то, как я их решил.

Из Debian 9.0 «Растягивание»

Эту проблему довольно легко диагностировать и решить. Просто установите пакет git:

Нет проблем.

Очевидно, что для компиляции проекта нужен компилятор. Поскольку NodeJS написан на языке C++, нам нужен компилятор C++. Здесь я установлю `g++`, компилятор GNU C++ для этой цели:

Еще один недостающий инструмент. Те же симптомы. То же решение:

Обратите внимание: я установил различные инструменты один за другим, чтобы показать, как диагностировать проблемы с компиляцией, и показать вам типичное решение этих проблем. Но если вы будете искать дополнительную информацию по этой теме или читать другие руководства, вы обнаружите, что в большинстве дистрибутивов есть «метапакеты», действующие как зонтик для установки некоторых или всех типичных инструментов, используемых для компиляции программного обеспечения. В системах на основе Debian вы, вероятно, столкнетесь с пакетом build-essentials для этой цели. А в дистрибутивах на основе Red Hat это будет группа "Инструменты разработки".

Из CentOS 7.0

Команда не найдена? Просто установите его с помощью менеджера пакетов yum:

С. Внесение изменений в программное обеспечение, установленное из исходного кода

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

Откройте файл node/src/node.cc в вашем любимом текстовом редакторе (vim, nano, gedit, …). И попробуйте найти этот фрагмент кода:

Это примерно строка 3830 файла. Затем измените строку, содержащую printf, чтобы она соответствовала этой строке:

Затем вернитесь к своему терминалу. Прежде чем идти дальше — и чтобы дать вам больше информации о возможностях git — вы можете проверить, изменили ли вы нужный файл:

Вы должны увидеть «-» (знак минус) перед строкой, как это было до того, как вы ее изменили. И «+» (знак плюс) перед строкой после ваших изменений.

На этот раз единственная причина, по которой может произойти сбой, заключается в том, что вы допустили опечатку при изменении кода. В этом случае повторно откройте файл node/src/node.cc в текстовом редакторе и исправьте ошибку.

Поздравляем! Вы внесли первое изменение в программу с открытым исходным кодом!

Д. Разрешить оболочке найти наше специальное программное обеспечение для сборки

Возможно, вы заметили, что я всегда запускаю только что скомпилированное программное обеспечение NodeJS, указав абсолютный путь к двоичному файлу.

Это работает. Но это раздражает, мягко говоря. На самом деле есть два распространенных способа исправить это.

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

Здесь, в этой системе Debian, если вы явно не укажете какой-либо каталог как часть имени команды, оболочка сначала будет искать исполняемые программы в /usr/local/bin , а затем, если они не будут найдены, в /usr/ bin , то если не найдено в /bin то если не найдено в /usr/local/games то если не найдено в /usr/games , то если не найдено ... оболочка сообщит об ошибке "команда не найдена"< /эм>.

Учитывая это, у нас есть два способа сделать команду доступной для оболочки: добавив ее в один из уже настроенных каталогов PATH. Или добавив в PATH директорию, содержащую наш исполняемый файл.

Добавление ссылки из /usr/local/bin

Простое копирование исполняемого файла node из /opt/node/bin в /usr/local/bin было бы плохой идеей, поскольку при этом исполняемая программа больше не сможет найти другие необходимые компоненты принадлежат /opt/node/ (программное обеспечение обычно размещает свои файлы ресурсов относительно своего собственного местоположения).

Таким образом, традиционный способ сделать это — использовать символическую ссылку:

Это простое и эффективное решение, особенно если программный пакет состоит всего из нескольких хорошо известных исполняемых программ, поскольку вам необходимо создать символическую ссылку для каждой команды, вызываемой пользователем. Например, если вы знакомы с NodeJS, вы знаете и сопутствующее приложение npm, на которое я также должен ссылаться из /usr/local/bin. Но я предоставил вам это в качестве упражнения.

Изменение ПУТИ

Во-первых, если вы попробовали предыдущее решение, удалите символическую ссылку узла, созданную ранее, чтобы начать с чистого состояния:

А теперь волшебная команда для изменения PATH:

Проще говоря, я заменил содержимое переменной среды PATH ее предыдущим содержимым, но с префиксом /opt/node/bin . Итак, как вы можете себе представить, оболочка сначала будет искать исполняемые программы в каталоге /opt/node/bin. Мы можем подтвердить это с помощью команды which:

Принимая во внимание, что решение «ссылка» является постоянным, как только вы создали символическую ссылку в /usr/local/bin , изменение PATH действует только в текущей оболочке. Я оставлю вас для изучения того, как внести изменения в перманенты PATH. Как подсказка, это связано с вашим «профилем». Если вы найдете решение, не стесняйтесь поделиться им с другими читателями, используя раздел комментариев ниже!

Е. Как удалить это недавно установленное программное обеспечение из исходного кода

Поскольку наше специально скомпилированное программное обеспечение NodeJS полностью находится в каталоге /opt/node-v8.1.1, удаление этого программного обеспечения требует не больше усилий, чем использование команды rm для удаления этого каталога:

Затем, если вы изменили PATH , вам придется отменить эти изменения, что совсем несложно.

И если вы создали ссылки из /usr/local/bin, вам придется удалить их все:

Подождать? Где был ад зависимостей?

И в заключение: если вы читали о компиляции собственного пользовательского программного обеспечения, возможно, вы слышали об аде зависимостей. Это прозвище для той досадной ситуации, когда, прежде чем вы сможете успешно скомпилировать программное обеспечение, вы должны сначала скомпилировать предварительную библиотеку, которая, в свою очередь, требует другой библиотеки, которая, в свою очередь, может быть несовместима с каким-то другим программным обеспечением, которое у вас уже есть. установлено.

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

Для этой статьи я намеренно решил установить NodeJS, так как он практически не имеет зависимостей. Я сказал «практически», потому что на самом деле он имеет зависимости. Но исходный код этих зависимостей находится в исходном репозитории проекта (в подкаталоге node/deps), поэтому вам не нужно загружать и устанавливать их вручную заранее.

Но если вы хотите узнать больше об этой проблеме и узнать, как с ней справиться, дайте мне знать, используя раздел комментариев ниже: это отличная тема для более сложной статьи!

Если ваше приложение является общедоступным, любой может использовать GitHub Marketplace или URL-адрес установки, чтобы установить приложение в свой репозиторий. Если ваше приложение является частным, только вы можете установить его в принадлежащих вам репозиториях.

Примечание. Ваше приложение GitHub будет иметь доступ ко всем репозиториям, которые оно создает, даже если кто-то установит ваше приложение только в выбранных репозиториях.

Установка частного приложения GitHub в репозиторий

После того как вы создадите частное приложение GitHub, вы сможете установить его в один из репозиториев вашей организации или пользователя. Дополнительные сведения см. в разделе «Процесс частной установки».

Разрешения на установку приложения

  1. На странице настроек приложений GitHub выберите свое приложение.
  2. На левой боковой панели нажмите «Установить приложение».
  3. Нажмите «Установить» рядом с организацией или учетной записью пользователя, содержащей правильный репозиторий.
  4. Установите приложение во все репозитории или выберите репозитории.
  5. После установки вы увидите параметры конфигурации приложения в выбранной учетной записи. Вы можете внести изменения здесь или повторить предыдущие шаги, чтобы установить приложение в другом аккаунте.
  6. Предложение вашего приложения на GitHub Marketplace

    Вы можете предложить платную или бесплатную версию своего приложения на GitHub Marketplace, где люди смогут искать и просматривать сведения о вашем приложении.GitHub Marketplace автоматически устанавливает приложение GitHub после завершения заказа.

    См. "Начало работы с GitHub Marketplace", чтобы узнать больше о размещении вашего приложения на GitHub Marketplace.

    Подробнее о том, как пользователи могут установить ваше приложение из GitHub Marketplace, см. в разделе "Покупка и установка приложений в GitHub Marketplace".

    Разрешить людям устанавливать ваше общедоступное приложение в своем репозитории

    Вы можете разрешить другим устанавливать ваше общедоступное приложение, указав URL-адрес установки в таких местах, как домашняя страница вашего приложения. Затем вы можете указать на главную страницу своего приложения с целевой страницы на GitHub.

    Если вы переходите с приложения OAuth на приложение GitHub, вы можете использовать параметры запроса для предварительного выбора репозиториев и учетной записи при установке приложения GitHub. Дополнительные сведения см. в разделе "Перенос приложений OAuth в приложения GitHub".

    Эти шаги предполагают, что вы создали приложение GitHub:

    Авторизация пользователей во время установки

    Вы можете упростить процесс авторизации, выполнив его во время установки приложения. Для этого выберите Запрашивать авторизацию пользователя (OAuth) во время установки при создании или изменении приложения в GitHub. Дополнительные сведения см. в разделе "Создание приложения GitHub".

    После того как кто-то установит ваше приложение, вам потребуется получить токен доступа для пользователя. См. шаги 2 и 3 в разделе "Идентификация пользователей на вашем сайте", чтобы узнать больше.

    Сохранение состояния приложения во время установки

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

    Читайте также: