Git Git/SourceTree使用方法

個人での利用

ステージング
作業コピーの変更をインデックスに登録
全てインデックスに追加
git add .
指定ファイルをインデックスに追加
git add test.txt
コミット
ステージングされた作業コピーの変更をローカルブランチに登録
コミット
git commit -m “コメント”
ブランチ
現在のコミットからブランチを作成
ローカルブランチを複製
ブランチ一覧
git branch

ブランチ一覧(リモート含む)
git branch -a

現在のブランチ
git branch --contains=HEAD

現在のコミットからTESTブランチを作成
git branch test

beforeブランチからafterブランチを作成
git branch after before

ブランチを削除
git branch -d test

チェックアウト

過去/未来のコミットに移動
別ブランチのコミットに移動
→ 作業コピーのファイル状態は移動先のコミット状態に変更される
別ブランチのコミットに移動
git checkout ブランチ名

リモートブランチをローカルにチェックアウト
git checkout -b ローカルブランチ名 origin/リモートブランチ名

マージ
チェックアウトしているブランチへ別ブランチの変更を取り込む
更新されたリモート追跡ブランチを、現在のローカルブランチにマージ
git merge FETCH_HEAD

別ブランチを現ブランチにマージ
git merge 別ブランチ

チェリーピック
別ブランチの特定コミットのみマージ
git cherry-pick [取込対象コミットID]
リセット
コミット状態を戻す
git reset (オプション) (戻す位置)
戻す対象

オプション HEAD インデックス 作業ツリー
–hard 〇 〇 〇
–mixed 〇 〇
–soft 〇

戻す位置

位置 機能
HEAD^ 直前のコミット
HEAD 現在のコミット

HEAD、インデックス、作業ツリーを戻す
git reset –hard ~
HEAD、インデックスを戻す
git reset –mixed ~
HEADを戻す
git reset –soft ~
HEAD^(直前のコミット)を戻す
git reset –hard HEAD^
コミット後の変更を戻す
git reset –hard HEAD

スタッシュ
作業コピーの変更を退避

チームでの利用

クローン
リモートブランチをローカルブランチとしてコピー
【手順】
「ファイル」メニュー > 「新規/クローンを作成する」
git clone https://github.com/ユーザ名/レポジトリ.git
フェッチ
リモートブランチの変更をリモート追跡ブランチに更新(1)
その後、リモート追跡ブランチの変更を作業コピーにマージ(2)する必要がある
PULLは(1)~(2)を同時実行する
リポジトリ:originのmasterブランチのコミットをリモート追跡ブランチに更新
git fetch origin master
プル
リモートブランチのコミットをローカルブランチに更新
リポジトリ名:originのmasterブランチのコミットをローカルブランチに更新
git pull origin master
レポジトリ名設定
git remote add 別名 https://github.com/ユーザ名/レポジトリ.git
【強制pull】
コンフリクトを無視してリモートに合わせる
①フェッチ
git fetch origin master
②リモート追跡ブランチのorigin/masterまで戻す
git reset –hard origin/master
プッシュ
ローカルブランチのコミットをリモートブランチに更新
リポジトリ名:originへローカルのmasterブランチのコミットを更新
git push origin master
リポジトリ名:originのmasterブランチへ、ローカルのtestブランチのコミットを更新
git push origin test:master

Follow me!