diff --git a/.gitignore b/.gitignore
index a73255afd1615af09b43eaad0a3b47f9bc3c9092..808c842adf0cc7235674150537404c8b0fd102c4 100644
--- a/.gitignore
+++ b/.gitignore
@@ -5,4 +5,5 @@
 *.sublime-workspace
 .vagrant/
 .release/
-/*.tar.gz
\ No newline at end of file
+/*.tar.gz
+/build.properties
\ No newline at end of file
diff --git a/build.sh b/build.sh
index 6a7362e264eda0ab9f70cf694d9018bf47ef9fd1..da90e6e89e1db7d9c15750224905b1a19a2347f6 100755
--- a/build.sh
+++ b/build.sh
@@ -34,6 +34,8 @@ DEPLOY_FRONTEND_TO_VAGRANT=0
 #######################################################################################
 
 DIR="$(dirname "$(readlink -f "$0")")"
+VERSION=$(git describe)
+VERSION_LONG=$(git describe --long)
 
 WAR_FILE="vipra.war"
 VIPRA_BACKEND="$DIR/vipra-backend"
@@ -110,6 +112,11 @@ if [ $BUILD_VIPRA_UI -eq 1 ]; then
         GULP=$(command -v gulp 2>/dev/null) || { echo >&2 "gulp not found"; exit 1; }
 fi
 
+# insert build number
+
+echo "git.tag=$VERSION" > $DIR/build.properties
+echo "git.longtag=$VERSION_LONG" >> $DIR/build.properties
+
 # build dtm
 
 if [ $BUILD_DTM -eq 1 ]; then
diff --git a/vipra-backend/pom.xml b/vipra-backend/pom.xml
index f20a493014601fd4f72e9e8ef5481efcfa84c7fe..51a00dd191ce64923f955fe6d8796c2c57c87a98 100644
--- a/vipra-backend/pom.xml
+++ b/vipra-backend/pom.xml
@@ -156,6 +156,25 @@
 					</execution>
 				</executions>
 			</plugin>
+
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>properties-maven-plugin</artifactId>
+				<version>1.0.0</version>
+				<executions>
+					<execution>
+						<phase>initialize</phase>
+						<goals>
+							<goal>read-project-properties</goal>
+						</goals>
+						<configuration>
+							<files>
+								<file>../build.properties</file>
+							</files>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
 		</plugins>
 
 		<resources>
diff --git a/vipra-backend/src/main/java/de/vipra/rest/resource/InfoResource.java b/vipra-backend/src/main/java/de/vipra/rest/resource/InfoResource.java
index 7048ced418a21cfb7379c212b20022027b0df2d9..a856ff01e781f95b834d8ff827f90a28838bdf96 100644
--- a/vipra-backend/src/main/java/de/vipra/rest/resource/InfoResource.java
+++ b/vipra-backend/src/main/java/de/vipra/rest/resource/InfoResource.java
@@ -53,6 +53,7 @@ public class InfoResource {
 			info.put("host.os.version", System.getProperty("os.version"));
 
 			// app info
+			info.put("app.gittag", buildInfo.getGitTag());
 			info.put("app.gitsha1", buildInfo.getGitSHA1());
 			info.put("app.version", buildInfo.getVersion());
 			info.put("app.builddate", buildInfo.getBuildDate());
diff --git a/vipra-backend/src/main/resources/buildNumber.properties b/vipra-backend/src/main/resources/buildNumber.properties
index e340aab1876a2301cbd747d057798e4db2c1a143..36d4472c46e90eb7344150ec537398b5d9d355b0 100644
--- a/vipra-backend/src/main/resources/buildNumber.properties
+++ b/vipra-backend/src/main/resources/buildNumber.properties
@@ -1,3 +1,5 @@
+git-tag=${git.tag}
+git-longtag=${git.longtag}
 git-sha-1=${buildNumber}
 version=${project.version}
 builddate=${buildDate}
\ No newline at end of file
diff --git a/vipra-cmd/pom.xml b/vipra-cmd/pom.xml
index 0569678ad3e9c17eb02a86b63202586c5ccd9f1e..193991c3f1e1bd029c375d901913c0a1f93e38ae 100644
--- a/vipra-cmd/pom.xml
+++ b/vipra-cmd/pom.xml
@@ -81,6 +81,14 @@
 
 	<build>
 		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-surefire-plugin</artifactId>
+				<configuration>
+					<skipTests>true</skipTests>
+				</configuration>
+			</plugin>
+			
 			<plugin>
 				<groupId>org.apache.maven.plugins</groupId>
 				<artifactId>maven-dependency-plugin</artifactId>
@@ -131,6 +139,25 @@
 					</execution>
 				</executions>
 			</plugin>
+
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>properties-maven-plugin</artifactId>
+				<version>1.0.0</version>
+				<executions>
+					<execution>
+						<phase>initialize</phase>
+						<goals>
+							<goal>read-project-properties</goal>
+						</goals>
+						<configuration>
+							<files>
+								<file>../build.properties</file>
+							</files>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
 		</plugins>
 
 		<resources>
diff --git a/vipra-cmd/src/main/java/de/vipra/cmd/CommandLineOptions.java b/vipra-cmd/src/main/java/de/vipra/cmd/CommandLineOptions.java
index 9df57f19dfb2b2c1f9ade54b9c187c622ece97b8..bdbf072dd2c153fdc9a88ab3456ababd90c6713f 100644
--- a/vipra-cmd/src/main/java/de/vipra/cmd/CommandLineOptions.java
+++ b/vipra-cmd/src/main/java/de/vipra/cmd/CommandLineOptions.java
@@ -19,6 +19,7 @@ public class CommandLineOptions {
 	public static final Option SILENT = Option.builder("s").longOpt("silent").desc("suppress all output").build();
 	public static final Option TEST = Option.builder("t").longOpt("test").desc("test database connections").build();
 	public static final Option ALL = Option.builder("A").longOpt("all").desc("select all models (-S all)").build();
+	public static final Option VERSION = Option.builder("v").longOpt("version").desc("print the version number").build();
 
 	public static final Option INDEX = Option.builder("i").longOpt("index").desc("create index for models").hasArgs().argName("[models...]")
 			.optionalArg(true).build();
@@ -47,7 +48,7 @@ public class CommandLineOptions {
 
 	public CommandLineOptions() {
 		final Option[] optionsArray = { CLEAR, DEBUG, HELP, INDEX, LIST, REREAD, SILENT, TEST, ALL, CREATE, DELETE, EDIT, PRINT, IMPORT, MODEL,
-				SELECT, MESSAGE, BACKUP, RESTORE };
+				SELECT, MESSAGE, BACKUP, RESTORE, VERSION };
 		options = new Options();
 		for (final Option option : optionsArray)
 			options.addOption(option);
@@ -244,4 +245,8 @@ public class CommandLineOptions {
 		return getOptionValue(RESTORE);
 	}
 
+	public boolean isVersion() {
+		return hasOption(VERSION);
+	}
+
 }
diff --git a/vipra-cmd/src/main/java/de/vipra/cmd/Main.java b/vipra-cmd/src/main/java/de/vipra/cmd/Main.java
index 565276c16a619aacbecc54f16a41ed3eee53b09e..f7475b827f32e513cd5e7b82088abb90106e68ba 100644
--- a/vipra-cmd/src/main/java/de/vipra/cmd/Main.java
+++ b/vipra-cmd/src/main/java/de/vipra/cmd/Main.java
@@ -21,6 +21,7 @@ import de.vipra.cmd.option.ModelingCommand;
 import de.vipra.cmd.option.PrintModelCommand;
 import de.vipra.cmd.option.RestoreCommand;
 import de.vipra.cmd.option.TestCommand;
+import de.vipra.cmd.option.VersionCommand;
 import de.vipra.util.ConsoleUtils;
 import de.vipra.util.LockFile;
 import de.vipra.util.ex.LockFileException;
@@ -79,6 +80,9 @@ public class Main {
 
 		final List<Command> commands = new ArrayList<>();
 
+		if (opts.isVersion())
+			commands.add(new VersionCommand());
+
 		if (opts.isTest())
 			commands.add(new TestCommand());
 
diff --git a/vipra-cmd/src/main/java/de/vipra/cmd/option/VersionCommand.java b/vipra-cmd/src/main/java/de/vipra/cmd/option/VersionCommand.java
new file mode 100644
index 0000000000000000000000000000000000000000..b3211f544af556522a153837f6e3eeea942321b7
--- /dev/null
+++ b/vipra-cmd/src/main/java/de/vipra/cmd/option/VersionCommand.java
@@ -0,0 +1,29 @@
+package de.vipra.cmd.option;
+
+import java.io.InputStream;
+import java.util.Properties;
+
+import de.vipra.util.ConsoleUtils;
+import de.vipra.util.Constants;
+import de.vipra.util.FileUtils;
+
+public class VersionCommand implements Command {
+
+	@Override
+	public void run() throws Exception {
+		InputStream in = FileUtils.getResource(Constants.BUILDNUMBER_FILE);
+		Properties props = new Properties();
+		props.load(in);
+
+		ConsoleUtils.info("VIPRA CMD tool");
+		ConsoleUtils.info("Version: " + props.getProperty("git-tag"));
+		ConsoleUtils.info("Commit : " + props.getProperty("git-sha-1"));
+		ConsoleUtils.info("From   : " + props.getProperty("builddate"));
+	}
+
+	@Override
+	public boolean requiresLock() {
+		return false;
+	}
+
+}
diff --git a/vipra-cmd/src/main/resources/buildNumber.properties b/vipra-cmd/src/main/resources/buildNumber.properties
index e340aab1876a2301cbd747d057798e4db2c1a143..36d4472c46e90eb7344150ec537398b5d9d355b0 100644
--- a/vipra-cmd/src/main/resources/buildNumber.properties
+++ b/vipra-cmd/src/main/resources/buildNumber.properties
@@ -1,3 +1,5 @@
+git-tag=${git.tag}
+git-longtag=${git.longtag}
 git-sha-1=${buildNumber}
 version=${project.version}
 builddate=${buildDate}
\ No newline at end of file
diff --git a/vipra-ui/app/html/about.html b/vipra-ui/app/html/about.html
index cd457011730baea8fc4d315c33e8b06d5f99ab93..33c1c7c7c42b8cc4206e27beff12d9e1765a0f9e 100644
--- a/vipra-ui/app/html/about.html
+++ b/vipra-ui/app/html/about.html
@@ -20,7 +20,11 @@
       <table class="table table-bordered table-fixed">
         <tbody>
           <tr>
-            <th style="width:33%">Git Version</th>
+            <th style="width:33%">Git Tag</th>
+            <td ng-bind="::info.app.gittag"></td>
+          </tr>
+          <tr>
+            <th>Git SHA1</th>
             <td ng-bind="::info.app.gitsha1"></td>
           </tr>
           <tr>
diff --git a/vipra-util/pom.xml b/vipra-util/pom.xml
index 4793ef1c0f61b5e2e6d8934ba87ccf675f01342e..97d531f2cf89751f0cda7065603f3b9563f71bdf 100644
--- a/vipra-util/pom.xml
+++ b/vipra-util/pom.xml
@@ -76,6 +76,14 @@
 
 	<build>
 		<plugins>
+			<plugin>
+				<groupId>org.apache.maven.plugins</groupId>
+				<artifactId>maven-surefire-plugin</artifactId>
+				<configuration>
+					<skipTests>true</skipTests>
+				</configuration>
+			</plugin>
+			
 			<plugin>
 				<groupId>org.codehaus.mojo</groupId>
 				<artifactId>buildnumber-maven-plugin</artifactId>
@@ -89,6 +97,25 @@
 					</execution>
 				</executions>
 			</plugin>
+
+			<plugin>
+				<groupId>org.codehaus.mojo</groupId>
+				<artifactId>properties-maven-plugin</artifactId>
+				<version>1.0.0</version>
+				<executions>
+					<execution>
+						<phase>initialize</phase>
+						<goals>
+							<goal>read-project-properties</goal>
+						</goals>
+						<configuration>
+							<files>
+								<file>../build.properties</file>
+							</files>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
 		</plugins>
 
 		<resources>
diff --git a/vipra-util/src/main/java/de/vipra/util/BuildInfo.java b/vipra-util/src/main/java/de/vipra/util/BuildInfo.java
index c997d61df31cc838587acbc54f22fbf799cb114d..0f41f48409050391e1582df34365f1a407e7f2cb 100644
--- a/vipra-util/src/main/java/de/vipra/util/BuildInfo.java
+++ b/vipra-util/src/main/java/de/vipra/util/BuildInfo.java
@@ -30,17 +30,23 @@ public class BuildInfo {
 		return properties;
 	}
 
+	private final String gitTag;
 	private final String gitSHA1;
 	private final String version;
 	private final String buildDate;
 
 	public BuildInfo() {
 		final Properties props = getProperties();
+		gitTag = props.getProperty("git-tag");
 		gitSHA1 = props.getProperty("git-sha-1");
 		version = props.getProperty("version");
 		buildDate = props.getProperty("builddate");
 	}
 
+	public String getGitTag() {
+		return gitTag;
+	}
+
 	public String getGitSHA1() {
 		return gitSHA1;
 	}
diff --git a/vipra-util/src/main/java/de/vipra/util/Constants.java b/vipra-util/src/main/java/de/vipra/util/Constants.java
index dbee71c2497d8bb439e35a3ee6342cec4356d292..442ef0bf37067be607e7e86265a3cb71a60fbaa8 100644
--- a/vipra-util/src/main/java/de/vipra/util/Constants.java
+++ b/vipra-util/src/main/java/de/vipra/util/Constants.java
@@ -30,6 +30,7 @@ public class Constants {
 	 */
 
 	public static final String CONFIG_FILE = "config.json";
+	public static final String BUILDNUMBER_FILE = "buildNumber.properties";
 
 	/*
 	 * DATABASE
diff --git a/vipra-util/src/main/resources/buildNumber.properties b/vipra-util/src/main/resources/buildNumber.properties
index e340aab1876a2301cbd747d057798e4db2c1a143..36d4472c46e90eb7344150ec537398b5d9d355b0 100644
--- a/vipra-util/src/main/resources/buildNumber.properties
+++ b/vipra-util/src/main/resources/buildNumber.properties
@@ -1,3 +1,5 @@
+git-tag=${git.tag}
+git-longtag=${git.longtag}
 git-sha-1=${buildNumber}
 version=${project.version}
 builddate=${buildDate}
\ No newline at end of file