Source前書き無料でオープンソースのGitは、共同ソフトウェアプロジェクトの管理を容易にする分散バージョン管理システムです。多くのプロジェクトはGitリポジトリにファイルを保持しており、GitHubなどのサイトでは、コードの共有と貢献がコードをシンプルで、価値があり、効果的にしています。パブリックリポジトリでホストされているオープンソースプロジェクトは、プルリクエストを通じてより広範な開発者コミュニティが行った貢献の恩恵を受けます。プルリクエストは、プロジェクトがコードリポジトリに加えた変更を受け入れることを要求します。このチュートリアルでは、コマンドラインを使用してGitリポジトリにプルリクエストを作成し、オープンソースソフトウェアプロジェクトに貢献できるようにします。前提条件ローカルマシンにGitをインストールする必要があります。Gitがコンピューターにインストールされているかどうかを確認し、https://www.digitalocean.com/community/tutorials/an-introduction-to-contributing-to-open-source-に従ってオペレーティングシステムのインストールプロセスを実行できます。GitHubアカウントを持っているか作成する必要もあります。Webサイトhttps://github.com/[github.com]から行うことができ、ログインするか、アカウントを作成できます。最後に、貢献するオープンソースソフトウェアプロジェクトを特定する必要があります。リポジトリのコピーを作成するリポジトリ、または略して*レポ*は、基本的にプロジェクトのメインフォルダーです。リポジトリには、ドキュメントを含むすべての関連プロジェクトファイルが含まれ、各ファイルの改訂履歴も保存されます。GitHubでは、リポジトリに複数の共同編集者を含めることができ、公開または非公開にできます。オープンソースプロジェクトで作業するには、まずリポジトリの独自のコピーを作成する必要があります。これを行うには、リポジトリをフォークしてからクローンを作成して、ローカルの作業コピーを作成する必要があります。URLに移動することで、GitHubでリポジトリをフォークできます。GitHubリポジトリのURLは、リポジトリの所有者に関連付けられたユーザー名とリポジトリ名の両方を参照します。URLは次のとおりです。*はリポジトリ名です。貢献したいプロジェクトを特定したら、次のようにフォーマットされるURLに移動できます。https://github.com//または、GitHub検索バーを使用してプロジェクトを検索できます。リポジトリのメインページを開くと、ページの右上、ユーザーアイコンの下に「フォーク」ボタンが表示されます。Forking]分岐ボタンをクリックして、分岐プロセスを開始します。ブラウザウィンドウ内で、次のようなフィードバックを受け取ります。[GitHubでフォーク]プロセスが完了すると、ブラウザは上のリポジトリ画像のような画面に移動しますが、上部にはリポジトリ名の前にユーザー名が表示され、URLではリポジトリ名の前にユーザー名も表示されます。*が表示され、新しいURLは次のようになります。https://github.com//cloud_haikuリポジトリがフォークされたら、クローンを作成して、コードベースのローカル作業コピーを作成します。貢献したいリポジトリのローカルコピーを作成するには、まずターミナルウィンドウを開きます。+`コマンドを使用します。+`で終わる点が異なります。上記のcloud_haikuの例では、URLは次のようになります。https://github.com//cloud_haiku.gitまたは、元のリポジトリページから分岐したばかりのリポジトリページから緑色の[クローンまたはダウンロード]ボタンを使用してURLをコピーすることもできます。ボタンをクリックすると、URLの横にあるバインダーボタンをクリックしてURLをコピーできます。[GitHubクローンまたはダウンロード]URLを取得したら、リポジトリを複製する準備ができました。+`コマンドを組み合わせます。https://github.com//.gitコードのローカルコピーができたので、コードを操作するための新しいブランチの作成に進むことができます。新しいブランチを作成する共同プロジェクトで作業するときはいつでも、あなたとリポジトリに貢献している他のプログラマーは、新しい機能や修正について異なるアイデアを一度に持っています。これらの新機能の一部は実装にそれほど時間はかかりませんが、一部は継続中です。このため、ワークフローを管理し、コードを分離し、プロジェクトリポジトリのメインブランチに戻す機能を制御できるように、リポジトリをブランチすることが重要です。*ブランチと呼ばれます。一般的なベストプラクティスは、masterブランチ上のすべてのものを、他の人がいつでも使用できるように展開可能であると見なすことです。ブランチを作成するときは、マスターブランチから新しいブランチを作成することが非常に重要です。ブランチ名が説明的なものであることを確認する必要があります。fix-documentation-types`を使用する必要があります。ターミナルウィンドウからブランチを作成するには、リポジトリのディレクトリで作業するようにディレクトリを変更しましょう。+`など)を使用して、そのディレクトリに移動してください。+`コマンドで新しいブランチを作成します。プロジェクトで作業している他の人が作業内容を理解できるように、わかりやすい名前を付けてください。+`コマンドを使用して、そのブランチで作業していることを確認するように切り替えることができます。+`コマンドを入力すると、次の出力が表示されます。+`フラグを使用して、上記の2つのコマンドを作成し、新しいブランチに切り替えて切り替えることができます。+`コマンドを使用します。+`コマンドを使用すると、複数のブランチを切り替えることができるため、複数の機能を一度に操作できます。この時点で、既存のファイルを変更したり、独自のブランチのプロジェクトに新しいファイルを追加したりできるようになりました。ローカルで変更を行う既存のファイルを変更するか、プロジェクトに新しいファイルを追加したら、それらをローカルリポジトリに追加できます。`コマンドで実行できます。+」フラグを追加して、行ったすべての変更を追加しましょう。+`コマンドでリポジトリに加えた変更を記録します。*コミットメッセージ*は、コード貢献の重要な側面です。他の貢献者があなたが行った変更、あなたがそれを行った理由、そしてそれがどれほど重要であるかを完全に理解するのに役立ちます。コミットメッセージはプロジェクト全体の変更の履歴レコードを提供し、将来の貢献者を支援します。+`フラグとメッセージを引用符で囲んで記録できます。""しかし、それが非常に小さな変更でない限り、私たちの協力者が私たちの貢献に完全に対応できるように、おそらくより長いコミットメッセージを含めたいと思うでしょう。+`コマンドを実行します。+`コマンドを使用して設定し、nanoをデフォルトのエディターとして設定します。+`コマンドを実行した後、使用しているデフォルトのテキストエディターに応じて、ターミナルウィンドウに、次のような編集可能なドキュメントが表示されます。.py#導入コメントの下に、コミットメッセージをテキストファイルに追加する必要があります。有用なコミットメッセージを作成するには、最初の行に約50文字の要約を含める必要があります。この下に、消化可能なセクションに分割して、この変更を行った理由、コードの仕組み、および他の人がそれをマージするときに作業を確認できるようにコンテキスト化および明確化する追加情報を記載した説明を含める必要があります。プロジェクトを維持している人があなたの貢献を完全に理解できるように、できる限り手助けをし、積極的になるようにしてください。コミットメッセージテキストファイルを保存して終了したら、次のコマンドを使用して、どのgitがコミットするかを確認できます。status行った変更に応じて、次のような出力が表示されます。+`コマンドを使用して、分岐したリポジトリの現在のブランチに変更をプッシュできます。originこのコマンドは、進行状況を知らせる出力を提供し、次のようになります。Webページの分岐したリポジトリに移動し、プッシュしたブランチに切り替えて、ブラウザーで行った変更を確認できます。[プルリクエストを作成]にアクセスすることができます。元のリポジトリですが、まだ行っていない場合は、ローカルリポジトリがアップストリームリポジトリで最新であることを確認する必要があります。他の貢献者と一緒にプロジェクトに取り組んでいる間、競合を引き起こすコードのプルリクエストを行いたくないので、ローカルリポジトリをプロジェクトに合わせて最新の状態に保つことが重要です。コードベースのローカルコピーを最新の状態に保つには、変更を同期する必要があります。フォークのリモートを設定し、次にフォークを同期します。フォークのリモートを構成する*リモートリポジトリ*を使用すると、Gitプロジェクトで他のユーザーと共同作業できます。各リモートリポジトリは、インターネットまたはアクセスできるネットワークでホストされているプロジェクトのバージョンです。各リモートリポジトリは、ユーザー権限に応じて、読み取り専用または読み取り/書き込みのいずれかでアクセスできる必要があります。フォークで行った変更を作業中の元のリポジトリと同期できるようにするには、アップストリームリポジトリを参照するリモートを設定する必要があります。アップストリームリポジトリへのリモートは一度だけセットアップする必要があります。設定したリモートサーバーを確認しましょう。+`コマンドは、既に指定したリモートリポジトリを一覧表示するため、上記のようにリポジトリのクローンを作成すると、少なくとも元のリポジトリが表示されます。これは、Gitがクローンディレクトリに指定したデフォルト名。+`フラグを使用して、Gitが関連するリモートショートネーム(「origin」など)とともに保存したURLを表示します。-vリポジトリを複製したため、出力は次のようになります。+`コマンドはそれらすべてのリストを提供します。次に、フォークと同期するための新しいリモートアップストリームリポジトリを指定します。これは、分岐元の元のリポジトリになります。add`コマンドを使用します。+」はリモートリポジトリに指定した短縮名です。これは、Gitの観点から「上流」とは複製元のリポジトリを指すためです。共同編集者のリポジトリにリモートポインターを追加する場合は、その共同編集者のユーザー名または短縮名の短縮ニックネームを指定することができます。+`コマンドを使用して、アップストリームリポジトリへのリモートポインタが適切に追加されたことを確認できます。+」を参照でき、フォークを元のリポジトリと同期する準備ができました。フォークを同期するGitHubの上流および元のリポジトリを参照するリモートを構成したら、リポジトリのフォークを同期して最新の状態に保つ準備ができました。+`コマンドを使用して、アップストリームリポジトリからそれぞれのコミットとともにブランチをフェッチします。短縮名「upstream」を使用してアップストリームリポジトリを参照したため、それをコマンドに渡します。upstreamリポジトリをフォークしてから何回の変更が行われたかによって、出力が異なる場合があり、オブジェクトのカウント、圧縮、およびアンパックに関する数行が含まれる場合があります。出力は次の行と同様に終了しますが、プロジェクトに含まれるブランチの数によって異なる場合があります。+`というローカルブランチに保存されます。リポジトリのローカルマスターブランチに切り替えましょう。'master'ここで、元のリポジトリのマスターブランチで行われた変更をマージし、ローカルアップストリーム/マスターブランチを介して、ローカルマスターブランチにアクセスします。up-to-date。これで、フォークのマスターブランチはアップストリームリポジトリと同期し、ローカルで行った変更は失われませんでした。独自のワークフローと変更に費やす時間に応じて、必要に応じて何度でもフォークを元のリポジトリのアップストリームコードと同期できます。プルリクエストを行う直前にフォークを同期して、競合するコードを提供しないようにしてください。プルリクエストを作成この時点で、元のリポジトリにプルリクエストを行う準備ができました。分岐したリポジトリに移動し、ページの左側にある[新しいプルリクエスト]ボタンを押す必要があります。Button]次の画面でブランチを変更できます。どちらのサイトでも、ドロップダウンメニューと適切なブランチから適切なリポジトリを選択できます。左側の元のリポジトリのマスターブランチと右側の分岐したリポジトリのマスターブランチを選択すると、次のような画面が表示されます。Request]GitHubは、競合するコードがないため、2つのブランチをマージできることを警告します。タイトルとコメントを追加してから、「プルリクエストの作成」ボタンを押す必要があります。この時点で、元のリポジトリのメンテナーがプルリクエストを受け入れるかどうかを決定します。プルリクエストを受け入れる前に、コードの編集または修正を依頼する場合があります。結論この時点で、プルリクエストをオープンソースソフトウェアリポジトリに正常に送信しました。これに続いて、レビューを待っている間にコードを更新してリベースすることを確認する必要があります。プロジェクトのメンテナーからコードの修正を依頼される場合がありますので、準備を整えてください。オープンソースプロジェクトに貢献し、アクティブなオープンソース開発者になることは、やりがいのある経験になる可能性があります。頻繁に使用するソフトウェアに定期的に貢献することにより、そのソフトウェアが他のエンドユーザーにとってできる限り価値があることを確認できます。Gitの詳細とオープンソースでのコラボレーションに興味がある場合は、https://www.digitalocean.com/community/tutorial_series/an-introduction-to-open-sourceというタイトルのチュートリアルシリーズを読むことができます。Gitを使用するには:リファレンスガイド]。