사용자 기여 매핑 개발자 문서
사용자 기여 매핑 개발자 문서에 대해 설명합니다.
사용자 기여 매핑은 가져오기 전에 소스에 있는 사용자가 공개 이메일로 프로비저닝되어 있지 않아도 가져온 레코드를 사용자에게 귀속시킬 수 있는 기능입니다. 대신, 가져오기가 완료된 후 해당 기여에 실제 사용자를 할당할 수 있을 때까지 가져온 레코드에서 자리 표시자 역할을 하는 더미 User 레코드가 생성됩니다. 사용자 기여 매핑은 마이그레이션 중에 플레이스홀더 사용자에게 기여를 할당하기 위해 각 임포터 내에서 구현되지만, 이 매핑을 사용하는 모든 임포터에 동일한 프로세스가 적용됩니다. 그룹 소유자가 플레이스홀더 사용자에게 실제 사용자를 재할당하는 프로세스는 마이그레이션 완료 후에 이루어지며 마이그레이션과는 별개입니다. 용어 및 관련 모델 용어 사전 # 용어 해당 ActiveRecord 모델 정의 소스 사용자 Import::SourceUser 플레이스홀더 사용자를 실제 사용자에 매핑하고 재할당 세부 정보, 임포트 소스, 최상위 그룹 연결을 추적합니다. 플레이스홀더 사용자 User with user_type: 'placeholder' 임포트 후 실제 사용자로 재할당되기 위한 마이그레이션 중 외래 키 제약 조건을 충족하는 User 레코드입니다. 플레이스홀더 사용자는 로그인할 수 없으며 GitLab에서 권한이 없습니다. 담당자 사용자, 실제 사용자 User with user_type: 'human' 플레이스홀더 사용자에게 할당된 실제 사용자입니다. 사용자 기여 모든 GitLab ActiveRecord 모델 마이그레이션 중에 가져온 User 에 속하는 모든 ActiveRecord 모델. 예: 머지 리퀘스트 담당자, 노트, 멤버십 등. 플레이스홀더 참조 Import::SourceUserPlaceholderReference 멤버십을 제외한 데이터베이스 전반의 모든 플레이스홀더 사용자 기여를 추적하는 별도의 모델입니다. 플레이스홀더 멤버십 Import::Placeholders::Membership 플레이스홀더 사용자에 속하는 가져온 멤버십을 추적하는 별도의 모델입니다. Member 레코드는 플레이스홀더가 멤버로 나타나는 것을 방지하기 위해 마이그레이션 중에 플레이스홀더 사용자를 위해 생성되지 않습니다. 임포트 사용자 Import::NamespaceImportUser 레코드를 일반 플레이스홀더에 할당할 수 없을 때 사용되는 플레이스홀더 사용자입니다. 예: 플레이스홀더 사용자 제한 에 도달했을 때. 플레이스홀더 세부 정보 Import::PlaceholderUserDetail 최상위 그룹이 삭제될 때 플레이스홀더 사용자를 삭제할 수 있도록 어떤 네임스페이스에 플레이스홀더 사용자가 있는지 추적하는 레코드입니다. 플레이스홀더 사용자 테이블 N/A 그룹 소유자가 UI에서 플레이스홀더 사용자에게 할당할 실제 사용자를 선택할 수 있는 플레이스홀더 사용자 테이블. 최상위 그룹의 멤버 페이지의 플레이스홀더 탭에 위치. 그룹 소유자만 볼 수 있음. 임포트 중 플레이스홀더 사용자 생성 # 플레이스홀더 사용자를 실제 사용자로 재할당하기 전에 임포트 중에 플레이스홀더 사용자를
