Increase short SHA length to 7 characters (#11492)

This PR increases the length of a shortened Git SHA from 6 to 7
characters.

This matches what GitHub uses.

I also took the opportunity to factor out a common method for computing
a short SHA so that we have a single source of truth for the length that
we're using.

Release Notes:

- Increased the short commit SHA length used by git blame from 6 to 7
characters.
This commit is contained in:
Marshall Bowers 2024-05-07 11:10:44 -04:00 committed by GitHub
parent fc4ea55d3c
commit c77d2eb73f
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
3 changed files with 7 additions and 4 deletions

View File

@ -128,8 +128,7 @@ impl Render for BlameEntryTooltip {
let author_email = self.blame_entry.author_mail.clone();
let pretty_commit_id = format!("{}", self.blame_entry.sha);
let short_commit_id = pretty_commit_id.chars().take(6).collect::<String>();
let short_commit_id = self.blame_entry.sha.display_short();
let absolute_timestamp = blame_entry_absolute_timestamp(&self.blame_entry, cx);
let message = self

View File

@ -3360,8 +3360,7 @@ fn render_blame_entry(
let relative_timestamp = blame_entry_relative_timestamp(&blame_entry, cx);
let pretty_commit_id = format!("{}", blame_entry.sha);
let short_commit_id = pretty_commit_id.chars().take(6).collect::<String>();
let short_commit_id = blame_entry.sha.display_short();
let author_name = blame_entry.author.as_deref().unwrap_or("<no name>");
let name = util::truncate_and_trailoff(author_name, 20);

View File

@ -37,6 +37,11 @@ impl Oid {
pub(crate) fn is_zero(&self) -> bool {
self.0.is_zero()
}
/// Returns this [`Oid`] as a short SHA.
pub fn display_short(&self) -> String {
self.to_string().chars().take(7).collect()
}
}
impl FromStr for Oid {