git_info_plus

pub package

从Flutter应用程序内部获取git信息。

screenshot-android screenshot-ios

用法

Dart

final String branchName = await GitInfo.branchName;
final DateTime lastCommitDate = await GitInfo.lastCommitDate;
final String lastCommitHash = await GitInfo.lastCommitHash;
final String lastCommitHashShort = await GitInfo.lastCommitHashShort;
final String lastCommitMessage = await GitInfo.lastCommitMessage;

设置

Android

您无需进行设置。

iOS

要在IOS上使用此库,您需要进行一些设置。

1. 在info.plist中添加值

|键|类型|值|
|GitBranchName|字符串|undefined|
|GitCommitDate|字符串|undefined|
|GitCommitHash|字符串|undefined|
|GitCommitHashShort|字符串|undefined|
|GitCommitMessage|字符串|undefined|

您也可以复制粘贴这些行。

	<key>GitBranchName</key>
	<string>undefined</string>
	<key>GitCommitDate</key>
	<string>undefined</string>
	<key>GitCommitHash</key>
	<string>undefined</string>
	<key>GitCommitHashShort</key>
	<string>undefined</string>
	<key>GitCommitMessage</key>
	<string>undefined</string>

setup-ios-1

2. 启用Processes Info.plist文件

BuildSettings > Processes Info.plist File
更改为YES

setup-ios-2

3. 添加运行脚本

BuildPhase >

添加新的Run Script并粘贴这些行。

plistBuddy="/usr/libexec/PlistBuddy"
infoPlistFile="${TEMP_DIR}/Preprocessed-Info.plist"

branchName=$(git rev-parse --abbrev-ref HEAD)
commitDate=$(git --no-pager log -1 --format="%ai")
commitHash=$(git rev-parse --short HEAD)
commitHashShort=$(git rev-parse HEAD)
commitMessage=$(git log -1 --pretty=%s)

$plistBuddy -c "Set :GitBranchName $branchName" $infoPlistFile
$plistBuddy -c "Set :GitCommitDate $commitDate" $infoPlistFile
$plistBuddy -c "Set :GitCommitHash $commitHash" $infoPlistFile
$plistBuddy -c "Set :GitCommitHashShort $commitHashShort" $infoPlistFile
$plistBuddy -c "Set :GitCommitMessage $commitMessage" $infoPlistFile

setup-ios-3

4. 添加输入文件。

${TEMP_DIR}/Preprocessed-Info.plist

GitHub

查看 Github