Git Pushまでの流れ
ワークツリー git add
↓
ステージ git commit
↓
リポジトリ git push
master ブランチとは
根幹となる幹。ブランチが最終的に合流する主流。
ブランチとは
主流から分岐する枝。
編集用。後で主流に合流させる。(merge
or rebase
)
マージとは
主流と合流させること。変更点を取り込むこと。
競合することをコンフリクトという。
コンフリクトとは
修正が競合しているので修正が必要な状態。
コンフリクト部分がコメントで示されるので削除するなどして対応する。
リモートリポジトリとローカルリポジトリで同一ファイルの変更履歴が異なっていると起こる。
HEADとは
今自分がいるブランチのこと。ポインタ。
git checkout -b (ブランチ名)
ブランチを作る。
git checkout (ブランチ名)
ブランチを変更する。
git log
ログを表示する。
git log -p (ファイル名)
ファイルの変更差分を表示する。
git rm (ファイル名)
ファイルを削除する。
git rm --cashed (ファイル名)
ローカルリポジトリのファイルだけ削除する。
パスワードが載っているファイルを送りたくない場合などに使う。
rebaseとは
mergeと似ている。ただし履歴が一本道になる。
mergeは分岐したまま。
git reset HEAD( )
ステージの変更を取り消す。
ファイル名、ディレクトリ、全てのそれぞれを指定できる。(全て:「.」)
git reset HEAD .
git commit --ammend
直前のコミットを今のステージの状態で上書きする。
変更をやりなおす。
pushしたコミットはやり直してはいけない。
他の人の履歴と食い違ってエラーになる、らしい。
git diff
git add
する前に変更したファイルを確認する。
ステージとワークツリーの変更分
を確認する。
git diff --staged
git add
した後に変更したファイルを確認する。
ステージとローカルリポジトリの変更分
を確認する。
git mv (旧ファイル)(新ファイル)
旧ファイルをrmして新ファイルをステージにaddする。
以下と同じ挙動。
mv (旧ファイル)(新ファイル)
git rm (旧ファイル)
git add (新ファイル)