Page MenuHomePhabricator

When leasing a Working Copy in Drydock, just "git reset --hard" so empty repositories work
ClosedPublic

Authored by epriestley on Oct 24 2018, 1:11 PM.
Tags
None
Referenced Files
Unknown Object (File)
Fri, Apr 19, 11:16 PM
Unknown Object (File)
Fri, Apr 19, 1:44 PM
Unknown Object (File)
Fri, Apr 19, 9:35 AM
Unknown Object (File)
Fri, Apr 19, 2:55 AM
Unknown Object (File)
Fri, Apr 19, 2:55 AM
Unknown Object (File)
Fri, Apr 19, 2:55 AM
Unknown Object (File)
Wed, Apr 17, 4:18 AM
Unknown Object (File)
Wed, Apr 17, 1:32 AM
Subscribers
Restricted Owners Package
Tokens
"Cup of Joe" token, awarded by jcox.

Details

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.

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable