リポジトリの移譲について
リポジトリを新たなオーナーに移譲すると、そのオーナーはすぐにリポジトリの内容、Issue、プルリクエスト、リリース、プロジェクトボード、そして設定を管理できるようになります。
Prerequisites for repository transfers:
- 自分が所有しているリポジトリを Organization に移譲するには、対象 Organization のリポジトリを作成する権限が必要です。
- ターゲットのアカウントは、同じ名前のリポジトリを持っていたり、同じネットワーク内にフォークを持っていたりしてはなりません。
- リポジトリのオリジナルのオーナーは、移譲されたリポジトリにコラボレーターとして追加されます。 他のコラボレーターは、移譲されたリポジトリにそのまま残されます。
- プライベートフォークは移譲できません。
リポジトリと共に移譲されるものは?
リポジトリを移譲すると、その Issue、プルリクエスト、ウィキ、Star、そして Watch しているユーザも移譲されます。 移譲されたリポジトリに webhook、サービス、シークレット、あるいはデプロイキーが含まれている場合、移譲が完了した後もそれらは関連付けられたままになります。 コミットに関する Git の情報は、コントリビューションを含めて保持されます。 加えて、
-
移譲されたリポジトリがフォークである場合、それは上流のリポジトリに関連付けられたままになります。
-
移譲されたリポジトリにフォークがある場合、それらのフォークは移譲が完了した後リポジトリに関連付けられたままになります。
-
移譲されたリポジトリが Git Large File Storage を使う場合、すべての Git LFS オブジェクトは自動的に移動します。 This transfer occurs in the background, so if you have a large number of Git LFS objects or if the Git LFS objects themselves are large, it may take some time for the transfer to occur.
-
リポジトリを 2 つのユーザアカウント間で移譲する場合、Issue の割り当てはそのまま残ります。 ユーザアカウントから Organization にリポジトリを移譲する場合、Organization のメンバーにアサインされた Issue はそのまま残ります。そして、すべての他の Issue のアサイニーは消えます。 Organization の中のオーナーだけが、新しい Issue のアサインを作成できます。 Organization からユーザアカウントにリポジトリを移譲する場合、リポジトリのオーナーにアサインされた Issue だけが保管され、すべての他のアサイニーは削除されます。
-
移譲されたリポジトリが GitHub Pages サイトを含む場合、Web 上の Git リポジトリへのリンクや Git のアクティビティを通じたリンクはリダイレクトされます。 しかし、リポジトリに関連付けられている GitHub Pages はリダイレクトされません。
-
以前のリポジトリの場所へのすべてのリンクは、新しい場所へ自動的にリダイレクトされます。 移譲されたリポジトリ上で
git clone
、git fetch
、またはgit push
を使う場合には、これらのコマンドは新しいリポジトリの場所あるいは URL にリダイレクトされます。 しかし、混乱を避けるため、既存のローカルクローンは新しいリポジトリの URL を指すよう更新することを強くおすすめします。 それはgit remote
をコマンドライン上で使って行えます。$ git remote set-url origin 新しい URL
詳細は「リモートの URL を変更する」を参照してください。
リポジトリの移譲および Organization
Organization にリポジトリを移譲するには、受け取る Organization でのリポジトリ作成許可を持っている必要があります。 Organization のオーナーが Organization のメンバーによるリポジトリ作成を無効化している場合、Organization のオーナーだけが、その Organization に対して、または、Organization からリポジトリを移譲できます。
Organization にリポジトリが移譲されたら、Organization のデフォルトのリポジトリ許可設定およびデフォルトのメンバーシップの権利が、移譲されたリポジトリに適用されます。
ユーザアカウントが所有しているリポジトリを移譲する
リポジトリの移譲を受け入れるどのユーザアカウントにも、リポジトリを移譲できます。 2つのユーザアカウントの間でリポジトリを移譲した場合、当初のリポジトリコードオーナーとコラボレーターは、新しいリポジトリにコラボレーターとして自動的に追加されます。
-
GitHub Enterprise Serverで、リポジトリのメインページにアクセスしてください。
-
リポジトリ名の下で Settings(設定)をクリックしてください。
-
Click Transfer.
-
警告を読み、リポジトリ名を入力して行ったことを確認してください。
-
新しいオーナーの名前を入力し、I understand, transfer this repo(理解しました。このリポジトリを移譲してください)をクリックしてください。
Organization が所有しているリポジトリを移譲する
Organization のコードオーナー権限、または、そのリポジトリの 1 つの管理者権限を有している場合、Organization が所有しているリポジトリをユーザアカウントや他の Organization に移譲できます。
-
リポジトリのある Organization で管理者またはオーナー権限を有しているユーザアカウントにサインインします。
-
GitHub Enterprise Serverで、リポジトリのメインページにアクセスしてください。
-
リポジトリ名の下で Settings(設定)をクリックしてください。
-
Click Transfer.
-
警告を読み、リポジトリ名を入力して行ったことを確認してください。
-
新しいオーナーの名前を入力し、I understand, transfer this repo(理解しました。このリポジトリを移譲してください)をクリックしてください。