Nodejsは、子プロセスモジュールchild_processを介してgit情報(ブランチ、ラベル)を取得します

child_process

child_processこのモジュールは、.cmd、.bat、シェルスクリプトの実行など、ノード環境でサブプロセスやその他の操作を実行するためのサブプロセスを生成する機能を提供します。
Node.jsv12.13.0ドキュメントchild_process

ここchild_process.exec(command[, options][, callback])利用可能なAPI倉庫情報child_process.execSync(command[, options])を取得しgitます。


git name-rev --name-only HEAD

git-name-rev-指定された速度の記号名を
git name-rev --name-only HEAD検索しますこのコマンドは、端末に現在のバージョンまたはラベル情報を出力します。

git name-rev --name-only HEAD 
===> test 

git name-rev --name-only HEAD
===> v4.3.1
組み合わせて使用
//同步子进程
const version = child_process.execSync('git name-rev --name-only HEAD', { 'encoding': 'utf8' });
===> v4.3.1 


//异步子进程
const childProcess = require('child_process');

const getVersion = () => {
    return new Promise((resovle, reject) => {
        childProcess.exec(`git name-rev --name-only HEAD`, { encoding: 'utf-8' }, (stdout, error, status, output) => {
            error ? reject(error) : resovle(stdout)
        });
    })
}

getVersion().then(res => {
    console.log(res)
}).catch(e => {
    console.log(e)
})

おすすめ

転載: blog.csdn.net/Ruffaim/article/details/102800616