Skip to content

Instantly share code, notes, and snippets.

@yonchu
Created October 23, 2012 01:14
Show Gist options
  • Select an option

  • Save yonchu/3936073 to your computer and use it in GitHub Desktop.

Select an option

Save yonchu/3936073 to your computer and use it in GitHub Desktop.
Gitリポジトリの色んな情報を表示. どんなリポジトリなのかを瞬時に把握するのに便利
# 実行イメージ
$ gits
===== Status (git status -sb) =====
## master...origin/master [ahead 1]
M bin/gits
===== Submodule Status (git submodule status) =====
9150244afd8cb992b90390ea9789054ed376c468 .tmux/tmux-powerline (heads/master)
1579b53125011063b6b37c3ffde8cc05023e29ad .tmux/tmux-powerline-wrapper (heads/master)
3b2a24914b9ff3a51673a1f2223c57a21dbda390 .vim/neobundle.vim (ver.2.0-190-g3b2a249)
4ac57be0cdcae5aa0f482916ae68e48187856df0 .zsh/dircolors-solarized (heads/master)
f7c0f031cab5eca993e517200df68e43184ffcbf .zsh/functions/Completion/zsh-completions (0.3.0-89-gf7c0f03)
dfd4308ae84da481f774b3f5e732ee277d9d8769 .zsh/z (v1.4-2-gdfd4308)
45194671af8e1d6b37b16e214a58674762ab8e49 .zsh/zsh-syntax-highlighting (0.1.2-2-g4519467)
2b4704d67920e89e2e809ff8eae058bae7d57c59 .zsh/zsh-vcs-prompt (heads/master)
===== Submodule Update Info =====
(local out of date) https://github.com/erikw/tmux-powerline.git
(local out of date) https://github.com/yonchu/tmux-powerline-wrapper.git
(local out of date) git://github.com/Shougo/neobundle.vim.git
(up to date) git://github.com/seebi/dircolors-solarized.git
(up to date) https://github.com/zsh-users/zsh-completions.git
(up to date) git://github.com/rupa/z.git
(up to date) https://github.com/yonchu/zsh-syntax-highlighting.git
(up to date) https://github.com/yonchu/zsh-vcs-prompt.git
===== Remote List (git remote -v) =====
github git@github.com:yonchu/dotfiles.git (fetch)
github git@github.com:yonchu/dotfiles.git (push)
origin /Users/yonchu/Dropbox/Repos/git/dotfiles.git (fetch)
origin /Users/yonchu/Dropbox/Repos/git/dotfiles.git (push)
===== Branch List (git branch -av) =====
* master a49010a [ahead 1] Update .gitconfig, Add .gittemplate
remotes/github/master 33c9001 Add a screenshot for iTerm on Mac
remotes/origin/HEAD -> origin/master
remotes/origin/master 33c9001 Add a screenshot for iTerm on Mac
===== Stash List (git stash list) =====
stash@{0}: WIP on master: a49010a Update .gitconfig, Add .gittemplate
#!/bin/bash
#
# gitリポジトリの詳細情報を表示
#
if ! type git > /dev/null 2>&1; then
echo 'Error: Git is not installed.' 2>%1
exit 1
fi
if [ "$(git rev-parse --is-inside-work-tree 2> /dev/null)" != "true" ]; then
echo 'Error: Not a git repository' 2>&1
exit 1
fi
echo -e "===== \033[0;32mStatus (git status -sb)\033[0;39m ====="
git status -sb
(
cd "$(git rev-parse --show-toplevel)" >/dev/null 2>&1;
echo -e "===== \033[0;33mSubmodule Status (git submodule status)\033[0;39m ====="
sub_state=$(git submodule status)
if [ -n "$sub_state" ]; then
echo "$sub_state"
echo -e "===== \033[0;33mSubmodule Update Info\033[0;39m ====="
cmd="git remote show origin| tail -1 | sed 's/.*\((.*)\)/\1/' | tr '\n' ' ' && git remote -v | head -1 | tr '\t' ' ' | cut -d' ' -f 2"
status=$(git submodule foreach "$cmd")
echo "$status" | sed '/^Entering/d'
fi
)
echo -e "===== \033[0;34mRemote List (git remote -v)\033[0;39m ====="
git remote -v
echo -e "===== \033[0;35mBranch List (git branch -av)\033[0;39m ====="
git branch -av
echo -e "===== \033[0;36mStash List (git stash list)\033[0;39m ====="
git stash list
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment