mirror of
https://we.phorge.it/source/phorge.git
synced 2024-11-22 14:52:41 +01:00
When leasing a Working Copy in Drydock, just "git reset --hard" so empty repositories work
Summary: Ref T13210. We currently "git reset --hard HEAD" during working copy leasing, mostly by convention/familiarity. However, this command does not work in an empty repository, because there is no HEAD yet. The command "git reset --hard" appears to have the same meaning and effect in all cases, except that it also works correctly in an empty repository. The manual suggests that omitting HEAD should be the same as specifying HEAD, too: > The <tree-ish>/<commit> defaults to HEAD in all forms. Test Plan: Successfully leased a working copy for an empty repository using Drydock. Reviewers: amckinley Reviewed By: amckinley Subscribers: yelirekim, PHID-OPKG-gm6ozazyms6q6i22gyam Maniphest Tasks: T13210 Differential Revision: https://secure.phabricator.com/D19750
This commit is contained in:
parent
e2cf1e4288
commit
6deb09efcd
1 changed files with 3 additions and 2 deletions
|
@ -256,8 +256,9 @@ final class DrydockWorkingCopyBlueprintImplementation
|
||||||
$ref = idx($spec, 'ref');
|
$ref = idx($spec, 'ref');
|
||||||
|
|
||||||
// Reset things first, in case previous builds left anything staged or
|
// Reset things first, in case previous builds left anything staged or
|
||||||
// dirty.
|
// dirty. Note that we don't reset to "HEAD" because that does not work
|
||||||
$cmd[] = 'git reset --hard HEAD';
|
// in empty repositories.
|
||||||
|
$cmd[] = 'git reset --hard';
|
||||||
|
|
||||||
if ($commit !== null) {
|
if ($commit !== null) {
|
||||||
$cmd[] = 'git checkout %s --';
|
$cmd[] = 'git checkout %s --';
|
||||||
|
|
Loading…
Reference in a new issue