はじめに
GitHub は、リポジトリでファイルをホストし、作業上の共同作業を行い、時間の経過に伴うファイルの変更を追跡できる Web ベースのアプリです。 GitHubのバージョン追跡は、オープンソース ソフトウェア Git を利用します。 GitHubでリポジトリを更新するたびに、Git によって行った変更が追跡されます。
GitHubを操作する方法は多数あり、ユーザーの経験レベル、個人の好み、操作するリポジトリに適した方法を選択できます。 たとえば、ブラウザーまたはデスクトップのどちらで作業するかを決め、Git の使用方法、エディターやその他のソフトウェアから必要な機能を選択できます。 さまざまな方法で異なるリポジトリを操作することもできます。
GitHubを使い慣れていない場合、貢献を始めるよい方法は、GitHub.comでブラウザー上から変更することです。 GitHubに慣れ、より大きな変更の投稿を開始したら、他のツールの使用を開始できます。 この記事では、これらのステージを進める方法について説明し、各ステージで要件に最適なツールを選択する方法の参考情報を示します。 GitHubの操作に使用できるすべてのツールをすばやく比較するには、「GitHubに接続するためのツールの比較」を参照してください。
始めに
GitHub.comのユーザー インターフェイスでは、ブランチまたはフォークの作成、ファイルの編集とプレビュー、変更のコミット、プル要求の作成など、リポジトリに貢献するための "GitHub フロー" 全体を実行できます。 コンピューターからファイルをアップロードしたり、リポジトリからダウンロードしたりすることもできます。 詳しくは、「GitHub フロー」をご覧ください。
多くの場合、 GitHub.com で直接作業することは、次の理由から、リポジトリに最も迅速に貢献する方法です。
- GitHubでホストされているリポジトリを直接操作しているため、リポジトリのコピーをコンピューターにダウンロードして、このコピーを同期したままにする必要はありません。
- GitHubに既にサインインしている場合は、必要なアクセス許可を持つリポジトリにアクセスできるため、コンピューターで追加の認証を設定する必要はありません。
- ユーザー インターフェイスで変更をコミットできるため、コマンド ラインを使用したり、Git コマンドを覚えておいたりする必要はありません。
ブラウザーでの変更を初めて行う際に役立つチュートリアルについては、「Hello World」を参照してください。
ブラウザーでより複雑な変更を行う
GitHub.comに直接作業することは、小規模で単純な変更に最適です。多くの場合、リポジトリ内の 1 つのファイルを対象とします。 ブラウザーで作業するが、ファイル間でのコンテンツの移動など、より複雑な変更を行う必要がある場合は、次のツールから選択して、専用エディターでリポジトリを開くことができます。
- ファイルをすばやく開いたり作成したりできるエディターが必要な場合は、任意のリポジトリで
.キーを押して、github.dev エディターを開くことができます。 これは、Git コマンドの検索バーやボタンなど、 Visual Studio Codeの機能の多くを含む軽量の Web ベースのエディターです。 詳しくは、「github.dev Web ベース エディター」をご覧ください。 - 引き続きブラウザーを使用して、コマンドの実行、プロジェクトのテスト ビルドの作成、依存関係のインストールなどを行う必要がある場合は、codespace でリポジトリを開くことができます。 codespace は、ストレージとコンピューティング能力を備えたリモート開発環境です。 エディターと統合ターミナルが含まれており、Git を含むプロジェクトを操作するために必要な一般的なツールがプレインストールされています。 詳しくは、「GitHub Codespaces のクイックスタート」をご覧ください。
または、デスクトップから GitHub に接続し、リポジトリのローカル コピーを操作することもできます。
デスクトップからの作業
デスクトップからリポジトリを操作するには、リポジトリのコピーをコンピューターにダウンロード (または "複製") してから、 GitHubに加えた変更をプッシュする必要があります。 デスクトップからの作業には、ブラウザーでの作業と比較して、いくつかの利点があります。
- すべてのローカル ファイルとツールを操作できます。
- コンピューティング能力にアクセスできます。 たとえば、行っている変更をテストできるように、サイトのローカル プレビューを作成するためにスクリプトを実行する必要がある場合があります。
- プロジェクトで作業するためにインターネット接続は必要ありません。
以前にデスクトップから GitHub リポジトリを操作したことがない場合は、コンピューターから GitHub を認証して、必要なリポジトリにアクセスできるようにする必要があります。 また、Git、エディター、プロジェクトの依存関係など、投稿に必要なツールを使用して作業環境を設定する必要がある場合もあります。 これらの理由から、ブラウザーでの作業と比較して、デスクトップから作業する場合は、作業を開始するのに時間がかかる場合があります。
デスクトップから GitHub に接続するために使用できるツールがいくつかあります。 これらのツールを使用すると、 GitHubへの認証、リポジトリの複製、変更の追跡、変更の GitHubへのプッシュを行うことができます。
- 高度な制御と柔軟性が必要な場合は、コマンド ラインを使用できます。 Git をインストールし、いくつかの基本的な Git コマンドを理解する必要があります。 GitHub CLIをインストールすることもできます。コマンド ライン インターフェイスを使用すると、プル要求の作成やリポジトリのフォークなど、GitHubに対して多くのアクションを実行できます。 詳細については、「Git のセットアップ」および「GitHub CLI について」を参照してください。
- ビジュアル インターフェイスを使用する場合は、 GitHub Desktopなどのビジュアル Git クライアントを使用できます。 GitHub Desktopを使用すると、行っている変更を視覚化し、ビジュアル インターフェイスを使用してほとんどの Git コマンドにアクセスできるため、コマンドを記憶する必要はありません。 詳しくは、「GitHub Desktop について」をご覧ください。
- 1 か所で作業したい場合は、多くの場合、エディターからほとんどの操作を実行できます。 VS Codeなどのエディターには、一般的な Git コマンド用の統合ターミナルとボタンが含まれているため、ファイルを編集し、変更を 1 か所からGitHubにプッシュできます。 また、 GitHubでプル要求や問題を直接操作する拡張機能をインストールすることもできます。 はじめに、ダウンロード VS Codeをご覧ください。
GitHub に接続するためのツールの比較
次の表は、ブラウザーとデスクトップの両方で、 GitHub上のリポジトリを操作するために使用できるツールの比較を示しています。
ここで説明するツールを使用して、 GitHub フロー全体を実行できます。 各ツールには、加えた変更を追跡するための Git コマンドだけでなく、 GitHub固有の機能へのアクセスも含まれているため、作業している場所から提案された変更を含むプル要求を作成できます。
これらの各ツールで GitHub を認証する方法の詳細については、「 GitHubへの認証について」を参照してください。
| ツール | 利用シナリオ | ブラウザーまたはデスクトップ |
|---|---|---|
| に GitHub.com | ビジュアル インターフェイスが必要であり、通常は 1 つのコミットを含む、すばやく簡単な変更を行う必要があります。 概要については、「Hello World」を参照してください。 | ブラウザ |
| github.dev | ||
| GitHub.comよりも複雑な変更をリポジトリに加える必要がありますが、コンピューターにインストールしたターミナルやツールを操作する必要はありません。 詳しくは、「github.dev Web ベース エディター」をご覧ください。 | ブラウザ | |
| GitHub Codespaces | スクリプトの実行、プロジェクトのテスト ビルドの作成、依存関係のインストールなどを行うには、コンピューターのリソースが必要で、クラウドベースの環境で作業をすぐに開始することが望ましい場合。 詳しくは、「GitHub Codespaces のクイックスタート」をご覧ください。 | ブラウザーまたはデスクトップ |
| GitHub Desktop | ファイルをローカルで操作する必要があり、Git の使用、変更の視覚化、 GitHubとの対話を行うビジュアル インターフェイスを使用する必要があります。 詳しくは、「GitHub Desktop について」をご覧ください。 | デスクトップ |
| IDE またはテキスト エディター | より複雑なファイルやプロジェクトを操作し、すべてを 1 か所で作成することが望ましい場合。 | デスクトップ |
| コマンド ライン Git と GitHub CLI | コマンド ラインからの作業に慣れていて、コンテキストの切り替えを避けることが望ましい場合、またはビジュアル インターフェイスに統合されていない複雑な Git コマンドにアクセスする必要がある場合。 詳細については、「Git のセットアップ」および「GitHub CLI について」を参照してください。 | デスクトップ |
| GitHub API | データのバックアップなどの一般的なタスクを自動化したり、 GitHubを拡張する統合を作成したりする必要があります。 詳しくは、「GitHubの REST API と GraphQL API の比較」をご覧ください。 | ブラウザーまたはデスクトップ |