Page MenuHomePhabricator

Further correct and disambigutate ref selectors passed to Git on the CLI
ClosedPublic

Authored by epriestley on Jan 20 2021, 7:44 PM.

Details

Summary

Ref T13589. In D21510, not every ref selector got touched, and this isn't a valid construction in Git:

$ git ls-tree ... -- ''

Thus:

  • Disambiguate more (all?) ref selectors.
  • Correct the construction of "git ls-tree" when there is no path.
  • Clean some stuff up: make the construction of some flags and arguments more explicit, get rid of a needless "%C", prefer "%Ls" over acrobatics, etc.
Test Plan

Browsed/updated a local Git repository. (This change is somewhat difficult to test exhaustively, as evidenced by the "ls-tree" issue in D21510.)

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Harbormaster completed remote builds in B25013: Diff 51200.
  • Test for "svn" before running an SVN test to fix the local test failure, since this new machine doesn't have "svn" installed yet.
This revision was not accepted when it landed; it landed in state Needs Review.Jan 20 2021, 8:07 PM
This revision was automatically updated to reflect the committed changes.