Git チェックアウトと Git クローンの違い

John Wachira 2023年6月20日
  1. git clone コマンド
  2. git checkout コマンド
Git チェックアウトと Git クローンの違い

この記事では、Git の git checkout コマンドと git clone コマンドの違いについて説明します。 SVN 環境から来ている場合、SVNgit clone に相当するものは svn checkout であるため、混乱する可能性があります。

この記事の終わりまでに、git checkout および git clone コマンドを使用して Git リポジトリをナビゲートするために必要なすべてが揃っていることになります。

まず、各コマンドを定義し、ワークフローについて説明します。 すぐに飛び込みましょう。

git clone コマンド

git clone コマンドの機能は 1つだけです。 呼び出されると、ローカル マシンにリモート リポジトリのコピーが作成されます。

リモート リポジトリの URL をパラメーターとして受け入れます。 コマンドの一般的な構文は次のとおりです。

$ git clone <URL>

例を見てみましょう。

GitHub でホストされているリモート Sample-Repo リポジトリがあると仮定すると、どうすればローカル マシンで同じリポジトリのコピーを作成できますか?

このようなシナリオでは、git clone コマンドを使用します。 前述したように、コマンドにはリモート リポジトリの URL が必要です。

URL の取得方法がわからない場合は、次の手順に従ってください。

  1. GitHub Web アカウントを開き、複製するリポジトリに移動します。
  2. Code ボタンをタップし、認証プロトコルに応じて URL をコピーします。 この場合、HTTPS プロキシを使用します。

リモート URL

リポジトリをクローンするには、ターミナルを開き、クローン先のディレクトリに移動して、以下に示すようにコマンドを実行します。

$ git clone https://github.com/Wachira11ke/Sample-Repo.git

これにより、マシン上にリモート リポジトリのローカル コピーが作成されます。 ほとんどの場合、プロジェクトで 1 回 git clone コマンドを使用します。

git checkout コマンドに移りましょう。

git checkout コマンド

git clone コマンドとは対照的に、git checkout コマンドには複数の用途があり、プロジェクトで作業するときにおそらく毎日使用するでしょう。

git checkout コマンドの 3つの一般的な用途を次に示します。

  1. ブランチを切り替える
  2. 変更をキャンセルする
  3. 新しいブランチを作成する

git checkout でブランチを作成する

通常、git branch コマンドを使用して新しいブランチを作成します。 ただし、git checkout コマンドを使用してブランチを作成することもできます。

git branch コマンドは新しいブランチを作成するだけですが、git checkout コマンドは新しいブランチを作成し、新しく作成したブランチに切り替えます。

例を見てみましょう。

git checkout コマンドを使用して、新しく複製した Sample-Repofeature ブランチを作成するにはどうすればよいでしょうか。

以下に示すように、コマンドを実行します。

$ git checkout -b feature

フィーチャー ブランチ

git checkout でブランチを切り替える

Git でブランチを切り替えたい場合は、git checkout コマンドが便利です。 master ブランチに戻りたいと仮定すると、どうすればよいでしょうか?

以下に示すように、git checkout コマンドを実行します。

$ git checkout master

git checkout で変更をキャンセルする

git checkout コマンドを使用して、まだコミットされていないファイルへの変更をキャンセルすることもできます。 例を見てみましょう。

Sample-Reporun.py ファイルを変更します。 git status コマンドを実行すると、次のようになります。

作業ツリー

Git が git checkout コマンドを使用して run.py ファイルに加えられた変更を破棄することを提案していることがわかります。

$ git checkout run.py

これにより、ファイルに加えられた変更が破棄され、最後にコミットされた状態に戻ります。

結論として、git checkoutgit clone コマンドは異なります。 git clone コマンドはローカル マシンにリモート リポジトリのコピーを作成しますが、これはおそらく 1 回だけ使用します。

一方、git checkout コマンドにはいくつかの用途があり、日常的に使用します。

著者: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

関連記事 - Git Checkout

関連記事 - Git Clone