О манекенах
После выполнения миграции с помощью GitHub Enterprise Importerвсе действия пользователя в перенесенном репозитории (за исключением фиксаций Git) относятся к удостоверениям заполнителей, называемым манекенами.
Каждый манекен имеет только отображаемое имя, которое поступает из отображаемого имени в исходном репозитории. Манекены не имеют доступа к организации или репозиторию. Манекены всегда используют тот же аватар, призрак октокат и включают метку манекена после отображаемого имени.

Вы можете переопределить историю каждого манекена члену организации с помощью GitHub CLI или в браузере. Если вы используете GitHub CLI, вы сможете восстановить манекены оптом.
Восстановление является необязательным и может произойти в любое время после завершения миграции. По этой причине вы можете разрешить команде начать работу в перенесенных репозиториях перед восстановлением.
Манекены не используются для атрибуции фиксации Git. Дополнительные сведения о присвоении фиксации см. в разделе "Управление авторством для фиксаций Git" ниже.
Восстановление манекенов
Вы можете восстановить манекены с помощью GitHub CLI (рекомендуется) или браузера.
По умолчанию восстановление манекена отправляет приглашение attribution целевому пользователю.
Целевой пользователь может принять или отклонить приглашение. После того как пользователь принимает приглашение на присвоение, все вклады, которые ранее приписываются манекену, будут приписываться пользователю. В будущих миграциях в ту же организацию любые вклады из одного и того же манекена будут автоматически удалены для того же пользователя.
Если в вашей организации используются Enterprise Managed Users и вы решили восстановить манекены с помощью GitHub CLI, то при необходимости можно пропустить процесс приглашения, немедленно отменив манекин без утверждения пользователя.
Примечание.
- После передачи репозитория в другую организацию невозможно восстановить манекены. Если вы хотите перенести репозиторий в другую организацию после миграции, перед переносом необходимо восстановить манекены.
- При освобождении манекенов можно использовать только существующие члены организации. Прежде чем пытаться восстановить манекен, убедитесь, что пользователь GitHub, который вы хотите пригласить, уже добавлен в организацию.
GitHub Enterprise Importer не переносит доступ пользователей к репозиториям. После освобождения манекенов, если у любого из пользователей еще нет соответствующего доступа к репозиторию через членство в команде, необходимо отдельно предоставить пользователям доступ к репозиторию. Дополнительные сведения см. в разделе "Управление доступом отдельного человека к репозиторию организации".
Восстановление манекенов с помощью GitHub CLI (рекомендуется)
Вы можете использовать GitHub CLI для освобождения манекенов по отдельности или в массовом порядке. Дополнительные сведения об установке и обновлении расширений миграции для GitHub CLIсм. в разделе Сведения о GitHub Enterprise Importer.
Точная команда, которую необходимо использовать, зависит от расширения используемого расширения GitHub CLI .
- Восстановление манекенов с помощью GEI extension
- Восстановление манекенов с помощью ADO2GH extension
- Восстановление манекенов с помощью BBS2GH extension
Восстановление манекенов с помощью GEI extension
Если источником миграции является продукт GitHub, вы можете восстановить манекены с помощью GEI extension of the GitHub CLI.
- Если у вас еще нет
GH_PATпеременной среды для personal access token с доступом к целевой организации, добавьте--github-target-pat TOKENк каждой из приведенных ниже команд, заменивTOKENpersonal access token. Требования к personal access token см. в разделе Управление доступом к миграции между продуктами GitHub. - Если вы переносите данные GHE.com, добавьте
--target-api-url TARGET-API-URL, где TARGET-API-URL является базовым URL-адресом API для поддомена предприятия. Например:https://api.octocorp.ghe.com.
-
При необходимости для массового восстановления манекенов создайте CSV-файл, который сопоставляет манекены с членами организации.
-
Чтобы создать CSV-файл со списком манекенов для организации, используйте
gh gei generate-mannequin-csvкоманду, заменив DESTINATION целевой организацией и FILENAME именем файла для результирующего CSV-файла.При необходимости, чтобы включить манекены, которые уже были восстановлены, добавьте
--include-reclaimedфлаг.Shell gh gei generate-mannequin-csv --github-target-org DESTINATION --output FILENAME.csv
gh gei generate-mannequin-csv --github-target-org DESTINATION --output FILENAME.csv -
Измените CSV-файл, добавив имя пользователя члена организации, соответствующего каждому манекену.
-
Сохраните файл.
-
-
Чтобы восстановить манекины, используйте
gh gei reclaim-mannequinкоманду.-
Чтобы повторно восстановить манекены в массовом режиме с созданным ранее файлом сопоставления, замените DESTINATION целевой организацией и FILENAME именем файла сопоставления.
Shell gh gei reclaim-mannequin --github-target-org DESTINATION --csv FILENAME.csv
gh gei reclaim-mannequin --github-target-org DESTINATION --csv FILENAME.csv -
Чтобы восстановить отдельный манекин, замените DESTINATION целевой организацией, MANNEQUIN именем входа манекена и USERNAME именем пользователя члена организации, соответствующего манекину.
Если имеется несколько манекенов с одинаковым именем входа, можно заменить
--mannequin-user MANNEQUIN--mannequin-ID IDна , заменив идентификатор идентификатором манекена.Если в организации используются Enterprise Managed Users и вы хотите пропустить приглашение attribution, чтобы немедленно освободить манекин, добавьте
--skip-invitationаргумент.Shell gh gei reclaim-mannequin --github-target-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
gh gei reclaim-mannequin --github-target-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
-
По умолчанию член организации получит приглашение по электронной почте, и манекен не будет восстановлен до тех пор, пока участник не примет приглашение.
Восстановление манекенов с помощью ADO2GH extension
Если источником миграции является Azure DevOps, можно восстановить манекены с помощью ADO2GH extension of the GitHub CLI.
- Если у вас еще нет
GH_PATпеременной среды для personal access token с доступом к целевой организации, добавьте--github-target-pat TOKENк каждой из приведенных ниже команд, заменивTOKENpersonal access token. - Если вы переносите данные GHE.com, добавьте
--target-api-url TARGET-API-URL, где TARGET-API-URL является базовым URL-адресом API для поддомена предприятия. Например:https://api.octocorp.ghe.com.
-
При необходимости для массового восстановления манекенов создайте CSV-файл, который сопоставляет манекены с членами организации.
-
Чтобы создать CSV-файл со списком манекенов для организации, используйте
gh ado2gh generate-mannequin-csvкоманду, заменив DESTINATION целевой организацией и FILENAME именем файла для результирующего CSV-файла.При необходимости, чтобы включить манекены, которые уже были восстановлены, добавьте
--include-reclaimedфлаг.Shell gh ado2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv
gh ado2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv -
Измените CSV-файл, добавив имя пользователя члена организации, соответствующего каждому манекену.
-
Сохраните файл.
-
-
Чтобы восстановить манекины, используйте
gh ado2gh reclaim-mannequinкоманду.-
Чтобы повторно восстановить манекены в массовом режиме с созданным ранее файлом сопоставления, замените DESTINATION целевой организацией и FILENAME именем файла сопоставления.
Shell gh ado2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv
gh ado2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv -
Чтобы восстановить отдельный манекин, замените DESTINATION целевой организацией, MANNEQUIN именем входа манекена и USERNAME именем пользователя члена организации, соответствующего манекину.
Если имеется несколько манекенов с одинаковым именем входа, можно заменить
--mannequin-user MANNEQUIN--mannequin-ID IDна , заменив идентификатор идентификатором манекена.Если в организации используются Enterprise Managed Users и вы хотите пропустить приглашение attribution, чтобы немедленно освободить манекин, добавьте
--skip-invitationаргумент.Shell gh ado2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
gh ado2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
-
По умолчанию член организации получит приглашение по электронной почте, и манекен не будет восстановлен до тех пор, пока участник не примет приглашение.
Восстановление манекенов с помощью BBS2GH extension
Если источник миграции — Bitbucket Server, вы можете восстановить манекены с помощью BBS2GH extension of the GitHub CLI.
- Если у вас еще нет
GH_PATпеременной среды для personal access token с доступом к целевой организации, добавьте--github-target-pat TOKENк каждой из приведенных ниже команд, заменивTOKENpersonal access token. Требования к personal access token см. в разделе Управление доступом к миграции с сервера Bitbucket. - Если вы переносите данные GHE.com, добавьте
--target-api-url TARGET-API-URL, где TARGET-API-URL является базовым URL-адресом API для поддомена предприятия. Например:https://api.octocorp.ghe.com.
-
При необходимости для массового восстановления манекенов создайте CSV-файл, который сопоставляет манекены с членами организации.
-
Чтобы создать CSV-файл со списком манекенов для организации, используйте
gh bbs2gh generate-mannequin-csvкоманду, заменив DESTINATION целевой организацией и FILENAME именем файла для результирующего CSV-файла.При необходимости, чтобы включить манекены, которые уже были восстановлены, добавьте
--include-reclaimedфлаг.Shell gh bbs2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv
gh bbs2gh generate-mannequin-csv --github-org DESTINATION --output FILENAME.csv -
Измените CSV-файл, добавив имя пользователя члена организации, соответствующего каждому манекену.
-
Сохраните файл.
-
-
Чтобы восстановить манекины, используйте
gh bbs2gh reclaim-mannequinкоманду.-
Чтобы повторно восстановить манекены в массовом режиме с созданным ранее файлом сопоставления, замените DESTINATION целевой организацией и FILENAME именем файла сопоставления.
Shell gh bbs2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv
gh bbs2gh reclaim-mannequin --github-org DESTINATION --csv FILENAME.csv -
Чтобы восстановить отдельный манекин, замените DESTINATION целевой организацией, MANNEQUIN именем входа манекена и USERNAME именем пользователя члена организации, соответствующего манекину.
Если имеется несколько манекенов с одинаковым именем входа, можно заменить
--mannequin-user MANNEQUIN--mannequin-ID IDна , заменив идентификатор идентификатором манекена.Если в организации используются Enterprise Managed Users и вы хотите пропустить приглашение attribution, чтобы немедленно освободить манекин, добавьте
--skip-invitationаргумент.Shell gh bbs2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
gh bbs2gh reclaim-mannequin --github-org DESTINATION --mannequin-user MANNEQUIN --target-user USERNAME
-
По умолчанию член организации получит приглашение по электронной почте, и манекен не будет восстановлен до тех пор, пока участник не примет приглашение.
Восстановление манекенов в браузере
-
В правом верхнем углу GitHub, щелкните рисунок профиля, а затем выберите октикона "организация" aria-hidden="true" aria-label="organization" %} Ваши организации.
-
Выберите организацию, кликнув по ней.
-
Под именем организации щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

-
В разделе "Access" боковой панели щелкните Import/Export.
-
Справа от манекена, который вы хотите восстановить, нажмите кнопку Reattribute.
-
В поле поиска введите имя пользователя члена организации, которому нужно атрибутировать вклад манекена, а затем щелкните элемент.
Примечание.
Вы можете отправлять только приглашения на присвоение учетным записям пользователей, которые уже являются членами организации.
-
Нажмите кнопку Пригласить. По умолчанию член организации получит приглашение по электронной почте, и манекен не будет восстановлен до тех пор, пока участник не примет приглашение.
Просмотр состояния приглашений attribution
Вы можете просмотреть состояние всех приглашений attribution для вашей организации.
- Приглашено: пользователь был отправлен приглашение, но еще не ответил на приглашение.
- Завершено: пользователь принял или пропустил процесс приглашения. Внесенные пользователем вклады были возвращены.
- Отклонено: пользователь решил не быть кредитован за вклад манекена.
-
В правом верхнем углу GitHub, щелкните рисунок профиля, а затем выберите октикона "организация" aria-hidden="true" aria-label="organization" %} Ваши организации.
-
Выберите организацию, кликнув по ней.
-
Под именем организации щелкните Settings. Если вкладка "Параметры" не отображается, выберите раскрывающееся меню и нажмите кнопку "Параметры".

-
В разделе "Access" боковой панели щелкните Import/Export.
-
В разделе " Import/Export", щелкните Attribution Invitations.

Управление авторизацией для фиксаций Git
Авторство фиксаций Git не связано с манекенами и не может быть связано с пользователями GitHub путем освобождения манекенов. Вместо этого автор фиксации ship относится к учетным записям пользователей на GitHub на основе адреса электронной почты, который использовался для создания фиксации в Git.
Во многих случаях пользователи могут повторно зафиксировать фиксации, добавив адрес электронной почты, используемый для создания фиксации в учетную запись пользователя на GitHub. Дополнительные сведения см. в разделе Добавление адреса электронной почты в ваш аккаунт GitHub.
Однако если вы используете Enterprise Managed Users, пользователи не могут добавлять адреса электронной почты в свою учетную запись пользователя на GitHub и поэтому не смогут повторно использовать фиксации Git. Только фиксации, созданные основной адрес электронной почты пользователя в поставщике удостоверений (IdP), будут относиться к управляемые учетные записи пользователей.
Кроме того, фиксации, созданные GitHub, предоставленный noreply адресом электронной почты, не могут быть возвращены, так как невозможно вручную добавить noreply адрес электронной почты в учетную запись пользователя. Дополнительные сведения см. в разделе Указание адреса электронной почты для фиксаций.