Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Ohmyzsh
Commits
16bdd0c1
Commit
16bdd0c1
authored
Feb 20, 2012
by
Carlos Rodriguez
Browse files
Merge pull request #925 from cruser42/bugfix/gitversionfix
Bugfix/gitversionfix
parents
36292700
a9f6aed3
Changes
1
Show whitespace changes
Inline
Side-by-side
lib/git.zsh
View file @
16bdd0c1
...
...
@@ -4,15 +4,21 @@ function git_prompt_info() {
echo
"
$ZSH_THEME_GIT_PROMPT_PREFIX
${
ref
#refs/heads/
}
$(
parse_git_dirty
)
$ZSH_THEME_GIT_PROMPT_SUFFIX
"
}
# Checks if working tree is dirty
parse_git_dirty
()
{
if
[[
-n
$(
git status
-s
--ignore-submodules
=
dirty 2> /dev/null
)
]]
;
then
local
SUBMODULE_SYNTAX
=
''
if
[[
$POST_1_7_2_GIT
-gt
0
]]
;
then
SUBMODULE_SYNTAX
=
"--ignore-submodules=dirty"
fi
if
[[
-n
$(
git status
-s
${
SUBMODULE_SYNTAX
}
2> /dev/null
)
]]
;
then
echo
"
$ZSH_THEME_GIT_PROMPT_DIRTY
"
else
echo
"
$ZSH_THEME_GIT_PROMPT_CLEAN
"
fi
}
# Checks if there are commits ahead from remote
function
git_prompt_ahead
()
{
if
$(
echo
"
$(
git log origin/
$(
current_branch
)
..HEAD 2> /dev/null
)
"
|
grep
'^commit'
&> /dev/null
)
;
then
...
...
@@ -62,3 +68,29 @@ git_prompt_status() {
fi
echo
$STATUS
}
#this is unlikely to change so make it all statically assigned
POST_1_7_2_GIT
=
$(
git_compare_version
"1.7.2"
)
#clean up the namespace slightly by removing the checker function
unset
-f
git_compare_version
()
#compare the provided version of git to the version installed and on path
#prints 1 if input version <= installed version
#prints -1 otherwise
function
git_compare_version
()
{
local
INPUT_GIT_VERSION
=
$1
;
local
INSTALLED_GIT_VERSION
INPUT_GIT_VERSION
=(
${
(s/./)INPUT_GIT_VERSION
}
)
;
INSTALLED_GIT_VERSION
=(
$(
git
--version
)
)
;
INSTALLED_GIT_VERSION
=(
${
(s/./)INSTALLED_GIT_VERSION[3]
}
)
;
for
i
in
{
1..3
}
;
do
if
[[
$INSTALLED_GIT_VERSION
[
$i
]
-lt
$INPUT_GIT_VERSION
[
$i
]
]]
;
then
echo
-1
return
0
fi
done
echo
1
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment