Gitの用語もよくわからんという人はこちら。
リモートリポジトリからリポジトリを取得
git clone <repo-url>
例)
git clone git@github.com:team-name/reponame.git
リモートリポジトリを作成
ディレクトリを作成してそのディレクトリ内でgit init --bareする。
mkdir <repo-name>.git
cd <repo-name>.git
git init --bare
リモートリポジトリの URL を確認
git remote -v
ログ表示
git log
ログ 1行表示
git log --oneline
git log --pretty='format:%C(yellow)%h %C(green)%cd %C(reset)%s %C(red)%d %C(cyan)[%an]' --date=iso
ログ グラフ表示
git log --graph
編集中のファイルを元に戻す
git checkout -- <file>
addしていないファイルをすべて元に戻す
git checkout .
git rebaseで混乱時にrebase中止する
git rebase --abort
git mergeで混乱時にmerge中止する
git merge --abort
※git pull時もマージに失敗すると中断したくなるのでこれを使う
fetch
リモートブランチを他の人に消してもらってもローカルに残っている場合
git fetch --prune
git fetch -p
push
タグを全部一気にpush
git push origin --tags
強制push
git push --force origin master
git push -f origin master
--forceは-fでもいい
reset
1つ前のコミットを取り消す
git reset --soft HEAD^
addしてものをまるっと取り消し(※HEAD省略可能)
git reset HEAD
git reset
diff
ステージングしたファイルとの差分確認
git diff --staged
新規ファイルを含めて差分確認
git add .
git diff --staged --stat
新規ファイルを削除
git reset .
rm <file>
差分をファイル名のみ確認
git diff --name-only
直近のcommitの差分ファイル一覧(前のが過去)
git diff --stat HEAD~ HEAD
git diff --stat --name-only HEAD~ HEAD
branch
branch作成
git branch <branchname>
branch削除
マージ済みのブランチを削除する場合に使う。
マージしていないブランチは削除できない。
git branch -d <branchname>
git branch --delete <branchname>
どんなブランチでも削除できるのはこちら
git branch -D <branchname>
branchリスト
git branch -a
rm
ファイル自体を削除
git rm <filename>
ディレクトリまるごと削除(再帰的に)
git rm -r
ファイルは残してgit管理対象から削除
git rm --cached <filename>
git管理対象をあとから.gitignore設定した場合(一度すべて管理対象から消して改めてすべてstaging)
git rm -r --cached .
git add .
config
.gitconfigの確認
git config --list