2009-08-31 2 views
0

(표준 방식으로) 리눅스 소스 트리 외부에서 리눅스 커널 모듈을 개발 중이며 드라이버 인의 git commit 해쉬를 버전 문자열에 자동으로 포함하려고합니다. 모듈로드 중에 인쇄됩니다. makefile은 명령외부 적재 가능 모듈의 해시 커밋

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

를 사용하여 자식 해시를 계산하지만 내 드라이버를 리눅스 트리의 자식 해시를 집어 없습니다. git에게 명령을 실행할 때 특정 디렉토리를 보도록 지시 할 수 있습니까? 아니면이 문제에 접근하는 더 좋은 방법이 있습니까? 이 자식 1.5.4.5 및 리눅스를 사용하는

2.6.28

답변

1

예, 당신은 당신이 적절한 .git 디렉토리로 설정해야 --git-dir 옵션을 사용할 수 있습니다. 또한 git log을 사용할 수 있지만 수행중인 작업에 대해서는 rev-parse (배관 명령)이 더 적합 할 수 있습니다.

git --git-dir=/driver/root/.git rev-parse HEAD 
1

git은 당신이 보는 무엇 저장소를 지정할 수있는 옵션 --git-dir을합니다. 너무 작업 트리를보고해야하는 경우 유사한 --work-tree 옵션이있다. 이러한 및 기타 옵션에 대한 설명은 git man page에서

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

봐.

관련 문제