Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
O
oh-my-fish
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Locked Files
Issues
0
Issues
0
List
Boards
Labels
Service Desk
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Security & Compliance
Security & Compliance
Dependency List
License Compliance
Packages
Packages
List
Container Registry
Analytics
Analytics
CI / CD
Code Review
Insights
Issues
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
nanahira
oh-my-fish
Commits
fd40ddb0
Commit
fd40ddb0
authored
Jan 19, 2016
by
Derek Willian Stavis
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #221 from oranja/alt-git_ahead
git_ahead: Rewrite code, fix ahead being reported as behind
parents
ccb18ed9
ec8c209f
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
19 additions
and
12 deletions
+19
-12
lib/git/git_ahead.fish
lib/git/git_ahead.fish
+19
-12
No files found.
lib/git/git_ahead.fish
View file @
fd40ddb0
function git_ahead -a ahead behind diverged none
git_is_repo; and begin
test -z "$ahead"; and set ahead "+"
test -z "$behind"; and set behind "-"
test -z "$diverged"; and set diverged "±"
test -z "$none"; and set none ""
command git rev-list --left-right "@{upstream}...HEAD" ^/dev/null \
| awk "/>/ {a += 1} /</ {b += 1} \
{if (a > 0) nextfile} END \
{if (a > 0 && b > 0) print \"$diverged\"; \
else if (a > 0) print \"$ahead\"; \
else if (b > 0) print \"$behind\";
else printf \"$none\"}"
not git_is_repo; and return
set -l commit_count (command git rev-list --count --left-right "@{upstream}...HEAD" ^/dev/null)
switch "$commit_count"
case ""
# no upstream
case "0"\t"0"
test -z "$ahead"; and echo "$ahead"
or echo ""
case "*"\t"0"
test -z "$behind"; and echo "$behind"
or echo "-"
case "0"\t"*"
test -z "$ahead"; and echo "$ahead"
or echo "+"
case "*"
test -z "$diverged"; and echo "$diverged"
or echo "±"
end
end
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