知っておくべきトップ30のGitコマンド

公開: 2020-04-28

あなたがプロのソフトウェア開発環境の一部であるなら、コードを書くことに関して物事がどのように機能するかを知っているでしょう。 通常、コードを作成するさまざまなチームがあります。開発環境には、同じ場所に座っている開発者のチームが、地球の別の場所からリモートで共同作業しているチームと緊密に連携している場合があります。

これらのチームは両方ともコードを記述し、中央のコードベースに貢献しています。 ここで、バージョン管理システムまたはVCSが役立ちます。 さまざまなソースからコードを収集するコードベースを管理します。

目次

バージョン管理システムとは何ですか?

バージョン管理システムは、製品のすべてのステージとリリースの貢献と管理のための単一の参照ポイントであり、複数のファイルやフォルダーを必要とせずにこの仕事を行います。 VCSは、開発フェーズで通常発生する問題を取り除き、開発者にファイルやフォルダーを交換させないことでプロセス全体を合理化します。

代わりに、開発者は通信する必要のある単一のソースを持っています。 コードのすべての変更を確認できるのはこのソースです。 すべてのファイルはこの場所に保存されます。 開発者がニーズに応じて世界中で利用する2種類のVCSがあります。 これらのVCSは

一元化されたバージョン管理システム:これらのVCSは、プロジェクトまたはコードベースが存在する一元化されたリポジトリを利用します。 この一元化されたプロジェクトは、チームの開発者によって提供されたすべてのファイルで構成されています。 開発者がプロ​​ジェクトまたはプロジェクトに保存されているファイルに変更を加えたい場合は、このリポジトリにアクセスするためのアクセス権が必要です。

分散バージョン管理システム:これらのVCSでは、集中型の対応システムよりもはるかに柔軟性があります。 MercurialとGitは、分散型VCSの最も一般的な例です。 このシステムでは、すべての開発者が独自のローカルリポジトリを持っており、コードが記述されているだけでなく、一定期間に加えられた変更だけでなく、他の開発者のリリースも含まれています。

gitとは何ですか?

簡単に言うと、gitは無料で利用できる分散バージョン管理システムです。 これはオープンソースのVCSであり、小規模プロジェクトと大規模プロジェクトの両方を、対応するプロジェクトよりも高速かつ効率的に処理できます。 これは、利用可能なすべてのシステムの中で最も好ましい分散バージョン管理システムです。

gitはどのように機能しますか?

Gitは、他のほとんどのバージョン管理システムと同じようには機能しません。 ファイルの違いを計算し、これらの違いを合計して保存されたバージョンに到達する他のVCSとは異なり、gitはファイルシステムのスナップショットを使用してジョブを実行します。 ファイルへの変更をコミットするか、プロジェクトの変更された状態を保存するときはいつでも、gitがシステムのスナップショットを取得し、それを参照として保存する必要があります。

変更が加えられていないファイルには、以前のスナップショットが参照として保存されます。 Gitは、開発者がさまざまなタスクを実行するのに役立つ一連のコマンドを提供します。 オープンソース開発者が最も一般的に使用する上位30のgitコマンドについて説明します。

読む: Gitインタビューの質問と回答トップ30

Gitの状態

gitを使用している場合、ファイルは、変更、ステージング、またはコミットの3つの状態のいずれかになります。 これらの状態が実際に何を意味するのかを議論しましょう。

ローカルリポジトリでファイルに変更を加えると、ファイルは変更された状態になります。 ただし、これらはまだ保存されていません。 段階的な状態では、ファイルに加えた変更が保存されます。 最後に、コミット状態では、変更および保存されたファイルがプロジェクトまたはコードベースに保存されます。

さて、あなたが完全に理解する必要があるgitについて非常に重要なことがあります。 gitで実行できるリポジトリには2つのタイプがあります。 作業しているラップトップまたはデスクトップには、作業ディレクトリとも呼ばれるローカルリポジトリがあります。 次に、リモートリポジトリがクラウド上に存在します。

では、問題は、これら2つのリポジトリタイプをgitでどのように使用するかということです。 ローカルリポジトリには必要なすべての機能が付属していますが、デスクトップまたはラップトップでのみ使用できます。 チーム内の他の人とファイルを共有する必要がある場合、何をする必要がありますか? GitlabまたはGitHubを使用して、コードのリモートリポジトリを作成します。

次に、そのリポジトリを使用してファイルまたはコードをアップロードできます。 これで、リポジトリにアクセスできるすべての人が、ファイルをローカルのラップトップまたはデスクトップにダウンロードして、貢献することができます。

Gitコマンド

このセクションで説明するこれらすべてのコマンドは、ソフトウェア開発プロセスを開発者にとって非常に簡単にする上で大きな役割を果たします。 これらのコマンドの中で最も便利なものについて説明します。

1.詳細の構成:これを使用して、プロファイルを構成できます。 この目的には、gitconfigコマンドを使用します。 このコマンドを使用して、名前と電子メールIDを設定できます。 これらの詳細は、プロジェクトまたはグローバルの2つの基準で構成できます。 以下のコマンドをloclリポジトリに使用します。

git config user.name“ Bill Tench”

git config user.email [email protected]

グローバル設定にはglobalconfigコマンドを使用します

git config —グローバルuser.name「BillTench」

git config —グローバルuser.email“ [email protected]

2.リポジトリの初期化:リポジトリは、プロジェクトのディレクトリの一種です。 ソースファイル、タグ、ヘッド、サブディレクトリなど、多くの情報が含まれています。 git initコマンドを使用して、リポジトリを初期化します。 このコマンドは、他のすべてのコマンドの中で最も使用されているコマンドの1つです。 リポジトリの初期化後、リポジトリへのファイルの追加と変更を開始できます。

3.ファイルの追加: Gitを使用すると、ファイルの追加が非常に簡単になります。 gitを使用して、変更したすべてのファイルまたはディレクトリをリポジトリに追加するコマンドを追加します。 それがどのように機能するか見てみましょう。

gitファイルを追加

このコマンドは、作業ディレクトリからのすべてのファイルを取得し、それをリポジトリに追加します。 このコマンドを使用して、特定のファイルを追加できます。 これで、PHPファイルを追加する場合は、以下のコマンドを使用できます。

git add * .php

これらのファイルは、ステージング用にマークされます。

4.追加されたファイルの確認:最近追加されたファイルは、gitstatusコマンドで確認できます。 このコマンドを使用して、新しいファイルまたは変更されたファイルを表示できます。 詳細を表示するには、gitstatusコマンドを実行できます。 このコマンドを使用すると、次のコミットでステージング状態に設定されているすべてのファイルが表示されます。

5.リポジトリの変更をコミットする:前述のように、変更をコミットするたびに、コードベースのスナップショットが作成されます。 これは、gitが変更を追跡し、バージョン管理を提供する方法です。 この関数に使用されるコマンドはgitcommitです。

このコマンドを実行するとすぐに、いくつかの情報を提供するように求められます。 細かい部分を追加するようなものです。 インストール中に設定されたデフォルトのLinuxエディターが呼び出されます。 git commit –mの「FirstCommit」コマンドを使用して、彼の不注意が発生しないようにします。

6.ログの表示:リポジトリに加えた変更を確認する場合は、ログを確認する必要があります。 これを行うには、gitlogコマンドを使用してください。 これにより、行ったコミットに関する一般的な情報が表示されます。 git log –fileコマンドを使用すると、特定のファイルに加えた変更を確認できます。 他のオプションを使用して、ログで他の詳細を確認することもできます。

7. gitブランチを確認します。ブランチは、プロジェクトの開発の独立したフェーズを示します。 現在のブランチを表示するには、gitbranchコマンドを使用できます。 このコマンドを使用すると、現在作業しているブランチを確認できます。 アクティブなブランチには、他のブランチと区別するために、出力にアスタリスク記号が表示されます。

8.ブランチのリセット:現在使用している作業ディレクトリまたはリポジトリを別の状態にリセットすることは非常に重要です。 git resetコマンドを使用して、この機能を実行できます。 以下のコマンドを使用して、現在のブランチのソフトリセットまたはハードリセットを実行できます。

git reset –soft

git reset –hard

9.新しいブランチを追加する:新しい機能を個別に処理する場合は、新しいブランチを追加して作業を簡単にすることができます。 これにはgitbranchコマンドを使用します。 識別のためにブランチ名を追加します。

gitブランチ機能-作業

ブランチが正常に追加されたことを確認するには、gitbranchコマンドを再度使用します。 追加が成功すると、feature-workという名前の新しいブランチが表示されます。 同じ名前の新しいブランチを1つだけ追加できることを覚えておく必要があります。 これを行うと、致命的なエラーが発生します。 したがって、新しいブランチを追加するために別の名前を使用してみてください。

10.ブランチを切り替える: git checkoutコマンドを使用して、プロジェクトで異なるブランチを切り替えることができます。 このコマンドは、ソフトウェア開発中に開発者によって非常に一般的に使用されます。 これが例です

gitチェックアウト機能-作業

このコマンドを使用すると、切り替えが成功したことが通知されます。 切り替えが実際に行われたことを確認するには、前に説明したgitbranchコマンドを使用します。

11.バージョンの表示: git –versionコマンドを使用して、マシンにインストールされているgitバージョンを表示します。

12.マニュアルページを参照してください: mangitおよびmangit commitコマンドを使用して、サブコマンドのマニュアルを参照してください。

13. git構成の管理: git configコマンドを使用して、さまざまな構成オプションを設定、置換、または照会できます。

14.ログ情報の要約:この目的には、gitshortlogコマンドを使用します。

15.各コミットの変更を表示する:コマンドを変更したgitを使用して、各コミットがプロジェクトにもたらした変更を確認できます。

16.オブジェクトデータベースの検証: git fsckコマンドを使用して、オブジェクトデータベース内の不良または欠落しているオブジェクトを見つけます。

17.アンパックされたオブジェクトの一覧表示: count-objectsコマンドを使用して、アンパックされたオブジェクトの総数と、それらが使用しているディスク容量を表示します。

18.まだパックされていないオブジェクトをパックする:この目的でgitrepackコマンドを使用できます。

19.作業ツリーの管理: git worktreeコマンドを使用して、作業ツリーを表示し、作業ツリーを削除し、作業ツリーを追加し、作業ツリーを整理します。

20.パターンを探す: git grepコマンドを使用して、リポジトリ内の特定のパターンを探して開発を容易にします。

21.リモートリポジトリの表示: gitremoteコマンドを使用してこの機能を実行します

22.更新のプッシュ: git pushコマンドを使用して、更新をリモートリポジトリに追加できます。

23.新しい更新をプルする: git pullコマンドを使用して、他の開発者が行った変更でプロジェクトのローカルバージョンを更新できます。

24.リポジトリのクローン作成: git clone <Git:URL>コマンドを使用して、この機能を実行します。

25. Stash作業ディレクトリ:この目的でgitstashコマンドを使用できます。

26.既存のコミットを元に戻す: git revertコマンドを使用して、使用できなくなったコマンドを元に戻します。

27. 2つのブランチをマージする: git mergeコマンドを使用して、2つの開発ブランチを1つの統合ブランチにマージします。

28.ファイル、コミット、およびtressの違いを確認します。gitdiffコマンドを使用して、この機能を実行できます。

29.プロジェクトにタグを追加する:プロジェクト内の重要なイベントをgittagコマンドでマークします。

30.リモートデータのフェッチ:この機能を実行するには、gitfetchoriginコマンドを使用します。

また読むトップフルスタック開発者ツール

結論

Githubコマンド、フルスタックソフトウェアの詳細に興味がある場合は、upGrad&IIIT-Bのフルスタックソフトウェア開発のPGディプロマをチェックしてください。これは、働く専門家向けに設計されており、500時間以上の厳格なトレーニング、9以上のプロジェクト、および割り当て、IIIT-B卒業生のステータス、実践的な実践的なキャップストーンプロジェクト、トップ企業との仕事の支援。

未来のキャリアに備える

業界で信頼されている学習-業界で認められた認定。
今すぐ申し込む@アップグレード