Skip to content

Commit 982021d

Browse files
committed
feat(version): Add short Git hash string to Version class.
1 parent 900a24c commit 982021d

File tree

2 files changed

+36
-0
lines changed

2 files changed

+36
-0
lines changed

GeneralsMD/Code/GameEngine/Include/Common/version.h

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,9 @@ class Version
6666
AsciiString getAsciiGitTagOrHash() const; ///< Returns the git head commit tag or hash. Is prefixed with ~ if there were uncommitted changes.
6767
UnicodeString getUnicodeGitTagOrHash() const; ///< Returns the git head commit tag or hash. Is prefixed with ~ if there were uncommitted changes.
6868

69+
AsciiString getAsciiGitShortHash() const; ///< Returns the git head commit short hash. Is prefixed with ~ if there were uncommitted changes.
70+
UnicodeString getUnicodeGitShortHash() const; ///< Returns the git head commit short hash. Is prefixed with ~ if there were uncommitted changes.
71+
6972
AsciiString getAsciiGitCommitTime() const; ///< Returns the git head commit time in YYYY-mm-dd HH:MM:SS format
7073
UnicodeString getUnicodeGitCommitTime() const; ///< Returns the git head commit time in YYYY-mm-dd HH:MM:SS format
7174

@@ -95,6 +98,9 @@ class Version
9598
static AsciiString buildAsciiGitTagOrHash();
9699
static UnicodeString buildUnicodeGitTagOrHash();
97100

101+
static AsciiString buildAsciiGitShortHash();
102+
static UnicodeString buildUnicodeGitShortHash();
103+
98104
static AsciiString buildAsciiGitCommitTime();
99105
static UnicodeString buildUnicodeGitCommitTime();
100106

@@ -109,9 +115,11 @@ class Version
109115
AsciiString m_buildDate;
110116
AsciiString m_asciiGitCommitCount;
111117
AsciiString m_asciiGitTagOrHash;
118+
AsciiString m_asciiGitShortHash;
112119
AsciiString m_asciiGitCommitTime;
113120
UnicodeString m_unicodeGitCommitCount;
114121
UnicodeString m_unicodeGitTagOrHash;
122+
UnicodeString m_unicodeGitShortHash;
115123
UnicodeString m_unicodeGitCommitTime;
116124
Bool m_showFullVersion;
117125
};

GeneralsMD/Code/GameEngine/Source/Common/version.cpp

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,9 +45,11 @@ Version::Version()
4545
m_buildLocation = AsciiString::TheEmptyString;
4646
m_asciiGitCommitCount = buildAsciiGitCommitCount();
4747
m_asciiGitTagOrHash = buildAsciiGitTagOrHash();
48+
m_asciiGitShortHash = buildAsciiGitShortHash();
4849
m_asciiGitCommitTime = buildAsciiGitCommitTime();
4950
m_unicodeGitCommitCount = buildUnicodeGitCommitCount();
5051
m_unicodeGitTagOrHash = buildUnicodeGitTagOrHash();
52+
m_unicodeGitShortHash = buildUnicodeGitShortHash();
5153
m_unicodeGitCommitTime = buildUnicodeGitCommitTime();
5254
#if defined(RTS_DEBUG)
5355
m_showFullVersion = TRUE;
@@ -235,6 +237,16 @@ UnicodeString Version::getUnicodeGitTagOrHash() const
235237
return m_unicodeGitTagOrHash;
236238
}
237239

240+
AsciiString Version::getAsciiGitShortHash() const
241+
{
242+
return m_asciiGitShortHash;
243+
}
244+
245+
UnicodeString Version::getUnicodeGitShortHash() const
246+
{
247+
return m_unicodeGitShortHash;
248+
}
249+
238250
AsciiString Version::getAsciiGitCommitTime() const
239251
{
240252
return m_asciiGitCommitTime;
@@ -397,6 +409,22 @@ AsciiString Version::buildAsciiGitTagOrHash()
397409
return str;
398410
}
399411

412+
AsciiString Version::buildAsciiGitShortHash()
413+
{
414+
AsciiString str;
415+
str.format("%s%s",
416+
GitUncommittedChanges ? "~" : "",
417+
GitShortSHA1);
418+
return str;
419+
}
420+
421+
UnicodeString Version::buildUnicodeGitShortHash()
422+
{
423+
UnicodeString str;
424+
str.translate(buildAsciiGitShortHash());
425+
return str;
426+
}
427+
400428
UnicodeString Version::buildUnicodeGitTagOrHash()
401429
{
402430
UnicodeString str;

0 commit comments

Comments
 (0)