SSH鍵作成
$ ssh-keygen -t rsa -b 4096 ※ユーザー指定:-C ユーザー名(デフォルト:PCのログインユーザ名) -f ~/.ssh/ファイル名(デフォルト:id_rsa) Enter file in which to save the key (/User/xxx/.ssh/id_rsa): (空のままEnter) Enter passphrase (empty for no passphrase): (空のままEnter) Enter same passphrase again: (空のままEnter) 公開鍵 $ cat ~/.ssh/id_rsa.pub
ユーザー
確認 $ git config --global -l 変更 $ git config --global user.name "ユーザー名" $ git config --global user.email メールアドレス
クローン
$ git clone git@サーバー名:リポジトリ名
オリジン
確認 $ git remote -v 追加 $ git remote add 対象(origin等) git@サーバー名:リポジトリ名 削除 $ git remote remove 対象(origin等)
ブランチ
ローカルブランチ確認 $ git branch リモートブランチ確認 $ git branch -r ローカル&リモートブランチ確認 $ git branch -a ローカルブランチ作成&切り替え $ git checkout -b ブランチ名 指定コミットからブランチ作成 $ git checkout コミットID -b 新ブランチ名 既存ブランチに新規切り替え $ git checkout -b ブランチ名 origin/ブランチ名 取り込み済みブランチに切り替え $ git checkout ブランチ名 ローカルブランチ名変更 $ git branch -m 現ブランチ名 新ブランチ名 ローカルブランチ削除 $ git branch -D ブランチ名 リモートブランチ削除 $ git push origin --delete ブランチ名
取得・確認
プル(リモートブランチをローカルリポジトリにマージ) $ git pull コミットログ閲覧 $ git log ファイル名(省略ですべて) 直近のコミット内容閲覧 ※zshの場合 % git diff "HEAD^" ※bashの場合 $ git diff HEAD^
取り消し
ローカルでの変更を取り消す $ git checkout ファイル名 変更した全てのファイル $ git checkout . 新規も含む全てのファイル $ git clean -df . 直前のcommitを取り消す ※zshの場合 % git reset --soft "HEAD^" ※bashの場合 $ git reset --soft HEAD^
反映
変更ファイル表示 $ git status コミット対象ファイル追加 $ git add ファイル名 新規コミット $ git commit -m "コミットメッセージ" 修正を前のコミットに含める ※プッシュ後はやらない方が良い $ git commit --amend vi-> :wq! 直前のコミットメッセージ修正 $ git commit --amend -m "コミットメッセージ" 作成したブランチをプッシュ(ローカルをリモートに送信) $ git push origin ブランチ名 強制プッシュ(プッシュ済みのコミットを修正した場合) $ git push -f origin ブランチ名
マージ
delevopをmasterにマージする例
$ git checkout develop ($ git checkout -b develop origin/develop) $ git branch $ git pull $ git log $ git checkout master ($ git checkout -b master origin/master) $ git branch $ git pull $ git log $ git merge --no-ff develop vi-> :wq! またはコンフリクトを解消して、自動テスト(RSpec等)+静的コード解析(RuboCop等)&コミット($ git commit) $ git log $ git push origin master $ git log $ git checkout develop $ git branch