Hi On Thu, Jun 20, 2024, at 15:15, Shubham Kanodia wrote: > When I run — `git maintenance register` to register a particular > repository for maintenance, > it appends a new entry to `~/.gitconfig` with the repo name. > > ``` > [maintenance] > repo = /path/to/repo-1 > repo = /path/to/repo-2 > ``` > > Now, since git uses the INI format for these files, this would imply that > repo-2 actually overrides repo 1 for maintenance. > > This implies that a user can only register a single repository on > their system for > maintenance. Imply? Did you test this? From memory this is a multi-valued config, and multi-valued configs are sometimes listed by using `=` multiple times for the same config variable. That’s also what [this] email says: “ The 'git maintenance [un]register' commands set or unset the multi- valued maintenance.repo config key with the absolute path of the current repository. These are set in the global config file. 🔗 this: https://lore.kernel.org/git/5aa9cc1d6b93b5ad3d66ac01a4518a91ced39bcb.1664287021.git.gitgitgadget@xxxxxxxxx/ I’ve never seen that git config uses the INI format. I’ve had the impression that it is a bespoke format that simply looks like the INI format. (But is the INI format even standardized?) I have two repositories registered. When I run this: ``` git for-each-repo --config=maintenance.repo maintenance run ``` Well, it doesn’t tell me what repositories are being manipulated, but I do get two of these lines: ``` Enumerating objects: […] ``` So I surmise that this command is being run twice. -- Kristoffer Haugsbakk