初心者向けの 32 Git コマンド チート シート

公開: 2022-09-23

GIT コマンド チート シートは、開発者にとって便利なリファレンスであり、git プロジェクトで最も一般的に使用されるコマンドが含まれています。

GITとは?

GIT は、ユーザーがコード、zip、テキスト、またはプロジェクト全体を含むファイルを配置できるオープンソース リポジトリです。

コラボレーション、バージョン管理、プロセス管理など、いくつかの機能があります。GIT はファイルをより効率的に保存し、他のバージョン管理システムよりも優れた整合性を提供します。 Git はコマンドライン ツールです。

GitHubとは?

洗練されたユーザー インターフェイスを備えた GitHub は、開発者のハブであり、最も広く使用されているバージョン管理システムになり、誰でもどこからでもアクセスできます。

Git ワークフロー

Git にはさまざまなワークフローがあり、すべてのプロジェクトには要件に基づいたワークフローが必要です。 Git ワークフローは、プロジェクトを定期的に展開するチームを支援する軽量のブランチベースのワークフローに他なりません。

たとえば、フォークする Git ワークフローは、リポジトリのローカル コピーを作成します。 したがって、各開発者にはローカル ワークスペースと中央リポジトリがあります。 この種のワークフローは、複数の開発者が関与する場合に適しています。開発者は、メイン リポジトリに変更を加える前に、フォークされたコピーで共同作業できます。

Git が必要な理由

Git はバージョン管理システムであるため、開発者は、変更を保存し、他のユーザーが表示できるようにし、変更を他のユーザーとマージするなど、常に作業を行っています。

Git リポジトリに何らかの変更を加える場合、開発者は適切なアクションを実行するための適切なコマンドを知っている必要があります。 以下は、重要で一般的に使用される Git コマンドのリストです。

一般的な Git コマンド

git追加

指定したファイルをステージングに追加するには

 git add <file> -- add a specific file git add * -- add all the files

git アーカイブ

コミット、ブランチ、ツリーのアーカイブを作成し、複数のファイルを 1 つに結合します。 必要に応じてファイルを抽出してコンテンツを取得できます

git archive HEAD — リポジトリの HEAD ref からアーカイブを作成します

git archive output = '.tar' — アーカイブされたファイルを指定された場所に保存します

git archive --format=tar.gz — tar、zip、tar.gz などのアーカイブ ファイルの形式を指定します。

gitブランチ

リポジトリ内のすべてのブランチを一覧表示します。 ブランチを指定すると、その名前の新しいブランチが作成されます。 ブランチを削除するには、ブランチ名とともに -d オプションを使用します。 現在のブランチの名前を変更するには、-m を使用します。

git branch — すべてのブランチをリストします

git branch <branch_name > — 'branch_name' という名前の新しいブランチを作成しますが、新しいブランチをチェックアウトしません。

git branch -d <branch_name> — ブランチを削除し、マージされていない変更がある場合は削除を防ぎます

git branch -D <branch_name> — マージされていない変更がある場合でも、ブランチを強制的に削除します

git branch -m <branch2> — 現在のブランチの名前を変更します

git cat-file

リポジトリ オブジェクトのコンテンツまたはサイズ/タイプ情報を表示する

git cat-file <object> — オブジェクトの内容を表示します

git cat-file -t <object> — オブジェクトのタイプを表示します

git cat-file -s <object> — オブジェクトのサイズを表示します

git cat-file -p <object> — オブジェクトのタイプをきれいな方法で出力します

git cat-file -e <object> — オブジェクトの形式が無効であるか存在しない場合、stderr にエラーを表示します

git cat-file <type> <object> — オブジェクトの生の内容を表示します

git チェックアウト

リポジトリの異なるブランチを切り替えるには、「元に戻す」機能がないため、慎重に使用してください。

git checkout <branch_name> — 指定されたブランチをチェックアウトします

git checkout -b <branch_name> — 新しいブランチを作成し、このブランチに切り替えます

例えば:

 C:\Users\geekflare>git checkout -b development_branch Switched to a new branch 'development_branch'

gitクリーン

ワーキング ディレクタをクリーンアップします。 コミットされたファイルは削除されません

git clean -n — 削除されるファイルを一覧表示します

git clean -f — ファイルを削除します

gitクローン

既存のリポジトリのコピーを新しいディレクトリに作成します。 中央リポジトリの開発用コピーを取得するのに役立ちます。

git clone <central_repo> <new_dir> — 中央リポジトリのコピーを新しいディレクトリに作成します

例えば:

 C:\Users\geek>git clone geekflare master Cloning into 'master'… done.


git clone -branch <branch> <repo> — 上記のリポジトリからブランチをクローンします

gitコミット

他の人が見ることができるように、変更をステージング環境に保存します。

git commit — 変更をステージングにコミットします

git commit -m <useful_msg> — コミット時にメッセージを表示して、加えられた変更を強調します

git commit -a — ステージングせずに変更を直接コミットします

samplefile.txt という名前のファイルを作業ディレクトリに追加し、そのファイルをコミットしたいとします。 上記のコマンドを実行すると、次の出力が得られます。

 Please enter the commit message for your changes. Lines starting with '#' will be ignored, and an empty message aborts the commit. On branch master Initial commit Changes to be committed: new file: samplefile.txt

メッセージを与えると、変更がコミットされます。

 C:\Users\geekflare>git commit -m 'samplemsg' [integration_branch (root-commit) ed52dd0] 'samplemsg' 1 files changed, 24 insertions(+) create mode 100644 samplefile.txt

git構成

プロパティ値を書き込む構成レベルを指定します。 'Local' レベルがデフォルトです (何も指定されていない場合)。

git config –local — リポジトリの .git ディレクトリに構成を保存します

git config –global — 設定をユーザーのホーム ディレクトリに保存します

git config –system — すべてのユーザーとリポジトリの構成が含まれており、ルートの git config ファイルにあります。

git差分

ステージング前、ステージング時、およびステージング後 (コミット) に実行できる git リポジトリの変更を比較します。

git diff — まだステージングされていないリポジトリの変更を追跡する

git diff --staged — ステージングされたファイル (コミットされていない) の変更を追跡します

git diff HEAD — コミット後のファイルの変更を追跡する

git diff <commit1_id> <commit2_id> — 2 つのコミット間の変更を追跡します。 「 git log -p --follow --filename 」を使用して commit_ids を見つけることができます

git フェッチ

ブランチまたはリモート リポジトリ全体をフェッチする

git fetch <remote-url> — リモート リポジトリの URL からリポジトリ全体を取得します

git fetch <branch_url> <branchname> — 特定のブランチを取得します

git fetch -all — リモートリポジトリのすべてのブランチをフェッチします

git fetch origin — ローカル リポジトリを更新し、リモート リポジトリの新しい変更で同期します

git fsck

ファイルシステムチェックコマンドは、データベースオブジェクトの有効性と接続性をチェックします。 オブジェクトの SHA-1ID とそれらが確立する接続をチェックします。 Fsck は、失われたコミットとファイルを回復するのに役立ちます。

git fsck –full

git gc

現在のリポジトリでガベージ コレクションを実行し、未使用のファイルをクリーンアップします。

git gc

git grep

リポジトリ内の特定のコンテンツを検索します。 Git には、さまざまな方法で検索するための多くのオプションが用意されています

git grep -i 'search_term' — 大文字と小文字を区別せずに検索 [man と man は同じになります]

git grep -f <file_name> — 特定のファイルの一致パターンを表示します

git grep -e 'search-term' — パターン マッチングに -e を使用

git grep -E 'regexp|multiple_exp' – 正規表現を検索します。パイプ (OR) 演算子を使用して複数検索できます

git grep -n 'expr' — 一致する行のプレフィックス行番号

git grep -c 'expr' — 各行ではなく、一致した行数を表示します

git ls-tree

現在のディレクトリからツリー オブジェクトの内容を一覧表示します。

git ls -tree -d <path> — 子ではなく、指定されたツリー エントリのみを表示します

git ls -tree -r — サブツリーへの再帰

git ls -tree -l — ファイル (ブロブ) オブジェクトのサイズを表示します

git ls -tree --name-only — ファイル名のみを表示し、長い出力は表示しません

git ls -tree --full-name — 現在のディレクトリからの相対パスだけでなく、完全なパス名を表示します

例:

 C:\Users\geek>git ls-tree --full-tree -r HEAD 100644 blob e883e60087e84f1660a9673ccb86eb0adc4f004d samplefile.txt 100644 blob 1426dc6fbff0677a484b248983a8740ff30fbb80 sample_jsindex.js

git初期化

新しい空のリポジトリを作成します。 これは、git プロジェクトを作成するために実行する最初のコマンドです。

git init — 作業ディレクトリに .git リポジトリを作成します。

たとえば、「geekflare」という新しいレポを作成するには、次のようにコマンドを指定します。

 $ git init geekflare Initialized empty Git repository in C:/Users/geek/geekflare/.git/

git インスタウェブ

ブラウザーを介して git リポジトリを参照するためのユーザー インターフェイス。 同じために CGI スクリプト GitWeb を使用します。

git instaweb --httpd=webrick — サーバー (httpd) を起動し、ページで Web ブラウザーを開きます。

サーバーを停止するには、上記のコマンドを –stop オプションとともに使用します。

git ログ

git リポジトリ内のすべてのアクティビティを記録します。

git log — 最近のいくつかのコミットを表示します

git log --oneline — 出力を SHA の最初の 7 文字として表示し、コミット メッセージを 1 行に 1 つのコミットで表示します。

git log stat — 追加/削除された行数、変更された合計レコードの概要、追加/削除された行など、変更されたファイルに関する詳細情報を表示します

git log --patch (or -p) — 変更されたファイル、特定の変更、およびそれらの場所を表示します

git log --graph — ログ結果をグラフ形式で表示

git log -<n> — 最後の「n」回のコミットを表示します

git log --after=<date/x days/yesterday> — 指定した日付以降のすべてのコミットを表示します。 --beforeを使用して、指定した日付より前のコミットを表示できます

git log --author=<author_name> — 特定の作成者 (ユーザー) のコミットを表示します。

git log --grep=<commit message> — コミットメッセージに基づいてコミットをフィルタリングします

gitマージ

すべての開発ファイルを 1 つのブランチに統合し、2 つのブランチを結合し、複数のコミットを 1 つの履歴にマージします。 競合がある場合、マージは停止し、git は競合ファイルを提示します。 競合が解決されると、マージが続行されます。

git checkout -b — まず、マージするブランチをチェックアウトします

git add <file>

git commit — ファイルを追加してコミットします

git checkout master

git merge — ブランチを master にマージします

gitプルーン

現在のブランチから到達できないファイルを削除 (プルーン) します。 使用していないファイルをブランチから削除するためのクリーニング プロセスです。

git prune -n​​ — 剪定しないで、剪定できるものをすべて表示するだけです

git prune -v — prune によって実行されたアクションの出力を表示します

git prune --progress — プルーンの進行状況を表示します

git fetch --prune — 古いブランチをすべて削除します

gitプル

リモートサーバーから作業リポジトリへのデータを受信します。 リモートリポジトリからのすべての最新ファイルでローカル (作業中) ブランチを更新します。

git pull — リモートリポジトリをプルします

git pull <repo URL> — 特定のリモート ブランチをプルします

ギットプッシュ

すべてのローカル変更をリモート リポジトリにプッシュします。 これは、pull および fetches コマンドとは正反対のアップロード プロセスです。

git checkout master — 最新の変更があるブランチをチェックアウトします

git push origin master — 変更をリモート リポジトリにプッシュします

例:

 C:\Users\geek>git checkout development_branch Switched to branch 'development_branch' C:\Users\geek>git push master development_branch Enumerating objects: 4, done. Counting objects: 100% (4/4), done. Delta compression using up to 4 threads Compressing objects: 100% (3/3), done. Writing objects: 100% (4/4), 612 bytes | 204.00 KiB/s, done. Total 4 (delta 0), reused 0 (delta 0), pack-reused 0 To master [development_branch] development_branch -> development_branch

コマンドgit push --delete <branch>を使用して、プッシュを使用してリモート ブランチを削除することもできます。

例えば:

 C:\Users\geek>git push master --delete development_branch To master [deleted] development_branch

git リベース

異なるブランチからの複数のコミットを組み合わせて、新しい最終ベース コミットを作成します。 すべての変更をマージする前に、異なるブランチからの変更を 1 つずつ (直線的に) コミットするのに役立ちます。

git rebase <branch name> — コミットを 1 つの最終ベースに結合します

競合がある場合は、それらを解決してリベースを続行します。
git rebase --continue

変更をスキップするには:
git rebase --skip

gitリモート

リモート サーバーの構成を確認し、リモートとローカル間の接続アクセスを許可します。

git remote — デフォルトでは、Git によって指定されたリモート サーバーのデフォルト名である「origin」を返します。

git remote -v — 利用可能なすべてのリモート接続の短い名前と URL を一覧表示します

git remote add <short name> <remote url> — リモートサーバーを利用可能な接続に明示的に追加します。 URL 全体を指定する代わりに、短い名前を git コマンドに使用できます。

git remote remove <remote url/short name> — リモートサーバーをリポジトリから削除します

git リセット

前のコミットに戻り、そのコミット以降に行われた変更を破棄します

git reset <hash of the commit> — リポジトリを指定されたコミットに復元します。 Git はコミット履歴を保持するため、別のコミット (ハッシュ) で別のリセットを実行して、リセットを元に戻すことができます。

git rm

特定のファイルを git から削除します。 reset または checkout コマンドを使用して、rm の効果を元に戻すことができます。

git rm <file_ name> — 特定のファイルを削除します

ファイルを git から削除して、ローカル (ステージング) に保持するには、次を使用します。

git rm --cached

gitショー

SHA1 を指定して、ブロブ、ツリー、コミット、タグなどのオブジェクトを表示する

git show — <object> を指定しないと、ブランチの最後のコミットの詳細が表示されます。

git show <SHA1_id> — BLOB ID、ツリー ID など、SHA1 ID で指定されたオブジェクトのコンテンツを表示します。オブジェクトのタイプを確認するには、コマンドgit cat-file -tを使用します。

git show –pretty — 出力をきれいな形式で表示します。

カスタム形式を指定できます:

git show --pretty = 'format:Name: <format>'または、ショート、フル、1 行、ミディアム、またはフル フォーマットのいずれかを使用できます。次に例を示します。

git show --pretty= 'medium' — 作成者、日付、タイトル、完全なコミット メッセージが表示されます

git show --abbrev-commit — SHA1 を省略します

git スタッシュ

現在のブランチでコミットせずにブランチを切り替えるには、コミットされていないデータを安全に保存します

git stash — 作業とインデックスの状態を保存します

git stash save <message> — 保存中にメッセージを送る

git stash list — 隠しコンテンツのリストを表示する

git stash apply — 隠した変更をコミットします。 特定の stash の変更を適用するには、apply とともに stash インデックス ID を使用します。

git stash show — 隠しファイルの内容を表示する

git stash drop — キューから最新の stash を削除します

git ステータス

リポジトリとステージングのステータス、つまりコミット ステージの前のステータスを表示します。 ファイルの追加、更新、削除など、他の git コマンドの後にこのコマンドを使用できます。

git status — コミットされる変更、または追跡されていない (ステージングされていない) 変更を表示します

たとえば、samplefile.txt という名前の作業ディレクトリにファイルを追加し、追加されているかどうかを確認する場合、上記のコマンドを実行できます。 次のような出力が得られます。

 On branch master No commits yet Changes to be committed: (use "git rm --cached …" to unstage) new file: samplefile.txt

git タグ

わかりやすい参照は、コード内のマイルストーンまたは参照ポイントを示すために使用されます

git tag <tag_name> — 指定された名前でタグを作成します

git tag — 利用可能なすべてのタグを一覧表示します

git tag show <tag_name> — 指定されたタグの詳細を表示します

git tag -l “.*” — 指定されたパターンまたは文字に一致するタグを表示します

gitk

コンテンツ、コミット、完全な差分、およびその他の詳細をウィンドウに表示する git ユーザー インターフェイスを起動します。

gitk — 視覚化のためにウィンドウで git リポジトリを開きます

git バージョン

git version コマンドを使用して、使用している git のバージョンを確認します。

 C:\Users\geekflare>git version git version 2.38.0.windows.1

最後の言葉

この投稿では、最も一般的に使用される git コマンドとそのオプションをリストしました。

次に、GitHub 資格情報スキャナーを確認できます。