From: Derrick Stolee Date: Mon, 20 Jul 2020 12:18:11 GMT Subject: Re: Pushing tag from a partial clone Message-ID: <3e68d3a1-01e6-4ce3-eee1-bc9fb07a1825@gmail.com> In-Reply-To: <0DEFACA7-9D30-4DB1-9FDF-3E63945FAAB3@gmail.com> On 7/20/2020 7:44 AM, Son Luong Ngoc wrote: > Hi folks, > > At $day_job, we are trying to push tags to a repo from a partial clone copy. > However it seems like this push would requires the partial clone copy to download more objects? > Is this intended? > > Reproduce: > > mkdir repo && cd repo > git init > git remote add origin git@domain.com:path/repo.git > git fetch --filter=tree:0 --no-tags --prune origin > git sparse-checkout init --cone > git checkout --force > git tag -a sluongng-test -m "Test push from partial clone" > git push HEAD:refs/tags/sluongng-test > > > Ideally we would like to be able to push tag from a shallow + partial clone repo without > having to download extra objects if possible. > We would like to keep the required repo to the absolute minimum. > git fetch --depth 1 --filter=tree:0 --no-tags --prune origin > > Creating and pushing tags should not require local repo to have trees/blobs in it? > > Git version: 2.27.0 Could you try this again with 2.28.0-rc1? I think Jonathan Tan added the "no-fetch" flag in more places since 2.27.0, and this might already be fixed. Thanks, -Stolee