3 ms·
Well, it's not hard to update the command-line git client on Unix-y systems with package management. The trouble will be with the hundreds/thousands of other pr
by ufmace 10y ago
Well, it's not hard to update the command-line git client on Unix-y systems with package management. The trouble will be with the hundreds/thousands of other programs that use Git in various ways and are essential to development workflows in various places. Github themselves, Microsoft and Jetbrains IDEs, etc.
- taeric 10y agoDon't most of these go through the git codebase? Or just parse the output of standard commands? Curious what implications the hash has on those.
- CydeWeys 10y agoThere's two potentially mitigating factors at play here: I suspect a lot of the tools you mentioned also already treat hashes as strings, not as 160 bit numeric types. The entire front-end JS for GitHub, for example, just uses strings. That's what I'd do if I were writing IDE integrations and such too. Secondly, the new format will likely still be a 160-bit numeric type, just calculated using a different hash algorithm (e.g. it might be the first 160 bits of the SHA256 result). The tools you mentioned likely don't have to calculate said hashes, they just display them. The entire GitHub front-end, for instance, just displays whatever is given to it; commit hashes are input data to it, not output data.
- eklitzke 10y agoJust using the first 160 bits of a new hash function was proposed at one point, but it's not part of the current plan. The new plan is to introduce full SHA3-256 hashes (which are 256 bits in size). More information here: https://docs.google.com/document/d/18hYAQCTsDgaFUo-VJGhT0UqyetL2LbAzkWNK1fYS8R0/edit# https://docs.google.com/document/d/18hYAQCTsDgaFUo-VJGhT0Uqy... (Of course, CLI and frontend tools could still truncate display output to 40 hex characters, but internally full size hashes will be used.)
- CydeWeys 10y agoWoah, that's disorienting to be linked to a bluedoc unexpectedly like that, considering I'm not on my work account. I ever recognize one of the authors.
- jlgaddis 10y agoI would assume that most other stuff uses libgit2 (except maybe the Microsoft stuff). Is that not a safe assumption?