Gitの常用する7大技巧と命令を分かち合います。

3875 ワード

Gitは非常に強力なツールで、プロジェクトを維持するための豊富なツールが含まれています。本論文では、日常的に使用するGitの実用的なスキルとコマンドを紹介します。
一、Git diff対命令
通常、私達は自分の独立枝の中で需要開発を完成します。この時、自分の枝と他の枝を比較する必要があります。この機能は

git diff branch1 branch
コマンドを実行します。
一時預かりエリアと現在のHEADを比較したい場合は、

git diff --cached
命令はとても便利です。一般的なgit diffコマンドのデフォルトのコントラストは、インデックスに追加されていないファイルです。
二、Git一時預かりエリア回復命令
一部のファイルを一時預かりエリアに追加して後悔したら、Gitは複数のコマンドを提供してこの機能を実現します。具体的にはその時の状況によって決めます。

git rm path/to/file --cached
このコマンドはファイルを一時保存のインデックスから削除しますが、まだ作業ディレクトリにファイルを保存します。これは直接使うよりも

git rm file -f
ファイルを完全に削除すると安全です。
三、Gigt reet変更命令を回復する。
もしいくつかの変更を回復したいなら、私達は使うことができます。

git reset
このコマンドは多くの異なる行動を行うことができますので、実際のシーンに合わせて使用する必要があります。
すべての変更を削除したい場合は、索引の内容と作業ディレクトリの変更を含めます。

git reset --hard
インデックスをリセットしたいだけなら、使用できます。

git reset --mixed
これはgit resetコマンドのデフォルトの動作でもある。混合リセットは現在の作業ディレクトリの変更を保持します。最後に、分岐のHEADを修正したいだけであれば、通過できます。

git reset --soft
実現します。git resetコマンドを実行すると、パラメータとして複数のターゲットファイルを指定できます。もちろん通過できます

git reset --hard COMMIT_ID
指定された送信バージョンに復元します。
四、Git stash
みんなはgit stashの命令に慣れていないはずです。git stash popを通じて、以前の変更を簡単に元に戻すように命令します。ただし、作業ディレクトリに未追跡のファイルがある場合、デフォルトでは一時貯蔵エリアには保存されません。追跡されていないファイルを一時的に保存するために、使用できます。

git stash --include-untracked
もう一つの非常に有用な命令は

git stash list
それは臨時貯蔵区域の中の内容を並べることができます。
五、Gitは歴史記録を見る。
Gitは非常に強力なツールを持って、プロジェクトや特定のファイルの変更状況を確認します。個人的にはその中の一つの命令を使うのが好きです。

git log --graph --decorate --oneline
これは修正された提出履歴を示すために使用できます。このコマンドは非常に長いので、別名を作成してもいいです。git logコマンドは、HEAD、提出したID、および分岐情報を表示することができます。これらの情報があれば、私達は使うことができます。

git show COMMIT_ID/HEAD/BRANCH
を選択して、より詳細な情報を表示します。
ある時、私たちは誰が一つの書類に対して何を変えたかを知る必要があります。

git blame path/to/file
このコマンドが提供する機能。git diffコマンドがあります。これも歴史を見るためのツールです。例えば、現在のHEADと前の2つの提出を比較する必要がある場合には、使用することができます。

git diff HEAD HEAD~2
各提出ごとにより詳細な更新情報を表示できるように、ご利用ください。

git log --patch
キーワード「apple」の提出だけを見たいなら、使用します。

git log --grep apples --oneline
提出履歴の二つの点の間の提出履歴を確認したいです。

git log HEAD~5..HEAD^ --oneline
ブランチに対して使用できます。

git log branch_name..master --oneline
六、Git復旧エラー提出命令
注意:以下の命令は提出履歴を修正しますので、使用前に確認してから実行してください。
間違った提出をすると、提出履歴を修正したいかもしれません。リモート倉庫に送った提出履歴を修正することは勧めません。(たとえgitが許可しても)ローカル倉庫の提出履歴については、個人的には修正できると思います。通過する

git commit --amend
前の提出を削除して、前の提出の代わりに新しい提出記録を作成できます。
もう一つの私の大好きなgitはテクニックを使います。これは提出した情報を編集したり、複数の提出を一つに圧縮して提出することができます。これも私の一番好きな機能です。リモート倉庫において、origginのマスター分岐後のすべての提出にインタラクティブな変基を実行するために、使用できます。

git rebase -i origin/master
このコマンドは、提出リストと実行可能操作の詳細を表示します。例えば、以下の動作は、複数の提出を一つに圧縮する。

1 pick 80f2a48 Add feature X
2 squash 2c74ea2 Add junit tests for feature X
3 squash 4k81nm5 Bugfix for feature X
最終的な結果は、「Add feature X」という送信メッセージを生成することになる。
問題のある提出を回復したいなら、私達は使用できます。

git revert COMMIT_ID
このコマンドは、現在のプロジェクトの状態を指定された送信前に復元するための新しいコミットを作成します。
もし問題を修復する時に誤操作があったら、例えば削除すべきでないファイルを削除してしまいます。私たちはまだバージョンライブラリから復元できます。gitは削除された提出を含めて修正されたバージョンをすべて保存しています。git reflogコマンドは、この機能を実現するために使用されます。
七、Git選別提出(cherry-pick)
私達と同僚がそれぞれのブランチで開発を進めていると仮定します。同僚は重要な提出があります。私達も自分のブランチに適用したいですが、他の提出は必要ありません。この時に私達は使うことができます。

git cherry-pick COMMIT_ID
以上の7つの命令は私達の日常の仕事の中でよく使う命令です。Gitはまだ多くの便利で使いやすい命令があります。私達は引き続き皆さんに共有します。皆さんの助けになりたいです。下のリンクは他のGitの使い方に関するものです。詳しく読んでください。