Re: Question relate to collaboration on git monorepo
From: Emily Shaffer <hidden>
Date: 2022-09-22 15:21:11
Yeah, that's a weird one. I wonder whether the partial clone filter setting should also imply a config shutting off diffstats? - Emily On Thu, Sep 22, 2022 at 7:24 AM Derrick Stolee [off-list ref] wrote:
On 9/21/2022 7:36 PM, Elijah Newren wrote:quoted
On Wed, Sep 21, 2022 at 8:22 AM ZheNing Hu [off-list ref] wrote:quoted
Here, we do have an object download, which occurred after the merge completed, so there must be something happening after the merge which needs the extra blob; if we keep reading...quoted
project1/file1 | 10 ++++++++++ 1 file changed, 10 insertions(+)Ah, the 'helpful' diffstat. It downloads blobs from a promisor remote just so we can see what has changed, including in the area of the project we don't care about. (This is yet another reason it'd be nice to have a --restrict mode for grep/diff/log/etc. for sparse-checkout uses, and an ability to make it the default in some repo, so you could get just the diffstat within the region of the project that you care about. We're discussing such an idea, but it isn't implemented yet.)quoted
warning: This repository uses promisor remotes. Some objects may not be loaded. blob_count1=11 blob_count2=11 blob_count3=12 The result shows that blob count doesn't change in git fetch, but in git merge.If you add --no-stat to your merge command (or set merge.stat to false), the extra blob will not be downloaded.This is an interesting find! I wonder how many people are hitting this in the wild. Perhaps merge.stat should be added to the optional, but recommended config options in scalar.c. Thanks, -Stolee