# リポジトリについて

リポジトリには、すべてのコード、ファイル、および各ファイルのリビジョン履歴が含まれています。 リポジトリ内で作業についてディスカッションをしたり、作業を管理したりできます。

## リポジトリについて

リポジトリは、 GitHubの最も基本的な要素です。 これは、コード、ファイル、各ファイルのリビジョン履歴を格納できる場所です。 リポジトリには複数のコラボレーターを含めることができます。パブリック、、内部、 、プライベートのいずれかです。

新しいリポジトリを作成するには、<https://github.com/new> に移動します。 手順については、「[リポジトリのクイック スタート](/ja/enterprise-server@3.20/repositories/creating-and-managing-repositories/quickstart-for-repositories)」を参照してください。

## リポジトリの用語

リポジトリの使用を開始するにあたって、重要な用語を以下に説明します。

<div class="ghd-tool rowheaders">

| 期間                                                                                               | Definition                                                                     |
| ------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------ |
| \[Branch]\(ブランチ)                                                                                 | コードの並列バージョンで、リポジトリ内に格納されていますが、プライマリ ブランチ (メイン ブランチ) には影響しないバージョンです。            |
| 複製                                                                                               |                                                                                |
| お使いの GitHub Enterprise Server インスタンスからリポジトリのデータの完全なコピー (すべてのファイルとフォルダーのすべてのバージョンを含む) をダウンロードします。 |                                                                                |
| Fork                                                                                             | コードおよび可視性の設定を元の "上流" リポジトリと共有する新しいリポジトリです。                                     |
| マージする                                                                                            | あるブランチから変更を取得し、別のブランチに適用すること。                                                  |
| Pull request（プルリクエスト）                                                                            | あるブランチから別のブランチに変更をマージするリクエスト。                                                  |
| Remote                                                                                           | コンピューターではなく、 GitHubに格納されているリポジトリ。                                              |
| アップストリーム                                                                                         | フォークまたはクローンの元になったリポジトリのブランチ。 クローンまたはフォークされたリポジトリ上の対応するブランチは、"ダウンストリーム" と呼ばれます。 |

</div>

## リポジトリの所有権

リポジトリを個人として所有することも、リポジトリの所有権を Organization 内の他の人々と共有することもできます。

どちらの場合も、リポジトリへのアクセスはアクセス許可によって管理されます。 詳細については、「[個人アカウントのリポジトリの権限レベル](/ja/enterprise-server@3.20/repositories/managing-your-repositorys-settings-and-features/repository-access-and-collaboration/permission-levels-for-a-personal-account-repository)」および「[Organizationのリポジトリロール](/ja/enterprise-server@3.20/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)」を参照してください。

## コラボレーション

リポジトリを使用して、作業を管理し、他のユーザと共同作業を行うことができます。

* Issue を使用して、ユーザフィードバックの収集、ソフトウェアバグの報告、および実行するタスクの整理を行うことができます。 詳細については、 [AUTOTITLE を](/ja/enterprise-server@3.20/issues/tracking-your-work-with-issues/learning-about-issues/about-issues)参照してください。
* プルリクエストを使用して、リポジトリへの変更を提案できます。 詳しくは、「[Pull Request](/ja/enterprise-server@3.20/pull-requests/reference/pull-requests)」をご覧ください。
* Projectsを使用して、問題とプル要求を整理し、優先順位を付けることができます。 詳しくは、「[Projects の概要](/ja/enterprise-server@3.20/issues/planning-and-tracking-with-projects/learning-about-projects/about-projects)」をご覧ください。

各ユーザーと組織は、無制限のリポジトリを所有し、すべてのリポジトリに無制限の数のコラボレーターを招待できます。

## リポジトリの可視性について

リポジトリの可視性を選択することで、リポジトリへのアクセス権を持つユーザーを制限できます( public、internal、private。

リポジトリを作成するときに、リポジトリをパブリックまたはプライベートにすることができます。 エンタープライズ アカウントが所有する組織リポジトリを内部にすることもできます。

* お使いの GitHub Enterprise Server インスタンスがプライベート モードまたはファイアウォールの内側にない場合は、インターネット上のすべてのユーザーがパブリック リポジトリにアクセスできます。 それ以外の場合は、外部コラボレーターを含め、 お使いの GitHub Enterprise Server インスタンスを使用しているすべてのユーザーがパブリック リポジトリを使用できます。
* プライベートリポジトリには、自分、明示的にアクセスを共有するユーザ、および Organization リポジトリの場合は特定の Organization メンバーのみがアクセスできます。
* 内部リポジトリには、すべての Enterprise メンバーがアクセスできます。 詳しくは、「[内部リポジトリ](#about-internal-repositories)」をご覧ください。

Organization のオーナーは、Organization 内で作成されたすべてのリポジトリにいつでもアクセスできます。 詳しくは、「[Organizationのリポジトリロール](/ja/enterprise-server@3.20/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)」をご覧ください。

リポジトリの管理者権限を持つユーザは、既存のリポジトリの可視性を変更できます。 詳しくは、「[リポジトリの可視性を設定する](/ja/enterprise-server@3.20/repositories/managing-your-repositorys-settings-and-features/managing-repository-settings/setting-repository-visibility)」をご覧ください。

## インターナルリポジトリについて

内部リポジトリを使用して、エンタープライズ内で "インナーソース" を練習できます。 Enterpriseアカウントのメンバーは、プライベートモードを無効化されていても、プロプライエタリな情報をパブリックに共有することなく、オープンソースの方法論を用いてコラボレートできます。 innersource の詳細については、 [企業での innersource の使用](/ja/enterprise-server@3.20/admin/concepts/enterprise-best-practices/use-innersource) を参照してください。

組織のメンバーには、企業内のすべての内部リポジトリ (メンバーではない組織内のリポジトリを含む) に対する読み取りアクセス許可があります。 内部リポジトリは、組織リポジトリの外部コラボレーターを含め企業の外部ユーザーには表示されません。 詳細については、「[企業における役割の能力](/ja/enterprise-server@3.20/admin/managing-accounts-and-repositories/managing-roles-in-your-enterprise/abilities-of-roles)」および「[Organizationのリポジトリロール](/ja/enterprise-server@3.20/organizations/managing-user-access-to-your-organizations-repositories/managing-repository-roles/repository-roles-for-an-organization)」を参照してください。

リポジトリ、組織、およびエンタープライズ ポリシーは、内部リポジトリをフォークできるかどうか、およびフォークを作成できる場所を決定します。 詳細については、「[Organization のフォークポリシーを管理する](/ja/enterprise-server@3.20/organizations/managing-organization-settings/managing-the-forking-policy-for-your-organization)」および「[Enterprise でリポジトリ管理ポリシーを適用する](/ja/enterprise-server@3.20/admin/enforcing-policies/enforcing-policies-for-your-enterprise/enforcing-repository-management-policies-in-your-enterprise#enforcing-a-policy-for-forking-private-or-internal-repositories)」を参照してください。

## 次のステップ

リポジトリを使用する次のステップに進む際は、以下のリソースが役立ちます。

* [リポジトリのベスト プラクティス](/ja/enterprise-server@3.20/repositories/creating-and-managing-repositories/best-practices-for-repositories): リポジトリを最も効果的に使用する方法を説明します。
* [新しいリポジトリの作成](/ja/enterprise-server@3.20/repositories/creating-and-managing-repositories/creating-a-new-repository): 新しいリポジトリを作成します。
* [リポジトリ内のブランチの管理](/ja/enterprise-server@3.20/pull-requests/how-tos/commit-changes/managing-branches-within-your-repository): リポジトリ内でブランチを作成および削除する方法について説明します。
* [pull request の作成](/ja/enterprise-server@3.20/pull-requests/how-tos/create-pull-requests/creating-a-pull-request): リポジトリへの変更の提案や共同作業を行うための pull request を作成します。