このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2021-06-09. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの改善、新機能のためには、最新バージョンのGitHub Enterpriseにアップグレードしてください。 アップグレードに関する支援については、GitHub Enterprise supportに連絡してください。

Enterprise でリポジトリ管理ポリシーを適用する

Enterprise のオーナーは、自分の Enterprise のアカウントが所有するすべての Organization に対して特定のリポジトリの管理ポリシーを強制したり、Organization ごとのポリシーの設定を許可したりすることができます。

Enterprise 内の新しいリポジトリのデフォルトの可視性を設定する

ユーザが Enterprise に新しいリポジトリを作成するたびに、そのユーザはリポジトリの可視性を選択する必要があります。 その Enterprise のデフォルトの可視性の設定をする際には、デフォルトで選択される可視性を選択します。 リポジトリの可視性に関する詳しい情報については、「リポジトリの可視性について」を参照してください。

Enterprise オーナーがメンバーによる特定のタイプのリポジトリの作成を禁止している場合、可視性設定がデフォルトでそのタイプに設定されていても、メンバーはそのタイプのリポジトリを作成できません。 詳しい情報については、「リポジトリ作成のためのポリシーを設定する」を参照してください。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。
  1. Enterpriseアカウントのサイドバーで、 Settings(設定)をクリックしてください。 Enterpriseアカウントサイドバー内の設定タブ

  2. " Settings(設定)"の下で、Options(オプション)をクリックしてください。 Enterpriseアカウント設定サイドバー内のオプションタブ

  3. "Default repository visibility(デフォルトのリポジトリの可視性)"の下で、ドロップダウンメニューを使ってデフォルトの可視性を選択してください。Enterprise におけるデフォルトのリポジトリの可視化性を選択するためのドロップダウンメニュー

警告: Pull RequestやIssueのコメントに画像を添付した場合、その匿名の画像URLは認証なしに誰でも見ることができます。これは、そのPull Requestがプライベートリポジトリ内にあったり、プライベートモードが有効化されていてもです。 認証なしでの画像へのアクセスを避けるには、GitHub Enterprise Serverのインスタンスを含む、画像を提供するシステムへのネットワークアクセスを確実に制限してください。

リポジトリの可視性を変更するためのポリシーを設定する

メンバーがリポジトリの可視性を変更できないようにした場合、Enterprise のオーナーのみがリポジトリの可視性を変更できます。

Enterprise のオーナーがリポジトリの作成を Organization のオーナーのみに制限している場合、メンバーはリポジトリの可視性を変更できません。 Enterprise のオーナーがメンバーリポジトリの作成をプライベートリポジトリのみに制限している場合、メンバーはリポジトリの可視性をプライベートにのみ変更できます。 詳しい情報については、「リポジトリ作成のためのポリシーを設定する」を参照してください。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。

  2. Enterpriseアカウントのサイドバーで、 Policies(ポリシー)をクリックしてください。 Enterpriseアカウントサイドバー内のポリシータブ

  3. " Policies(ポリシー)"の下で、Repositories(リポジトリ)をクリックしてください。 Enterpriseアカウント設定サイドバー内のリポジトリタブ

  4. [Repository visibility change] で、設定変更についての情報を確認します。 あるいは、設定を強制する前にEnterpriseアカウント内のすべてのOrganizationの現在の設定を見たいなら、 View your organizations' current configurations(Organizationの現在の設定の表示)をクリックしてください。 ビジネス内のOrganizationの現在のポリシー設定を表示するリンク

  5. "Repository visibility change(リポジトリの可視性の変更)"の下で、ドロップダウンメニューを使ってポリシーを選択してください。 リポジトリの可視性のポリシーの選択肢があるドロップダウンメニュー

リポジトリ作成のためのポリシーを設定する

Organizationのオーナーは、いつでも任意の種類のリポジトリを作成でき、外部のコラボレータはいかなる種類のリポジトリも作成できません。 詳細は「リポジトリの可視性について」を参照してください。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。

  2. Enterpriseアカウントのサイドバーで、 Policies(ポリシー)をクリックしてください。 Enterpriseアカウントサイドバー内のポリシータブ

  3. " Policies(ポリシー)"の下で、Repositories(リポジトリ)をクリックしてください。 Enterpriseアカウント設定サイドバー内のリポジトリタブ

  4. [Repository creation] で、設定変更に関する情報を読みます。 あるいは、設定を強制する前にEnterpriseアカウント内のすべてのOrganizationの現在の設定を見たいなら、 View your organizations' current configurations(Organizationの現在の設定の表示)をクリックしてください。 ビジネス内のOrganizationの現在のポリシー設定を表示するリンク

  5. "Repository creation(リポジトリの作成)"の下で、ポリシーを選択してください。 リポジトリ作成ポリシーオプションのドロップダウンメニュー

  6. Members can create repositories(メンバーはリポジトリを作成可能)を選択したなら、1つ以上のリポジトリの種類を選択してください。 リポジトリの種類のチェックボックス

プライベートまたは内部リポジトリのフォークに関するポリシーを施行する

Enterprise が所有しているすべての Organization 全体で、ユーザーにリポジトリのフォーク用にプライベートまたは内部リポジトリへのアクセスを許可したり、プライベートまたは内部リポジトリのフォークを一切禁止したり、オーナーが Organization レベルで設定を管理できるようにしたりすることができます。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。

  2. Enterpriseアカウントのサイドバーで、 Policies(ポリシー)をクリックしてください。 Enterpriseアカウントサイドバー内のポリシータブ

  3. [Repository policies] タブの [Repository forking] で、設定変更についての情報を読みます。 あるいは、設定を強制する前にEnterpriseアカウント内のすべてのOrganizationの現在の設定を見たいなら、 View your organizations' current configurations(Organizationの現在の設定の表示)をクリックしてください。 ビジネス内のOrganizationの現在のポリシー設定を表示するリンク

  4. [Repository forking] で、ドロップダウンメニューを使用してポリシーを選択します。 リポジトリ フォーク ポリシー オプションのドロップダウンメニュー

リポジトリの削除と移譲のためのポリシーを設定する

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。

  2. Enterpriseアカウントのサイドバーで、 Policies(ポリシー)をクリックしてください。 Enterpriseアカウントサイドバー内のポリシータブ

  3. " Policies(ポリシー)"の下で、Repositories(リポジトリ)をクリックしてください。 Enterpriseアカウント設定サイドバー内のリポジトリタブ

  4. 「Repository deletion and transfer」で、設定変更に関する情報を確認します。 あるいは、設定を強制する前にEnterpriseアカウント内のすべてのOrganizationの現在の設定を見たいなら、 View your organizations' current configurations(Organizationの現在の設定の表示)をクリックしてください。 ビジネス内のOrganizationの現在のポリシー設定を表示するリンク

  5. "Repository deletion and transfer(リポジトリの削除と移譲)"の下で、ドロップダウンメニューを使ってポリシーを選択してください。 リポジトリの削除ポリシーの選択肢があるドロップダウンメニュー

Git プッシュ制限のためのポリシーを設定する

リポジトリのサイズを管理しやすくして、パフォーマンスの問題を防ぐために、Enterprise 内のリポジトリのファイルサイズ制限を設定できます。

デフォルトでは、リポジトリのアップロード制限を適用すると、100MB以上のファイルの追加やアップロードができなくなります。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。
  1. Enterpriseアカウントのサイドバーで、 Settings(設定)をクリックしてください。 Enterpriseアカウントサイドバー内の設定タブ

  2. " Settings(設定)"の下で、Options(オプション)をクリックしてください。 Enterpriseアカウント設定サイドバー内のオプションタブ

  3. [Repository upload limit] で、ドロップダウンメニューを使用して最大オブジェクトサイズをクリックします。 最大オブジェクトサイズのオプションを備えたドロップダウンメニュー

  4. 必要に応じて、すべてのリポジトリにアップロードの最大制限を適用するには [Enforce on all repositories] を選択します。 すべてのリポジトリにオブジェクトの最大サイズを適用するオプション

リポジトリ間のプルリクエストのためのマージコンフリクトエディタを設定する

ユーザが自分のコンピュータ上でローカルにマージコンフリクトを解決するように要求すれば、うっかりフォークから上流のリポジトリに書き込んでしまうことを回避できます。

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。
  1. Enterpriseアカウントのサイドバーで、 Settings(設定)をクリックしてください。 Enterpriseアカウントサイドバー内の設定タブ

  2. " Settings(設定)"の下で、Options(オプション)をクリックしてください。 Enterpriseアカウント設定サイドバー内のオプションタブ

  3. "Conflict editor for pull requests between repositories(リポジトリ間のプルリクエストのコンフリクトエディタ)"の下でドロップダウンメニューを使い、Disabled(無効化)を選択してください。 マージコンフリクトエディタを無効化するオプションを持つドロップダウンメニュー

フォースプッシュを設定する

それぞれのリポジトリは、所属するユーザアカウントもしくはOraganizationの設定から、デフォルトのフォースプッシュの設定を引き継ぎます。 同様に、それぞれの Organization およびユーザアカウントは、デフォルトのフォースプッシュの設定をアプライアンス全体のフォースプッシュの設定から引き継ぎます。 Enterprise のフォースプッシュの設定を変更すると、すべてのユーザあるいは Organization が所有するすべてのリポジトリが変更されます。

アプライアンス上でのすべてのフォースプッシュをブロックする

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。
  1. Enterpriseアカウントのサイドバーで、 Settings(設定)をクリックしてください。 Enterpriseアカウントサイドバー内の設定タブ

  2. " Settings(設定)"の下で、Options(オプション)をクリックしてください。 Enterpriseアカウント設定サイドバー内のオプションタブ

  3. [Force pushes] の下のドロップダウンメニューから、[Allow]、[Block]、[Block to the default branch] のいずれかをクリックしてください。 フォースプッシュのドロップダウン

  4. [Enforce on all repositories(すべてのリポジトリに強制)] を選択して、フォースプッシュに関する Organization およびリポジトリレベルの設定をオーバーライドすることもできます。

特定のリポジトリへのフォースプッシュをブロックする

ノート: 各リポジトリは、そのリポジトリを所有するOrganizationもしくはユーザのデフォルト設定を自動的に継承します。 リポジトリのオーナーが、所有するすべてのリポジトリに対して設定を強制している場合、デフォルト設定は上書きできません。

  1. http(s)://HOSTNAME/loginでGitHub Enterprise Serverのインスタンスにサインインしてください。
  2. GitHub Enterprise Serverの管理アカウントから、任意のページの右上にあるをクリックしてください。 サイトアドミン設定にアクセスするための宇宙船のアイコン
  3. 検索フィールドでリポジトリ名を入力し、Search(検索)をクリックしてください。 [Site admin settings search] フィールド
  4. 検索結果で、リポジトリ名をクリックしてください。 サイドアドミン設定の検索オプション
  5. ページの右上から Admin(管理)をクリックしてください。 管理ツール
  6. 左のサイドバーで Admn(管理)をクリックしてください。 管理ツール
  7. [Push and Pull] の下で [Block] または [Block to the default branch] を選択してください。 フォースプッシュのブロック

ユーザアカウントもしくはOrganizationが所有するリポジトリへのフォースプッシュのブロック

リポジトリは、所属するユーザアカウントもしくはOrganizationからフォースプッシュの設定を引き継ぎます。 そして、それぞれの Organization およびユーザアカウントは、フォースプッシュの設定を Enterprise のフォースプッシュの設定から引き継ぎます。

引き継がれたデフォルトの設定は、ユーザアカウントもしくはOrganizationの設定をすることで上書きできます。

  1. http(s)://HOSTNAME/loginでGitHub Enterprise Serverのインスタンスにサインインしてください。
  2. GitHub Enterprise Serverの管理アカウントから、任意のページの右上にあるをクリックしてください。 サイトアドミン設定にアクセスするための宇宙船のアイコン
  3. 検索フィールドでユーザもしくはOrganizationの名前を入力し、Search(検索)をクリックしてください。 [Site admin settings search] フィールド
  4. 検索結果で、ユーザもしくはOrganizationの名前をクリックしてください。 サイドアドミン設定の検索オプション
  5. ページの右上から Admin(管理)をクリックしてください。 管理ツール
  6. 左のサイドバーで Admn(管理)をクリックしてください。 管理ツール
  7. [Repository default settings(リポジトリのデフォルト設定)] の下の [Force pushes(フォースプッシュ)] セクションで、以下から選択してください。
    • [Block(ブロック)] ですべてのブランチへのフォースプッシュがブロックされます。
    • [Block to the default branch(デフォルトブランチへのブロック)] でデフォルトブランチへのフォースプッシュのみがブロックされます。 フォースプッシュのブロック
  8. Enforce on all repositories(すべてのリポジトリに対して強制)を選択して、リポジトリ固有の設定を上書きすることもできます。 これは、Enterprise 全体のポリシーを上書きしませんのでご注意ください。 フォースプッシュのブロック

匿名 Git 読み取りアクセスを設定する

ノート: 匿名Gitアクセスを有効にする場合、この機能のすべてのアクセスと利用に責任を負うことになります。 GitHubは、この機能のあらゆる意図しないアクセスや悪用に対して責任を負いません。 また、弊社から購入したユーザライセンス数の制限を含むGitHubのライセンスに違反するためにこの機能を使うことはできません。

Enterprise でプライベートモードを有効化している場合は、リポジトリ管理者がパブリックリポジトリへの匿名 Git 読み取りアクセスを有効化できるようにすることができます。

匿名 Git 読み取りアクセスを有効化すると、ユーザは Enterprise 上のカスタムツールの認証をバイパスできるようになります。 あなたもしくはリポジトリ管理者がこのアクセス設定をリポジトリで有効化すると、認証を受けていない Git の操作 (そして GitHub Enterprise Server へのネットワークアクセスができる人はだれでも) は、認証なしでリポジトリに読み取りアクセスできることになります。

必要に応じて、リポジトリのアクセス設定をロックすることで、リポジトリ管理者が Enterprise のリポジトリの匿名 Git アクセス設定を変更不可にすることができます。 リポジトリのGit読み取りアクセス設定をロックすると、サイト管理者だけがこの設定を変更できるようになります。

匿名 Git 読み取りアクセスが有効になっているリポジトリを見るには、サイト管理ダッシュボードでリポジトリのリストをフィルタリングしてください。

ノート:

  • フォークされたリポジトリのGitの読み取りアクセスは変更できません。これは、それらがデフォルトでルートリポジトリからアクセス設定を引き継ぐためです。
  • パブリックなリポジトリがプライベートになると、そのリポジトリ及びそのフォークでは匿名Git読み取りアクセスが自動的に無効化されます。
  • 匿名認証を持つリポジトリにGit LFSアセットが含まれている場合でも、Git LFSのダウンロードには認証が必要なのでダウンロードは失敗します。 Git LFSアセットを含むリポジトリには、匿名Git読み取りアクセスを有効化しないよう強くおすすめします。

すべてのリポジトリに対する匿名 Git 読み取りアクセスを設定する

  1. https://HOSTNAME/enterprises/ENTERPRISE-NAMEにアクセスしてEnterpriseアカウントに移動してください。HOSTNAMEはインスタンスのホスト名で、ENTERPRISE-NAMEはEnterpriseアカウント名で置き換えてください。
  1. Enterpriseアカウントのサイドバーで、 Settings(設定)をクリックしてください。 Enterpriseアカウントサイドバー内の設定タブ

  2. " Settings(設定)"の下で、Options(オプション)をクリックしてください。 Enterpriseアカウント設定サイドバー内のオプションタブ

  3. [Anonymous Git read access(匿名 Git 読み取りアクセス)] の下で、ドロップダウンメニューを使って [Enabled(有効化)] をクリックしてください。 [Enabled] と [Disabled] のメニューオプションが表示されている [Anonymous Git read access] ドロップダウンメニュー

  4. Enterprise のすべてのリポジトリでリポジトリ管理者が匿名 Git 読み取りアクセス設定を変更するのを避けるために、[Prevent repository admins from changing anonymous Git read access] を選択することもできます。 Enterprise のすべてのリポジトリへの匿名 Git 読み取りアクセス設定をリポジトリ管理者が変更するのを避けるための選択チェックボックス

特定のリポジトリでの匿名 Git 読み取りアクセスを設定する

  1. GitHub Enterprise Serverの管理アカウントから、任意のページの右上にあるをクリックしてください。 サイトアドミン設定にアクセスするための宇宙船のアイコン
  2. 検索フィールドでリポジトリ名を入力し、Search(検索)をクリックしてください。 [Site admin settings search] フィールド
  3. 検索結果で、リポジトリ名をクリックしてください。 サイドアドミン設定の検索オプション
  4. ページの右上から Admin(管理)をクリックしてください。 管理ツール
  5. 左のサイドバーで Admn(管理)をクリックしてください。 管理ツール
  6. "Danger Zone(危険区域)"の下で、"Enable Anonymous Git read access(匿名Git読み取りアクセスの有効化)"の隣のEnable(有効化)をクリックしてください。 リポジトリのサイト管理設定の危険地域内の "匿名 Git 読み取りアクセスの有効化" の下の "有効化" ボタン
  7. 変更を確認します。 確定するには、[Yes, enable anonymous Git read access] をクリックします。 ポップアップウィンドウの [Confirm anonymous Git read access] 設定
  8. このリポジトリの設定をリポジトリ管理者が変更するのを避けるために、[Prevent repository admins from changing anonymous Git read access(リポジトリ管理者による匿名Git読み取りアクセスの変更の回避)] を選択することもできます。 このリポジトリへの匿名Git読み取りアクセス設定をリポジトリ管理者が変更するのを避けるための選択チェックボックス

問題がまだ解決していませんか?

GitHubコミュニティで質問するサポートへの連絡