О вилках
Вилка — это новый репозиторий, который совместно использует параметры кода и видимости с исходным "вышестоящим" репозиторием. Вилки часто используются для итерации идей или изменений, прежде чем они будут предложены в вышестоящем репозитории, например в проектах открытый код или когда у пользователя нет доступа на запись в вышестоящий репозиторий. Дополнительные сведения см. в разделе Работа с вилками.
Предложение изменений в проект другого пользователя
Вилки можно использовать, например, для предложения изменений, призванных исправить ошибку. Вместо регистрации проблемы для обнаруженной ошибки можно выполнить указанные ниже действия.
- Создайте вилку репозитория.
- Внесите исправление.
- Отправьте запрос на вытягивание владельцу проекта.
Использование чужого проекта в качестве отправной точки для реализации собственной идеи
Программное обеспечение с открытым кодом строится на той идее, что, предоставляя общий доступ к коду, мы можем создавать более надежное и эффективное ПО. Дополнительные сведения см. в этом разделе на сайте Open Source Initiative.
Дополнительные сведения о применении принципов открытый код к работе по разработке в организации по your GitHub Enterprise Server instance см. в техническом документе GitHub "Введение в innersource".
При создании общедоступного репозитория из вилки чужого проекта обязательно включите файл лицензии, определяющий способ совместного использования проекта с другими пользователями. Дополнительные сведения см. в разделе о выборе лицензии для открытого кода на сайте choosealicense.com.
Дополнительные сведения о продуктах с открытым кодом, особенно о создании и развитии проекта с открытым кодом, мы создали руководства по продуктам с открытым кодом, которые помогут создать работоспособный открытый код сообщества, формируя практические рекомендации по созданию и обслуживанию репозиториев для проекта с открытым кодом. Вы также можете пройти бесплатный курс GitHub Skills по поддержанию сообществ разработчиков продуктов с открытым кодом.
Предварительные требования
Если вы еще этого не сделали, сначала настройте Git и проверку подлинности с помощью your GitHub Enterprise Server instance из Git. Дополнительные сведения см. в статье Настройка Git.
Создание вилки репозитория
Вы можете создать вилку проекта, чтобы предложить изменения в вышестоящем репозитории. В этом случае рекомендуется регулярно синхронизировать вилку с вышестоящим репозиторием. Для этого необходимо использовать GIT в командной строке. Вы можете попрактиковаться в настройке вышестоящего репозитория, используя репозиторий octocat/Spoon-Knife, вилку которого вы только что создали.
- На your GitHub Enterprise Server instanceперейдите в репозиторий octocat/Spoon-Knife .
- В правом верхнем углу страницы щелкните Вилка.
fork
Дополнительные сведения о GitHub CLI см. в статье Сведения о GitHub CLI.
Чтобы создать вилку репозитория, используйте подкоманду gh repo fork
.
gh repo fork REPOSITORY
Чтобы создать вилку в организации, используйте флаг --org
.
gh repo fork REPOSITORY --org "octo-org"
Клонирование вилки репозитория
Теперь у вас есть вилка репозитория Spoon-Knife, но нет файлов в этом репозитории локально на компьютере.
-
На your GitHub Enterprise Server instance перейдите к вилке репозитория Spoon-Knife.
-
Над списком файлов щелкните Код.
-
Скопируйте URL-адрес репозитория.
- Чтобы клонировать репозиторий с использованием HTTPS, в разделе "HTTPS" щелкните .
- Чтобы клонировать репозиторий с использованием ключа SSH и включить сертификат, выданный центром сертификации SSH вашей организации, щелкните SSH, а затем щелкните .
- Чтобы клонировать репозиторий с помощью GitHub CLI, щелкните GitHub CLI , а затем щелкните .
1. Откройте ТерминалТерминалGIT Bash. 4. Измените текущий рабочий каталог на расположение, где должен находиться клонированный каталог.
-
Введите
git clone
и вставьте URL-адрес, скопированный ранее. Он будет выглядеть следующим образом с вашим именем пользователя GitHub Enterprise Server вместоYOUR-USERNAME
:$ git clone https://HOSTNAME/YOUR-USERNAME/Spoon-Knife
-
Нажмите клавишу ВВОД. Будет создан локальный клон.
$ git clone https://HOSTNAME/YOUR-USERNAME/Spoon-Knife > Cloning into `Spoon-Knife`... > remote: Counting objects: 10, done. > remote: Compressing objects: 100% (8/8), done. > remote: Total 10 (delta 1), reused 10 (delta 1) > Unpacking objects: 100% (10/10), done.
Дополнительные сведения о GitHub CLI см. в статье Сведения о GitHub CLI.
Чтобы создать клон вилки, используйте флаг --clone
.
gh repo fork REPOSITORY --clone=true
-
В меню Файл щелкните Клонировать репозиторий.
Настройка Git для синхронизации вилки с вышестоящим репозиторием
При создании вилки проекта для предложения изменений в вышестоящем репозитории можно настроить Git для извлечения изменений из вышестоящего репозитория в локальный клон вилки.
-
На your GitHub Enterprise Server instanceперейдите в репозиторий octocat/Spoon-Knife .
-
Над списком файлов щелкните Код.
-
Скопируйте URL-адрес репозитория.
- Чтобы клонировать репозиторий с использованием HTTPS, в разделе "HTTPS" щелкните .
- Чтобы клонировать репозиторий с использованием ключа SSH и включить сертификат, выданный центром сертификации SSH вашей организации, щелкните SSH, а затем щелкните .
- Чтобы клонировать репозиторий с помощью GitHub CLI, щелкните GitHub CLI , а затем щелкните .
1. Откройте ТерминалТерминалGIT Bash.
-
Измените каталоги на расположение клонированной вилки.
- Чтобы перейти к домашнему каталогу, введите просто
cd
без дополнительного текста. - Чтобы получить список файлов и папок в текущем каталоге, введите
ls
. - Чтобы перейти в один из перечисленных каталогов, введите
cd your_listed_directory
. - Чтобы перейти на один каталог выше, введите
cd ..
.
- Чтобы перейти к домашнему каталогу, введите просто
-
Введите
git remote -v
и нажмите клавишу ВВОД. Вы увидите текущий настроенный удаленный репозиторий для вилки.$ git remote -v > origin https://HOSTNAME/YOUR_USERNAME/YOUR_FORK.git (fetch) > origin https://HOSTNAME/YOUR_USERNAME/YOUR_FORK.git (push)
-
Введите
git remote add upstream
, вставьте URL-адрес, скопированный на шаге 3, и нажмите клавишу Enter. Он будет выглядеть следующим образом.$ git remote add upstream https://HOSTNAME/ORIGINAL_OWNER/Spoon-Knife.git
-
Чтобы проверить новый вышестоящий репозиторий, указанный для вилки, введите
git remote -v
еще раз. Url-адрес вилки должен отображаться какorigin
, а URL-адрес вышестоящего репозитория — .upstream
$ git remote -v > origin https://HOSTNAME/YOUR_USERNAME/YOUR_FORK.git (fetch) > origin https://HOSTNAME/YOUR_USERNAME/YOUR_FORK.git (push) > upstream https://HOSTNAME/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (fetch) > upstream https://HOSTNAME/ORIGINAL_OWNER/ORIGINAL_REPOSITORY.git (push)
Теперь можно синхронизировать вилку с вышестоящим репозиторием с помощью нескольких команд GIT. Дополнительные сведения см. в разделе Синхронизация вилки.
Дополнительные сведения о GitHub CLI см. в статье Сведения о GitHub CLI.
Чтобы настроить удаленный репозиторий для вилки репозитория, используйте флаг --remote
.
gh repo fork REPOSITORY --remote=true
Чтобы указать имя удаленного репозитория, используйте флаг --remote-name
.
gh repo fork REPOSITORY --remote-name "main-remote-repo"
Редактирование вилки
Вы можете вносить любые изменения в вилку, в том числе указанные ниже.
- Создание ветвей. Ветви позволяют создавать новые функции или проверять идеи, не подвергая риску главный проект.
- Открытие запросов на вытягивание: Если вы хотите вернуться к вышестоящему репозиторию, вы можете отправить запрос исходному автору, чтобы вытащить вилку в репозиторий, отправив запрос на вытягивание.
Поиск репозитория для создания вилки
Создайте вилку репозитория, чтобы приступить к участию в проекте. Вы можете создать вилку частного или внутреннего репозитория в личной учетной записи или организации на your GitHub Enterprise Server instance, где у вас есть разрешения на создание репозитория, если параметры репозитория и корпоративные политики позволяют разветвления.
Next Steps
Вы создали вилку репозитория, клонировали ее и настроили вышестоящий репозиторий.
-
Дополнительные сведения о клонировании вилки и синхронизации изменений в вилке репозитория с компьютера см. в разделе Настройка Git.
-
Вы также можете создать новый репозиторий для размещения всех ваших проектов и общего доступа к коду на GitHub. Создание репозитория для проекта позволяет хранить код на GitHub. Таким образом вы получаете резервную копию результатов работы, которую можно предоставить другим разработчикам. Дополнительные сведения см. в разделе Создание репозитория."
-
Каждый репозиторий на GitHub принадлежит пользователю или организации. Вы можете взаимодействовать с людьми, репозиториями и организациями, подписавшись на них на GitHub Enterprise Server. Дополнительные сведения см. в разделе Социальное взаимодействие.
-
У GitHub большое сообщество поддержки, где можно обратиться за помощью и поговорить с людьми со всего мира. Присоединиться к беседе можно в GitHub Community.