I'm currently working on getting Git to support multiple hash algorithms in the same binary (SHA-1 and SHA-256). In order to have a fully functional binary, we'll need to have some way of indicating to certain commands (such as init and show-index) that they should assume a certain hash algorithm. There are basically two approaches I can take. The first is to provide each command that needs to learn about this with its own --hash argument. So we'd have: git init --hash=sha256 git show-index --hash=sha256 <some-file The other alternative is that we provide a global option to git, which is parsed by all programs, like so: git --hash=sha256 init git --hash=sha256 show-index <some-file There's also the question of what we want to call the option. The obvious name is --hash, which is intuitive and straightforward. However, the transition plan names the config option extensions.objectFormat, so --object-format is also a possibility. If we ever decide to support, say, zstd compression instead of zlib, we could leverage the same option (say, --object-format=sha256:zstd) and avoid the need for an additional option. This might be planning for a future that never occurs, though. I'd like to write this code in the way most acceptable to the list, so I'd appreciate input from others on what they'd like to see in the final series. -- brian m. carlson: Houston, Texas, US OpenPGP: https://keybase.io/bk2204
Attachment:
signature.asc
Description: PGP signature