ブランチの一覧表示する~gitコマンド
リポジトリを複製する
リモートリポジトリの内容をローカルに複製(ダウンロード)することができる。リポジトリにはrsync://example.com/path/to/repo.git/
やgit://example.com/path/to/repo.git/
やssh://[user@]example.com[:port]/path/to/repo.git/
などの形式で対象を指定することができる。
1
|
git clone リポジトリ |
リポジトリを作成する
カレントディレクトリにリポジトリを作成する。
1
|
git init |
ブランチの一覧表示する
ローカルリポジトリに存在するブランチの一覧を表示する。
1
|
git branch |
ブランチを作成する
ローカルリポジトリにブランチを新しく作成する。
1
|
git branch ブランチ名 |
ブランチの名前を変更する
checkoutしているブランチの名前を変更する。
1
|
git branch -m 変更後の名前 |
ブランチを削除する
ローカルリポジトリのブランチを削除する。
1
|
git branch -D ブランチ名 |
リモートリポジトリのブランチも削除する場合は,プッシュすれば良い。プッシュコマンドは以下のような書式で記述できる。
git push プッシュ先リポジトリ ローカルのブランチ名:リモートのブランチ名
なので,リモートのリポジトリを削除するには,ローカルのブランチを削除した状態で以下のようにプッシュすれば良い。
1
|
git push origin :ブランチ名 |
ブランチを切り替える
リモートリポジトリのブランチを取得し,ローカルリポジトリのブランチの内容を書き換える。
1
|
git checkout ブランチ名 |
ファイルを編集前の状態に戻す
リモートリポジトリのブランチからファイルを取得する。
1
|
git checkout ファイルパス |
現在のブランチに含まれる内容を基に,新しいブランチを作成する
現在checkoutしているブランチの内容を基にして,新しいブランチを作成する。
1
|
git checkout -b ブランチ名 |
ブランチに他のブランチの内容をマージする
checkoutしているブランチに他のブランチの内容をマージする。マージした結果,コンフリクトが起こることもある。
コンフリクトが起こった場合は,手動でソースコードを修正する必要がある。
1
|
git merge ブランチ名 |
リモートリポジトリの内容を取り寄せる
リモートリポジトリのブランチの内容を取り寄せる。取り寄せただけでローカルリポジトリのブランチへのマージは行われない。
1
|
git fetch |
リモートリポジトリの内容を取り寄せて,マージする
リモートリポジトリのブランチの内容を取り寄せ,マージを行う。
1
|
git pull |
リモートリポジトリの内容を取り寄せて,リベースする
リモートリポジトリのブランチの内容を取り寄せ,リベースを行う。
新しくコミットを積む前にgit pullし忘れた場合や,コミット(枝分かれ)をキレイにしたいときに使う。
1
|
git pull --rebase |
ブランチのコミット履歴を確認する
checkoutしているブランチに積まれているコミットの履歴を確認する。
1
|
git log |
変更のあるファイルを確認する
変更のあるファイルを確認する。
1
|
git status |
ファイルの差分を確認する
編集したファイルの,元の状態との差分を確認する。
1
|
git diff |
ファイルの更新をステージング反映する
ファイルの更新をステージング(commit可能な状態)に反映する。
1
|
git add ファイルパス |
ファイルの削除をステージングに反映する
ファイルの削除をステージング(commit可能な状態)に反映する。
1
|
git rm ファイルパス |
更新内容をステージングから外す
ファイルの編集内容はそのままで,ステージングからファイルを外す(addをする前の状態に戻す)。
1
|
git reset |
全ての内容を元に戻す
ファイルの編集内容ごと,全てのファイルを元の状態に戻す。
※HEAD~1やHEAD~2などと指定すると,いくつか前のコミットまで戻ることが出来る。
1
|
git reset --hard HEAD |
ブランチに更新内容を反映する
checkoutしたブランチに対して自分で追加した更新内容を反映する。
1
|
git commit |
–amendオプションを付けることで,1つ前のコミットに対してコミットの内容を上書きすることが出来る。
1
|
git commit --amend |
ローカルリポジトリのコミットをリモートリポジトリに反映する
ローカルリポジトリで積んだコミットをリモートリポジトリに反映することが出来る。
1
|
git push origin HEAD |
–amendを使ったコミットなどを行った場合は,-fオプションを付けることでプッシュすることができる。
1
|
git push -f origin HEAD |
コミットの歴史を書き換える
派生元のコミットを最新のコミットにすることが出来る。masterの古いコミットを元に派生したブランチがあった場合,そのブランチをmasterの最新のコミットを元に派生したブランチにすることが出来る。
1
|
git rebase ブランチ名 |
コミットの歴史を書き換えることが出来る。実行すると,エディタが立ち上がりコミットの編集モードへと入る。
※originを指定することでリモートのブランチを基にしてコミットの歴史を書き換える。
1
|
git rebase -i origin ブランチ名 |
rebaseした内容を完了する
rebaseによるコミット履歴の変更を完了する。
1
|
git rebase -- continue |
rebaseした内容を元に戻す
rebaseによるコミット履歴の変更を取り止める。
1
|
git rebase --abort |
特定のコミットへ戻る
reflogでコミットのハッシュ値を調べる。
1
|
git reflog |
reflogで調べたハッシュを使い,resetで特定のコミットへ戻る。
1
|
git reset --hard ハッシュ値 |
他のブランチの特定のコミットを適用する
cherry-pickで特定のコミットのみをつまみ食いする。
reflog,もしくは他の情報から調べたハッシュ値を使用する。
1
|
git cherry-pick ハッシュ値 |
コミットを打ち消す(コミット履歴は積まれる)
ブランチへのコミットを打ち消す。コミットが無かったことになるように見えるが、実際はコミット履歴は積まれているかたちで変更が加わる。打ち消したいコミットハッシュを指定して使用する。ここには枝分かれしたブランチ名も指定することが出来る。
1
|
git revert コミットハッシュ |
複数のファイルの内容を検索する
複数のファイルから,特定のキーワードにマッチする行を検索することが出来る。
1
|
git grep キーワード |
問題のあるコミットを探索する
2分岐探索によって,バグが混入したコミットを探すことが出来る。
1
|
git bisect start 問題のあるコミットハッシュ 問題のないコミットハッシュ |
※「問題のあるコミットハッシュ」には,バグが混入している最新のコミットハッシュを指定し,「問題のないコミットハッシュ」には,適当に時系列を遡って見つけたバグのまだ混入していない状態のコミットハッシュを指定する。
「問題ある」「問題ない」の判定は以下のコマンドで行う。
1
|
git bisect bad |
1
|
git bisect good |
この判定を何度か繰り返すことで,問題のあるコミットを絞り込むことができる。
探索が終了したら,以下のコマンドによってbisectモードを終了する。
1
|
git bisect reset |
ファイルの変更内容を一時保存する
作業途中にレビュー依頼などがきて,他のブランチに切り替えたい場合,変更内容を一時保存しておくことが出来る。
1
|
git stash save |
一時保存した変更内容が積まれたリストを確認する。
1
|
git stash list |
一時保存した変更内容を取り出す。
1
|
git stash pop |
一時保存したものが溜まり過ぎると,どんな変更内容だったのかが分からなくなるので,基本的には一時保存する内容は一つまでにして運用すると良い。
Warning: Undefined variable $postID in /home/foodheart/flashbuilder-job.com/public_html/wp-content/themes/stingerplus/single.php on line 87