• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

ESMCI / manage_externals
91%
master: 86%

Build:
Build:
LAST BUILD BRANCH: modified_solution
DEFAULT BRANCH: master
Repo Added 09 Apr 2018 04:58PM UTC
Files 11
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH manic-v1.1.1
branch: manic-v1.1.1
CHANGE BRANCH
x
Reset
  • manic-v1.1.1
  • catch_svn_error
  • issue-86-detached-sync-status
  • manic-v.1.1.6
  • manic-v1.1.2
  • manic-v1.1.3
  • manic-v1.1.4
  • manic-v1.1.5
  • manic-v1.1.6
  • manic-v1.1.7
  • manic-v1.1.8
  • master

pending completion
154

push

travis-ci

web-flow
Merge pull request #90 from ESMCI/issue-86-detached-sync-status

git: rework logic for determining in-sync and current ref name

Rework two aspects of the logic for git repositories; both of these can
change behavior in some cases when printing status:

1. Determining whether the local checkout is in-sync with the expected
   reference from the configuration file: Now we always convert the
   expected reference to a hash and compare that with the
   currently-checked-out hash. Previously, we sometimes did the
   comparison using names, e.g., just ensuring that you're on the right
   branch.

2. Determining the current ref name (e.g., the branch or tag currently
   checked out). Now we use a number of plumbing commands rather than
   relying on regex parsing of 'git branch -vv'. The previous regex
   parsing was fragile and hard to maintain, and was the source of a
   number of bugs. In addition, differences between git v. 1 and git
   v. 2 meant that the result was incorrect in some cases -
   particularly, in the case where we have "detached from foo" (which is
   the text that always appeared for a detached head in v 1, but in v 2
   means we are no longer at foo).

I have also overhauled the unit tests covering this functionality. Many
tests were no longer needed with the new logic and so I have removed
them. I have added some other tests covering the new functionality.

User interface changes?: Yes
- Subtle changes to status output, as described above
- One particular change is: If we're on a tracking branch,
  `checkout_externals -S -v` will show the name of the local branch
  rather than the tracked branch. (This is more accurate, because we may
  not actually be at the head of the tracking branch.)

Fixes: #86 (Status incorrectly reports in-sync when you have made
commits in detached head state - fixed due to the change in (1)).

Testing:
  test removed: many no-longer-relevant unit tests
  unit tests: pass... (continued)

354 of 408 branches covered (86.76%)

Branch coverage included in aggregate %.

1073 of 1160 relevant lines covered (92.5%)

3.7 hits per line

Relevant lines Covered
Build:
Build:
1160 RELEVANT LINES 1073 COVERED LINES
3.7 HITS PER LINE
Source Files on manic-v1.1.1
  • List 0
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line Branch Hits Branch Misses

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
154 manic-v1.1.1 Merge pull request #90 from ESMCI/issue-86-detached-sync-status git: rework logic for determining in-sync and current ref name Rework two aspects of the logic for git repositories; both of these can change behavior in some cases when printing... push 10 Apr 2018 06:50PM UTC web-flow travis-ci pending completion  
See All Builds (84)
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc