> When `git repack -A -d` is run in a partial clone, `pack-objects` > is invoked twice: once to repack all promisor objects, and once to > repack all non-promisor objects. The latter `pack-objects` invocation > is with --exclude-promisor-objects and --unpack-unreachable, which > loosens all unused objects. Unfortunately, this includes promisor > objects. s/loosens all unused objects/loosens all objects unused during this invocation/ > [snip] The --keep-pack option takes only a packfile name, but we > concatenate both the path and the name in a single string. Instead, > let's split them into separate string in order to easily pass the > packfile name later. I think mentioning this part is unnecessary in the commit message. With or without these changes, this patch looks good to me.