Among other things it allows to get a filtered list of refs from the server. This would allow for repositories with massive amounts of branches or tags, which in turn would allow for more "creative" uses of Git for Smalltalk. For example, tag each commit with a Monticello version name, have each package on its own branch to get per-package history, and overall create a more fitting Git storage backend for the Monticello versioning model (if desired). Since commercial Smalltalk version control systems like ENVY and Store tend to be more similar to Monticello than to "vanilla" Git, an approximation of those with a Git backend would also benefit from this approach.
Eventually (after a few years) this may be required to talk to certain services like GitHub. Hence tagged as mandatory.
https://github.com/git/git/blob/v2.39.2/Documentation/gitprotocol-v2.txt
Among other things it allows to get a filtered list of refs from the server. This would allow for repositories with massive amounts of branches or tags, which in turn would allow for more "creative" uses of Git for Smalltalk. For example, tag each commit with a Monticello version name, have each package on its own branch to get per-package history, and overall create a more fitting Git storage backend for the Monticello versioning model (if desired). Since commercial Smalltalk version control systems like ENVY and Store tend to be more similar to Monticello than to "vanilla" Git, an approximation of those with a Git backend would also benefit from this approach.
Eventually (after a few years) this may be required to talk to certain services like GitHub. Hence tagged as mandatory.