Page MenuHomePhabricator

D16261.diff
No OneTemporary

D16261.diff

diff --git a/src/applications/repository/engine/PhabricatorRepositoryDiscoveryEngine.php b/src/applications/repository/engine/PhabricatorRepositoryDiscoveryEngine.php
--- a/src/applications/repository/engine/PhabricatorRepositoryDiscoveryEngine.php
+++ b/src/applications/repository/engine/PhabricatorRepositoryDiscoveryEngine.php
@@ -174,12 +174,13 @@
continue;
}
- // In Git, it's possible to tag a tag. We just skip these, we'll discover
- // them when we process the target tag. See T11180.
+ // In Git, it's possible to tag anything. We just skip tags that don't
+ // point to a commit. See T11301.
$fields = $ref->getRawFields();
+ $ref_type = idx($fields, 'objecttype');
$tag_type = idx($fields, '*objecttype');
- if ($tag_type == 'tag') {
- $this->log(pht('Skipping, this is a tag of a tag.'));
+ if ($ref_type != 'commit' && $tag_type != 'commit') {
+ $this->log(pht('Skipping, this is not a commit.'));
continue;
}
diff --git a/src/applications/repository/engine/__tests__/PhabricatorWorkingCopyDiscoveryTestCase.php b/src/applications/repository/engine/__tests__/PhabricatorWorkingCopyDiscoveryTestCase.php
--- a/src/applications/repository/engine/__tests__/PhabricatorWorkingCopyDiscoveryTestCase.php
+++ b/src/applications/repository/engine/__tests__/PhabricatorWorkingCopyDiscoveryTestCase.php
@@ -30,6 +30,7 @@
$this->assertEqual(
array(
'763d4ab372445551c95fb5cccd1a7a223f5b2ac8',
+ '41fa35914aa19c1aa6e57004d9745c05929c3563',
),
mpull($refs, 'getIdentifier'));
}
diff --git a/src/applications/repository/engine/__tests__/data/GT.git.tgz b/src/applications/repository/engine/__tests__/data/GT.git.tgz
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000
GIT binary patch
literal 0
Hc$@<O00001
literal 0
Hc$@<O00001

File Metadata

Mime Type
text/plain
Expires
Wed, Nov 13, 1:02 AM (6 d, 11 h ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
6736195
Default Alt Text
D16261.diff (1 KB)

Event Timeline