Mercurial commit ids are short (12 digits) on database
I'm using redmine 2.3.1 and configured a Mercurial repository.
Referring to a commit with the changeset id (a 40 digit hexadecimal number) redmine does not render this as a link.
Furthermore, loading projects/$p/repository/revisions/$changeset_id just gives a 404 "The entry or revision was not found in the repository." error.
Of course, the commit does exist in the repo.
select scmid from changesets; only gives the short-form ID, well, unsurprisingly.
Note: a short-form ID can start out valid, but become invalid because another changeset with the same prefix shows up later on. Do not use short-form IDs for long-lived representations. You can use the --debug option to display the full changeset ID.
Updated by Claudio Bley over 10 years ago
- Status changed from New to Resolved
Toshi MARUYAMA wrote:
This patch fixes some bugs of previous patch.
It works great. Thank you very much!
One last thing though, would it be possible to shorten the link text to 12 (or even less) chars when on display? Maybe display it like
As a human a 40 chars hex number is just not something one can grasp, usually.
For example git uses 7 digits by default (more when there's a conflict), and bitbucket also displays 7 digits in its web interface.
Should I add a new ticket about this?
Updated by Claudio Bley over 9 years ago
Just wanted to check in on you whether you made some progress on this one?
I tried the patch on the latest release and it still applies perfectly.
I'm attaching a patch which removes one minor nit and also fixes all the failing tests.
Hope you get to include this into the next release... :)