mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-12 12:28:42 +00:00
chore: unify version (#1123)
This commit is contained in:
41
apps/web/scripts/gitInfo.mjs
Normal file
41
apps/web/scripts/gitInfo.mjs
Normal file
@@ -0,0 +1,41 @@
|
||||
// @ts-check
|
||||
import { execSync } from 'node:child_process';
|
||||
|
||||
const hasGit = () => {
|
||||
try {
|
||||
execSync('git --version');
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
const getTopLevel = () => execSync('git rev-parse --show-toplevel');
|
||||
const isRepository = () => {
|
||||
try {
|
||||
getTopLevel();
|
||||
} catch {
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
|
||||
const getGitVersion = () => {
|
||||
if (!hasGit() || !isRepository()) {
|
||||
console.error(
|
||||
"You haven't installed git or it does not exist in your PATH."
|
||||
);
|
||||
return null;
|
||||
}
|
||||
const VERSION = execSync('git describe --always --dirty')
|
||||
.toString()
|
||||
// remove empty line
|
||||
.replace(/[\s\r\n]+$/, '');
|
||||
|
||||
return VERSION;
|
||||
};
|
||||
|
||||
const getCommitHash = (rev = 'HEAD') =>
|
||||
execSync(`git rev-parse --short ${rev}`).toString();
|
||||
|
||||
export { getCommitHash, getGitVersion };
|
||||
Reference in New Issue
Block a user