From aba274ca7daf59d07d9559e6f99ca18ef0b78c7b Mon Sep 17 00:00:00 2001 From: "paul.t" Date: Mon, 11 Oct 2021 12:48:29 +0100 Subject: [PATCH 1/5] resolve external reference deltas --- plumbing/format/packfile/parser.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/plumbing/format/packfile/parser.go b/plumbing/format/packfile/parser.go index 4b5a5708c..4c28a4ad0 100644 --- a/plumbing/format/packfile/parser.go +++ b/plumbing/format/packfile/parser.go @@ -287,6 +287,7 @@ func (p *Parser) resolveDeltas() error { if err := p.resolveObject(stdioutil.Discard, child, content); err != nil { return err } + p.resolveExternalRef(child) } // Remove the delta from the cache. @@ -299,6 +300,16 @@ func (p *Parser) resolveDeltas() error { return nil } +func (p *Parser) resolveExternalRef(o *objectInfo) { + if ref, ok := p.oiByHash[o.SHA1]; ok && ref.ExternalRef { + p.oiByHash[o.SHA1] = o + o.Children = ref.Children + for _, c := range o.Children { + c.Parent = o + } + } +} + func (p *Parser) get(o *objectInfo, buf *bytes.Buffer) (err error) { if !o.ExternalRef { // skip cache check for placeholder parents b, ok := p.cache.Get(o.Offset) From 51514482c696e7d3aadd551cd1308cedc7055ce0 Mon Sep 17 00:00:00 2001 From: "paul.t" Date: Mon, 11 Oct 2021 13:07:34 +0100 Subject: [PATCH 2/5] resolve external reference delta --- plumbing/format/packfile/parser.go | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/plumbing/format/packfile/parser.go b/plumbing/format/packfile/parser.go index 4b5a5708c..4c28a4ad0 100644 --- a/plumbing/format/packfile/parser.go +++ b/plumbing/format/packfile/parser.go @@ -287,6 +287,7 @@ func (p *Parser) resolveDeltas() error { if err := p.resolveObject(stdioutil.Discard, child, content); err != nil { return err } + p.resolveExternalRef(child) } // Remove the delta from the cache. @@ -299,6 +300,16 @@ func (p *Parser) resolveDeltas() error { return nil } +func (p *Parser) resolveExternalRef(o *objectInfo) { + if ref, ok := p.oiByHash[o.SHA1]; ok && ref.ExternalRef { + p.oiByHash[o.SHA1] = o + o.Children = ref.Children + for _, c := range o.Children { + c.Parent = o + } + } +} + func (p *Parser) get(o *objectInfo, buf *bytes.Buffer) (err error) { if !o.ExternalRef { // skip cache check for placeholder parents b, ok := p.cache.Get(o.Offset) From 7391aa4c244439c246b269ef3e946273aba7ca8b Mon Sep 17 00:00:00 2001 From: "paul.t" Date: Tue, 9 Nov 2021 15:16:55 +0000 Subject: [PATCH 3/5] add codecommit packfile for testing external ref resolution --- plumbing/format/packfile/parser_test.go | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/plumbing/format/packfile/parser_test.go b/plumbing/format/packfile/parser_test.go index b0b4af82a..9c7e218f7 100644 --- a/plumbing/format/packfile/parser_test.go +++ b/plumbing/format/packfile/parser_test.go @@ -132,6 +132,20 @@ func (s *ParserSuite) TestThinPack(c *C) { } +func (s *ParserSuite) TestResolveExternalRefsInThinPack(c *C) { + f, err := os.Open("testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack") + c.Assert(err, IsNil) + + scanner := packfile.NewScanner(f) + + obs := new(testObserver) + parser, err := packfile.NewParser(scanner, obs) + c.Assert(err, IsNil) + + _, err = parser.Parse() + c.Assert(err, IsNil) +} + type observerObject struct { hash string otype plumbing.ObjectType From b0f5eb894deb6d6a1051d697f0809082abfad395 Mon Sep 17 00:00:00 2001 From: "paul.t" Date: Tue, 9 Nov 2021 15:19:12 +0000 Subject: [PATCH 4/5] include example codecommit pack file --- ...733763ae7ee6efcf452d373d6fff77424fb1dcc.pack | Bin 0 -> 42029 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack diff --git a/plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack b/plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack new file mode 100644 index 0000000000000000000000000000000000000000..4a57a61551e6b42c324b98cda3f69ee93f8e5b03 GIT binary patch literal 42029 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 NrtdF4Kf9qF`Y(#ikz)V= literal 0 HcmV?d00001 From bf57a4c6a53423d92aeeadf1bc02877cc80459d4 Mon Sep 17 00:00:00 2001 From: "paul.t" Date: Wed, 5 Jan 2022 06:54:15 +0000 Subject: [PATCH 5/5] remove packfile and align to test fixtures --- .gitignore | 1 + go.mod | 2 +- go.sum | 7 ++++--- plumbing/format/packfile/parser_test.go | 5 ++--- ...733763ae7ee6efcf452d373d6fff77424fb1dcc.pack | Bin 42029 -> 0 bytes 5 files changed, 8 insertions(+), 7 deletions(-) delete mode 100644 plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack diff --git a/.gitignore b/.gitignore index 038dd9f1e..e8d25f548 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ coverage.out *~ coverage.txt profile.out +.tmp/ \ No newline at end of file diff --git a/go.mod b/go.mod index ccb8facd1..512cc59ee 100644 --- a/go.mod +++ b/go.mod @@ -10,7 +10,7 @@ require ( github.com/gliderlabs/ssh v0.2.2 github.com/go-git/gcfg v1.5.0 github.com/go-git/go-billy/v5 v5.3.1 - github.com/go-git/go-git-fixtures/v4 v4.2.1 + github.com/go-git/go-git-fixtures/v4 v4.3.1 github.com/google/go-cmp v0.3.0 github.com/imdario/mergo v0.3.12 github.com/jbenet/go-context v0.0.0-20150711004518-d14ea06fba99 diff --git a/go.sum b/go.sum index ab212c592..c4d7302b0 100644 --- a/go.sum +++ b/go.sum @@ -20,11 +20,12 @@ github.com/gliderlabs/ssh v0.2.2 h1:6zsha5zo/TWhRhwqCD3+EarCAgZ2yN28ipRnGPnwkI0= github.com/gliderlabs/ssh v0.2.2/go.mod h1:U7qILu1NlMHj9FlMhZLlkCdDnU1DBEAqr0aevW3Awn0= github.com/go-git/gcfg v1.5.0 h1:Q5ViNfGF8zFgyJWPqYwA7qGFoMTEiBmdlkcfRmpIMa4= github.com/go-git/gcfg v1.5.0/go.mod h1:5m20vg6GwYabIxaOonVkTdrILxQMpEShl1xiMF4ua+E= -github.com/go-git/go-billy/v5 v5.2.0/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0= github.com/go-git/go-billy/v5 v5.3.1 h1:CPiOUAzKtMRvolEKw+bG1PLRpT7D3LIs3/3ey4Aiu34= github.com/go-git/go-billy/v5 v5.3.1/go.mod h1:pmpqyWchKfYfrkb/UVH4otLvyi/5gJlGI4Hb3ZqZ3W0= -github.com/go-git/go-git-fixtures/v4 v4.2.1 h1:n9gGL1Ct/yIw+nfsfr8s4+sbhT+Ncu2SubfXjIWgci8= -github.com/go-git/go-git-fixtures/v4 v4.2.1/go.mod h1:K8zd3kDUAykwTdDCr+I0per6Y6vMiRR/nnVTBtavnB0= +github.com/go-git/go-git-fixtures/v4 v4.3.0 h1:OAiwhtOsTVVUvVSLzwSO9PCCo/KPxGfn5aC3BV6d6TY= +github.com/go-git/go-git-fixtures/v4 v4.3.0/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo= +github.com/go-git/go-git-fixtures/v4 v4.3.1 h1:y5z6dd3qi8Hl+stezc8p3JxDkoTRqMAlKnXHuzrfjTQ= +github.com/go-git/go-git-fixtures/v4 v4.3.1/go.mod h1:8LHG1a3SRW71ettAD/jW13h8c6AqjVSeL11RAdgaqpo= github.com/google/go-cmp v0.3.0 h1:crn/baboCvb5fXaQ0IJ1SGTsTVrWpDsCWC8EGETZijY= github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= github.com/imdario/mergo v0.3.12 h1:b6R2BslTbIEToALKP7LxUvijTsNI9TAe80pLWN2g/HU= diff --git a/plumbing/format/packfile/parser_test.go b/plumbing/format/packfile/parser_test.go index 9c7e218f7..09f3f9704 100644 --- a/plumbing/format/packfile/parser_test.go +++ b/plumbing/format/packfile/parser_test.go @@ -133,10 +133,9 @@ func (s *ParserSuite) TestThinPack(c *C) { } func (s *ParserSuite) TestResolveExternalRefsInThinPack(c *C) { - f, err := os.Open("testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack") - c.Assert(err, IsNil) + extRefsThinPack := fixtures.ByTag("codecommit").One() - scanner := packfile.NewScanner(f) + scanner := packfile.NewScanner(extRefsThinPack.Packfile()) obs := new(testObserver) parser, err := packfile.NewParser(scanner, obs) diff --git a/plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack b/plumbing/format/packfile/testdata/pack-9733763ae7ee6efcf452d373d6fff77424fb1dcc.pack deleted file mode 100644 index 4a57a61551e6b42c324b98cda3f69ee93f8e5b03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 42029 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 NrtdF4Kf9qF`Y(#ikz)V=