diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml
index cdf4502..e3997ac 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml
@@ -57,6 +57,8 @@
   <packaging>eclipse-update-site</packaging>
 
   <name>Eclipse JGit Plugin Update Site (Incubation)</name>
+  <!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
+  <version>0.6.0</version>
 
   <dependencies>
     <dependency>
@@ -89,7 +91,5 @@
       </plugin>
     </plugins>
   </build>
-  <!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
-  <version>0.6.0</version>
 
 </project>
diff --git a/tools/version.sh b/tools/version.sh
old mode 100644
new mode 100755
index c3cf7ba..50f066b
--- a/tools/version.sh
+++ b/tools/version.sh
@@ -77,15 +77,70 @@
 case "$V" in
 *-SNAPSHOT)
 	POM_V=$V
+	OSGI_V="${V%%-SNAPSHOT}.qualifier"
 	;;
 *-[1-9]*-g[0-9a-f]*)
 	POM_V=$(echo "$V" | perl -pe 's/-(\d+-g.*)$/.$1/')
+	OSGI_V=$(perl -e '
+		$ARGV[0] =~ /^(\d+)(?:\.(\d+)(?:\.(\d+))?)?-(\d+)-g(.*)$/;
+		my ($a, $b, $c, $p, $r) = ($1, $2, $3, $4, $5);
+		$b = '0' unless defined $b;
+		$c = '0' unless defined $c;
+
+		printf "%s.%s.%s.%6.6i_g%s\n", $a, $b, $c, $p, $r;
+		' "$V")
 	;;
 *)
 	POM_V=$V
+	OSGI_V=$V
 	;;
 esac
 
+API_V=$(perl -e '
+	$ARGV[0] =~ /^(\d+(?:\.\d+(?:\.\d+)?)?)/;
+	print $1
+	' "$V")
+
+API_N=$(perl -e '
+	$ARGV[0] =~ /^(\d+)(?:\.(\d+)(?:\.(\d+))?)?/;
+	my ($a, $b) = ($1, $2);
+	$b = 0 unless defined $b;
+	$b++;
+	print "$a.$b.0";
+	' "$API_V")
+
+perl -pi -e '
+	s/^(Bundle-Version:\s*).*$/${1}'"$OSGI_V"'/;
+	s/(org.eclipse.jgit.*;version=")[^"[(]*(")/${1}'"$API_V"'${2}/;
+	s/(org.eclipse.jgit.*;version="\[)[^"]*(\)")/${1}'"$API_V,$API_N"'${2}/;
+	' $(git ls-files | grep META-INF/MANIFEST.MF)
+
+perl -pi -e '
+	if ($ARGV ne $old_argv) {
+		$seen_version = 0;
+		$old_argv = $ARGV;
+	}
+	if (!$seen_version) {
+		$seen_version = 1 if (!/<\?xml/ &&
+		s/(version=")[^"]*(")/${1}'"$OSGI_V"'${2}/);
+	}
+	' org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
+
+perl -pi -e '
+	s{<(version)>.*</\1>}{<${1}>'"$POM_V"'</${1}>};
+	' org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
+
+perl -pi -e '
+	if ($ARGV ne $old_argv) {
+		$seen_version = 0;
+		$old_argv = $ARGV;
+	}
+	if ($seen_version < 3) {
+		$seen_version++ if
+		s{<(version)>.*</\1>}{<${1}>'"$POM_V"'</${1}>};
+	}
+	' org.eclipse.jgit.packaging/org.eclipse.jgit.updatesite/pom.xml
+
 perl -pi -e '
 	if ($ARGV ne $old_argv) {
 		$seen_version = 0;
