Skip to main content
ドキュメントへの更新が頻繁に発行されており、このページの翻訳はまだ行われている場合があります。 最新の情報については、「英語のドキュメント」を参照してください。

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2023-01-18. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせください

プロジェクトに貢献する

フォークを通じてプロジェクトに貢献する方法について説明します。

フォークについて

他のユーザーのプロジェクトに投稿したいが、そのリポジトリへの書き込みアクセス権がない場合は、"フォークと pull request" のワークフローを使用できます。

フォークとは、元の "上流" リポジトリとコードと可視性の設定を共有する新しいリポジトリです。 多くの場合、フォークは、上流リポジトリに再提案する前に、アイデアや変更に繰り返し取り組むために使用されます。たとえば、オープンソース プロジェクトや、ユーザーが上流リポジトリへの書き込みアクセス権を持っていない場合などです。

フォークから上流リポジトリに pull request を送信することで、投稿できます。 詳細については、「リポジトリのフォーク」を参照してください。

リポジトリをフォークする

このチュートリアルでは、Spoon-Knife プロジェクト (GitHub.com でホストされているテスト リポジトリ)を使用して、フォークと pull request のワークフローをテストします。

  1. https://github.com/octocat/Spoon-KnifeSpoon-Knife プロジェクトに移動します。
  2. [フォーク] をクリックします。 [フォーク] ボタン

フォークの複製

Spoon-Knife リポジトリのフォークが正常に生成されましたが、現時点では GitHub Enterprise Server にのみ存在しています。 プロジェクトで作業できるようにするには、コンピューターに複製する必要があります。

フォークは、コマンド ライン、GitHub CLI、または GitHub Desktop を使用して複製できます。

  1. GitHub Enterprise Server で、Spoon-Knife リポジトリの自分のフォークに移動します。

  2. ファイルのリストの上にある [コード] をクリックしてください。 [コード] ボタン

  3. リポジトリの URL をコピーします。

    • HTTPS を使ってリポジトリをクローンするには、[HTTPS] の下の をクリックします。
    • 組織の SSH 認証局から発行された証明書を含む SSH キーを使用してリポジトリをクローンするには、 [SSH] の順にクリックします。
    • GitHub CLI を使ってリポジトリをクローンするには、 [GitHub CLI] の順にクリックします。 GitHub CLI でリポジトリをクローンするための URL をコピーするためのクリップボード アイコン 1. [ターミナル][ターミナル][Git Bash] を開きます。 4. カレントワーキングディレクトリを、ディレクトリをクローンしたい場所に変更します。
  4. git clone」と入力し、既にコピーした URL を貼り付けます。 次のようになるはずです。YOUR-USERNAME を自分の GitHub Enterprise Server のユーザー名に置き換えてください。

    $ git clone https://HOSTNAME/YOUR-USERNAME/Spoon-Knife
  5. Enter キーを押します。 これで、ローカルにクローンが作成されます。

    $ git clone https://HOSTNAME/YOUR-USERNAME/Spoon-Knife
    > Cloning into `Spoon-Knife`...
    > remote: Counting objects: 10, done.
    > remote: Compressing objects: 100% (8/8), done.
    > remove: Total 10 (delta 1), reused 10 (delta 1)
    > Unpacking objects: 100% (10/10), done.

GitHub CLI の詳細については、「GitHub CLI について」を参照してください。

フォークのクローンを作成するには、--clone フラグを使用します。

gh repo fork REPOSITORY --clone=true
  1. [ファイル] メニューの [リポジトリの複製] をクリックします。

    Mac アプリケーション内の [Clone] メニューオプション

    Windows アプリケーション内の [Clone] メニューオプション

    1. クローンしたいリポジトリの場所に対応するタブをクリックしてください。 **URL** をクリックして、リポジトリの場所を手動で入力することもできます。

    [Clone a repository] メニュー内の [Location] タブ

    [Clone a repository] メニュー内の [Location] タブ

    1. クローンしたいリポジトリをリストから選択します。

    リポジトリリストのクローン

    リポジトリリストのクローン

    1. **[選択]** をクリックし、リポジトリを複製するローカル パスへ移動します。

    Chooseボタン

    Chooseボタン

    1. **[複製]** をクリックします。

    Cloneボタン

    Cloneボタン

作業のためのブランチの作成

プロジェクトに変更を加える前に、新しいブランチを作成してチェックアウトする必要があります。変更を独自のブランチに保持することで、GitHub Flow に従い、今後も同じプロジェクトに貢献しやすくなります。 詳細については、「GitHub のフロー」を参照してください。

git branch BRANCH-NAME
git checkout BRANCH-NAME
git branch BRANCH-NAME
git checkout BRANCH-NAME

GitHub Desktop でブランチを作成および管理する方法の詳細については、「ブランチの管理」を参照してください。

変更の作成とプッシュ

Visual Studio Code などのお気に入りのテキスト エディターを使用して、プロジェクトにいくつかの変更を加えます。 たとえば、index.html のテキストを変更すると、GitHub ユーザー名を追加できます。

変更を送信する準備ができたら、変更をステージングしてコミットします。 git add . は、次のコミットにすべての変更を含める必要があることを Git に指示します。 git commit は、これらの変更のスナップショットを取得します。

git add .
git commit -m "a short description of the change"
git add .
git commit -m "a short description of the change"

GitHub Desktop で変更をステージングおよびコミットする方法の詳細については、「プロジェクトへの変更のコミットと確認」を参照してください。

ファイルをステージングしてコミットすると、基本的に Git に「変更のスナップショットを作成してください」と Git に指示したことになります。 引き続き変更を加え、より多くのコミットのスナップショットを作成できます。

現時点では、変更はローカルにのみ存在します。 変更を GitHub Enterprise Server にプッシュする準備ができたら、変更をリモートにプッシュします。

git push
git push

GitHub Desktop で変更をプッシュする方法の詳細については、「変更を GitHub にプッシュする」を参照してください。

pull request の作成

やっと、メイン プロジェクトに変更を提案する準備ができました。 これは、他の誰かのプロジェクトのフォークを生成する最後のステップであり、間違いなく最も重要です。 コミュニティ全体に利益をもたらすと感じる変更を加えた場合は、ぜひ貢献することを検討してください。

そのためには、プロジェクトが存在する GitHub Enterprise Server のリポジトリに進みます。 この例では、https://github.com/<your_username>/Spoon-Knife です。 自分のブランチが octocat:main よりも 1 コミット分進んでいることを示すバナーが表示されます。 [貢献] をクリックし、 [Open a pull request](pull request を開く) をクリックします。

GitHub Enterprise Server を使用すると、フォークと octocat/Spoon-Knife リポジトリの違いを示すページが表示されます。 [pull request の作成] をクリックします。

GitHub Enterprise Server を使用すると、タイトルと変更の説明を入力できるページが表示されます。 そもそもこの pull request を行う理由について、できるだけ多くの有用な情報と根拠を提供することが重要です。 プロジェクトの所有者は、変更が自分が考えるほどすべてのユーザーにとって役に立つかどうかを判断できる必要があります。 [pull request の作成] をクリックします。

フィードバックの管理

pull request は検討の対象となります。 この場合、Octocat は非常にビジーであり、おそらく変更をマージしません。 他のプロジェクトで、プロジェクト所有者が pull request を拒否した場合や、リクエストが行われた理由の詳細を求めても、気を悪くしないでください。 プロジェクトの所有者が pull request をマージしないことを選択したとしても、まったく問題ありません。 行った変更はフォーク内に存在しています。 会ったことがない人が、この変更が元のプロジェクトよりもはるかに価値のあることを発見するかもしれません。

プロジェクトの検索

正常にリポジトリをフォークし、リポジトリに貢献しました。 さらに貢献を続けてください。