git : 시간대 및 타임 스탬프 형식
git에서 타임 스탬프를 얻을 수 있습니다.
"2011-10-04 12:58:36 -0600"
그러나 그것을 다음과 같이 표시하는 방법이 있습니까?
"2011-10-04 06:58:36"
그래서 내가 원하는 것은 -0600 시간대 오프셋을 제거하는 것입니다. 어떻게 할 수 있습니까? 감사.
git log에 대해 물어 보면 다음에서 가장 정확한 형식을 시도하고 선택할 수 있습니다.
git log --date={relative,local,default,iso,rfc}
--date=local
최고의 후보 인 것 같습니다.
이를 영구적으로 만들려면 git config --global log.date local
.
git log --date=local
트릭을 수행합니다.
git config --global log.date local
TZ=UTC git log --date=local
현지 시간대가 아닌 단일 시간대 출력을 얻으려면.
불행히도 git log --date=local
이전 답변에서 설명한대로 사용 하면 출력 형식이 변경됩니다.
요청한대로 형식을 유지하려면 ( YYYY-MM-DD HH:mm
) 다음 을 사용해야했습니다.
git log --date=iso-local
그러나 그것은 git 2.7 이상에서만 작동합니다.
형식 ( YYYY-MM-DD HH:hh
) 을 얻으려면 다음을 사용할 수 있습니다.
git log --date=format:%Y-%m-%d\ %H:%M
Git Standup에서도 아름답게 작동합니다 : https://github.com/kamranahmedse/git-standup
jveerman의 게시물이 정말 도움이되었습니다.
YYYY-MM-DD HH : MM : SS 형식으로 git 날짜를 표시하려는 경우 :
DATE=$(git log -n 1 --pretty=format:"%ad" --date=iso)
echo "Date: ${DATE::20}"
로그 형식의 경우 이것을 추가 할 수있었습니다
[log]
date=format:%Y-%m-%d %H:%M:%S
내 ~ / .gitconfig에
하지만 내 커밋 메시지에 자동으로 추가 된 동일한 형식의 날짜 / 시간을 얻는 것은 시련이었습니다. 이것을 .git / hooks / prepare-commit-msg 파일에 추가하기 전까지는 도움이되지 않았습니다.
DATE=$(git log -n 1 --pretty=format:"%ad" --date=iso)
echo "${DATE::20}" >> $1
주로 데스크톱 앱을 사용하는 경우 커밋 목록에 정확한 변경 시간을 표시하는 것이 좋습니다!
이것을 전역으로 만드는 방법이 있습니까? 그래서 각 로컬 저장소의 prepare-commit-msg 파일을 편집 할 필요가 없습니까?
전체 명령 줄 답변 :
TZ=GMT git show -s --format=%cd --date=iso-local
YYYY-MM-DD HH : MM : SS 형식으로 git 날짜를 표시하려는 경우 :
DATE = $ (git log -n 1 --pretty = format : "% ad"--date = iso)
echo "날짜 : $ {DATE :: 20}"
참고 URL : https://stackoverflow.com/questions/7651644/git-timezone-and-timestamp-format
'program tip' 카테고리의 다른 글
Random.Next는 항상 동일한 값을 반환합니다. (0) | 2020.12.07 |
---|---|
C #에서 SHA1 파일 체크섬을 어떻게 수행합니까? (0) | 2020.12.07 |
쿠키와 세션은 무엇이며 서로 어떤 관련이 있습니까? (0) | 2020.12.07 |
python-홀수 / 짝수 확인 및 숫자 크기에 대한 출력 변경 (0) | 2020.12.07 |
Chart.js multiTooltip 레이블 (0) | 2020.12.07 |