From 3e518778228e47d131cf8a5aa9eab7284831adea Mon Sep 17 00:00:00 2001 From: ChangZhuo Chen Date: Wed, 15 May 2013 18:57:38 +0800 Subject: [PATCH] Let antigen-selfupdate works when in submodule --- antigen.zsh | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/antigen.zsh b/antigen.zsh index 63d3a3b..2ffb667 100644 --- a/antigen.zsh +++ b/antigen.zsh @@ -316,11 +316,16 @@ antigen-revert () { # "what's new" message. antigen-selfupdate () { ( cd $_ANTIGEN_INSTALL_DIR - if [[ ! -d .git ]]; then + if [[ ! ( -d .git || -f .git ) ]]; then echo "Your copy of antigen doesn't appear to be a git clone. " \ "The 'selfupdate' command cannot work in this case." return 1 fi + local head="$(git rev-parse --abbrev-ref HEAD)" + if [[ $head == "HEAD" ]]; then + # If current head is detached HEAD, checkout to master branch. + git checkout master + fi git pull ) } -- 2.0.0