0

Linuxソースツリーの外部で(標準的な方法で)Linuxカーネルモジュールを開発しており、モジュールのロード中に出力されるバージョン文字列にドライバーのgitcommitハッシュを自動的に含めようとしています。Makefileは、コマンドを使用してgitハッシュを計算します

DRV_TAG   := $(shell git log -1 --pretty=format:"%h")

しかし、これはLinuxツリーのgitハッシュを取得し、私のドライバーは取得しません。コマンドを実行するときに特定のディレクトリを調べるようにgitに指示できますか、あるいは、この問題に取り組むためのより良い方法がありますか?

これはgit1.5.4.5とLinux2.6.28を使用しています

4

2 に答える 2

1

はい、適切なディレクトリ--git-dirに設定する必要があるオプションを使用できます。.gitまた、を使用することもできますがgit log、実行していることrev-parse(配管コマンド)の方が適している場合があります。

git --git-dir=/driver/root/.git rev-parse HEAD
于 2009-08-31T17:37:01.747 に答える
1

git--git-dirどのリポジトリを参照するかを指定できるオプションを取ります--work-tree。作業ツリーも参照する必要がある場合は、同様のオプションがあります。

git --git-dir=/path/to/repo log -1 --pretty=format:"%h"

これらおよびその他のオプションの説明については、git の man ページを参照してください。

于 2009-08-31T17:37:17.737 に答える