git init
의 날짜/시간을받을 수 있습니까?Git 저장소 초기화의 날짜를 얻는 방법은 무엇입니까?
첫 번째 커밋이 아닙니다.
가능하면 어떻게받을 수 있습니까?
나는 이것을 지속적으로 통합하기 위해 개정판 번호를 찾고있다. 버전 키에 Git 커밋 해시를 사용하고 싶지만 iOS 앱이며 버전 문자열에 숫자와 쉼표 만 사용해야한다는 몇 가지 제한 사항이 있습니다.
다음으로, 개정 번호로 Unix 타임 스탬프 (초)를 사용하려고했지만 너무 커서 프로젝트에 대한 의미있는 정보를 표시 할 수 없습니다. 그리고 나서 현재 Git 저장소가 생성 된 이후로 몇 초를 계산한다는 또 다른 아이디어가 있습니다. 나의 현재 생각은
,
HEAD_TIMESTAMP=`git show -s --format=%ct HEAD`
INIT_TIMESTAMP=<get init date>
DELTA=`expr $HEAD_TIMESTAMP - $INIT_TIMESTAMP `
DAYS=`expr $DELTA/86400`
SECS=`expr $DELTA % 86400`
REV=$DAYS.$SECS
나는 날짜/첫번째 커밋의 시간을 사용하는 것도 가능하다고 생각. 그러나 그것이 가능하다면 git init
의 날짜/시간을 사용하고 싶습니다. 저장소가 실제로 생성되기 때문입니다.
살펴보다 몇 수
를 '자식 초기화 '도망 쳤다. 문제의 저장소가 초기화되지 않고 복제 된 경우 어떻게해야합니까? 그러나 최선의 방법은'.git/description' 파일의 타임 스탬프를 얻는 것입니다. 그것은'git init'에서 생성 된 하나의 파일이며 이후로 변경되지 않았을 수도 있습니다. – Jubobs
지속적인 통합을위한 리비전 번호로 계속해서 카운트하거나 git commit hash 또는 date와 git commit hash를 사용할 수 있습니다. 몇몇 기계의 시계와 시간에 의존하는 것은 어느 시점에서 잘못 될 것입니다. 커밋 수를 세어 볼 수도 있지만, 하나 이상의 브랜치를 빌드하면 충돌합니다. – orkoden
@Jubobs에 언급 된 바와 같이, 이것은 일반적으로'git'에 의해 기록되지 않습니다. 그러나 완전하게 신뢰할 수없는 해결 방법으로'.git' 디렉토리 ('description','branches','info' 및'hooks'와 같은)에 몇 개의 파일/디렉토리가 있습니다. 'git init'이 실행 된 시간 스탬프 ... – twalberg