#author("2018-05-30T01:54:30+00:00","default:kazuma","kazuma") [[Git]] *config系 [#u0a1a41e] **デフォルトのユーザー名とメールアドレスを設定 [#xace05b3] git config --global user.name hogeuser git config --global user.email hogeuser@hogehoge.com *基本コマンド [#mee5e86a] **リポジトリの作成 [#e01b4594] git init --bare --sharedでベアリポジトリとして作成 **ファイルの追加(ステージングへ) [#fddf42da] git add . **状態確認 [#o47ce037] git status **コミット(ローカルリポジトリへ) [#i05c7b0e] git commit -m "This comment" **リポジトリのログ表示 [#df67cb2a] git log **1世代戻る [#e47dd133] git checkout HEAD **リポジトリからデータを同期 [#kad1546d] git pull **共有リポジトリへ反映 [#b4204335] git push *同期系(コピー) [#m3b5f7fa] **リモートの特定のブランチのみclone [#u331360e] git checkout -b ブランチA origin/ブランチA **特定のブランチの特定のファイルをチェックアウト [#hb5063fe] git checkout ブランチ名 ファイル名 *変更系 [#b75b45ad] **ローカルブランチ名を変更 [#ofa15a48] git branch -m 元のブランチ名 新ブランチ名 **ローカルもリモートもブランチ名を変更 [#vf4c5193] git branch -m 元のブランチ名 新ブランチ名 git push origin :元のブランチ名 git push origin 新ブランチ名 *取り消し系 [#ef947c6f] **特定のファイルのコミットやaddの取り消し [#v7148452] git checkout commit-ID ファイル git reset --hard HEAD^ もしくは HEAD^の代わりにCommit ID **pushしていないcommitを取り消し [#pa1891ea] git reset --soft HEAD^ **resetの取り消し [#n7ec2205] git reflog git reset --soft HEAD@{1} **pushしていないcommitのログを修正 [#n7bae1fb] git commit --amend -m "コメント" git log **pushしたcommitを取り消す [#offd6991] git log コミットIDをメモする git reset --hard コミットID git push -f origin ブランチ名:ブランチ名 強制的にコミットを消すので履歴が残らないので注意する ** リモートブランチを削除する [#u69dcc0c] git branch -a ブランチ名を確認する git branch -d ブランチ名(ローカル) ローカルのブランチを削除する git push origin :ブランチ リモートのブランチを削除する ※既にローカルリポジトリが無い場合は、git push origin :ブランチ名 で削除OK ** git Untracked files(未追跡ファイル) [#y14aabc0] *** dryrun [#b0eb0fbd] $ git clean -n *** 削除 [#je4fcc79] $ git clean -f *コミットログをまとめる [#xa8c65f5] **rebaseを使ってコミットログをまとめる [#g06eb950] $ git log --oneline <--id確認 e4b4071 9 5fed676 2 b58707a 1st commit $ git rebaese -i b58707a <--2と9をまとめる場合1のIDを指定する pick 5fed676 2 pick e4b4071 9 ↓下記のように修正する pick 5fed676 2 squash e4b4071 9 :wqで保存すると再度エディタがあがってくるので、いい感じのコミットメッセージに修正する 2と9を一緒にした [detached HEAD d6b273a] 2と9を一緒にした Date: Tue Jul 5 19:39:00 2016 +0900 1 file changed, 1 insertion(+), 1 deletion(-) Successfully rebased and updated refs/heads/master. $ git log --oneline d6b273a 2と9を一緒にした b58707a 1st commit $ git push -f -u origin ブランチ名 **各コマンドは以下の通り [#lbd7b250] pick コミットをそのまま使う。内容を変更しない。 reword コミットメッセージを変更する。コミット内容は変更しない。 edit コミットを修正する。 squash ひとつ前のコミットにまとめる。コミットメッセージを書き直す。 fixup ひとつ前のコミットにまとめる。コミットメッセージをそのまま使う。 exec shell でコマンドを実行する *差分確認 [#rd1ad6f4] **特定のファイルの特定のコミットとの差分を確認したい [#df0a7393] git diff コミットID(git logで確認) -- ファイルパス *その他 [#qcee0336] *** Gitリポジトリからtarball形式でファイルをダウンロード [#fb6d16ff] gitコマンドが無いサーバーなどでwgetとかでファイルをダウンロードする $ wget https://github.com/ユーザー名/リポジトリ名/tarball/ブランチ名