Permalink
Browse files

Merge pull request #888 from hyPiRion/skip-pom-git-revision-if-empty-…

…git-repo

Skip git revision in pom if empty git repo. Fixes #887.
  • Loading branch information...
2 parents 723671b + 23da925 commit d736a5258848d7d1f0baaa6add88fbb9395bd2b2 @technomancy committed Dec 17, 2012
Showing with 11 additions and 5 deletions.
  1. +11 −5 src/leiningen/pom.clj
View
16 src/leiningen/pom.clj
@@ -29,12 +29,16 @@
git-dir-file)))
(defn- read-git-ref
- "Reads the commit SHA1 for a git ref path."
+ "Reads the commit SHA1 for a git ref path, or nil if no commit exist."
[git-dir ref-path]
- (.trim (slurp (str (io/file git-dir ref-path)))))
+ (let [ref (io/file git-dir ref-path)]
+ (if (.exists ref)
+ (.trim (slurp ref))
+ nil)))
(defn- read-git-head
- "Reads the value of HEAD and returns a commit SHA1."
+ "Reads the value of HEAD and returns a commit SHA1, or nil if no commit
+ exist."
[git-dir]
(let [head (.trim (slurp (str (io/file git-dir "HEAD"))))]
(if-let [ref-path (second (re-find #"ref: (\S+)" head))]
@@ -78,7 +82,8 @@
[:connection (str "scm:git:" (:public-clone urls))])
(and (:dev-clone urls)
[:developerConnection (str "scm:git:" (:dev-clone urls))])
- [:tag head]
+ (and head
+ [:tag head])
[:url (:browse urls)]])
(catch java.io.FileNotFoundException _)))
@@ -340,7 +345,8 @@
(.setProperty "artifactId" (:name project)))
git-head (resolve-git-dir project)]
(when (.exists git-head)
- (.setProperty properties "revision" (read-git-head git-head)))
+ (if-let [revision (read-git-head git-head)]
+ (.setProperty properties "revision" revision)))
(.store properties baos "Leiningen"))
(str baos)))

0 comments on commit d736a52

Please sign in to comment.