【Gitコマンド】
【現在のブランチ】は、「どこ?」
「ブランチ情報」を確認する。
$ git status
「ブランチと追跡情報」を確認する。
$ git status -sb
「ブランチのコミット履歴」を確認する。
$ git log
【スタッシュ】
「スタッシュのリスト」を確認する。
$ git stash list
「スタッシュ」を実行する。
$ git stash save " {コメント} " -u
// -u は --include-untracked の略。
//「コミットしていない変更」の(「addしたファイル」・「addしていないファイル」の両方)「変更した部分」が退避されます。
//「ワーキングディレクトリ上」は差分がない状態。
「スタッシュを元に戻す」: 直近のスタッシュ(一番上)が戻る。
$ git stash apply
「スタッシュを元に戻す」: 指定バージョンが」戻る。
$ git stash apply stash@{0}
「スタッシュを削除する」
$ git stash drop stash@{0}
「退避した変更の詳細」を確認する。
$ git stash show stash@{0} -p
ある時点のスタッシュとの差分
$ git diff stash@{0}
【マージした後、衝突したとき】
「mergeを取り消す」
$ git merge --abort
「マージした後、まだコミットしていない場合」
$ git reset --hard HEAD^
//HEAD^ : ^の数がn個前になる。1個のとき「HEAD@{1}」ということ。
「マージした後、コミットもした場合」
$ git reset --hard ORIG_HEAD
**「Pullに失敗した時」**は、この記事が参考になります。
【初心者向け】git fetch、git merge、git pullの違いについて
【Gitの基本♪】
【 準備 】
① 「Git for Windows」をインストールする。
② フォルダを作成する。
コマンドプロンプトで、このフォルダに移動する。
③ 最初の設定
$ git init
④ 「Git リモートリポジトリ」をクローンする。
$ git clone "Git リモートリポジトリのアドレス"
その他
↓
「ブランチを切り替える」: 「stash or commit or push」のどれかを実行してから
$ git checkout
「リモートから最新情報をローカルに持ってくる」
$ git fetch
ローカルの「origin/master」ブランチ ⇒ ローカルの「master」ブランチ
$ git merge
自動的に「リモートリポジトリの内容のマージ」をする。
「git fetch + git merge 」をしている。
$ git pull
# 特定ファイルを特定のコミットの状態にする
$ git checkout <commit> -- <filename>
$ git restore --source <commit> <filename>
差分を確認
$ git diff
「すべての新規ファイル」をインデックスに追加する。
$ git add .
「新規ファイル」をインデックスに追加する。
$ git add [ファイル名]
コミット内容を、修正する。
$ git commit ammend
複数コミットを、「1個のコミット」にまとめる。
$ git squash
【基本_他の方のコードを、Pullする】
①自分のコードを「スタッシュ or コミット」する。
②最新ブランチを「フェッチ」「Pull」する。
③スタッシュしていたら、「git stash apply」で戻す。
(最新ブランチへ、自分のコードをマージしている。)
**「git fetch、git merge、git pull」**も、下記の記事がわかりやすいです。
【初心者向け】git fetch、git merge、git pullの違いについて
【おまけ~】
【Git:ローカル ~ リモートへ】
ワーキングツリー ⇒ インデックス ⇒ ローカルリポジトリ ⇒ リモートリポジトリ の順
ワーキングツリー : 最新の状態(addされていないものも含まれる)
インデックス : コミットするためのファイル状態(addした)
ローカルリポジトリ : ファイルの変更履歴を記録(ここまでローカル環境)
リモートリポジトリ : ファイルの変更履歴を記録(リモート環境にて共有できる)
変更履歴を反映する。
$ git add : ワーキングツリー ⇒ インデックス
$ git commit : インデックス ⇒ ローカルリポジトリ
$ git push : ローカルリポジトリ ⇒ リモートリポジトリ
【オプション】
-s
--short
ショートフォーマットで出力します。
-b
--branch
ショートフォーマットでもブランチと追跡情報を表示します。
【おまけ 2 ~】
- HEAD :
最新のコミットの状態を表している。