[tig] # === General === # Appearance set main-view = id date author commit-title:graph=yes,refs=yes set blame-view = date:default author:email-user id:yes,color line-number:yes,interval=1 text set diff-options = -m --first-parent # Refresh timing set refresh-mode = periodic set refresh-interval = 5 # Search set ignore-case = true # === Controls === # # Branch view bind generic b view-refs # # # Blame view bind generic b view-blame # # Cursor bind generic J move-page-down bind generic K move-page-up # Copy commit id bind generic ` @bash -c "echo -n '%(commit)' | pbcopy" # Quit tig bind generic quit # === Commands === # Commit bind generic C !git commit bind refs C !git commit bind main C !git commit # bind generic u !git add -p %(file) # bind generic e !git commit --allow-empty # bind generic + !git commit --amend --allow-empty # Push bind generic P ?git push -u %(remote) %(repo:head) bind generic p ?git push -u -f %(remote) %(repo:head) # Pull bind generic U ?git pull %(remote) # Fetch bind generic F ?git fetch %(remote) bind main F ?git fetch %(remote) # # # Reflog bind generic L !sh -c "git reflog --pretty=raw | tig --pretty=raw" bind generic _ ?git reset --hard HEAD@{"%(prompt Enter HEAD@{} number: )"} # Reset --hard bind main H ?git reset --hard %(commit) bind refs H ?git reset --hard %(commit) bind status H ?git checkout -- %(file) # Checkout(move) to branch bind main = ?git checkout %(branch) bind refs = ?git checkout %(branch) # 前に使用していたブランチへ戻る bind generic = ?git checkout - # Merge bind main M ?git merge %(branch) bind diff M ?git merge %(branch) bind refs M ?git merge %(branch) bind main m ?git merge %(commit) bind diff m ?git merge %(commit) # Rebase bind main R ?git rebase %(branch) bind diff R ?git rebase %(branch) bind refs R ?git rebase %(branch) bind main r ?git rebase %(commit) bind diff r ?git rebase %(commit) # Rebase -i bind main i ?git rebase -i %(branch) bind diff i ?git rebase -i %(branch) bind refs i ?git rebase -i %(branch) bind main i ?git rebase -i %(commit) bind diff i ?git rebase -i %(commit) # Rebase options bind generic y ?git rebase --continue bind generic c ?git rebase --abort # diff bind main D ?sh -c "git diff %(commit)..%(prompt Enter commit ID: ) | tig" bind diff D ?sh -c "git diff %(commit)..%(prompt Enter commit ID: ) | tig" # Remove branch bind refs D ?git branch -d %(branch) bind refs D ?git branch -D %(branch) # Stash bind generic S !git stash # Revert bind main ! ?git revert %(commit) # Cherry-pick bind main k ?git cherry-pick %(commit) bind diff k ?git cherry-pick %(commit) # Create branch bind main B ?git checkout -b "%(prompt Enter branch name: )" %(branch) bind refs B ?git checkout -b "%(prompt Enter branch name: )" %(branch) bind main b ?git checkout -b "%(prompt Enter branch name: )" %(commit) # === Github === # Open to brouse bind main ; @hub browse -- commit/%(commit) bind blame ; @hub browse -- commit/%(commit) bind diff ; @hub browse -- commit/%(commit) bind tree ; @hub browse -- blob/%(branch)/%(file) bind blob ; @hub browse -- blob/%(branch)/%(file) bind grep ; @hub browse -- blob/%(branch)/%(file) # Pull request bind main w @hub browse -- compare/%(branch)?expand=1 bind diff w @hub browse -- compare/%(branch)?expand=1 bind refs w @hub browse -- compare/%(branch)?expand=1 # === Theme === # General colors