Skip to main content

Передача репозитория

Репозитории можно передавать другим пользователям или учетным записям организации.

Сведения о передаче репозиториев

Когда вы переносите репозиторий новому владельцу, он может сразу администрировать содержимое, проблемы, pull requests, проектырелизы и настройки репозитория. При передаче репозитория также можно изменить имя репозитория. См . раздел AUTOTITLE.

Необходимые условия для передачи репозитория:

  • Когда вы переносите свой репозиторий на другой личный аккаунт, новый владелец получит подтверждение по электронной почте. Подтверждающее письмо содержит инструкции по принятию перевода. Если новый владелец не примет перевод в течение одного дня, срок действия приглашения истекёт.
  • Для передачи репозитория необходимо иметь доступ администратора к репозиторию.
  • Репозитории на GitHub.com могут быть переданы другим владельцам только на GitHub.com.
  • Репозитории нельзя передавать из-за корпоративный с управляемыми пользователями пределов предприятия, или наоборот.
  • Чтобы передать принадлежащий вам репозиторий организации, необходимо иметь разрешение на создание репозитория в целевой организации.
  • В целевой учетной записи не должно быть репозитория с тем же именем или вилки в той же сети.
  • После передачи исходный владелец репозитория добавляется в него в качестве участника совместной работы. Другие участники совместной работы в перенесенном репозитории остаются неизменными.
  • Отдельные репозитории, форкнувшиеся от частной или внутренней сети upstream, не могут быть переданы.
  • Внутренние репозитории могут передаваться только в организацию предприятия. Нельзя передать внутренний репозиторий из организации, принадлежащей одной корпоративной учетной записи, в организацию, принадлежащей другой корпоративной учетной записи.

Если вы перенесете приватный репозиторий на GitHub Free аккаунт пользователя или организации, репозиторий потеряет доступ к таким функциям, как защищённые филиалы и GitHub Pages. Дополнительные сведения см. в разделе Планы GitHub.

Если в переданном репозитории есть действие, указанное на GitHub Marketplace, или было более 100 клонов или более 100 использований GitHub Actions за неделю до передачи, GitHub при передаче репозитория имя владельца и имяOWNER/REPOSITORY-NAME репозитория () навсегда убирается в списке. Если вы попытаетесь создать репозиторий, используя имя ушедшего на пенсию владельца и имя репозитория, вы увидите ошибку: «Репозиторий REPOSITORY_NAME отстранён и не может быть использован повторно.»

Что передается вместе с репозиторием

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

  • Если передаваемый репозиторий является вилкой, он остается связанным с вышестоящим репозиторием.

  • Если передаваемый репозиторий содержит вилки, эти вилки останутся связанными с репозиторием после завершения передачи.

  • Если перенесённый репозиторий использует Хранилище больших файлов Git, все Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) объекты автоматически перемещаются. Этот перенос происходит на фоне, поэтому если Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) у вас много объектов или сами Git LFS (Git Large File Storage — поддержка хранения больших файлов в Git) объекты большие, перенос может занять некоторое время.

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

  • При передаче репозитория из организации в другую организацию типы проблем остаются неизменными, если новая организация имеет соответствующий тип проблемы, а все остальные типы проблем удаляются из проблем.

  • При переносе репозитория из организации на личный счет все типы вопросов удаляются из номера.

  • Если в переведённом репозитории есть сайт GitHub Pages , то ссылки на Git-репозиторий в Интернете и через активность Git перенаправляются. Однако мы не перенаправляем GitHub Pages , связанные с репозиторием.

  • Все ссылки на предыдущее расположение репозитория автоматически перенаправляются в новое расположение. При использовании git clone, git fetch или git push в передаваемом репозитории эти команды будут перенаправлены в новое расположение репозитория или на новый URL-адрес. Однако во избежание путаницы настоятельно рекомендуется обновить все существующие локальные клоны, указав новый URL-адрес репозитория. Для этого можно выполнить в командной строке команду git remote:

    git remote set-url origin NEW_URL
    

    Предупреждение

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

  • При передаче репозитория из организации в личную учетную запись участники совместной работы над репозиторием с правами только на чтение не переносятся. Это связано с тем, что участники совместной работы не могут иметь доступ только для чтения к репозиториям, принадлежащим личной учетной записи. Для получения дополнительной информации об уровнях разрешений репозитория смотрите Уровни разрешений для репозитория личной учетной записи и Роли репозиториев для организации.

  • Спонсоры, имеющие доступ к репозиторию посредством спонсорского уровня, могут быть затронуты. См. Управление уровнями спонсорского предложения.

  • Пакеты, связанные с репозиторием, могут быть переданы или могут потерять свою ссылку на репозиторий в зависимости от реестра, к которому они принадлежат. См . раздел AUTOTITLE.

См . раздел AUTOTITLE.

Передача репозиториев и организации

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

После передачи репозитория организации к нему применяются разрешения для репозиториев по умолчанию и привилегии членства по умолчанию, настроенные в организации.

Передача репозитория, принадлежащего вашей личной учетной записи

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

Если вы опубликовали GitHub Pages сайт в частном репозитории и добавили пользовательский домен, перед передачей репозитория возможно, стоит удалить или обновить DNS-записи, чтобы избежать риска захвата домена. См. Управление пользовательским доменом для вашего сайта GitHub Pages.

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

    Снимок экрана: заголовок репозитория с вкладками. Вкладка "Параметры" выделена темно-оранжевым контуром.

  3. В нижней части страницы в разделе "Зона опасности" нажмите кнопку "Передача".

  4. Прочитайте сведения о передаче репозитория, а затем в разделе "Новый владелец" выберите способ указания нового владельца.

    • Чтобы выбрать одну из организаций, выберите одну из моих организаций.

      • Выберите раскрывающееся меню и щелкните организацию.

      • При необходимости в поле "Имя репозитория" введите новое имя репозитория.

        Примечание.

        Чтобы переименовать репозиторий, необходимо быть владельцем целевой организации.

    • Чтобы указать организацию или имя пользователя, выберите "Указать организацию или имя пользователя", а затем введите имя организации или имя пользователя нового владельца.

  5. Прочитайте предупреждения о потенциальной потере функций в зависимости от подписки нового владельца GitHub .

  6. Чтобы подтвердить имя репозитория типа, введите имя репозитория, который вы хотите перенести, а затем щелкните "Я понимаю", передайте этот репозиторий.

Передача репозитория, принадлежащего вашей организации

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

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

  2. На GitHubперейдите на главную страницу репозитория.

  3. Под именем репозитория щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

    Снимок экрана: заголовок репозитория с вкладками. Вкладка "Параметры" выделена темно-оранжевым контуром.

  4. В нижней части страницы в разделе "Зона опасности" нажмите кнопку "Передача".

  5. Прочитайте сведения о передаче репозитория, а затем в разделе "Новый владелец" выберите способ указания нового владельца.

    • Чтобы выбрать одну из организаций, выберите одну из моих организаций.

      • Выберите раскрывающееся меню и щелкните организацию.

      • При необходимости в поле "Имя репозитория" введите новое имя репозитория.

        Примечание.

        Чтобы переименовать репозиторий, необходимо быть владельцем целевой организации.

    • Чтобы указать организацию или имя пользователя, выберите "Указать организацию или имя пользователя", а затем введите имя организации или имя пользователя нового владельца.

  6. Прочитайте предупреждения о потенциальной потере функций в зависимости от подписки нового владельца GitHub .

  7. Чтобы подтвердить имя репозитория типа, введите имя репозитория, который вы хотите перенести, а затем щелкните "Я понимаю", передайте этот репозиторий.