Permalink
Browse files

SD-220 building without being in a git repository

This allows building from the scala sources tarball or similar
situations where there is no local git repository:
 - the git commit date becomes the local date
 - the short git sha1 becomes "unknown"

```
Welcome to Scala 2.12.0-20160920-155429-unknown (OpenJDK 64-Bit Server VM, Java 1.8.0_102).
```
  • Loading branch information...
1 parent 05016d9 commit 4874a242cbb72eb94ed71824e81314980cbff024 @gourlaysama gourlaysama committed Sep 20, 2016
Showing with 16 additions and 7 deletions.
  1. +7 −2 tools/get-scala-commit-date
  2. +9 −5 tools/get-scala-commit-sha
@@ -10,8 +10,13 @@
[[ $# -eq 0 ]] || cd "$1"
-lastcommitdate=$(git log --format="%ci" HEAD | head -n 1 | cut -d ' ' -f 1)
-lastcommithours=$(git log --format="%ci" HEAD | head -n 1 | cut -d ' ' -f 2)
+if git rev-parse --is-inside-work-tree > /dev/null 2>&1; then
+ lastcommitdate=$(git log --format="%ci" HEAD | head -n 1 | cut -d ' ' -f 1)
+ lastcommithours=$(git log --format="%ci" HEAD | head -n 1 | cut -d ' ' -f 2)
+else
+ lastcommitdate=$(date +%Y-%m-%d)
+ lastcommithours=$(date +%H:%M:%S)
+fi
# 20120324
echo "${lastcommitdate//-/}-${lastcommithours//:/}"
@@ -10,9 +10,13 @@
[[ $# -eq 0 ]] || cd "$1"
-# printf %016s is not portable for 0-padding, has to be a digit.
-# so we're stuck disassembling it.
-hash=$(git log -1 --format="%H" HEAD)
-hash=${hash#g}
-hash=${hash:0:10}
+if git rev-parse --is-inside-work-tree > /dev/null 2>&1; then
+ # printf %016s is not portable for 0-padding, has to be a digit.
+ # so we're stuck disassembling it.
+ hash=$(git log -1 --format="%H" HEAD)
+ hash=${hash#g}
+ hash=${hash:0:10}
+else
+ hash="unknown"
+fi
echo "$hash"

1 comment on commit 4874a24

@primusimran

thanks....

Please sign in to comment.