0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

FlutterプロジェクトのGit情報をプログラム上で表示する方法

Posted at

FlutterプロジェクトのGit情報をプログラム上で表示する方法

アプリ開発などでこのプログラムはいつ作製したものだろう?同じバージョンはどれ?といった問題に直面したのでアプリ上にGIT情報としてコミット日時、編集の有無、ブランチ、コミットIDを表示させるようにしました。

ハードではこちらの記事で運用をしていてFlutter環境でも応用してみました。
https://asukiaaa.blogspot.com/2023/01/add-git-info-to-platformio-project.html

前提条件

  • VSCode
  • Flutterプロジェクト
  • Gitがインストールされていること

スクリプトの作成

まず、プロジェクトのルートに get_git_info.ps1 というPowerShellスクリプトを作成します。

#!/bin/bash

# 最新のコミット日時を取得
$commit_date = git log -1 --pretty=%cd --date=format:%Y-%m-%d-%H:%M

# コミットIDを取得
$commit_id = git rev-parse --short HEAD

# 未コミットの変更があるか確認
$diff_status = if ((git status --porcelain) -eq $null) { "no-diff" } else { "modified" }

# 現在のブランチ名を取得
$branch_name = git rev-parse --abbrev-ref HEAD

# 情報を結合
$git_info = "$commit_date-$diff_status-$branch_name-$commit_id"

# Dartファイルに情報を書き込む
"const String gitInfo = '$git_info';" | Out-File -Encoding utf8 lib/git_info.dart

スクリプトの実行

次に、PowerShellを管理者として実行し、以下のコマンドを入力してスクリプトの実行ポリシーを変更します。

Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser

その後、以下のコマンドでスクリプトを実行します。

.\get_git_info.ps1

これにより、lib/git_info.dart ファイルが生成され、Gitの情報が含まれます。

Dartコード内での使用

生成された lib/git_info.dart ファイルをFlutterコード内でインポートして使用します。

import 'package:your_project/git_info.dart';

void main() {
  print('Git Info: $gitInfo');
}

アプリ上で表示したり管理者ページで確認するようにすることで保守の向上が期待できます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?