Git スイッチとチェックアウトの違い

Abdul Jabbar 2023年1月30日
  1. Git の switch コマンドと checkout コマンドの違い
  2. Git の checkout および switch コマンドを使用してブランチを切り替える
Git スイッチとチェックアウトの違い

Git は、ユーザーがさまざまなコマンドを使用して、便利で最もシンプルなコマンドラインで作業できるようにする独自のオープンソースプラットフォームとして認識されています。毎日新しいバージョンを導入することで、時間とともにコマンドラインを増やしています。

新しいバージョンの導入に伴い、Git は古いコマンドと同様のいくつかの新しいコマンドを起動しましたが、最新の更新を含むいくつかの新しいプロパティがあります。バージョン 2.23 より前では、git checkout は、現在のシナリオの複数のタスクに使用される過負荷のコマンドでした。

このように、開発者は、どのコマンドをいつ実行し、どのような状況でより良い結果を得るかなど、多くの混乱に直面します。これらの状況を解放するために、Git は、Git で特定の役割を実行できるより便利なコマンドを含む新しいバージョンをリリースしました。

そしてその中でも、git switchgit restore は注目に値します。このチュートリアルでは、git switch コマンドと git checkout コマンドの違いを説明します。

Git の switch コマンドと checkout コマンドの違い

git checkout コマンド

checkout コマンドは、最近アクティブなブランチを切り替えるために使用されます。また、ファイルの変更を元に戻すために使用され、ファイルを復元するためにも使用できます。checkout ブランチを使用する主な原因は、別のブランチに切り替えて、現在のリポジトリの新しい head ブランチにすることです。

特定のファイルの以前のバージョンを復元する場合は、特定のファイルを以前のバージョンにリセットすることで、git checkout コマンドを使用して復元できます。これは、プロジェクトの残りの部分にはまったく影響しません。

また、開発者が特定のブランチで作業していて、開発者の依存関係のために別のブランチで作業したいとします。その場合、Git の checkout コマンドを使用して他のブランチに切り替えることができます。

git switch コマンド

switch コマンドは、ブランチを作成し、他のブランチに移動し、現在のリポジトリの現在の HEAD ブランチに切り替えるために使用されます。

これは新しい機能ではありませんが、以前のバージョンの Git バージョン管理で git checkout によって以前に行われたブランチを切り替えるための高度な代替オプションです。Git の checkout は悪いオプションではありませんでしたが、多くの目的で同時に使用される多目的なツールです。

checkout とは異なり、switch コマンドは限られた目的でのみ使用されます。つまり、リポジトリのブランチの作成と切り替えのみです。

git switch コマンドは主にブランチの開発と切り替えに焦点を当てていますが、git checkout コマンドは完了した作業のコミットをターゲットにすることに焦点を当てています。

Git の checkout および switch コマンドを使用してブランチを切り替える

checkout コマンドを使用して新しいブランチを開発するには、フラグ -b を使用します。これは、新しいブランチを作成し、そのブランチに即座に切り替えるのに役立ちます。1つの Git コマンドで同時に 2つの操作を実行します。

git checkout -b new_branch

幸いなことに、コマンド git switch は、1つのコマンドのみを使用してこれら 2つの操作を同時に実行します。このコマンドで使用されるフラグは -c です。

git switch -c new_branch
著者: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn

関連記事 - Git Checkout

関連記事 - Git Switch