Merge branch 'stable-6.2'

* stable-6.2:
  UploadPack: don't prematurely terminate timer in case of error
  Do not create reflog for remote tracking branches during clone
  UploadPack: do not check reachability of visible SHA1s
  Add missing package import javax.management to org.eclipse.jgit

Change-Id: Ia2280b848cea7bdfa5bc48356484e040d159845d
diff --git a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
index e5569e1..1a19d60 100644
--- a/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ant.test/META-INF/MANIFEST.MF
@@ -5,13 +5,13 @@
 Automatic-Module-Name: org.eclipse.jgit.ant.test
 Bundle-SymbolicName: org.eclipse.jgit.ant.test
 Bundle-Vendor: %Bundle-Vendor
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: org.apache.tools.ant,
- org.eclipse.jgit.ant.tasks;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.ant.tasks;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest.core;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)"
diff --git a/org.eclipse.jgit.ant.test/pom.xml b/org.eclipse.jgit.ant.test/pom.xml
index 77060bc..49c2236 100644
--- a/org.eclipse.jgit.ant.test/pom.xml
+++ b/org.eclipse.jgit.ant.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ant.test</artifactId>
diff --git a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
index 155bda4..0e93904 100644
--- a/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ant/META-INF/MANIFEST.MF
@@ -3,13 +3,13 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.ant
 Bundle-SymbolicName: org.eclipse.jgit.ant
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: org.apache.tools.ant,
-  org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)"
+  org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)"
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
-Export-Package: org.eclipse.jgit.ant;version="6.2.1",
- org.eclipse.jgit.ant.tasks;version="6.2.1";
+Export-Package: org.eclipse.jgit.ant;version="6.3.0",
+ org.eclipse.jgit.ant.tasks;version="6.3.0";
   uses:="org.apache.tools.ant,
    org.apache.tools.ant.types"
diff --git a/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF
index 4e3785e..58c00f0 100644
--- a/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.ant/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.ant - Sources
 Bundle-SymbolicName: org.eclipse.jgit.ant.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.ant;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.ant;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.ant/pom.xml b/org.eclipse.jgit.ant/pom.xml
index c16f983..7312bad 100644
--- a/org.eclipse.jgit.ant/pom.xml
+++ b/org.eclipse.jgit.ant/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ant</artifactId>
diff --git a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
index cd4b762..d07f148 100644
--- a/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.archive/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.archive
 Bundle-SymbolicName: org.eclipse.jgit.archive
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -13,17 +13,17 @@
  org.apache.commons.compress.compressors.bzip2;version="[1.4,2.0)",
  org.apache.commons.compress.compressors.gzip;version="[1.4,2.0)",
  org.apache.commons.compress.compressors.xz;version="[1.4,2.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.osgi.framework;version="[1.3.0,2.0.0)"
 Bundle-ActivationPolicy: lazy
 Bundle-Activator: org.eclipse.jgit.archive.FormatActivator
-Export-Package: org.eclipse.jgit.archive;version="6.2.1";
+Export-Package: org.eclipse.jgit.archive;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.api,
    org.apache.commons.compress.archivers,
    org.osgi.framework",
- org.eclipse.jgit.archive.internal;version="6.2.1";x-internal:=true
+ org.eclipse.jgit.archive.internal;version="6.3.0";x-internal:=true
diff --git a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
index 000fce5..45c379b 100644
--- a/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.archive/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.archive - Sources
 Bundle-SymbolicName: org.eclipse.jgit.archive.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.archive;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.archive;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.archive/pom.xml b/org.eclipse.jgit.archive/pom.xml
index 3e3b6d2..bf586e3 100644
--- a/org.eclipse.jgit.archive/pom.xml
+++ b/org.eclipse.jgit.archive/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.archive</artifactId>
diff --git a/org.eclipse.jgit.benchmarks/pom.xml b/org.eclipse.jgit.benchmarks/pom.xml
index 3349a16..a27ca7b 100644
--- a/org.eclipse.jgit.benchmarks/pom.xml
+++ b/org.eclipse.jgit.benchmarks/pom.xml
@@ -14,7 +14,7 @@
   <modelVersion>4.0.0</modelVersion>
 
   <groupId>org.eclipse.jgit</groupId>
-  <version>6.2.1-SNAPSHOT</version>
+  <version>6.3.0-SNAPSHOT</version>
   <artifactId>org.eclipse.jgit.benchmarks</artifactId>
   <packaging>jar</packaging>
 
diff --git a/org.eclipse.jgit.coverage/pom.xml b/org.eclipse.jgit.coverage/pom.xml
index 70370a4..744e7af 100644
--- a/org.eclipse.jgit.coverage/pom.xml
+++ b/org.eclipse.jgit.coverage/pom.xml
@@ -14,7 +14,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
   <modelVersion>4.0.0</modelVersion>
 
@@ -27,88 +27,88 @@
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.ant</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.archive</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.http.apache</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.http.server</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.lfs</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.lfs.server</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.pgm</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.ui</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.ssh.apache</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
 
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.ant.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.http.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.pgm.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.lfs.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.lfs.server.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
     <dependency>
       <groupId>org.eclipse.jgit</groupId>
       <artifactId>org.eclipse.jgit.ssh.apache.test</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
   </dependencies>
 
diff --git a/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF
index 383de17..3304b36 100644
--- a/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.gpg.bc.test/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.gpg.bc.test
 Bundle-SymbolicName: org.eclipse.jgit.gpg.bc.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -12,9 +12,9 @@
  org.bouncycastle.openpgp.operator;version="[1.65.0,2.0.0)",
  org.bouncycastle.openpgp.operator.jcajce;version="[1.65.0,2.0.0)",
  org.bouncycastle.util.encoders;version="[1.65.0,2.0.0)",
- org.eclipse.jgit.gpg.bc.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.gpg.bc.internal.keys;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.sha1;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.gpg.bc.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.gpg.bc.internal.keys;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.sha1;version="[6.3.0,6.4.0)",
  org.hamcrest;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.runner;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.gpg.bc.test/pom.xml b/org.eclipse.jgit.gpg.bc.test/pom.xml
index 653c832..c8c05b3 100644
--- a/org.eclipse.jgit.gpg.bc.test/pom.xml
+++ b/org.eclipse.jgit.gpg.bc.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.gpg.bc.test</artifactId>
diff --git a/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF b/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF
index 454195d..c0711f3 100644
--- a/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.gpg.bc/META-INF/MANIFEST.MF
@@ -3,10 +3,10 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.gpg.bc
 Bundle-SymbolicName: org.eclipse.jgit.gpg.bc;singleton:=true
-Fragment-Host: org.eclipse.jgit;bundle-version="[6.2.1,6.3.0)"
+Fragment-Host: org.eclipse.jgit;bundle-version="[6.3.0,6.4.0)"
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: org.bouncycastle.asn1;version="[1.69.0,2.0.0)",
  org.bouncycastle.asn1.cryptlib;version="[1.69.0,2.0.0)",
@@ -29,9 +29,9 @@
  org.bouncycastle.util;version="[1.69.0,2.0.0)",
  org.bouncycastle.util.encoders;version="[1.69.0,2.0.0)",
  org.bouncycastle.util.io;version="[1.69.0,2.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
-Export-Package: org.eclipse.jgit.gpg.bc;version="6.2.1",
- org.eclipse.jgit.gpg.bc.internal;version="6.2.1";x-friends:="org.eclipse.jgit.gpg.bc.test",
- org.eclipse.jgit.gpg.bc.internal.keys;version="6.2.1";x-friends:="org.eclipse.jgit.gpg.bc.test"
+Export-Package: org.eclipse.jgit.gpg.bc;version="6.3.0",
+ org.eclipse.jgit.gpg.bc.internal;version="6.3.0";x-friends:="org.eclipse.jgit.gpg.bc.test",
+ org.eclipse.jgit.gpg.bc.internal.keys;version="6.3.0";x-friends:="org.eclipse.jgit.gpg.bc.test"
diff --git a/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF
index 2d71a5e..1622e26 100644
--- a/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.gpg.bc/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.gpg.bc - Sources
 Bundle-SymbolicName: org.eclipse.jgit.gpg.bc.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.gpg.bc;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.gpg.bc;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.gpg.bc/pom.xml b/org.eclipse.jgit.gpg.bc/pom.xml
index 8df5909..f4c831d 100644
--- a/org.eclipse.jgit.gpg.bc/pom.xml
+++ b/org.eclipse.jgit.gpg.bc/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.gpg.bc</artifactId>
diff --git a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
index bbde3f1..bcf5dbc 100644
--- a/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.apache/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.http.apache
 Bundle-SymbolicName: org.eclipse.jgit.http.apache
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
@@ -25,11 +25,11 @@
  org.apache.http.impl.conn;version="[4.4.0,5.0.0)",
  org.apache.http.params;version="[4.3.0,5.0.0)",
  org.apache.http.ssl;version="[4.3.0,5.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)"
-Export-Package: org.eclipse.jgit.transport.http.apache;version="6.2.1";
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)"
+Export-Package: org.eclipse.jgit.transport.http.apache;version="6.3.0";
   uses:="org.apache.http.client,
    org.eclipse.jgit.transport.http,
    org.apache.http.entity,
diff --git a/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF
index fe928fb..bbbef38 100644
--- a/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.http.apache/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.http.apache - Sources
 Bundle-SymbolicName: org.eclipse.jgit.http.apache.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.http.apache;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.http.apache;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.http.apache/pom.xml b/org.eclipse.jgit.http.apache/pom.xml
index 6182159..c116a4d 100644
--- a/org.eclipse.jgit.http.apache/pom.xml
+++ b/org.eclipse.jgit.http.apache/pom.xml
@@ -15,7 +15,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.http.apache</artifactId>
diff --git a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
index 2bdf386..fe9d4ba 100644
--- a/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.server/META-INF/MANIFEST.MF
@@ -3,13 +3,13 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.http.server
 Bundle-SymbolicName: org.eclipse.jgit.http.server
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
-Export-Package: org.eclipse.jgit.http.server;version="6.2.1",
- org.eclipse.jgit.http.server.glue;version="6.2.1";
+Export-Package: org.eclipse.jgit.http.server;version="6.3.0",
+ org.eclipse.jgit.http.server.glue;version="6.3.0";
   uses:="javax.servlet,javax.servlet.http",
- org.eclipse.jgit.http.server.resolver;version="6.2.1";
+ org.eclipse.jgit.http.server.resolver;version="6.3.0";
   uses:="org.eclipse.jgit.transport.resolver,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.transport,
@@ -18,14 +18,14 @@
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: javax.servlet;version="[2.5.0,5.0.0)",
  javax.servlet.http;version="[2.5.0,5.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.parser;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.resolver;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)"
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.parser;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.resolver;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)"
diff --git a/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF
index bdcba51..2db85df 100644
--- a/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.http.server/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.http.server - Sources
 Bundle-SymbolicName: org.eclipse.jgit.http.server.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.http.server;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.http.server;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.http.server/pom.xml b/org.eclipse.jgit.http.server/pom.xml
index 156d9f2..89ee339 100644
--- a/org.eclipse.jgit.http.server/pom.xml
+++ b/org.eclipse.jgit.http.server/pom.xml
@@ -19,7 +19,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.http.server</artifactId>
diff --git a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
index 04fd363..b752d60 100644
--- a/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.http.test/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.http.test
 Bundle-SymbolicName: org.eclipse.jgit.http.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -26,26 +26,26 @@
  org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.thread;version="[10.0.0,11.0.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.http.server;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.http.server.glue;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.http.server.resolver;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.reftable;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http.apache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.resolver;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.http.server;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.http.server.glue;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.http.server.resolver;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.reftable;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http.apache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.resolver;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest;version="[1.1.0,3.0.0)",
  org.hamcrest.core;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.http.test/pom.xml b/org.eclipse.jgit.http.test/pom.xml
index 3d6aa3d..cc8c351 100644
--- a/org.eclipse.jgit.http.test/pom.xml
+++ b/org.eclipse.jgit.http.test/pom.xml
@@ -18,7 +18,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.http.test</artifactId>
diff --git a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
index 3a821d5..584da62 100644
--- a/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit.http/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.junit.http
 Bundle-SymbolicName: org.eclipse.jgit.junit.http
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
 Bundle-ActivationPolicy: lazy
@@ -21,17 +21,17 @@
  org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.ssl;version="[10.0.0,11.0.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.http.server;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.resolver;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.http.server;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.resolver;version="[6.3.0,6.4.0)",
  org.junit;version="[4.13,5.0.0)",
  org.slf4j.helpers;version="[1.7.0,2.0.0)"
-Export-Package: org.eclipse.jgit.junit.http;version="6.2.1";
+Export-Package: org.eclipse.jgit.junit.http;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.junit,
    javax.servlet.http,
diff --git a/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF
index 036ca8a..d1d9226 100644
--- a/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.junit.http/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.junit.http - Sources
 Bundle-SymbolicName: org.eclipse.jgit.junit.http.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.junit.http;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.junit.http;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.junit.http/pom.xml b/org.eclipse.jgit.junit.http/pom.xml
index 7a3db92..b7a7612 100644
--- a/org.eclipse.jgit.junit.http/pom.xml
+++ b/org.eclipse.jgit.junit.http/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.junit.http</artifactId>
diff --git a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
index 278ed7e..d9f75de 100644
--- a/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit.ssh/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.junit.ssh
 Bundle-SymbolicName: org.eclipse.jgit.junit.ssh
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
 Bundle-ActivationPolicy: lazy
@@ -33,16 +33,16 @@
  org.apache.sshd.server.subsystem;version="[2.8.0,2.9.0)",
  org.apache.sshd.sftp;version="[2.8.0,2.9.0)",
  org.apache.sshd.sftp.server;version="[2.8.0,2.9.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.experimental.theories;version="[4.13,5.0.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
-Export-Package: org.eclipse.jgit.junit.ssh;version="6.2.1"
+Export-Package: org.eclipse.jgit.junit.ssh;version="6.3.0"
diff --git a/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF
index f77aafd..9d1b9d0 100644
--- a/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.junit.ssh/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.junit.ssh - Sources
 Bundle-SymbolicName: org.eclipse.jgit.junit.ssh.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.junit.ssh;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.junit.ssh;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.junit.ssh/pom.xml b/org.eclipse.jgit.junit.ssh/pom.xml
index cf1aaf8..2e20d62 100644
--- a/org.eclipse.jgit.junit.ssh/pom.xml
+++ b/org.eclipse.jgit.junit.ssh/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.junit.ssh</artifactId>
diff --git a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
index a3a2f34..7ae6529 100644
--- a/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.junit/META-INF/MANIFEST.MF
@@ -3,35 +3,35 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.junit
 Bundle-SymbolicName: org.eclipse.jgit.junit
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
 Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Import-Package: org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.dircache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.merge;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="6.2.1",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.time;version="[6.2.1,6.3.0)",
+Import-Package: org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.dircache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.merge;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="6.3.0",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.time;version="[6.3.0,6.4.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.rules;version="[4.13,5.0.0)",
  org.junit.runner;version="[4.13,5.0.0)",
  org.junit.runners;version="[4.13,5.0.0)",
  org.junit.runners.model;version="[4.13,5.0.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
-Export-Package: org.eclipse.jgit.junit;version="6.2.1";
+Export-Package: org.eclipse.jgit.junit;version="6.3.0";
   uses:="org.eclipse.jgit.dircache,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
@@ -44,4 +44,4 @@
    org.junit.runners.model,
    org.junit.runner,
    org.eclipse.jgit.util.time",
- org.eclipse.jgit.junit.time;version="6.2.1";uses:="org.eclipse.jgit.util.time"
+ org.eclipse.jgit.junit.time;version="6.3.0";uses:="org.eclipse.jgit.util.time"
diff --git a/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF
index 6997a51..61c2da5 100644
--- a/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.junit/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.junit - Sources
 Bundle-SymbolicName: org.eclipse.jgit.junit.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.junit;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.junit;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.junit/pom.xml b/org.eclipse.jgit.junit/pom.xml
index a7e0831..1e54849 100644
--- a/org.eclipse.jgit.junit/pom.xml
+++ b/org.eclipse.jgit.junit/pom.xml
@@ -19,7 +19,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.junit</artifactId>
diff --git a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
index 6a9f172..757e036 100644
--- a/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.server.test/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.lfs.server.test
 Bundle-SymbolicName: org.eclipse.jgit.lfs.server.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -26,24 +26,24 @@
  org.eclipse.jetty.util.log;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.security;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.thread;version="[10.0.0,11.0.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.server;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.server.fs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.test;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.server;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.server.fs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.test;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest.core;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.rules;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.lfs.server.test/pom.xml b/org.eclipse.jgit.lfs.server.test/pom.xml
index e306c3a..77b6ea5 100644
--- a/org.eclipse.jgit.lfs.server.test/pom.xml
+++ b/org.eclipse.jgit.lfs.server.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.lfs.server.test</artifactId>
diff --git a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
index c63d2e4..f2a8ff0 100644
--- a/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.server/META-INF/MANIFEST.MF
@@ -3,19 +3,19 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.lfs.server
 Bundle-SymbolicName: org.eclipse.jgit.lfs.server
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
-Export-Package: org.eclipse.jgit.lfs.server;version="6.2.1";
+Export-Package: org.eclipse.jgit.lfs.server;version="6.3.0";
   uses:="javax.servlet.http,
    org.eclipse.jgit.lfs.lib",
- org.eclipse.jgit.lfs.server.fs;version="6.2.1";
+ org.eclipse.jgit.lfs.server.fs;version="6.3.0";
   uses:="javax.servlet,
    javax.servlet.http,
    org.eclipse.jgit.lfs.server,
    org.eclipse.jgit.lfs.lib",
- org.eclipse.jgit.lfs.server.internal;version="6.2.1";x-internal:=true,
- org.eclipse.jgit.lfs.server.s3;version="6.2.1";
+ org.eclipse.jgit.lfs.server.internal;version="6.3.0";x-internal:=true,
+ org.eclipse.jgit.lfs.server.s3;version="6.3.0";
   uses:="org.eclipse.jgit.lfs.server,
    org.eclipse.jgit.lfs.lib"
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -24,15 +24,15 @@
  javax.servlet.annotation;version="[3.1.0,5.0.0)",
  javax.servlet.http;version="[3.1.0,5.0.0)",
  org.apache.http;version="[4.3.0,5.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http.apache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http.apache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
diff --git a/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF
index 3b783ca..529a225 100644
--- a/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.server/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.lfs.server - Sources
 Bundle-SymbolicName: org.eclipse.jgit.lfs.server.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.lfs.server;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.lfs.server;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.lfs.server/pom.xml b/org.eclipse.jgit.lfs.server/pom.xml
index 0e5deb7..4e05573 100644
--- a/org.eclipse.jgit.lfs.server/pom.xml
+++ b/org.eclipse.jgit.lfs.server/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.lfs.server</artifactId>
diff --git a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
index 80b8514..3998bcf 100644
--- a/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs.test/META-INF/MANIFEST.MF
@@ -3,27 +3,27 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.lfs.test
 Bundle-SymbolicName: org.eclipse.jgit.lfs.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Import-Package: org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.attributes;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+Import-Package: org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.attributes;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest.core;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.runner;version="[4.13,5.0.0)",
  org.junit.runners;version="[4.13,5.0.0)"
-Export-Package: org.eclipse.jgit.lfs.test;version="6.2.1";x-friends:="org.eclipse.jgit.lfs.server.test"
+Export-Package: org.eclipse.jgit.lfs.test;version="6.3.0";x-friends:="org.eclipse.jgit.lfs.server.test"
diff --git a/org.eclipse.jgit.lfs.test/pom.xml b/org.eclipse.jgit.lfs.test/pom.xml
index 357ada3..65cee93 100644
--- a/org.eclipse.jgit.lfs.test/pom.xml
+++ b/org.eclipse.jgit.lfs.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.lfs.test</artifactId>
diff --git a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
index bc4f4f4..bc94b5e 100644
--- a/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.lfs/META-INF/MANIFEST.MF
@@ -3,32 +3,32 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.lfs
 Bundle-SymbolicName: org.eclipse.jgit.lfs
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
-Export-Package: org.eclipse.jgit.lfs;version="6.2.1",
- org.eclipse.jgit.lfs.errors;version="6.2.1",
- org.eclipse.jgit.lfs.internal;version="6.2.1";x-friends:="org.eclipse.jgit.lfs.test,org.eclipse.jgit.lfs.server.fs,org.eclipse.jgit.lfs.server",
- org.eclipse.jgit.lfs.lib;version="6.2.1"
+Export-Package: org.eclipse.jgit.lfs;version="6.3.0",
+ org.eclipse.jgit.lfs.errors;version="6.3.0",
+ org.eclipse.jgit.lfs.internal;version="6.3.0";x-friends:="org.eclipse.jgit.lfs.test,org.eclipse.jgit.lfs.server.fs,org.eclipse.jgit.lfs.server",
+ org.eclipse.jgit.lfs.lib;version="6.3.0"
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: com.google.gson;version="[2.8.2,3.0.0)",
  com.google.gson.stream;version="[2.8.2,3.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)";resolution:=optional,
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.attributes;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.diff;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.dircache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.hooks;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)"
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)";resolution:=optional,
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.attributes;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.diff;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.dircache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.hooks;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)"
diff --git a/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF
index 5faa06f..d3b28b2 100644
--- a/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.lfs/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.lfs - Sources
 Bundle-SymbolicName: org.eclipse.jgit.lfs.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.lfs;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.lfs;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.lfs/pom.xml b/org.eclipse.jgit.lfs/pom.xml
index b458779..e838d5c 100644
--- a/org.eclipse.jgit.lfs/pom.xml
+++ b/org.eclipse.jgit.lfs/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.lfs</artifactId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
index c886145..8861e68 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
index 59c5eb9..8f9c0ae 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
index b38c59a..744dd0a 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.gpg.bc"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import plugin="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import plugin="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/pom.xml
index eaa0916..ae93125 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.gpg.bc.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
index 01b978a..a6d76e6 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.http.apache"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import plugin="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import plugin="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
index f6f137c..017835b 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.http.apache.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
index 4bf27d4..b885f86 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.junit"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -24,7 +24,7 @@
 
    <requires>
       <import plugin="com.jcraft.jsch"/>
-      <import plugin="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import plugin="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
index d81b081..ee33bf1 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.junit.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
index 4e8385b..4e1169e 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.lfs"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import feature="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import feature="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
index 7b2b512..d82c371 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.lfs.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
index 38766d2..0c003e9 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.pgm"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -35,9 +35,9 @@
          version="0.0.0"/>
 
    <requires>
-      <import feature="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
-      <import feature="org.eclipse.jgit.lfs" version="6.2.1" match="equivalent"/>
-      <import feature="org.eclipse.jgit.ssh.apache" version="6.2.1" match="equivalent"/>
+      <import feature="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
+      <import feature="org.eclipse.jgit.lfs" version="6.3.0" match="equivalent"/>
+      <import feature="org.eclipse.jgit.ssh.apache" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
index f57a3c0..d1428dc 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.pgm.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
index 8e8d686..39a1f7e 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.repository/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.repository</artifactId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
index 03fc43a..fd80e1d 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.source"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import feature="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import feature="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
index 591d67a..67317e5 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.source.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
@@ -30,7 +30,7 @@
     <dependency>
       <groupId>org.eclipse.jgit.feature</groupId>
       <artifactId>org.eclipse.jgit</artifactId>
-      <version>6.2.1-SNAPSHOT</version>
+      <version>6.3.0-SNAPSHOT</version>
     </dependency>
   </dependencies>
 
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
index 40d5327..5e5818e 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.ssh.apache"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import feature="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import feature="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/pom.xml
index 8497f08..81c9001 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.apache.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
index 0018abe..e4d8522 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/feature.xml
@@ -2,7 +2,7 @@
 <feature
       id="org.eclipse.jgit.ssh.jsch"
       label="%featureName"
-      version="6.2.1.qualifier"
+      version="6.3.0.qualifier"
       provider-name="%providerName">
 
    <description url="http://www.eclipse.org/jgit/">
@@ -23,7 +23,7 @@
    </url>
 
    <requires>
-      <import plugin="org.eclipse.jgit" version="6.2.1" match="equivalent"/>
+      <import plugin="org.eclipse.jgit" version="6.3.0" match="equivalent"/>
    </requires>
 
    <plugin
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/pom.xml
index 6ee46ba..4860305 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.ssh.jsch.feature/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <groupId>org.eclipse.jgit.feature</groupId>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
index 91c5228..1ec326c 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/META-INF/MANIFEST.MF
@@ -2,4 +2,4 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: JGit Target Platform Bundle
 Bundle-SymbolicName: org.eclipse.jgit.target
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target
index b622b4e..bd45e85 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.target
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <?pde?>
 <!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
-<target name="jgit-4.24" sequenceNumber="1654550621">
+<target name="jgit-4.24" sequenceNumber="1655375254">
   <locations>
     <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
       <unit id="jakarta.servlet-api" version="4.0.0"/>
@@ -91,7 +91,7 @@
     </location>
     <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
       <unit id="org.eclipse.osgi" version="0.0.0"/>
-      <repository location="https://download.eclipse.org/staging/2022-06/"/>
+      <repository location="https://download.eclipse.org/releases/2022-06/"/>
     </location>
   </locations>
 </target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.tpd
index e81eec9..f258adc 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.tpd
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.24.tpd
@@ -3,6 +3,6 @@
 include "projects/jetty-10.0.x.tpd"
 include "orbit/R20220531185310-2022-06.tpd"
 
-location "https://download.eclipse.org/staging/2022-06/" {
+location "https://download.eclipse.org/releases/2022-06/" {
 	org.eclipse.osgi lazy
 }
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target
new file mode 100644
index 0000000..0ec9d10
--- /dev/null
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.target
@@ -0,0 +1,97 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<?pde?>
+<!-- generated with https://github.com/eclipse-cbi/targetplatform-dsl -->
+<target name="jgit-4.25" sequenceNumber="1655454378">
+  <locations>
+    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
+      <unit id="jakarta.servlet-api" version="4.0.0"/>
+      <unit id="jakarta.servlet-api.source" version="4.0.0"/>
+      <unit id="org.eclipse.jetty.http" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.http.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.io" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.io.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.security" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.security.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.server" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.server.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.servlet" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.servlet.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.util" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.util.source" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.util.ajax" version="10.0.6"/>
+      <unit id="org.eclipse.jetty.util.ajax.source" version="10.0.6"/>
+      <repository id="jetty-10.0.x" location="https://download.eclipse.org/eclipse/jetty/10.0.6/"/>
+    </location>
+    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
+      <unit id="com.google.gson" version="2.8.9.v20220111-1409"/>
+      <unit id="com.google.gson.source" version="2.8.9.v20220111-1409"/>
+      <unit id="com.jcraft.jsch" version="0.1.55.v20190404-1902"/>
+      <unit id="com.jcraft.jsch.source" version="0.1.55.v20190404-1902"/>
+      <unit id="com.jcraft.jzlib" version="1.1.3.v20220502-1820"/>
+      <unit id="com.jcraft.jzlib.source" version="1.1.3.v20220502-1820"/>
+      <unit id="com.sun.jna" version="5.8.0.v20210503-0343"/>
+      <unit id="com.sun.jna.source" version="5.8.0.v20210503-0343"/>
+      <unit id="com.sun.jna.platform" version="5.8.0.v20210406-1004"/>
+      <unit id="com.sun.jna.platform.source" version="5.8.0.v20210406-1004"/>
+      <unit id="javaewah" version="1.1.13.v20211029-0839"/>
+      <unit id="javaewah.source" version="1.1.13.v20211029-0839"/>
+      <unit id="net.bytebuddy.byte-buddy" version="1.9.0.v20181107-1410"/>
+      <unit id="net.bytebuddy.byte-buddy-agent" version="1.9.0.v20181106-1534"/>
+      <unit id="net.bytebuddy.byte-buddy-agent.source" version="1.9.0.v20181106-1534"/>
+      <unit id="net.bytebuddy.byte-buddy.source" version="1.9.0.v20181107-1410"/>
+      <unit id="net.i2p.crypto.eddsa" version="0.3.0.v20220506-1020"/>
+      <unit id="net.i2p.crypto.eddsa.source" version="0.3.0.v20220506-1020"/>
+      <unit id="org.apache.ant" version="1.10.12.v20211102-1452"/>
+      <unit id="org.apache.ant.source" version="1.10.12.v20211102-1452"/>
+      <unit id="org.apache.commons.codec" version="1.14.0.v20200818-1422"/>
+      <unit id="org.apache.commons.codec.source" version="1.14.0.v20200818-1422"/>
+      <unit id="org.apache.commons.compress" version="1.21.0.v20211103-2100"/>
+      <unit id="org.apache.commons.compress.source" version="1.21.0.v20211103-2100"/>
+      <unit id="org.apache.commons.logging" version="1.2.0.v20180409-1502"/>
+      <unit id="org.apache.commons.logging.source" version="1.2.0.v20180409-1502"/>
+      <unit id="org.apache.httpcomponents.httpclient" version="4.5.13.v20210128-2225"/>
+      <unit id="org.apache.httpcomponents.httpclient.source" version="4.5.13.v20210128-2225"/>
+      <unit id="org.apache.httpcomponents.httpcore" version="4.4.15.v20220209-2345"/>
+      <unit id="org.apache.httpcomponents.httpcore.source" version="4.4.15.v20220209-2345"/>
+      <unit id="org.apache.sshd.osgi" version="2.8.0.v20211227-1750"/>
+      <unit id="org.apache.sshd.osgi.source" version="2.8.0.v20211227-1750"/>
+      <unit id="org.apache.sshd.sftp" version="2.8.0.v20211227-1750"/>
+      <unit id="org.apache.sshd.sftp.source" version="2.8.0.v20211227-1750"/>
+      <unit id="org.assertj" version="3.20.2.v20210706-1104"/>
+      <unit id="org.assertj.source" version="3.20.2.v20210706-1104"/>
+      <unit id="org.bouncycastle.bcpg" version="1.70.0.v20220507-1208"/>
+      <unit id="org.bouncycastle.bcpg.source" version="1.70.0.v20220507-1208"/>
+      <unit id="org.bouncycastle.bcpkix" version="1.70.0.v20220105-1522"/>
+      <unit id="org.bouncycastle.bcpkix.source" version="1.70.0.v20220105-1522"/>
+      <unit id="org.bouncycastle.bcprov" version="1.70.0.v20220507-1208"/>
+      <unit id="org.bouncycastle.bcprov.source" version="1.70.0.v20220507-1208"/>
+      <unit id="org.bouncycastle.bcutil" version="1.70.0.v20220105-1522"/>
+      <unit id="org.bouncycastle.bcutil.source" version="1.70.0.v20220105-1522"/>
+      <unit id="org.hamcrest" version="2.2.0.v20210711-0821"/>
+      <unit id="org.hamcrest.source" version="2.2.0.v20210711-0821"/>
+      <unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
+      <unit id="org.hamcrest.core.source" version="1.3.0.v20180420-1519"/>
+      <unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
+      <unit id="org.hamcrest.library.source" version="1.3.0.v20180524-2246"/>
+      <unit id="org.junit" version="4.13.2.v20211018-1956"/>
+      <unit id="org.junit.source" version="4.13.2.v20211018-1956"/>
+      <unit id="org.kohsuke.args4j" version="2.33.0.v20160323-2218"/>
+      <unit id="org.kohsuke.args4j.source" version="2.33.0.v20160323-2218"/>
+      <unit id="org.mockito" version="2.23.0.v20200310-1642"/>
+      <unit id="org.mockito.source" version="2.23.0.v20200310-1642"/>
+      <unit id="org.objenesis" version="2.6.0.v20180420-1519"/>
+      <unit id="org.objenesis.source" version="2.6.0.v20180420-1519"/>
+      <unit id="org.slf4j.api" version="1.7.30.v20200204-2150"/>
+      <unit id="org.slf4j.api.source" version="1.7.30.v20200204-2150"/>
+      <unit id="org.slf4j.binding.simple" version="1.7.30.v20200204-2150"/>
+      <unit id="org.slf4j.binding.simple.source" version="1.7.30.v20200204-2150"/>
+      <unit id="org.tukaani.xz" version="1.9.0.v20210624-1259"/>
+      <unit id="org.tukaani.xz.source" version="1.9.0.v20210624-1259"/>
+      <repository location="https://download.eclipse.org/tools/orbit/downloads/drops/R20220531185310/repository"/>
+    </location>
+    <location includeMode="slicer" includeAllPlatforms="false" includeSource="true" includeConfigurePhase="true" type="InstallableUnit">
+      <unit id="org.eclipse.osgi" version="0.0.0"/>
+      <repository location="https://download.eclipse.org/staging/2022-09/"/>
+    </location>
+  </locations>
+</target>
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.tpd b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.tpd
new file mode 100644
index 0000000..e6a5775
--- /dev/null
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/jgit-4.25.tpd
@@ -0,0 +1,8 @@
+target "jgit-4.25" with source configurePhase
+
+include "projects/jetty-10.0.x.tpd"
+include "orbit/R20220531185310-2022-06.tpd"
+
+location "https://download.eclipse.org/staging/2022-09/" {
+	org.eclipse.osgi lazy
+}
diff --git a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
index 8152b85..6cbcca5 100644
--- a/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
+++ b/org.eclipse.jgit.packaging/org.eclipse.jgit.target/pom.xml
@@ -16,7 +16,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>jgit.tycho.parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.target</artifactId>
diff --git a/org.eclipse.jgit.packaging/pom.xml b/org.eclipse.jgit.packaging/pom.xml
index 812916e..56946fa 100644
--- a/org.eclipse.jgit.packaging/pom.xml
+++ b/org.eclipse.jgit.packaging/pom.xml
@@ -16,7 +16,7 @@
 
   <groupId>org.eclipse.jgit</groupId>
   <artifactId>jgit.tycho.parent</artifactId>
-  <version>6.2.1-SNAPSHOT</version>
+  <version>6.3.0-SNAPSHOT</version>
   <packaging>pom</packaging>
 
   <name>JGit Tycho Parent</name>
@@ -259,6 +259,11 @@
                 <ws>cocoa</ws>
                 <arch>x86_64</arch>
               </environment>
+              <environment>
+                <os>macosx</os>
+                <ws>cocoa</ws>
+                <arch>aarch64</arch>
+              </environment>
             </environments>
           </configuration>
         </plugin>
diff --git a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
index dade9a8..602628e 100644
--- a/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.pgm.test/META-INF/MANIFEST.MF
@@ -3,30 +3,30 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.pgm.test
 Bundle-SymbolicName: org.eclipse.jgit.pgm.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-ActivationPolicy: lazy
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Import-Package: org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.diff;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.dircache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.diffmergetool;version="6.2.1",
- org.eclipse.jgit.internal.storage.file;version="6.2.1",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.merge;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.pgm;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.pgm.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.pgm.opt;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)",
+Import-Package: org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.diff;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.dircache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.diffmergetool;version="6.3.0",
+ org.eclipse.jgit.internal.storage.file;version="6.3.0",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.merge;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.pgm;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.pgm.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.pgm.opt;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)",
  org.hamcrest.core;bundle-version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.rules;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.pgm.test/pom.xml b/org.eclipse.jgit.pgm.test/pom.xml
index 6748220..c252068 100644
--- a/org.eclipse.jgit.pgm.test/pom.xml
+++ b/org.eclipse.jgit.pgm.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.pgm.test</artifactId>
diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/DiffToolTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/DiffToolTest.java
index 2b50d45..f0908ce 100644
--- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/DiffToolTest.java
+++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/DiffToolTest.java
@@ -81,6 +81,8 @@ public void testUserToolWithCommandNotFoundError() throws Exception {
 
 	@Test(expected = Die.class)
 	public void testEmptyToolName() throws Exception {
+		assumeLinuxPlatform();
+
 		String emptyToolName = "";
 
 		StoredConfig config = db.getConfig();
diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
index 1236dd3..54c4f26 100644
--- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
+++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/MergeToolTest.java
@@ -79,6 +79,8 @@ public void testUserToolWithCommandNotFoundError() throws Exception {
 
 	@Test
 	public void testEmptyToolName() throws Exception {
+		assumeLinuxPlatform();
+
 		String emptyToolName = "";
 
 		StoredConfig config = db.getConfig();
diff --git a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/ToolTestCase.java b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/ToolTestCase.java
index a3c41f0..5f6b38c 100644
--- a/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/ToolTestCase.java
+++ b/org.eclipse.jgit.pgm.test/tst/org/eclipse/jgit/pgm/ToolTestCase.java
@@ -32,6 +32,8 @@
 import org.eclipse.jgit.revwalk.RevCommit;
 import org.eclipse.jgit.treewalk.FileTreeIterator;
 import org.eclipse.jgit.treewalk.TreeWalk;
+import org.eclipse.jgit.util.SystemReader;
+import org.junit.Assume;
 import org.junit.Before;
 import org.kohsuke.args4j.Argument;
 import org.kohsuke.args4j.CmdLineException;
@@ -240,4 +242,9 @@ protected static void assertArrayOfMatchingLines(String failMessage,
 					matches);
 		}
 	}
+
+	protected static void assumeLinuxPlatform() {
+		Assume.assumeTrue("This test can run only in Linux tests",
+				SystemReader.getInstance().isLinux());
+	}
 }
diff --git a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
index 5c351e5..925924a 100644
--- a/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.pgm/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.pgm
 Bundle-SymbolicName: org.eclipse.jgit.pgm
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -14,49 +14,49 @@
  org.eclipse.jetty.servlet;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util;version="[10.0.0,11.0.0)",
  org.eclipse.jetty.util.component;version="[10.0.0,11.0.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.archive;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.awtui;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.blame;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.diff;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.dircache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.gitrepo;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.diffmergetool;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.io;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.reftable;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.server;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.server.fs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs.server.s3;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.merge;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.notes;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revplot;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http.apache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.resolver;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.ssh.jsch;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.sshd;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.archive;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.awtui;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.blame;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.diff;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.dircache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.gitrepo;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.diffmergetool;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.io;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.reftable;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.server;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.server.fs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs.server.s3;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.merge;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.notes;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revplot;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http.apache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.resolver;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.ssh.jsch;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.sshd;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)",
  org.kohsuke.args4j;version="[2.33.0,3.0.0)",
  org.kohsuke.args4j.spi;version="[2.33.0,3.0.0)"
-Export-Package: org.eclipse.jgit.console;version="6.2.1";
+Export-Package: org.eclipse.jgit.console;version="6.3.0";
  uses:="org.eclipse.jgit.transport,
   org.eclipse.jgit.util",
- org.eclipse.jgit.pgm;version="6.2.1";
+ org.eclipse.jgit.pgm;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.util.io,
    org.eclipse.jgit.awtui,
@@ -68,14 +68,14 @@
    org.eclipse.jgit.treewalk,
    org.eclipse.jgit.api,
    javax.swing",
- org.eclipse.jgit.pgm.debug;version="6.2.1";
+ org.eclipse.jgit.pgm.debug;version="6.3.0";
   uses:="org.eclipse.jgit.util.io,
    org.eclipse.jgit.pgm,
    org.eclipse.jetty.servlet",
- org.eclipse.jgit.pgm.internal;version="6.2.1";
+ org.eclipse.jgit.pgm.internal;version="6.3.0";
   x-friends:="org.eclipse.jgit.pgm.test,
    org.eclipse.jgit.test",
- org.eclipse.jgit.pgm.opt;version="6.2.1";
+ org.eclipse.jgit.pgm.opt;version="6.3.0";
   uses:="org.kohsuke.args4j,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
diff --git a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
index 616f01b..d0b60de 100644
--- a/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.pgm/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.pgm - Sources
 Bundle-SymbolicName: org.eclipse.jgit.pgm.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.pgm;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.pgm/pom.xml b/org.eclipse.jgit.pgm/pom.xml
index 0c0f336..cb8b418 100644
--- a/org.eclipse.jgit.pgm/pom.xml
+++ b/org.eclipse.jgit.pgm/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.pgm</artifactId>
diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/DiffTool.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/DiffTool.java
index 3e6042a..87c7179 100644
--- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/DiffTool.java
+++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/DiffTool.java
@@ -19,7 +19,7 @@
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStreamReader;
-import java.nio.charset.StandardCharsets;
+import java.nio.charset.Charset;
 import java.text.MessageFormat;
 import java.util.List;
 import java.util.Map;
@@ -63,6 +63,7 @@
 import org.eclipse.jgit.treewalk.filter.PathFilterGroup;
 import org.eclipse.jgit.treewalk.filter.TreeFilter;
 import org.eclipse.jgit.util.FS.ExecutionResult;
+import org.eclipse.jgit.util.SystemReader;
 import org.kohsuke.args4j.Argument;
 import org.kohsuke.args4j.Option;
 
@@ -138,7 +139,8 @@ protected void init(Repository repository, String gitDir) {
 		super.init(repository, gitDir);
 		diffFmt = new DiffFormatter(new BufferedOutputStream(outs));
 		diffTools = new DiffTools(repository);
-		inputReader = new BufferedReader(new InputStreamReader(ins, StandardCharsets.UTF_8));
+		inputReader = new BufferedReader(new InputStreamReader(ins,
+				SystemReader.getInstance().getDefaultCharset()));
 	}
 
 	@Override
@@ -243,11 +245,15 @@ private void compare(List<DiffEntry> files) throws IOException {
 						// TODO: check how to return the exit-code of the tool
 						// to jgit / java runtime ?
 						// int rc =...
+						Charset defaultCharset = SystemReader.getInstance()
+								.getDefaultCharset();
 						outw.println(
-								new String(result.getStdout().toByteArray()));
+								new String(result.getStdout().toByteArray(),
+										defaultCharset));
 						outw.flush();
 						errw.println(
-								new String(result.getStderr().toByteArray()));
+								new String(result.getStderr().toByteArray(),
+										defaultCharset));
 						errw.flush();
 					}
 				} catch (ToolException e) {
diff --git a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/MergeTool.java b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/MergeTool.java
index 2a411b8..a382fab 100644
--- a/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/MergeTool.java
+++ b/org.eclipse.jgit.pgm/src/org/eclipse/jgit/pgm/MergeTool.java
@@ -18,6 +18,7 @@
 import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.InputStreamReader;
+import java.nio.charset.Charset;
 import java.text.MessageFormat;
 import java.util.ArrayList;
 import java.util.Collections;
@@ -55,6 +56,7 @@
 import org.eclipse.jgit.treewalk.WorkingTreeOptions;
 import org.eclipse.jgit.treewalk.filter.PathFilterGroup;
 import org.eclipse.jgit.util.FS.ExecutionResult;
+import org.eclipse.jgit.util.SystemReader;
 import org.kohsuke.args4j.Argument;
 import org.kohsuke.args4j.Option;
 import org.kohsuke.args4j.spi.RestOfArgumentsHandler;
@@ -108,7 +110,9 @@ void noGui(@SuppressWarnings("unused") boolean on) {
 	protected void init(Repository repository, String gitDir) {
 		super.init(repository, gitDir);
 		mergeTools = new MergeTools(repository);
-		inputReader = new BufferedReader(new InputStreamReader(ins));
+		inputReader = new BufferedReader(
+				new InputStreamReader(ins,
+						SystemReader.getInstance().getDefaultCharset()));
 	}
 
 	enum MergeResult {
@@ -285,9 +289,13 @@ private MergeResult mergeModified(String mergedFilePath, boolean showPrompt)
 						gui, this::promptForLaunch, this::informUserNoTool);
 				if (optionalResult.isPresent()) {
 					ExecutionResult result = optionalResult.get();
-					outw.println(new String(result.getStdout().toByteArray()));
+					Charset defaultCharset = SystemReader.getInstance()
+							.getDefaultCharset();
+					outw.println(new String(result.getStdout().toByteArray(),
+							defaultCharset));
 					outw.flush();
-					errw.println(new String(result.getStderr().toByteArray()));
+					errw.println(new String(result.getStderr().toByteArray(),
+							defaultCharset));
 					errw.flush();
 				} else {
 					return MergeResult.ABORTED;
diff --git a/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF
index 8c52337..efbfdc0 100644
--- a/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache.agent/META-INF/MANIFEST.MF
@@ -2,16 +2,16 @@
 Bundle-ManifestVersion: 2
 Bundle-Name: %Bundle-Name
 Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.agent;singleton:=true
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
-Fragment-Host: org.eclipse.jgit.ssh.apache;bundle-version="[6.2.1,6.3.0)"
+Fragment-Host: org.eclipse.jgit.ssh.apache;bundle-version="[6.3.0,6.4.0)"
 Bundle-ActivationPolicy: lazy
 Automatic-Module-Name: org.eclipse.jgit.ssh.apache.agent
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Import-Package: org.eclipse.jgit.transport.sshd;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)"
+Import-Package: org.eclipse.jgit.transport.sshd;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)"
 Require-Bundle: com.sun.jna;bundle-version="[5.8.0,6.0.0)",
  com.sun.jna.platform;bundle-version="[5.8.0,6.0.0)"
-Export-Package: org.eclipse.jgit.internal.transport.sshd.agent.connector;version="6.2.1";x-internal:=true
+Export-Package: org.eclipse.jgit.internal.transport.sshd.agent.connector;version="6.3.0";x-internal:=true
diff --git a/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF
index 3433630..d5580ed 100644
--- a/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache.agent/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.ssh.apache.agent - Sources
 Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.agent.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache.agent;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache.agent;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.ssh.apache.agent/pom.xml b/org.eclipse.jgit.ssh.apache.agent/pom.xml
index 5211055..eb08f94 100644
--- a/org.eclipse.jgit.ssh.apache.agent/pom.xml
+++ b/org.eclipse.jgit.ssh.apache.agent/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ssh.apache.agent</artifactId>
diff --git a/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF
index fe75eee..2e233af 100644
--- a/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache.test/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.ssh.apache.test
 Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -21,16 +21,16 @@
  org.apache.sshd.core;version="[2.8.0,2.9.0)",
  org.apache.sshd.server;version="[2.8.0,2.9.0)",
  org.apache.sshd.server.forward;version="[2.8.0,2.9.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.sshd.proxy;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit.ssh;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.sshd;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.sshd.agent;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.sshd.proxy;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit.ssh;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.sshd;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.sshd.agent;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.experimental.theories;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.ssh.apache.test/pom.xml b/org.eclipse.jgit.ssh.apache.test/pom.xml
index 6486999..6c45873 100644
--- a/org.eclipse.jgit.ssh.apache.test/pom.xml
+++ b/org.eclipse.jgit.ssh.apache.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ssh.apache.test</artifactId>
diff --git a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
index 941632d..b06a3ce 100644
--- a/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache/META-INF/MANIFEST.MF
@@ -6,9 +6,9 @@
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-ActivationPolicy: lazy
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.2.1";x-internal:=true;
+Export-Package: org.eclipse.jgit.internal.transport.sshd;version="6.3.0";x-internal:=true;
   uses:="org.apache.sshd.client,
    org.apache.sshd.client.auth,
    org.apache.sshd.client.auth.keyboard,
@@ -23,17 +23,17 @@
    org.apache.sshd.common.signature,
    org.apache.sshd.common.util.buffer,
    org.eclipse.jgit.transport",
- org.eclipse.jgit.internal.transport.sshd.agent;version="6.2.1";x-internal:=true,
- org.eclipse.jgit.internal.transport.sshd.auth;version="6.2.1";x-internal:=true,
- org.eclipse.jgit.internal.transport.sshd.proxy;version="6.2.1";x-friends:="org.eclipse.jgit.ssh.apache.test",
- org.eclipse.jgit.transport.sshd;version="6.2.1";
+ org.eclipse.jgit.internal.transport.sshd.agent;version="6.3.0";x-internal:=true,
+ org.eclipse.jgit.internal.transport.sshd.auth;version="6.3.0";x-internal:=true,
+ org.eclipse.jgit.internal.transport.sshd.proxy;version="6.3.0";x-friends:="org.eclipse.jgit.ssh.apache.test",
+ org.eclipse.jgit.transport.sshd;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.apache.sshd.client.config.hosts,
    org.apache.sshd.common.keyprovider,
    org.eclipse.jgit.util,
    org.apache.sshd.client.session,
    org.apache.sshd.client.keyverifier",
- org.eclipse.jgit.transport.sshd.agent;version="6.2.1"
+ org.eclipse.jgit.transport.sshd.agent;version="6.3.0"
 Import-Package: net.i2p.crypto.eddsa;version="[0.3.0,0.4.0)",
  org.apache.sshd.agent;version="[2.8.0,2.9.0)",
  org.apache.sshd.client;version="[2.8.0,2.9.0)",
@@ -86,12 +86,12 @@
  org.apache.sshd.sftp;version="[2.8.0,2.9.0)",
  org.apache.sshd.sftp.client;version="[2.8.0,2.9.0)",
  org.apache.sshd.sftp.common;version="[2.8.0,2.9.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.fnmatch;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.ssh;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.fnmatch;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.ssh;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
diff --git a/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF
index 2c3ac20..afee593 100644
--- a/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.apache/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.ssh.apache - Sources
 Bundle-SymbolicName: org.eclipse.jgit.ssh.apache.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.ssh.apache;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.ssh.apache/pom.xml b/org.eclipse.jgit.ssh.apache/pom.xml
index 1758431..270d6dd 100644
--- a/org.eclipse.jgit.ssh.apache/pom.xml
+++ b/org.eclipse.jgit.ssh.apache/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ssh.apache</artifactId>
diff --git a/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitPublicKeyAuthentication.java b/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitPublicKeyAuthentication.java
index 96da0cc..e1036c6 100644
--- a/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitPublicKeyAuthentication.java
+++ b/org.eclipse.jgit.ssh.apache/src/org/eclipse/jgit/internal/transport/sshd/JGitPublicKeyAuthentication.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2018, 2021 Thomas Wolf <thomas.wolf@paranor.ch> and others
+ * Copyright (C) 2018, 2022 Thomas Wolf <thomas.wolf@paranor.ch> and others
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0 which is available at
@@ -99,13 +99,18 @@ public void init(ClientSession rawSession, String service)
 					log.debug(PUBKEY_ACCEPTED_ALGORITHMS + ' ' + signatures);
 				}
 				setSignatureFactoriesNames(signatures);
-			} else {
-				log.warn(format(SshdText.get().configNoKnownAlgorithms,
-						PUBKEY_ACCEPTED_ALGORITHMS, pubkeyAlgos));
+				super.init(session, service);
+				return;
 			}
+			log.warn(format(SshdText.get().configNoKnownAlgorithms,
+					PUBKEY_ACCEPTED_ALGORITHMS, pubkeyAlgos));
 		}
-		// If we don't set signature factories here, the default ones from the
-		// session will be used.
+		// TODO: remove this once we're on an sshd version that has SSHD-1272
+		// fixed
+		List<NamedFactory<Signature>> localFactories = getSignatureFactories();
+		if (localFactories == null || localFactories.isEmpty()) {
+			setSignatureFactoriesNames(session.getSignatureFactoriesNames());
+		}
 		super.init(session, service);
 	}
 
diff --git a/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF
index 9007e75..a0a58e5 100644
--- a/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.jsch.test/META-INF/MANIFEST.MF
@@ -3,18 +3,18 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.ssh.jsch.test
 Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: com.jcraft.jsch;version="[0.1.54,0.2.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit.ssh;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.ssh.jsch;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit.ssh;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.ssh.jsch;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
  org.hamcrest;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
  org.junit.experimental.theories;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.ssh.jsch.test/pom.xml b/org.eclipse.jgit.ssh.jsch.test/pom.xml
index 59db255..a6504f1 100644
--- a/org.eclipse.jgit.ssh.jsch.test/pom.xml
+++ b/org.eclipse.jgit.ssh.jsch.test/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ssh.jsch.test</artifactId>
diff --git a/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF b/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF
index df1ba3b..8bbad78 100644
--- a/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.jsch/META-INF/MANIFEST.MF
@@ -3,19 +3,19 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.ssh.jsch
 Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch;singleton:=true
-Fragment-Host: org.eclipse.jgit;bundle-version="[6.2.1,6.3.0)"
+Fragment-Host: org.eclipse.jgit;bundle-version="[6.3.0,6.4.0)"
 Bundle-Vendor: %Bundle-Vendor
 Bundle-Localization: plugin
 Bundle-ActivationPolicy: lazy
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: org.eclipse.jgit.transport.ssh.jsch;version="6.2.1"
+Export-Package: org.eclipse.jgit.transport.ssh.jsch;version="6.3.0"
 Import-Package: com.jcraft.jsch;version="[0.1.37,0.2.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.ssh;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.ssh;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)",
  org.slf4j;version="[1.7.0,2.0.0)"
diff --git a/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF
index c3eb6c8..15904db 100644
--- a/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.ssh.jsch/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.ssh.jsch - Sources
 Bundle-SymbolicName: org.eclipse.jgit.ssh.jsch.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.ssh.jsch;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.ssh.jsch;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.ssh.jsch/pom.xml b/org.eclipse.jgit.ssh.jsch/pom.xml
index f54cc2f..a6d35c3 100644
--- a/org.eclipse.jgit.ssh.jsch/pom.xml
+++ b/org.eclipse.jgit.ssh.jsch/pom.xml
@@ -17,7 +17,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ssh.jsch</artifactId>
diff --git a/org.eclipse.jgit.test/META-INF/MANIFEST.MF b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
index 381a719..0ba71f9 100644
--- a/org.eclipse.jgit.test/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.test/META-INF/MANIFEST.MF
@@ -3,7 +3,7 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.test
 Bundle-SymbolicName: org.eclipse.jgit.test
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
 Bundle-RequiredExecutionEnvironment: JavaSE-11
@@ -16,61 +16,62 @@
  org.apache.commons.compress.compressors.gzip;version="[1.15.0,2.0)",
  org.apache.commons.compress.compressors.xz;version="[1.15.0,2.0)",
  org.assertj.core.api;version="[3.14.0,4.0.0)",
- org.eclipse.jgit.annotations;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.api.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.archive;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.attributes;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.awtui;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.blame;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.diff;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.dircache;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.events;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.fnmatch;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.gitrepo;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.hooks;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.ignore;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.ignore.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.diffmergetool;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.fsck;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.dfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.io;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.storage.reftable;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.connectivity;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.parser;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.internal.transport.ssh;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.junit.time;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lfs;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.logging;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.merge;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.notes;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.patch;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.pgm;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.pgm.internal;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revplot;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.file;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.storage.pack;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.submodule;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.http;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport.resolver;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.treewalk.filter;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.io;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util.sha1;version="[6.2.1,6.3.0)",
+ org.eclipse.jgit.annotations;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.api.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.archive;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.attributes;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.awtui;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.blame;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.diff;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.dircache;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.events;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.fnmatch;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.gitrepo;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.hooks;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.ignore;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.ignore.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.diff;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.diffmergetool;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.fsck;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.dfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.io;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.storage.reftable;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.connectivity;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.parser;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.internal.transport.ssh;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.junit.time;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lfs;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.logging;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.merge;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.notes;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.patch;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.pgm;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.pgm.internal;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revplot;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.file;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.storage.pack;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.submodule;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.http;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport.resolver;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.treewalk.filter;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.io;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util.sha1;version="[6.3.0,6.4.0)",
  org.hamcrest;version="[1.1.0,3.0.0)",
  org.hamcrest.collection;version="[1.1.0,3.0.0)",
  org.junit;version="[4.13,5.0.0)",
diff --git a/org.eclipse.jgit.test/pom.xml b/org.eclipse.jgit.test/pom.xml
index efba3e0..94ed791 100644
--- a/org.eclipse.jgit.test/pom.xml
+++ b/org.eclipse.jgit.test/pom.xml
@@ -19,7 +19,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.test</artifactId>
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractRenameDetectionTestCase.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractRenameDetectionTestCase.java
new file mode 100644
index 0000000..a8967f2
--- /dev/null
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/AbstractRenameDetectionTestCase.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2022, Google Inc. and others
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Distribution License v. 1.0 which is available at
+ * https://www.eclipse.org/org/documents/edl-v10.php.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+package org.eclipse.jgit.diff;
+
+import static org.junit.Assert.assertEquals;
+
+import org.eclipse.jgit.diff.DiffEntry.ChangeType;
+import org.eclipse.jgit.junit.RepositoryTestCase;
+import org.eclipse.jgit.junit.TestRepository;
+import org.eclipse.jgit.lib.AbbreviatedObjectId;
+import org.eclipse.jgit.lib.FileMode;
+import org.eclipse.jgit.lib.ObjectId;
+import org.eclipse.jgit.lib.Repository;
+import org.junit.Before;
+
+public abstract class AbstractRenameDetectionTestCase
+		extends RepositoryTestCase {
+
+	protected static final String PATH_A = "src/A";
+
+	protected static final String PATH_B = "src/B";
+
+	protected static final String PATH_H = "src/H";
+
+	protected static final String PATH_Q = "src/Q";
+
+	protected TestRepository<Repository> testDb;
+
+	@Override
+	@Before
+	public void setUp() throws Exception {
+		super.setUp();
+		testDb = new TestRepository<>(db);
+	}
+
+	protected ObjectId blob(String content) throws Exception {
+		return testDb.blob(content).copy();
+	}
+
+	protected static void assertRename(DiffEntry o, DiffEntry n, int score,
+			DiffEntry rename) {
+		assertEquals(ChangeType.RENAME, rename.getChangeType());
+
+		assertEquals(o.getOldPath(), rename.getOldPath());
+		assertEquals(n.getNewPath(), rename.getNewPath());
+
+		assertEquals(o.getOldMode(), rename.getOldMode());
+		assertEquals(n.getNewMode(), rename.getNewMode());
+
+		assertEquals(o.getOldId(), rename.getOldId());
+		assertEquals(n.getNewId(), rename.getNewId());
+
+		assertEquals(score, rename.getScore());
+	}
+
+	protected static void assertCopy(DiffEntry o, DiffEntry n, int score,
+			DiffEntry copy) {
+		assertEquals(ChangeType.COPY, copy.getChangeType());
+
+		assertEquals(o.getOldPath(), copy.getOldPath());
+		assertEquals(n.getNewPath(), copy.getNewPath());
+
+		assertEquals(o.getOldMode(), copy.getOldMode());
+		assertEquals(n.getNewMode(), copy.getNewMode());
+
+		assertEquals(o.getOldId(), copy.getOldId());
+		assertEquals(n.getNewId(), copy.getNewId());
+
+		assertEquals(score, copy.getScore());
+	}
+
+	protected static void assertAdd(String newName, ObjectId newId,
+			FileMode newMode, DiffEntry add) {
+		assertEquals(DiffEntry.DEV_NULL, add.oldPath);
+		assertEquals(DiffEntry.A_ZERO, add.oldId);
+		assertEquals(FileMode.MISSING, add.oldMode);
+		assertEquals(ChangeType.ADD, add.changeType);
+		assertEquals(newName, add.newPath);
+		assertEquals(AbbreviatedObjectId.fromObjectId(newId), add.newId);
+		assertEquals(newMode, add.newMode);
+	}
+
+	protected static void assertDelete(String oldName, ObjectId oldId,
+			FileMode oldMode, DiffEntry delete) {
+		assertEquals(DiffEntry.DEV_NULL, delete.newPath);
+		assertEquals(DiffEntry.A_ZERO, delete.newId);
+		assertEquals(FileMode.MISSING, delete.newMode);
+		assertEquals(ChangeType.DELETE, delete.changeType);
+		assertEquals(oldName, delete.oldPath);
+		assertEquals(AbbreviatedObjectId.fromObjectId(oldId), delete.oldId);
+		assertEquals(oldMode, delete.oldMode);
+	}
+}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/FilteredRenameDetectorTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/FilteredRenameDetectorTest.java
new file mode 100644
index 0000000..bfda36d
--- /dev/null
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/FilteredRenameDetectorTest.java
@@ -0,0 +1,154 @@
+/*
+ * Copyright (C) 2022, Simeon Andreev and others
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Distribution License v. 1.0 which is available at
+ * https://www.eclipse.org/org/documents/edl-v10.php.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+package org.eclipse.jgit.diff;
+
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertSame;
+
+import java.util.Arrays;
+import java.util.List;
+import org.eclipse.jgit.internal.diff.FilteredRenameDetector;
+import org.eclipse.jgit.lib.ObjectId;
+import org.eclipse.jgit.treewalk.filter.PathFilter;
+import org.junit.Before;
+import org.junit.Test;
+
+public class FilteredRenameDetectorTest extends AbstractRenameDetectionTestCase {
+
+	private FilteredRenameDetector frd;
+
+	@Override
+	@Before
+	public void setUp() throws Exception {
+		super.setUp();
+		frd = new FilteredRenameDetector(db);
+	}
+
+	@Test
+	public void testExactRename() throws Exception {
+		ObjectId foo = blob("foo");
+		ObjectId bar = blob("bar");
+
+		DiffEntry a = DiffEntry.add(PATH_A, foo);
+		DiffEntry b = DiffEntry.delete(PATH_Q, foo);
+
+		DiffEntry c = DiffEntry.add(PATH_H, bar);
+		DiffEntry d = DiffEntry.delete(PATH_B, bar);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		PathFilter filter = PathFilter.create(PATH_A);
+		List<DiffEntry> entries = frd.compute(changes, filter);
+		assertEquals("Unexpected entries in: " + entries, 1, entries.size());
+		assertRename(b, a, 100, entries.get(0));
+	}
+
+	@Test
+	public void testExactRename_multipleFilters() throws Exception {
+		ObjectId foo = blob("foo");
+		ObjectId bar = blob("bar");
+
+		DiffEntry a = DiffEntry.add(PATH_A, foo);
+		DiffEntry b = DiffEntry.delete(PATH_Q, foo);
+
+		DiffEntry c = DiffEntry.add(PATH_H, bar);
+		DiffEntry d = DiffEntry.delete(PATH_B, bar);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		List<PathFilter> filters = Arrays.asList(PathFilter.create(PATH_A),
+				PathFilter.create(PATH_H));
+		List<DiffEntry> entries = frd.compute(changes, filters);
+		assertEquals("Unexpected entries in: " + entries, 2, entries.size());
+		assertRename(b, a, 100, entries.get(0));
+		assertRename(d, c, 100, entries.get(1));
+	}
+
+	@Test
+	public void testInexactRename() throws Exception {
+		ObjectId aId = blob("foo\nbar\nbaz\nblarg\n");
+		ObjectId bId = blob("foo\nbar\nbaz\nblah\n");
+		DiffEntry a = DiffEntry.add(PATH_A, aId);
+		DiffEntry b = DiffEntry.delete(PATH_Q, bId);
+
+		ObjectId cId = blob("some\nsort\nof\ntext\n");
+		ObjectId dId = blob("completely\nunrelated\ntext\n");
+		DiffEntry c = DiffEntry.add(PATH_B, cId);
+		DiffEntry d = DiffEntry.delete(PATH_H, dId);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		PathFilter filter = PathFilter.create(PATH_A);
+		List<DiffEntry> entries = frd.compute(changes, filter);
+		assertEquals("Unexpected entries: " + entries, 1, entries.size());
+		assertRename(b, a, 66, entries.get(0));
+	}
+
+	@Test
+	public void testInexactRename_multipleFilters() throws Exception {
+		ObjectId aId = blob("foo\nbar\nbaz\nblarg\n");
+		ObjectId bId = blob("foo\nbar\nbaz\nblah\n");
+		DiffEntry a = DiffEntry.add(PATH_A, aId);
+		DiffEntry b = DiffEntry.delete(PATH_Q, bId);
+
+		ObjectId cId = blob("some\nsort\nof\ntext\n");
+		ObjectId dId = blob("completely\nunrelated\ntext\n");
+		DiffEntry c = DiffEntry.add(PATH_B, cId);
+		DiffEntry d = DiffEntry.delete(PATH_H, dId);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		List<PathFilter> filters = Arrays.asList(PathFilter.create(PATH_A),
+				PathFilter.create(PATH_H));
+		List<DiffEntry> entries = frd.compute(changes, filters);
+		assertEquals("Unexpected entries: " + entries, 2, entries.size());
+		assertRename(b, a, 66, entries.get(0));
+		assertSame(d, entries.get(1));
+	}
+
+	@Test
+	public void testNoRenames() throws Exception {
+		ObjectId aId = blob("");
+		ObjectId bId = blob("blah1");
+		ObjectId cId = blob("");
+		ObjectId dId = blob("blah2");
+
+		DiffEntry a = DiffEntry.add(PATH_A, aId);
+		DiffEntry b = DiffEntry.delete(PATH_Q, bId);
+
+		DiffEntry c = DiffEntry.add(PATH_H, cId);
+		DiffEntry d = DiffEntry.delete(PATH_B, dId);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		PathFilter filter = PathFilter.create(PATH_A);
+		List<DiffEntry> entries = frd.compute(changes, filter);
+		assertEquals("Unexpected entries in: " + entries, 1, entries.size());
+		assertSame(a, entries.get(0));
+	}
+
+	@Test
+	public void testNoRenames_multipleFilters() throws Exception {
+		ObjectId aId = blob("");
+		ObjectId bId = blob("blah1");
+		ObjectId cId = blob("");
+		ObjectId dId = blob("blah2");
+
+		DiffEntry a = DiffEntry.add(PATH_A, aId);
+		DiffEntry b = DiffEntry.delete(PATH_Q, bId);
+
+		DiffEntry c = DiffEntry.add(PATH_H, cId);
+		DiffEntry d = DiffEntry.delete(PATH_B, dId);
+
+		List<DiffEntry> changes = Arrays.asList(a, b, c, d);
+		List<PathFilter> filters = Arrays.asList(PathFilter.create(PATH_A),
+				PathFilter.create(PATH_H));
+		List<DiffEntry> entries = frd.compute(changes, filters);
+		assertEquals("Unexpected entries in: " + entries, 2, entries.size());
+		assertSame(a, entries.get(0));
+		assertSame(c, entries.get(1));
+	}
+}
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/RenameDetectorTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/RenameDetectorTest.java
index 5edb60c..ad560e3 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/RenameDetectorTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/diff/RenameDetectorTest.java
@@ -18,31 +18,20 @@
 import java.util.Arrays;
 import java.util.List;
 
-import org.eclipse.jgit.diff.DiffEntry.ChangeType;
-import org.eclipse.jgit.junit.RepositoryTestCase;
-import org.eclipse.jgit.junit.TestRepository;
 import org.eclipse.jgit.lib.AbbreviatedObjectId;
 import org.eclipse.jgit.lib.FileMode;
 import org.eclipse.jgit.lib.ObjectId;
-import org.eclipse.jgit.lib.Repository;
 import org.junit.Before;
 import org.junit.Test;
 
-public class RenameDetectorTest extends RepositoryTestCase {
-	private static final String PATH_A = "src/A";
-	private static final String PATH_B = "src/B";
-	private static final String PATH_H = "src/H";
-	private static final String PATH_Q = "src/Q";
+public class RenameDetectorTest extends AbstractRenameDetectionTestCase {
 
 	private RenameDetector rd;
 
-	private TestRepository<Repository> testDb;
-
 	@Override
 	@Before
 	public void setUp() throws Exception {
 		super.setUp();
-		testDb = new TestRepository<>(db);
 		rd = new RenameDetector(db);
 	}
 
@@ -675,62 +664,4 @@ public void testRenameLimit() throws Exception {
 		assertSame(c, entries.get(2));
 		assertSame(d, entries.get(3));
 	}
-
-	private ObjectId blob(String content) throws Exception {
-		return testDb.blob(content).copy();
-	}
-
-	private static void assertRename(DiffEntry o, DiffEntry n, int score,
-			DiffEntry rename) {
-		assertEquals(ChangeType.RENAME, rename.getChangeType());
-
-		assertEquals(o.getOldPath(), rename.getOldPath());
-		assertEquals(n.getNewPath(), rename.getNewPath());
-
-		assertEquals(o.getOldMode(), rename.getOldMode());
-		assertEquals(n.getNewMode(), rename.getNewMode());
-
-		assertEquals(o.getOldId(), rename.getOldId());
-		assertEquals(n.getNewId(), rename.getNewId());
-
-		assertEquals(score, rename.getScore());
-	}
-
-	private static void assertCopy(DiffEntry o, DiffEntry n, int score,
-			DiffEntry copy) {
-		assertEquals(ChangeType.COPY, copy.getChangeType());
-
-		assertEquals(o.getOldPath(), copy.getOldPath());
-		assertEquals(n.getNewPath(), copy.getNewPath());
-
-		assertEquals(o.getOldMode(), copy.getOldMode());
-		assertEquals(n.getNewMode(), copy.getNewMode());
-
-		assertEquals(o.getOldId(), copy.getOldId());
-		assertEquals(n.getNewId(), copy.getNewId());
-
-		assertEquals(score, copy.getScore());
-	}
-
-	private static void assertAdd(String newName, ObjectId newId,
-			FileMode newMode, DiffEntry add) {
-		assertEquals(DiffEntry.DEV_NULL, add.oldPath);
-		assertEquals(DiffEntry.A_ZERO, add.oldId);
-		assertEquals(FileMode.MISSING, add.oldMode);
-		assertEquals(ChangeType.ADD, add.changeType);
-		assertEquals(newName, add.newPath);
-		assertEquals(AbbreviatedObjectId.fromObjectId(newId), add.newId);
-		assertEquals(newMode, add.newMode);
-	}
-
-	private static void assertDelete(String oldName, ObjectId oldId,
-			FileMode oldMode, DiffEntry delete) {
-		assertEquals(DiffEntry.DEV_NULL, delete.newPath);
-		assertEquals(DiffEntry.A_ZERO, delete.newId);
-		assertEquals(FileMode.MISSING, delete.newMode);
-		assertEquals(ChangeType.DELETE, delete.changeType);
-		assertEquals(oldName, delete.oldPath);
-		assertEquals(AbbreviatedObjectId.fromObjectId(oldId), delete.oldId);
-		assertEquals(oldMode, delete.oldMode);
-	}
 }
diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HookTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HookTest.java
index 33ed360..1231aef 100644
--- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HookTest.java
+++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/util/HookTest.java
@@ -9,6 +9,7 @@
  */
 package org.eclipse.jgit.util;
 
+import static java.nio.charset.StandardCharsets.UTF_8;
 import static org.junit.Assert.assertEquals;
 import static org.junit.Assert.assertNull;
 import static org.junit.Assert.fail;
@@ -77,7 +78,7 @@ public void testFailedCommitMsgHookBlocksCommit() throws Exception {
 					"Rejected by \"commit-msg\" hook.\nstderr\n",
 					e.getMessage());
 			assertEquals("unexpected output from commit-msg hook", "test\n",
-					out.toString());
+					out.toString(UTF_8));
 		}
 	}
 
@@ -95,7 +96,7 @@ public void testCommitMsgHookReceivesCorrectParameter() throws Exception {
 		git.commit().setMessage("commit")
 				.setHookOutputStream(new PrintStream(out)).call();
 		assertEquals(".git/COMMIT_EDITMSG\n",
-				out.toString("UTF-8"));
+				out.toString(UTF_8));
 	}
 
 	@Test
@@ -129,9 +130,9 @@ public void testPostCommitRunHook() throws Exception {
 				new PrintStream(out), new PrintStream(err), "stdin");
 
 		assertEquals("unexpected hook output", "test arg1 arg2\nstdin\n",
-				out.toString("UTF-8"));
+				out.toString(UTF_8));
 		assertEquals("unexpected output on stderr stream", "stderr\n",
-				err.toString("UTF-8"));
+				err.toString(UTF_8));
 		assertEquals("unexpected exit code", 0, res.getExitCode());
 		assertEquals("unexpected process status", ProcessResult.Status.OK,
 				res.getStatus());
@@ -160,7 +161,7 @@ public void testAllCommitHooks() throws Exception {
 		}
 		assertEquals("unexpected hook output",
 				"test pre-commit\ntest commit-msg .git/COMMIT_EDITMSG\ntest post-commit\n",
-				out.toString("UTF-8"));
+				out.toString(UTF_8));
 	}
 
 	@Test
@@ -181,9 +182,9 @@ public void testRunHook() throws Exception {
 		assertEquals("unexpected hook output",
 				"test arg1 arg2\nstdin\n" + db.getDirectory().getAbsolutePath()
 						+ '\n' + db.getWorkTree().getAbsolutePath() + '\n',
-				out.toString("UTF-8"));
+				out.toString(UTF_8));
 		assertEquals("unexpected output on stderr stream", "stderr\n",
-				err.toString("UTF-8"));
+				err.toString(UTF_8));
 		assertEquals("unexpected exit code", 0, res.getExitCode());
 		assertEquals("unexpected process status", ProcessResult.Status.OK,
 				res.getStatus());
@@ -214,9 +215,9 @@ public void testRunHookHooksPathRelative() throws Exception {
 					"test arg1 arg2\nstdin\n"
 							+ db.getDirectory().getAbsolutePath() + '\n'
 							+ db.getWorkTree().getAbsolutePath() + '\n',
-					out.toString("UTF-8"));
+					out.toString(UTF_8));
 			assertEquals("unexpected output on stderr stream", "stderr\n",
-					err.toString("UTF-8"));
+					err.toString(UTF_8));
 			assertEquals("unexpected exit code", 0, res.getExitCode());
 			assertEquals("unexpected process status", ProcessResult.Status.OK,
 					res.getStatus());
@@ -249,9 +250,9 @@ public void testRunHookHooksPathAbsolute() throws Exception {
 					"test arg1 arg2\nstdin\n"
 							+ db.getDirectory().getAbsolutePath() + '\n'
 							+ db.getWorkTree().getAbsolutePath() + '\n',
-					out.toString("UTF-8"));
+					out.toString(UTF_8));
 			assertEquals("unexpected output on stderr stream", "stderr\n",
-					err.toString("UTF-8"));
+					err.toString(UTF_8));
 			assertEquals("unexpected exit code", 0, res.getExitCode());
 			assertEquals("unexpected process status", ProcessResult.Status.OK,
 					res.getStatus());
@@ -281,9 +282,9 @@ public void testHookPathWithBlank() throws Exception {
 					"test arg1 arg2\nstdin\n"
 							+ db.getDirectory().getAbsolutePath() + '\n'
 							+ db.getWorkTree().getAbsolutePath() + '\n',
-					out.toString("UTF-8"));
+					out.toString(UTF_8));
 			assertEquals("unexpected output on stderr stream", "stderr\n",
-					err.toString("UTF-8"));
+					err.toString(UTF_8));
 			assertEquals("unexpected exit code", 0, res.getExitCode());
 			assertEquals("unexpected process status", ProcessResult.Status.OK,
 					res.getStatus());
@@ -310,7 +311,7 @@ public void testFailedPreCommitHookBlockCommit() throws Exception {
 					"Rejected by \"pre-commit\" hook.\nstderr\n",
 					e.getMessage());
 			assertEquals("unexpected output from pre-commit hook", "test\n",
-					out.toString());
+					out.toString(UTF_8));
 		}
 	}
 
diff --git a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
index 17f38b9..e8f443e 100644
--- a/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit.ui/META-INF/MANIFEST.MF
@@ -4,14 +4,14 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit.ui
 Bundle-SymbolicName: org.eclipse.jgit.ui
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Vendor: %Bundle-Vendor
 Bundle-RequiredExecutionEnvironment: JavaSE-11
-Export-Package: org.eclipse.jgit.awtui;version="6.2.1"
-Import-Package: org.eclipse.jgit.errors;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.lib;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.nls;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revplot;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.revwalk;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.transport;version="[6.2.1,6.3.0)",
- org.eclipse.jgit.util;version="[6.2.1,6.3.0)"
+Export-Package: org.eclipse.jgit.awtui;version="6.3.0"
+Import-Package: org.eclipse.jgit.errors;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.lib;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.nls;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revplot;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.revwalk;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.transport;version="[6.3.0,6.4.0)",
+ org.eclipse.jgit.util;version="[6.3.0,6.4.0)"
diff --git a/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF
index 5753bf9..550397a 100644
--- a/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit.ui/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit.ui - Sources
 Bundle-SymbolicName: org.eclipse.jgit.ui.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit.ui;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit.ui;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit.ui/pom.xml b/org.eclipse.jgit.ui/pom.xml
index ed940c6..4e57625 100644
--- a/org.eclipse.jgit.ui/pom.xml
+++ b/org.eclipse.jgit.ui/pom.xml
@@ -19,7 +19,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit.ui</artifactId>
diff --git a/org.eclipse.jgit/.settings/.api_filters b/org.eclipse.jgit/.settings/.api_filters
index 00b89a4..6eb8bd3 100644
--- a/org.eclipse.jgit/.settings/.api_filters
+++ b/org.eclipse.jgit/.settings/.api_filters
@@ -9,20 +9,6 @@
             </message_arguments>
         </filter>
     </resource>
-    <resource path="src/org/eclipse/jgit/lib/TypedConfigGetter.java" type="org.eclipse.jgit.lib.TypedConfigGetter">
-        <filter id="403767336">
-            <message_arguments>
-                <message_argument value="org.eclipse.jgit.lib.TypedConfigGetter"/>
-                <message_argument value="UNSET_INT"/>
-            </message_arguments>
-        </filter>
-        <filter id="403804204">
-            <message_arguments>
-                <message_argument value="org.eclipse.jgit.lib.TypedConfigGetter"/>
-                <message_argument value="getIntInRange(Config, String, String, String, int, int, int)"/>
-            </message_arguments>
-        </filter>
-    </resource>
     <resource path="src/org/eclipse/jgit/lib/ObjectDatabase.java" type="org.eclipse.jgit.lib.ObjectDatabase">
         <filter id="336695337">
             <message_arguments>
@@ -32,6 +18,12 @@
         </filter>
     </resource>
     <resource path="src/org/eclipse/jgit/lib/TypedConfigGetter.java" type="org.eclipse.jgit.lib.TypedConfigGetter">
+        <filter id="403767336">
+            <message_arguments>
+                <message_argument value="org.eclipse.jgit.lib.TypedConfigGetter"/>
+                <message_argument value="UNSET_INT"/>
+            </message_arguments>
+        </filter>
         <filter id="403804204">
             <message_arguments>
                 <message_argument value="org.eclipse.jgit.lib.TypedConfigGetter"/>
@@ -59,6 +51,15 @@
             </message_arguments>
         </filter>
     </resource>
+    <resource path="src/org/eclipse/jgit/transport/AwsRequestSignerV4.java" type="org.eclipse.jgit.transport.AwsRequestSignerV4">
+        <filter id="1108344834">
+            <message_arguments>
+                <message_argument value="5.13"/>
+                <message_argument value="6.3"/>
+                <message_argument value="org.eclipse.jgit.transport.AwsRequestSignerV4"/>
+            </message_arguments>
+        </filter>
+    </resource>
     <resource path="src/org/eclipse/jgit/transport/BasePackPushConnection.java" type="org.eclipse.jgit.transport.BasePackPushConnection">
         <filter id="338792546">
             <message_arguments>
@@ -75,4 +76,13 @@
             </message_arguments>
         </filter>
     </resource>
+    <resource path="src/org/eclipse/jgit/util/HttpSupport.java" type="org.eclipse.jgit.util.HttpSupport">
+        <filter id="1141899266">
+            <message_arguments>
+                <message_argument value="5.13"/>
+                <message_argument value="6.3"/>
+                <message_argument value="urlEncode(String, boolean)"/>
+            </message_arguments>
+        </filter>
+    </resource>
 </component>
diff --git a/org.eclipse.jgit/META-INF/MANIFEST.MF b/org.eclipse.jgit/META-INF/MANIFEST.MF
index 1b34912..d1e6125 100644
--- a/org.eclipse.jgit/META-INF/MANIFEST.MF
+++ b/org.eclipse.jgit/META-INF/MANIFEST.MF
@@ -3,12 +3,12 @@
 Bundle-Name: %Bundle-Name
 Automatic-Module-Name: org.eclipse.jgit
 Bundle-SymbolicName: org.eclipse.jgit
-Bundle-Version: 6.2.1.qualifier
+Bundle-Version: 6.3.0.qualifier
 Bundle-Localization: plugin
 Bundle-Vendor: %Bundle-Vendor
 Eclipse-ExtensibleAPI: true
-Export-Package: org.eclipse.jgit.annotations;version="6.2.1",
- org.eclipse.jgit.api;version="6.2.1";
+Export-Package: org.eclipse.jgit.annotations;version="6.3.0",
+ org.eclipse.jgit.api;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.notes,
    org.eclipse.jgit.dircache,
@@ -23,18 +23,18 @@
    org.eclipse.jgit.revwalk.filter,
    org.eclipse.jgit.blame,
    org.eclipse.jgit.merge",
- org.eclipse.jgit.api.errors;version="6.2.1";
+ org.eclipse.jgit.api.errors;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.errors",
- org.eclipse.jgit.attributes;version="6.2.1";
+ org.eclipse.jgit.attributes;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.treewalk",
- org.eclipse.jgit.blame;version="6.2.1";
+ org.eclipse.jgit.blame;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
    org.eclipse.jgit.treewalk.filter,
    org.eclipse.jgit.diff",
- org.eclipse.jgit.diff;version="6.2.1";
+ org.eclipse.jgit.diff;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.attributes,
    org.eclipse.jgit.revwalk,
@@ -42,49 +42,51 @@
    org.eclipse.jgit.treewalk.filter,
    org.eclipse.jgit.treewalk,
    org.eclipse.jgit.util",
- org.eclipse.jgit.dircache;version="6.2.1";
+ org.eclipse.jgit.dircache;version="6.3.0";
   uses:="org.eclipse.jgit.events,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.attributes,
    org.eclipse.jgit.treewalk,
    org.eclipse.jgit.util",
- org.eclipse.jgit.errors;version="6.2.1";
+ org.eclipse.jgit.errors;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.dircache,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.internal.storage.pack",
- org.eclipse.jgit.events;version="6.2.1";
+ org.eclipse.jgit.events;version="6.3.0";
   uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.fnmatch;version="6.2.1",
- org.eclipse.jgit.gitrepo;version="6.2.1";
+ org.eclipse.jgit.fnmatch;version="6.3.0",
+ org.eclipse.jgit.gitrepo;version="6.3.0";
   uses:="org.xml.sax.helpers,
    org.eclipse.jgit.api,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
    org.xml.sax",
- org.eclipse.jgit.gitrepo.internal;version="6.2.1";x-internal:=true,
- org.eclipse.jgit.hooks;version="6.2.1";uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.ignore;version="6.2.1",
- org.eclipse.jgit.ignore.internal;version="6.2.1";
+ org.eclipse.jgit.gitrepo.internal;version="6.3.0";x-internal:=true,
+ org.eclipse.jgit.hooks;version="6.3.0";uses:="org.eclipse.jgit.lib",
+ org.eclipse.jgit.ignore;version="6.3.0",
+ org.eclipse.jgit.ignore.internal;version="6.3.0";
   x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal;version="6.2.1";
+ org.eclipse.jgit.internal;version="6.3.0";
   x-friends:="org.eclipse.jgit.test,
    org.eclipse.jgit.http.test",
- org.eclipse.jgit.internal.diffmergetool;version="6.2.1";
+ org.eclipse.jgit.internal.diff;version="6.3.0";
+  x-friends:="org.eclipse.jgit.test",
+ org.eclipse.jgit.internal.diffmergetool;version="6.3.0";
   x-friends:="org.eclipse.jgit.test,
    org.eclipse.jgit.pgm.test,
    org.eclipse.jgit.pgm,
    org.eclipse.egit.ui",
- org.eclipse.jgit.internal.fsck;version="6.2.1";
+ org.eclipse.jgit.internal.fsck;version="6.3.0";
   x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal.revwalk;version="6.2.1";
+ org.eclipse.jgit.internal.revwalk;version="6.3.0";
   x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal.storage.dfs;version="6.2.1";
+ org.eclipse.jgit.internal.storage.dfs;version="6.3.0";
   x-friends:="org.eclipse.jgit.test,
    org.eclipse.jgit.http.server,
    org.eclipse.jgit.http.test,
    org.eclipse.jgit.lfs.test",
- org.eclipse.jgit.internal.storage.file;version="6.2.1";
+ org.eclipse.jgit.internal.storage.file;version="6.3.0";
   x-friends:="org.eclipse.jgit.test,
    org.eclipse.jgit.junit,
    org.eclipse.jgit.junit.http,
@@ -93,32 +95,32 @@
    org.eclipse.jgit.pgm,
    org.eclipse.jgit.pgm.test,
    org.eclipse.jgit.ssh.apache",
- org.eclipse.jgit.internal.storage.io;version="6.2.1";
+ org.eclipse.jgit.internal.storage.io;version="6.3.0";
   x-friends:="org.eclipse.jgit.junit,
    org.eclipse.jgit.test,
    org.eclipse.jgit.pgm",
- org.eclipse.jgit.internal.storage.pack;version="6.2.1";
+ org.eclipse.jgit.internal.storage.pack;version="6.3.0";
   x-friends:="org.eclipse.jgit.junit,
    org.eclipse.jgit.test,
    org.eclipse.jgit.pgm",
- org.eclipse.jgit.internal.storage.reftable;version="6.2.1";
+ org.eclipse.jgit.internal.storage.reftable;version="6.3.0";
   x-friends:="org.eclipse.jgit.http.test,
    org.eclipse.jgit.junit,
    org.eclipse.jgit.test,
    org.eclipse.jgit.pgm",
- org.eclipse.jgit.internal.submodule;version="6.2.1";x-internal:=true,
- org.eclipse.jgit.internal.transport.connectivity;version="6.2.1";
+ org.eclipse.jgit.internal.submodule;version="6.3.0";x-internal:=true,
+ org.eclipse.jgit.internal.transport.connectivity;version="6.3.0";
   x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal.transport.http;version="6.2.1";
+ org.eclipse.jgit.internal.transport.http;version="6.3.0";
   x-friends:="org.eclipse.jgit.test",
- org.eclipse.jgit.internal.transport.parser;version="6.2.1";
+ org.eclipse.jgit.internal.transport.parser;version="6.3.0";
   x-friends:="org.eclipse.jgit.http.server,
    org.eclipse.jgit.test",
- org.eclipse.jgit.internal.transport.ssh;version="6.2.1";
+ org.eclipse.jgit.internal.transport.ssh;version="6.3.0";
   x-friends:="org.eclipse.jgit.ssh.apache,
    org.eclipse.jgit.ssh.jsch,
    org.eclipse.jgit.test",
- org.eclipse.jgit.lib;version="6.2.1";
+ org.eclipse.jgit.lib;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.util.sha1,
    org.eclipse.jgit.dircache,
@@ -132,12 +134,12 @@
    org.eclipse.jgit.util,
    org.eclipse.jgit.submodule,
    org.eclipse.jgit.util.time",
- org.eclipse.jgit.lib.internal;version="6.2.1";
+ org.eclipse.jgit.lib.internal;version="6.3.0";
   x-friends:="org.eclipse.jgit.test,
    org.eclipse.jgit.pgm,
    org.eclipse.egit.ui",
- org.eclipse.jgit.logging;version="6.2.1",
- org.eclipse.jgit.merge;version="6.2.1";
+ org.eclipse.jgit.logging;version="6.3.0",
+ org.eclipse.jgit.merge;version="6.3.0";
   uses:="org.eclipse.jgit.dircache,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
@@ -146,40 +148,40 @@
    org.eclipse.jgit.util,
    org.eclipse.jgit.api,
    org.eclipse.jgit.attributes",
- org.eclipse.jgit.nls;version="6.2.1",
- org.eclipse.jgit.notes;version="6.2.1";
+ org.eclipse.jgit.nls;version="6.3.0",
+ org.eclipse.jgit.notes;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk,
    org.eclipse.jgit.treewalk,
    org.eclipse.jgit.merge",
- org.eclipse.jgit.patch;version="6.2.1";
+ org.eclipse.jgit.patch;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.diff",
- org.eclipse.jgit.revplot;version="6.2.1";
+ org.eclipse.jgit.revplot;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.revwalk",
- org.eclipse.jgit.revwalk;version="6.2.1";
+ org.eclipse.jgit.revwalk;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.diff,
    org.eclipse.jgit.treewalk.filter,
    org.eclipse.jgit.revwalk.filter,
    org.eclipse.jgit.treewalk",
- org.eclipse.jgit.revwalk.filter;version="6.2.1";
+ org.eclipse.jgit.revwalk.filter;version="6.3.0";
   uses:="org.eclipse.jgit.revwalk,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.util",
- org.eclipse.jgit.storage.file;version="6.2.1";
+ org.eclipse.jgit.storage.file;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.util",
- org.eclipse.jgit.storage.pack;version="6.2.1";
+ org.eclipse.jgit.storage.pack;version="6.3.0";
   uses:="org.eclipse.jgit.lib",
- org.eclipse.jgit.submodule;version="6.2.1";
+ org.eclipse.jgit.submodule;version="6.3.0";
   uses:="org.eclipse.jgit.lib,
    org.eclipse.jgit.diff,
    org.eclipse.jgit.treewalk.filter,
    org.eclipse.jgit.treewalk,
    org.eclipse.jgit.util",
- org.eclipse.jgit.transport;version="6.2.1";
+ org.eclipse.jgit.transport;version="6.3.0";
   uses:="javax.crypto,
    org.eclipse.jgit.util.io,
    org.eclipse.jgit.lib,
@@ -192,21 +194,21 @@
    org.eclipse.jgit.transport.resolver,
    org.eclipse.jgit.storage.pack,
    org.eclipse.jgit.errors",
- org.eclipse.jgit.transport.http;version="6.2.1";
+ org.eclipse.jgit.transport.http;version="6.3.0";
   uses:="javax.net.ssl",
- org.eclipse.jgit.transport.resolver;version="6.2.1";
+ org.eclipse.jgit.transport.resolver;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.lib",
- org.eclipse.jgit.treewalk;version="6.2.1";
+ org.eclipse.jgit.treewalk;version="6.3.0";
   uses:="org.eclipse.jgit.dircache,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.attributes,
    org.eclipse.jgit.revwalk,
    org.eclipse.jgit.treewalk.filter,
    org.eclipse.jgit.util",
- org.eclipse.jgit.treewalk.filter;version="6.2.1";
+ org.eclipse.jgit.treewalk.filter;version="6.3.0";
   uses:="org.eclipse.jgit.treewalk",
- org.eclipse.jgit.util;version="6.2.1";
+ org.eclipse.jgit.util;version="6.3.0";
   uses:="org.eclipse.jgit.transport,
    org.eclipse.jgit.hooks,
    org.eclipse.jgit.revwalk,
@@ -219,12 +221,12 @@
    org.eclipse.jgit.treewalk,
    javax.net.ssl,
    org.eclipse.jgit.util.time",
- org.eclipse.jgit.util.io;version="6.2.1";
+ org.eclipse.jgit.util.io;version="6.3.0";
   uses:="org.eclipse.jgit.attributes,
    org.eclipse.jgit.lib,
    org.eclipse.jgit.treewalk",
- org.eclipse.jgit.util.sha1;version="6.2.1",
- org.eclipse.jgit.util.time;version="6.2.1"
+ org.eclipse.jgit.util.sha1;version="6.3.0",
+ org.eclipse.jgit.util.time;version="6.3.0"
 Bundle-RequiredExecutionEnvironment: JavaSE-11
 Import-Package: com.googlecode.javaewah;version="[1.1.6,2.0.0)",
  javax.crypto,
diff --git a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
index 4066aea..97f57d8 100644
--- a/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
+++ b/org.eclipse.jgit/META-INF/SOURCE-MANIFEST.MF
@@ -3,5 +3,5 @@
 Bundle-Name: org.eclipse.jgit - Sources
 Bundle-SymbolicName: org.eclipse.jgit.source
 Bundle-Vendor: Eclipse.org - JGit
-Bundle-Version: 6.2.1.qualifier
-Eclipse-SourceBundle: org.eclipse.jgit;version="6.2.1.qualifier";roots="."
+Bundle-Version: 6.3.0.qualifier
+Eclipse-SourceBundle: org.eclipse.jgit;version="6.3.0.qualifier";roots="."
diff --git a/org.eclipse.jgit/pom.xml b/org.eclipse.jgit/pom.xml
index e223644..b57ea15 100644
--- a/org.eclipse.jgit/pom.xml
+++ b/org.eclipse.jgit/pom.xml
@@ -20,7 +20,7 @@
   <parent>
     <groupId>org.eclipse.jgit</groupId>
     <artifactId>org.eclipse.jgit-parent</artifactId>
-    <version>6.2.1-SNAPSHOT</version>
+    <version>6.3.0-SNAPSHOT</version>
   </parent>
 
   <artifactId>org.eclipse.jgit</artifactId>
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
index 10d7752..77967df 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/blame/BlameGenerator.java
@@ -41,6 +41,7 @@
 import org.eclipse.jgit.dircache.DirCacheIterator;
 import org.eclipse.jgit.errors.NoWorkTreeException;
 import org.eclipse.jgit.internal.JGitText;
+import org.eclipse.jgit.internal.diff.FilteredRenameDetector;
 import org.eclipse.jgit.lib.AnyObjectId;
 import org.eclipse.jgit.lib.Constants;
 import org.eclipse.jgit.lib.MutableObjectId;
@@ -1109,9 +1110,10 @@ private DiffEntry findRename(RevCommit parent, RevCommit commit,
 
 		treeWalk.setFilter(TreeFilter.ANY_DIFF);
 		treeWalk.reset(parent.getTree(), commit.getTree());
-		renameDetector.reset();
-		renameDetector.addAll(DiffEntry.scan(treeWalk));
-		for (DiffEntry ent : renameDetector.compute()) {
+		List<DiffEntry> diffs = DiffEntry.scan(treeWalk);
+		FilteredRenameDetector filteredRenameDetector = new FilteredRenameDetector(
+				renameDetector);
+		for (DiffEntry ent : filteredRenameDetector.compute(diffs, path)) {
 			if (isRename(ent) && ent.getNewPath().equals(path.getPath()))
 				return ent;
 		}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diff/FilteredRenameDetector.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diff/FilteredRenameDetector.java
new file mode 100644
index 0000000..d65624f
--- /dev/null
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diff/FilteredRenameDetector.java
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 2022, Simeon Andreev and others
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Distribution License v. 1.0 which is available at
+ * https://www.eclipse.org/org/documents/edl-v10.php.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+package org.eclipse.jgit.internal.diff;
+
+import java.io.IOException;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Set;
+
+import org.eclipse.jgit.diff.DiffEntry;
+import org.eclipse.jgit.diff.DiffEntry.ChangeType;
+import org.eclipse.jgit.diff.RenameDetector;
+import org.eclipse.jgit.lib.Repository;
+import org.eclipse.jgit.treewalk.filter.PathFilter;
+
+/**
+ * Provides rename detection in special cases such as blame, where only a subset
+ * of the renames detected by {@link RenameDetector} is of interest.
+ */
+public class FilteredRenameDetector {
+
+	private final RenameDetector renameDetector;
+
+	/**
+	 * @param repository
+	 *            The repository in which to check for renames.
+	 */
+	public FilteredRenameDetector(Repository repository) {
+		this(new RenameDetector(repository));
+	}
+
+	/**
+	 * @param renameDetector
+	 *            The {@link RenameDetector} to use when checking for renames.
+	 */
+	public FilteredRenameDetector(RenameDetector renameDetector) {
+		this.renameDetector = renameDetector;
+	}
+
+	/**
+	 * @param diffs
+	 *            The set of changes to check.
+	 * @param pathFilter
+	 *            Filter out changes that didn't affect this path.
+	 * @return The subset of changes that affect only the filtered path.
+	 * @throws IOException
+	 */
+	public List<DiffEntry> compute(List<DiffEntry> diffs,
+			PathFilter pathFilter) throws IOException {
+		return compute(diffs, Arrays.asList(pathFilter));
+	}
+
+	/**
+	 * Tries to avoid computation overhead in {@link RenameDetector#compute()}
+	 * by filtering diffs related to the path filters only.
+	 * <p>
+	 * Note: current implementation only optimizes added or removed diffs,
+	 * further optimization is possible.
+	 *
+	 * @param changes
+	 *            The set of changes to check.
+	 * @param pathFilters
+	 *            Filter out changes that didn't affect these paths.
+	 * @return The subset of changes that affect only the filtered paths.
+	 * @throws IOException
+	 * @see RenameDetector#compute()
+	 */
+	public List<DiffEntry> compute(List<DiffEntry> changes,
+			List<PathFilter> pathFilters) throws IOException {
+
+		if (pathFilters == null) {
+			throw new IllegalArgumentException("Must specify path filters"); //$NON-NLS-1$
+		}
+
+		Set<String> paths = new HashSet<>(pathFilters.size());
+		for (PathFilter pathFilter : pathFilters) {
+			paths.add(pathFilter.getPath());
+		}
+
+		List<DiffEntry> filtered = new ArrayList<>();
+
+		// For new path: skip ADD's that don't match given paths
+		for (DiffEntry diff : changes) {
+			ChangeType changeType = diff.getChangeType();
+			if (changeType != ChangeType.ADD
+					|| paths.contains(diff.getNewPath())) {
+				filtered.add(diff);
+			}
+		}
+
+		renameDetector.reset();
+		renameDetector.addAll(filtered);
+		List<DiffEntry> sourceChanges = renameDetector.compute();
+
+		filtered.clear();
+
+		// For old path: skip DELETE's that don't match given paths
+		for (DiffEntry diff : changes) {
+			ChangeType changeType = diff.getChangeType();
+			if (changeType != ChangeType.DELETE
+					|| paths.contains(diff.getOldPath())) {
+				filtered.add(diff);
+			}
+		}
+
+		renameDetector.reset();
+		renameDetector.addAll(filtered);
+		List<DiffEntry> targetChanges = renameDetector.compute();
+
+		List<DiffEntry> result = new ArrayList<>();
+
+		for (DiffEntry sourceChange : sourceChanges) {
+			if (paths.contains(sourceChange.getNewPath())) {
+				result.add(sourceChange);
+			}
+		}
+		for (DiffEntry targetChange : targetChanges) {
+			if (paths.contains(targetChange.getOldPath())) {
+				result.add(targetChange);
+			}
+		}
+
+		renameDetector.reset();
+		return result;
+	}
+}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/CommandExecutor.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/CommandExecutor.java
index 668adea..ebef524 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/CommandExecutor.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/CommandExecutor.java
@@ -27,6 +27,7 @@
 import org.eclipse.jgit.util.FS_Win32;
 import org.eclipse.jgit.util.FS_Win32_Cygwin;
 import org.eclipse.jgit.util.StringUtils;
+import org.eclipse.jgit.util.SystemReader;
 
 /**
  * Runs a command with help of FS.
@@ -87,7 +88,9 @@ public ExecutionResult run(String command, File workingDir,
 									+ "execError: " + execError + "\n" //$NON-NLS-1$ //$NON-NLS-2$
 									+ "stderr: \n" //$NON-NLS-1$
 									+ new String(
-											result.getStderr().toByteArray()),
+											result.getStderr().toByteArray(),
+											SystemReader.getInstance()
+													.getDefaultCharset()),
 							result, execError);
 				}
 			}
@@ -202,7 +205,8 @@ private void createCommandFile(String command)
 		commandFile = File.createTempFile(".__", //$NON-NLS-1$
 				"__jgit_tool" + fileExtension); //$NON-NLS-1$
 		try (OutputStream outStream = new FileOutputStream(commandFile)) {
-			byte[] strToBytes = command.getBytes();
+			byte[] strToBytes = command
+					.getBytes(SystemReader.getInstance().getDefaultCharset());
 			outStream.write(strToBytes);
 			outStream.close();
 		}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/DiffTools.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/DiffTools.java
index 7cedd82..d0034df 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/DiffTools.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/DiffTools.java
@@ -103,7 +103,7 @@ private DiffTools(Repository repo, StoredConfig config) {
 	 * @param noToolHandler
 	 *            The handler to use when needing to inform the user, that no
 	 *            tool is configured.
-	 * @return the optioanl result of executing the tool if it was executed
+	 * @return the optional result of executing the tool if it was executed
 	 * @throws ToolException
 	 *             when the tool fails
 	 */
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/ToolException.java b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/ToolException.java
index 7cc5bb5..73d3588 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/ToolException.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/internal/diffmergetool/ToolException.java
@@ -11,7 +11,7 @@
 package org.eclipse.jgit.internal.diffmergetool;
 
 import org.eclipse.jgit.util.FS.ExecutionResult;
-
+import org.eclipse.jgit.util.SystemReader;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -114,7 +114,8 @@ public String getResultStderr() {
 			return ""; //$NON-NLS-1$
 		}
 		try {
-			return new String(result.getStderr().toByteArray());
+			return new String(result.getStderr().toByteArray(),
+					SystemReader.getInstance().getDefaultCharset());
 		} catch (Exception e) {
 			LOG.warn("Failed to retrieve standard error output", e); //$NON-NLS-1$
 		}
@@ -129,7 +130,8 @@ public String getResultStdout() {
 			return ""; //$NON-NLS-1$
 		}
 		try {
-			return new String(result.getStdout().toByteArray());
+			return new String(result.getStdout().toByteArray(),
+					SystemReader.getInstance().getDefaultCharset());
 		} catch (Exception e) {
 			LOG.warn("Failed to retrieve standard output", e); //$NON-NLS-1$
 		}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/RefSpec.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/RefSpec.java
index e36eecc..61d1935 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/RefSpec.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/RefSpec.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2008, 2013 Shawn O. Pearce <spearce@spearce.org> and others
+ * Copyright (C) 2008, 2022 Shawn O. Pearce <spearce@spearce.org> and others
  *
  * This program and the accompanying materials are made available under the
  * terms of the Eclipse Distribution License v. 1.0 which is available at
@@ -154,7 +154,7 @@ public RefSpec(String spec, WildcardMode mode) {
 		this.allowMismatchedWildcards = mode;
 		String s = spec;
 
-		if (s.startsWith("^+") || s.startsWith("+^")) {
+		if (s.startsWith("^+") || s.startsWith("+^")) { //$NON-NLS-1$ //$NON-NLS-2$
 			throw new IllegalArgumentException(
 					JGitText.get().invalidNegativeAndForce);
 		}
@@ -164,7 +164,7 @@ public RefSpec(String spec, WildcardMode mode) {
 			s = s.substring(1);
 		}
 
-		if(s.startsWith("^")) {
+		if (s.startsWith("^")) { //$NON-NLS-1$
 			negative = true;
 			s = s.substring(1);
 		}
@@ -251,7 +251,7 @@ public RefSpec(String spec, WildcardMode mode) {
 	 *             the specification is invalid.
 	 */
 	public RefSpec(String spec) {
-		this(spec, spec.startsWith("^") ? WildcardMode.ALLOW_MISMATCH
+		this(spec, spec.startsWith("^") ? WildcardMode.ALLOW_MISMATCH //$NON-NLS-1$
 				: WildcardMode.REQUIRE_MATCH);
 	}
 
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
index 1617c50..dcd806a 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/transport/UploadPack.java
@@ -2038,7 +2038,8 @@ private static void checkNotAdvertisedWants(UploadPack up,
 							.filter(obj -> !(obj instanceof RevCommit))
 							.limit(1)
 							.collect(Collectors.toList()).get(0);
-					throw new WantNotValidException(nonCommit);
+					throw new WantNotValidException(nonCommit,
+							new Exception("Cannot walk without bitmaps")); //$NON-NLS-1$
 				}
 
 				try (ObjectWalk objWalk = walk.toObjectWalkWithSameObjects()) {
@@ -2052,6 +2053,11 @@ private static void checkNotAdvertisedWants(UploadPack up,
 					Optional<RevObject> unreachable = reachabilityChecker
 							.areAllReachable(wantsAsObjs, startersAsObjs);
 					if (unreachable.isPresent()) {
+						if (!repoHasBitmaps) {
+							throw new WantNotValidException(
+									unreachable.get(), new Exception(
+											"Retry with bitmaps enabled")); //$NON-NLS-1$
+						}
 						throw new WantNotValidException(unreachable.get());
 					}
 				}
diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/util/SystemReader.java b/org.eclipse.jgit/src/org/eclipse/jgit/util/SystemReader.java
index 16e2577..5ced071 100644
--- a/org.eclipse.jgit/src/org/eclipse/jgit/util/SystemReader.java
+++ b/org.eclipse.jgit/src/org/eclipse/jgit/util/SystemReader.java
@@ -63,6 +63,8 @@ public abstract class SystemReader {
 
 	private static volatile Boolean isWindows;
 
+	private static volatile Boolean isLinux;
+
 	static {
 		SystemReader r = new Default();
 		r.init();
@@ -185,6 +187,7 @@ public static SystemReader getInstance() {
 	public static void setInstance(SystemReader newReader) {
 		isMacOS = null;
 		isWindows = null;
+		isLinux = null;
 		if (newReader == null)
 			INSTANCE = DEFAULT;
 		else {
@@ -543,6 +546,20 @@ public boolean isMacOS() {
 		return isMacOS.booleanValue();
 	}
 
+	/**
+	 * Whether we are running on Linux.
+	 *
+	 * @return true if we are running on Linux.
+	 * @since 6.3
+	 */
+	public boolean isLinux() {
+		if (isLinux == null) {
+			String osname = getOsName();
+			isLinux = Boolean.valueOf(osname.toLowerCase().startsWith("linux")); //$NON-NLS-1$
+		}
+		return isLinux.booleanValue();
+	}
+
 	private String getOsName() {
 		return AccessController.doPrivileged(
 				(PrivilegedAction<String>) () -> getProperty("os.name") //$NON-NLS-1$
diff --git a/pom.xml b/pom.xml
index 787f001..b6d7701 100644
--- a/pom.xml
+++ b/pom.xml
@@ -18,7 +18,7 @@
   <groupId>org.eclipse.jgit</groupId>
   <artifactId>org.eclipse.jgit-parent</artifactId>
   <packaging>pom</packaging>
-  <version>6.2.1-SNAPSHOT</version>
+  <version>6.3.0-SNAPSHOT</version>
 
   <name>JGit - Parent</name>
   <url>${jgit-url}</url>
@@ -150,7 +150,7 @@
     <java.version>11</java.version>
     <bundle-manifest>${project.build.directory}/META-INF/MANIFEST.MF</bundle-manifest>
 
-    <jgit-last-release-version>6.1.0.202203080745-r</jgit-last-release-version>
+    <jgit-last-release-version>6.2.0.202206071550-r</jgit-last-release-version>
     <ant-version>1.10.12</ant-version>
     <apache-sshd-version>2.8.0</apache-sshd-version>
     <jsch-version>0.1.55</jsch-version>