Merge branch 'stable-0.9'
* stable-0.9: Qualify post-0.9.3 builds JGit 0.9.3 clone: Correct formatting of init message Fix cloning of repositories with big objects Qualify post-0.9.1 builds JGit 0.9.1 Fix PlotCommitList to set lanes on child-less commits
This commit is contained in:
commit
5deb5b9a4a
|
@ -3,11 +3,11 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.console
|
Bundle-SymbolicName: org.eclipse.jgit.console
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
|
||||||
Export-Package: org.eclipse.jgit.console;version="0.9.0"
|
Export-Package: org.eclipse.jgit.console;version="0.9.4"
|
||||||
Import-Package: org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
Import-Package: org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)"
|
||||||
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.console</artifactId>
|
<artifactId>org.eclipse.jgit.console</artifactId>
|
||||||
|
|
|
@ -2,22 +2,22 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.http.server
|
Bundle-SymbolicName: org.eclipse.jgit.http.server
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Export-Package:
|
Export-Package:
|
||||||
org.eclipse.jgit.http.server;version="0.9.0",
|
org.eclipse.jgit.http.server;version="0.9.4",
|
||||||
org.eclipse.jgit.http.server.glue;version="0.9.0",
|
org.eclipse.jgit.http.server.glue;version="0.9.4",
|
||||||
org.eclipse.jgit.http.server.resolver;version="0.9.0"
|
org.eclipse.jgit.http.server.resolver;version="0.9.4"
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Import-Package: javax.servlet;version="[2.5.0,3.0.0)",
|
Import-Package: javax.servlet;version="[2.5.0,3.0.0)",
|
||||||
javax.servlet.http;version="[2.5.0,3.0.0)",
|
javax.servlet.http;version="[2.5.0,3.0.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util.io;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util.io;version="[0.9.4,0.10.0)"
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.http.server</artifactId>
|
<artifactId>org.eclipse.jgit.http.server</artifactId>
|
||||||
|
|
|
@ -2,7 +2,7 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.http.test
|
Bundle-SymbolicName: org.eclipse.jgit.http.test
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
|
@ -22,13 +22,13 @@ Import-Package: javax.servlet;version="[2.5.0,3.0.0)",
|
||||||
org.eclipse.jetty.util.component;version="[7.0.1,8.0.0)",
|
org.eclipse.jetty.util.component;version="[7.0.1,8.0.0)",
|
||||||
org.eclipse.jetty.util.log;version="[7.0.1,8.0.0)",
|
org.eclipse.jetty.util.log;version="[7.0.1,8.0.0)",
|
||||||
org.eclipse.jetty.util.thread;version="[7.0.1,8.0.0)",
|
org.eclipse.jetty.util.thread;version="[7.0.1,8.0.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.http.server;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.http.server;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.http.server.glue;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.http.server.glue;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.http.server.resolver;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.http.server.resolver;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.junit;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.junit;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)"
|
||||||
|
|
|
@ -51,7 +51,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.http.test</artifactId>
|
<artifactId>org.eclipse.jgit.http.test</artifactId>
|
||||||
|
|
|
@ -2,22 +2,22 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.iplog
|
Bundle-SymbolicName: org.eclipse.jgit.iplog
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Import-Package: org.eclipse.jgit.diff;version="[0.9.0,0.10.0)",
|
Import-Package: org.eclipse.jgit.diff;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.dircache;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.dircache;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revplot;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revplot;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)"
|
||||||
Export-Package: org.eclipse.jgit.iplog;version="0.9.0"
|
Export-Package: org.eclipse.jgit.iplog;version="0.9.4"
|
||||||
|
|
|
@ -51,7 +51,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.iplog</artifactId>
|
<artifactId>org.eclipse.jgit.iplog</artifactId>
|
||||||
|
|
|
@ -2,28 +2,28 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.junit
|
Bundle-SymbolicName: org.eclipse.jgit.junit
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Import-Package: junit.framework;version="[4.0.0,5.0.0)",
|
Import-Package: junit.framework;version="[4.0.0,5.0.0)",
|
||||||
org.eclipse.jgit.diff;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.diff;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.dircache;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.dircache;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.fnmatch;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.fnmatch;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.merge;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.merge;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.patch;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.patch;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revplot;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revplot;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.pack;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.pack;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util.io;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util.io;version="[0.9.4,0.10.0)"
|
||||||
Export-Package: org.eclipse.jgit.junit;version="0.9.0"
|
Export-Package: org.eclipse.jgit.junit;version="0.9.4"
|
||||||
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.junit</artifactId>
|
<artifactId>org.eclipse.jgit.junit</artifactId>
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<feature
|
<feature
|
||||||
id="org.eclipse.jgit"
|
id="org.eclipse.jgit"
|
||||||
label="%featureName"
|
label="%featureName"
|
||||||
version="0.9.0.qualifier"
|
version="0.9.4.qualifier"
|
||||||
provider-name="%providerName">
|
provider-name="%providerName">
|
||||||
|
|
||||||
<description url="http://www.eclipse.org/jgit/">
|
<description url="http://www.eclipse.org/jgit/">
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>jgit.tycho.parent</artifactId>
|
<artifactId>jgit.tycho.parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.feature</artifactId>
|
<artifactId>org.eclipse.jgit.feature</artifactId>
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit</artifactId>
|
<artifactId>org.eclipse.jgit</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<feature
|
<feature
|
||||||
id="org.eclipse.jgit.junit"
|
id="org.eclipse.jgit.junit"
|
||||||
label="%featureName"
|
label="%featureName"
|
||||||
version="0.9.0.qualifier"
|
version="0.9.4.qualifier"
|
||||||
provider-name="%providerName">
|
provider-name="%providerName">
|
||||||
|
|
||||||
<description url="http://www.eclipse.org/jgit/">
|
<description url="http://www.eclipse.org/jgit/">
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>jgit.tycho.parent</artifactId>
|
<artifactId>jgit.tycho.parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.junit.feature</artifactId>
|
<artifactId>org.eclipse.jgit.junit.feature</artifactId>
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit.junit</artifactId>
|
<artifactId>org.eclipse.jgit.junit</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
<feature
|
<feature
|
||||||
id="org.eclipse.jgit.source"
|
id="org.eclipse.jgit.source"
|
||||||
label="%featureName"
|
label="%featureName"
|
||||||
version="0.9.0.qualifier"
|
version="0.9.4.qualifier"
|
||||||
provider-name="%providerName">
|
provider-name="%providerName">
|
||||||
|
|
||||||
<description url="http://www.eclipse.org/jgit/">
|
<description url="http://www.eclipse.org/jgit/">
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>jgit.tycho.parent</artifactId>
|
<artifactId>jgit.tycho.parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.source.feature</artifactId>
|
<artifactId>org.eclipse.jgit.source.feature</artifactId>
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>jgit.tycho.parent</artifactId>
|
<artifactId>jgit.tycho.parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.updatesite</artifactId>
|
<artifactId>org.eclipse.jgit.updatesite</artifactId>
|
||||||
|
@ -58,18 +58,18 @@
|
||||||
|
|
||||||
<name>Eclipse JGit Plugin Update Site (Incubation)</name>
|
<name>Eclipse JGit Plugin Update Site (Incubation)</name>
|
||||||
<!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
|
<!-- see http://issues.sonatype.org/browse/TYCHO-313 -->
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
|
|
||||||
<dependencies>
|
<dependencies>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit</artifactId>
|
<artifactId>org.eclipse.jgit</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit.junit</artifactId>
|
<artifactId>org.eclipse.jgit.junit</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
|
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>jgit.tycho.parent</artifactId>
|
<artifactId>jgit.tycho.parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
|
|
||||||
<name>JGit Tycho Parent (Incubation)</name>
|
<name>JGit Tycho Parent (Incubation)</name>
|
||||||
|
@ -83,7 +83,7 @@
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit</artifactId>
|
<artifactId>org.eclipse.jgit</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
<classifier>sources</classifier>
|
<classifier>sources</classifier>
|
||||||
</dependency>
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
|
@ -2,32 +2,32 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.pgm
|
Bundle-SymbolicName: org.eclipse.jgit.pgm
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Import-Package: org.eclipse.jgit.api;version="[0.9.0,0.10.0)",
|
Import-Package: org.eclipse.jgit.api;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.api.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.api.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.awtui;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.awtui;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.diff;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.diff;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.dircache;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.dircache;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.iplog;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.iplog;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revplot;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revplot;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.pack;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.pack;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)",
|
||||||
org.kohsuke.args4j;version="[2.0.12,2.1.0)",
|
org.kohsuke.args4j;version="[2.0.12,2.1.0)",
|
||||||
org.kohsuke.args4j.spi;version="[2.0.12,2.1.0)"
|
org.kohsuke.args4j.spi;version="[2.0.12,2.1.0)"
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Export-Package: org.eclipse.jgit.pgm;version="0.9.0";
|
Export-Package: org.eclipse.jgit.pgm;version="0.9.4";
|
||||||
uses:="org.eclipse.jgit.lib,
|
uses:="org.eclipse.jgit.lib,
|
||||||
org.eclipse.jgit.nls,
|
org.eclipse.jgit.nls,
|
||||||
org.eclipse.jgit.treewalk,
|
org.eclipse.jgit.treewalk,
|
||||||
|
|
|
@ -50,7 +50,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.pgm</artifactId>
|
<artifactId>org.eclipse.jgit.pgm</artifactId>
|
||||||
|
|
|
@ -49,6 +49,7 @@
|
||||||
|
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.PrintWriter;
|
import java.io.PrintWriter;
|
||||||
|
import java.text.MessageFormat;
|
||||||
|
|
||||||
import org.eclipse.jgit.lib.Constants;
|
import org.eclipse.jgit.lib.Constants;
|
||||||
import org.eclipse.jgit.lib.ObjectId;
|
import org.eclipse.jgit.lib.ObjectId;
|
||||||
|
@ -104,16 +105,19 @@ else if (0 <= lf)
|
||||||
else if (0 <= cr)
|
else if (0 <= cr)
|
||||||
s = cr;
|
s = cr;
|
||||||
else {
|
else {
|
||||||
writer.format(CLIText.get().remoteMessage, pkt);
|
writer.print(MessageFormat.format(CLIText.get().remoteMessage,
|
||||||
|
pkt));
|
||||||
writer.println();
|
writer.println();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (pkt.charAt(s) == '\r') {
|
if (pkt.charAt(s) == '\r') {
|
||||||
writer.format(CLIText.get().remoteMessage, pkt.substring(0, s));
|
writer.print(MessageFormat.format(CLIText.get().remoteMessage,
|
||||||
|
pkt.substring(0, s)));
|
||||||
writer.print('\r');
|
writer.print('\r');
|
||||||
} else {
|
} else {
|
||||||
writer.format(CLIText.get().remoteMessage, pkt.substring(0, s));
|
writer.print(MessageFormat.format(CLIText.get().remoteMessage,
|
||||||
|
pkt.substring(0, s)));
|
||||||
writer.println();
|
writer.println();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -114,7 +114,9 @@ protected void run() throws Exception {
|
||||||
dst.getConfig().save();
|
dst.getConfig().save();
|
||||||
db = dst;
|
db = dst;
|
||||||
|
|
||||||
out.format(CLIText.get().initializedEmptyGitRepositoryIn, gitdir.getAbsolutePath());
|
out.print(MessageFormat.format(
|
||||||
|
CLIText.get().initializedEmptyGitRepositoryIn, gitdir
|
||||||
|
.getAbsolutePath()));
|
||||||
out.println();
|
out.println();
|
||||||
out.flush();
|
out.flush();
|
||||||
|
|
||||||
|
|
|
@ -2,40 +2,40 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.test
|
Bundle-SymbolicName: org.eclipse.jgit.test
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Import-Package: junit.framework;version="[4.0.0,5.0.0)",
|
Import-Package: junit.framework;version="[4.0.0,5.0.0)",
|
||||||
junit.textui;version="[3.8.2,4.0.0)",
|
junit.textui;version="[3.8.2,4.0.0)",
|
||||||
org.eclipse.jgit;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.api;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.api;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.api.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.api.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.awtui;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.awtui;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.console;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.console;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.diff;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.diff;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.dircache;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.dircache;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.errors;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.errors;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.events;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.events;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.fnmatch;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.fnmatch;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.http.server;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.http.server;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.ignore;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.ignore;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.iplog;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.iplog;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.junit;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.junit;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.merge;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.merge;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.patch;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.patch;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.pgm;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.pgm;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revplot;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revplot;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.file;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.file;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.storage.pack;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.storage.pack;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.treewalk.filter;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.treewalk.filter;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util.io;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util.io;version="[0.9.4,0.10.0)"
|
||||||
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.test</artifactId>
|
<artifactId>org.eclipse.jgit.test</artifactId>
|
||||||
|
|
|
@ -0,0 +1,306 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2010, Christian Halstrick <christian.halstrick@sap.com>
|
||||||
|
* and other copyright owners as documented in the project's IP log.
|
||||||
|
*
|
||||||
|
* This program and the accompanying materials are made available
|
||||||
|
* under the terms of the Eclipse Distribution License v1.0 which
|
||||||
|
* accompanies this distribution, is reproduced below, and is
|
||||||
|
* available at http://www.eclipse.org/org/documents/edl-v10.php
|
||||||
|
*
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or
|
||||||
|
* without modification, are permitted provided that the following
|
||||||
|
* conditions are met:
|
||||||
|
*
|
||||||
|
* - Redistributions of source code must retain the above copyright
|
||||||
|
* notice, this list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* - Redistributions in binary form must reproduce the above
|
||||||
|
* copyright notice, this list of conditions and the following
|
||||||
|
* disclaimer in the documentation and/or other materials provided
|
||||||
|
* with the distribution.
|
||||||
|
*
|
||||||
|
* - Neither the name of the Eclipse Foundation, Inc. nor the
|
||||||
|
* names of its contributors may be used to endorse or promote
|
||||||
|
* products derived from this software without specific prior
|
||||||
|
* written permission.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
|
||||||
|
* CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
|
||||||
|
* INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||||
|
* ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
|
||||||
|
* CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||||
|
* SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
|
||||||
|
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
|
||||||
|
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
|
||||||
|
* CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
|
||||||
|
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||||
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||||
|
* ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*/
|
||||||
|
package org.eclipse.jgit.revplot;
|
||||||
|
|
||||||
|
import org.eclipse.jgit.revwalk.RevCommit;
|
||||||
|
import org.eclipse.jgit.revwalk.RevWalkTestCase;
|
||||||
|
|
||||||
|
public class PlotCommitListTest extends RevWalkTestCase {
|
||||||
|
|
||||||
|
class CommitListAssert {
|
||||||
|
private PlotCommitList<PlotLane> pcl;
|
||||||
|
private PlotCommit<PlotLane> current;
|
||||||
|
private int nextIndex = 0;
|
||||||
|
|
||||||
|
CommitListAssert(PlotCommitList<PlotLane> pcl) {
|
||||||
|
this.pcl = pcl;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CommitListAssert commit(RevCommit id) {
|
||||||
|
assertTrue("Unexpected end of list at pos#"+nextIndex, pcl.size()>nextIndex);
|
||||||
|
current = pcl.get(nextIndex++);
|
||||||
|
assertEquals("Expected commit not found at pos#" + (nextIndex - 1),
|
||||||
|
id.getId(), current.getId());
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CommitListAssert lanePos(int pos) {
|
||||||
|
PlotLane lane = current.getLane();
|
||||||
|
assertEquals("Position of lane of commit #" + (nextIndex - 1)
|
||||||
|
+ " not as expected.", pos, lane.getPosition());
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CommitListAssert parents(RevCommit... parents) {
|
||||||
|
assertEquals("Number of parents of commit #" + (nextIndex - 1)
|
||||||
|
+ " not as expected.", parents.length,
|
||||||
|
current.getParentCount());
|
||||||
|
for (int i = 0; i < parents.length; i++)
|
||||||
|
assertEquals("Unexpected parent of commit #" + (nextIndex - 1),
|
||||||
|
parents[i], current.getParent(i));
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
|
||||||
|
public CommitListAssert noMoreCommits() {
|
||||||
|
assertEquals("Unexpected size of list", nextIndex, pcl.size());
|
||||||
|
return this;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("boxing")
|
||||||
|
public void testLinear() throws Exception {
|
||||||
|
final RevCommit a = commit();
|
||||||
|
final RevCommit b = commit(a);
|
||||||
|
final RevCommit c = commit(b);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
pw.markStart(pw.lookupCommit(c.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
test.commit(c).lanePos(0).parents(b);
|
||||||
|
test.commit(b).lanePos(0).parents(a);
|
||||||
|
test.commit(a).lanePos(0).parents();
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("boxing")
|
||||||
|
public void testMerged() throws Exception {
|
||||||
|
final RevCommit a = commit();
|
||||||
|
final RevCommit b = commit(a);
|
||||||
|
final RevCommit c = commit(a);
|
||||||
|
final RevCommit d = commit(b, c);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
pw.markStart(pw.lookupCommit(d.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
test.commit(d).lanePos(0).parents(b, c);
|
||||||
|
test.commit(c).lanePos(0).parents(a);
|
||||||
|
test.commit(b).lanePos(1).parents(a);
|
||||||
|
test.commit(a).lanePos(0).parents();
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("boxing")
|
||||||
|
public void testSideBranch() throws Exception {
|
||||||
|
final RevCommit a = commit();
|
||||||
|
final RevCommit b = commit(a);
|
||||||
|
final RevCommit c = commit(a);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
pw.markStart(pw.lookupCommit(b.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(c.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
test.commit(c).lanePos(0).parents(a);
|
||||||
|
test.commit(b).lanePos(1).parents(a);
|
||||||
|
test.commit(a).lanePos(0).parents();
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("boxing")
|
||||||
|
public void test2SideBranches() throws Exception {
|
||||||
|
final RevCommit a = commit();
|
||||||
|
final RevCommit b = commit(a);
|
||||||
|
final RevCommit c = commit(a);
|
||||||
|
final RevCommit d = commit(a);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
pw.markStart(pw.lookupCommit(b.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(c.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(d.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
test.commit(d).lanePos(0).parents(a);
|
||||||
|
test.commit(c).lanePos(1).parents(a);
|
||||||
|
test.commit(b).lanePos(1).parents(a);
|
||||||
|
test.commit(a).lanePos(0).parents();
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("boxing")
|
||||||
|
public void testBug300282_1() throws Exception {
|
||||||
|
final RevCommit a = commit();
|
||||||
|
final RevCommit b = commit(a);
|
||||||
|
final RevCommit c = commit(a);
|
||||||
|
final RevCommit d = commit(a);
|
||||||
|
final RevCommit e = commit(a);
|
||||||
|
final RevCommit f = commit(a);
|
||||||
|
final RevCommit g = commit(f);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
// TODO: when we add unnecessary commit's as tips (e.g. a commit which
|
||||||
|
// is a parent of another tip) the walk will return those commits twice.
|
||||||
|
// Find out why!
|
||||||
|
// pw.markStart(pw.lookupCommit(a.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(b.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(c.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(d.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(e.getId()));
|
||||||
|
// pw.markStart(pw.lookupCommit(f.getId()));
|
||||||
|
pw.markStart(pw.lookupCommit(g.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
test.commit(g).lanePos(0).parents(f);
|
||||||
|
test.commit(f).lanePos(0).parents(a);
|
||||||
|
test.commit(e).lanePos(1).parents(a);
|
||||||
|
test.commit(d).lanePos(1).parents(a);
|
||||||
|
test.commit(c).lanePos(1).parents(a);
|
||||||
|
test.commit(b).lanePos(1).parents(a);
|
||||||
|
test.commit(a).lanePos(0).parents();
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
|
||||||
|
// test the history of the egit project between 9fdaf3c1 and e76ad9170f
|
||||||
|
public void testEgitHistory() throws Exception {
|
||||||
|
final RevCommit merge_fix = commit();
|
||||||
|
final RevCommit add_simple = commit(merge_fix);
|
||||||
|
final RevCommit remove_unused = commit(merge_fix);
|
||||||
|
final RevCommit merge_remove = commit(add_simple, remove_unused);
|
||||||
|
final RevCommit resolve_handler = commit(merge_fix);
|
||||||
|
final RevCommit clear_repositorycache = commit(merge_remove);
|
||||||
|
final RevCommit add_Maven = commit(clear_repositorycache);
|
||||||
|
final RevCommit use_remote = commit(clear_repositorycache);
|
||||||
|
final RevCommit findToolBar_layout = commit(clear_repositorycache);
|
||||||
|
final RevCommit merge_add_Maven = commit(findToolBar_layout, add_Maven);
|
||||||
|
final RevCommit update_eclipse_iplog = commit(merge_add_Maven);
|
||||||
|
final RevCommit changeset_implementation = commit(clear_repositorycache);
|
||||||
|
final RevCommit merge_use_remote = commit(update_eclipse_iplog,
|
||||||
|
use_remote);
|
||||||
|
final RevCommit disable_source = commit(merge_use_remote);
|
||||||
|
final RevCommit update_eclipse_iplog2 = commit(merge_use_remote);
|
||||||
|
final RevCommit merge_disable_source = commit(update_eclipse_iplog2,
|
||||||
|
disable_source);
|
||||||
|
final RevCommit merge_changeset_implementation = commit(
|
||||||
|
merge_disable_source, changeset_implementation);
|
||||||
|
final RevCommit clone_operation = commit(merge_disable_source,
|
||||||
|
merge_changeset_implementation);
|
||||||
|
final RevCommit update_eclipse = commit(add_Maven);
|
||||||
|
final RevCommit merge_resolve_handler = commit(clone_operation,
|
||||||
|
resolve_handler);
|
||||||
|
final RevCommit disable_comment = commit(clone_operation);
|
||||||
|
final RevCommit merge_disable_comment = commit(merge_resolve_handler,
|
||||||
|
disable_comment);
|
||||||
|
final RevCommit fix_broken = commit(merge_disable_comment);
|
||||||
|
final RevCommit add_a_clear = commit(fix_broken);
|
||||||
|
final RevCommit merge_update_eclipse = commit(add_a_clear,
|
||||||
|
update_eclipse);
|
||||||
|
final RevCommit sort_roots = commit(merge_update_eclipse);
|
||||||
|
final RevCommit fix_logged_npe = commit(merge_changeset_implementation);
|
||||||
|
final RevCommit merge_fixed_logged_npe = commit(sort_roots,
|
||||||
|
fix_logged_npe);
|
||||||
|
|
||||||
|
PlotWalk pw = new PlotWalk(db);
|
||||||
|
pw.markStart(pw.lookupCommit(merge_fixed_logged_npe.getId()));
|
||||||
|
|
||||||
|
PlotCommitList<PlotLane> pcl = new PlotCommitList<PlotLane>();
|
||||||
|
pcl.source(pw);
|
||||||
|
pcl.fillTo(Integer.MAX_VALUE);
|
||||||
|
|
||||||
|
CommitListAssert test = new CommitListAssert(pcl);
|
||||||
|
|
||||||
|
test.commit(merge_fixed_logged_npe).parents(sort_roots, fix_logged_npe)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(fix_logged_npe).parents(merge_changeset_implementation)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(sort_roots).parents(merge_update_eclipse).lanePos(1);
|
||||||
|
test.commit(merge_update_eclipse).parents(add_a_clear, update_eclipse)
|
||||||
|
.lanePos(1);
|
||||||
|
test.commit(add_a_clear).parents(fix_broken).lanePos(1);
|
||||||
|
test.commit(fix_broken).parents(merge_disable_comment).lanePos(1);
|
||||||
|
test.commit(merge_disable_comment)
|
||||||
|
.parents(merge_resolve_handler, disable_comment).lanePos(1);
|
||||||
|
test.commit(disable_comment).parents(clone_operation).lanePos(1);
|
||||||
|
test.commit(merge_resolve_handler)
|
||||||
|
.parents(clone_operation, resolve_handler).lanePos(2);
|
||||||
|
test.commit(update_eclipse).parents(add_Maven).lanePos(3);
|
||||||
|
test.commit(clone_operation)
|
||||||
|
.parents(merge_disable_source, merge_changeset_implementation)
|
||||||
|
.lanePos(1);
|
||||||
|
test.commit(merge_changeset_implementation)
|
||||||
|
.parents(merge_disable_source, changeset_implementation)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(merge_disable_source)
|
||||||
|
.parents(update_eclipse_iplog2, disable_source).lanePos(1);
|
||||||
|
test.commit(update_eclipse_iplog2).parents(merge_use_remote).lanePos(0);
|
||||||
|
test.commit(disable_source).parents(merge_use_remote).lanePos(1);
|
||||||
|
test.commit(merge_use_remote).parents(update_eclipse_iplog, use_remote)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(changeset_implementation).parents(clear_repositorycache)
|
||||||
|
.lanePos(2);
|
||||||
|
test.commit(update_eclipse_iplog).parents(merge_add_Maven).lanePos(0);
|
||||||
|
test.commit(merge_add_Maven).parents(findToolBar_layout, add_Maven)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(findToolBar_layout).parents(clear_repositorycache)
|
||||||
|
.lanePos(0);
|
||||||
|
test.commit(use_remote).parents(clear_repositorycache).lanePos(1);
|
||||||
|
test.commit(add_Maven).parents(clear_repositorycache).lanePos(3);
|
||||||
|
test.commit(clear_repositorycache).parents(merge_remove).lanePos(2);
|
||||||
|
test.commit(resolve_handler).parents(merge_fix).lanePos(4);
|
||||||
|
test.commit(merge_remove).parents(add_simple, remove_unused).lanePos(2);
|
||||||
|
test.commit(remove_unused).parents(merge_fix).lanePos(0);
|
||||||
|
test.commit(add_simple).parents(merge_fix).lanePos(1);
|
||||||
|
test.commit(merge_fix).parents().lanePos(3);
|
||||||
|
test.noMoreCommits();
|
||||||
|
}
|
||||||
|
}
|
|
@ -3,14 +3,14 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit.ui
|
Bundle-SymbolicName: org.eclipse.jgit.ui
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Export-Package: org.eclipse.jgit.awtui;version="0.9.0"
|
Export-Package: org.eclipse.jgit.awtui;version="0.9.4"
|
||||||
Import-Package: org.eclipse.jgit.lib;version="[0.9.0,0.10.0)",
|
Import-Package: org.eclipse.jgit.lib;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.nls;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.nls;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revplot;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revplot;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.revwalk;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.revwalk;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.transport;version="[0.9.0,0.10.0)",
|
org.eclipse.jgit.transport;version="[0.9.4,0.10.0)",
|
||||||
org.eclipse.jgit.util;version="[0.9.0,0.10.0)"
|
org.eclipse.jgit.util;version="[0.9.4,0.10.0)"
|
||||||
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
||||||
|
|
|
@ -52,7 +52,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit.ui</artifactId>
|
<artifactId>org.eclipse.jgit.ui</artifactId>
|
||||||
|
|
|
@ -2,32 +2,32 @@ Manifest-Version: 1.0
|
||||||
Bundle-ManifestVersion: 2
|
Bundle-ManifestVersion: 2
|
||||||
Bundle-Name: %plugin_name
|
Bundle-Name: %plugin_name
|
||||||
Bundle-SymbolicName: org.eclipse.jgit
|
Bundle-SymbolicName: org.eclipse.jgit
|
||||||
Bundle-Version: 0.9.0.qualifier
|
Bundle-Version: 0.9.4.qualifier
|
||||||
Bundle-Localization: plugin
|
Bundle-Localization: plugin
|
||||||
Bundle-Vendor: %provider_name
|
Bundle-Vendor: %provider_name
|
||||||
Export-Package: org.eclipse.jgit;version="0.9.0",
|
Export-Package: org.eclipse.jgit;version="0.9.4",
|
||||||
org.eclipse.jgit.api;version="0.9.0",
|
org.eclipse.jgit.api;version="0.9.4",
|
||||||
org.eclipse.jgit.api.errors;version="0.9.0",
|
org.eclipse.jgit.api.errors;version="0.9.4",
|
||||||
org.eclipse.jgit.diff;version="0.9.0",
|
org.eclipse.jgit.diff;version="0.9.4",
|
||||||
org.eclipse.jgit.dircache;version="0.9.0",
|
org.eclipse.jgit.dircache;version="0.9.4",
|
||||||
org.eclipse.jgit.errors;version="0.9.0",
|
org.eclipse.jgit.errors;version="0.9.4",
|
||||||
org.eclipse.jgit.events;version="0.9.0",
|
org.eclipse.jgit.events;version="0.9.4",
|
||||||
org.eclipse.jgit.fnmatch;version="0.9.0",
|
org.eclipse.jgit.fnmatch;version="0.9.4",
|
||||||
org.eclipse.jgit.ignore;version="0.9.0",
|
org.eclipse.jgit.ignore;version="0.9.4",
|
||||||
org.eclipse.jgit.lib;version="0.9.0",
|
org.eclipse.jgit.lib;version="0.9.4",
|
||||||
org.eclipse.jgit.merge;version="0.9.0",
|
org.eclipse.jgit.merge;version="0.9.4",
|
||||||
org.eclipse.jgit.nls;version="0.9.0",
|
org.eclipse.jgit.nls;version="0.9.4",
|
||||||
org.eclipse.jgit.patch;version="0.9.0",
|
org.eclipse.jgit.patch;version="0.9.4",
|
||||||
org.eclipse.jgit.revplot;version="0.9.0",
|
org.eclipse.jgit.revplot;version="0.9.4",
|
||||||
org.eclipse.jgit.revwalk;version="0.9.0",
|
org.eclipse.jgit.revwalk;version="0.9.4",
|
||||||
org.eclipse.jgit.revwalk.filter;version="0.9.0",
|
org.eclipse.jgit.revwalk.filter;version="0.9.4",
|
||||||
org.eclipse.jgit.storage.file;version="0.9.0",
|
org.eclipse.jgit.storage.file;version="0.9.4",
|
||||||
org.eclipse.jgit.storage.pack;version="0.9.0",
|
org.eclipse.jgit.storage.pack;version="0.9.4",
|
||||||
org.eclipse.jgit.transport;version="0.9.0",
|
org.eclipse.jgit.transport;version="0.9.4",
|
||||||
org.eclipse.jgit.treewalk;version="0.9.0",
|
org.eclipse.jgit.treewalk;version="0.9.4",
|
||||||
org.eclipse.jgit.treewalk.filter;version="0.9.0",
|
org.eclipse.jgit.treewalk.filter;version="0.9.4",
|
||||||
org.eclipse.jgit.util;version="0.9.0",
|
org.eclipse.jgit.util;version="0.9.4",
|
||||||
org.eclipse.jgit.util.io;version="0.9.0"
|
org.eclipse.jgit.util.io;version="0.9.4"
|
||||||
Bundle-ActivationPolicy: lazy
|
Bundle-ActivationPolicy: lazy
|
||||||
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
Bundle-RequiredExecutionEnvironment: J2SE-1.5
|
||||||
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
Require-Bundle: com.jcraft.jsch;bundle-version="[0.1.37,0.2.0)"
|
||||||
|
|
|
@ -53,7 +53,7 @@
|
||||||
<parent>
|
<parent>
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
</parent>
|
</parent>
|
||||||
|
|
||||||
<artifactId>org.eclipse.jgit</artifactId>
|
<artifactId>org.eclipse.jgit</artifactId>
|
||||||
|
|
|
@ -1,5 +1,6 @@
|
||||||
/*
|
/*
|
||||||
* Copyright (C) 2008, Shawn O. Pearce <spearce@spearce.org>
|
* Copyright (C) 2008, Shawn O. Pearce <spearce@spearce.org>,
|
||||||
|
* Copyright (C) 2010, Christian Halstrick <christian.halstrick@sap.com>
|
||||||
* and other copyright owners as documented in the project's IP log.
|
* and other copyright owners as documented in the project's IP log.
|
||||||
*
|
*
|
||||||
* This program and the accompanying materials are made available
|
* This program and the accompanying materials are made available
|
||||||
|
@ -44,6 +45,7 @@
|
||||||
package org.eclipse.jgit.revplot;
|
package org.eclipse.jgit.revplot;
|
||||||
|
|
||||||
import java.text.MessageFormat;
|
import java.text.MessageFormat;
|
||||||
|
import java.util.BitSet;
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.HashSet;
|
import java.util.HashSet;
|
||||||
import java.util.TreeSet;
|
import java.util.TreeSet;
|
||||||
|
@ -68,17 +70,17 @@ public class PlotCommitList<L extends PlotLane> extends
|
||||||
RevCommitList<PlotCommit<L>> {
|
RevCommitList<PlotCommit<L>> {
|
||||||
static final int MAX_LENGTH = 25;
|
static final int MAX_LENGTH = 25;
|
||||||
|
|
||||||
private int lanesAllocated;
|
private int positionsAllocated;
|
||||||
|
|
||||||
private final TreeSet<Integer> freeLanes = new TreeSet<Integer>();
|
private final TreeSet<Integer> freePositions = new TreeSet<Integer>();
|
||||||
|
|
||||||
private final HashSet<PlotLane> activeLanes = new HashSet<PlotLane>(32);
|
private final HashSet<PlotLane> activeLanes = new HashSet<PlotLane>(32);
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void clear() {
|
public void clear() {
|
||||||
super.clear();
|
super.clear();
|
||||||
lanesAllocated = 0;
|
positionsAllocated = 0;
|
||||||
freeLanes.clear();
|
freePositions.clear();
|
||||||
activeLanes.clear();
|
activeLanes.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -131,40 +133,102 @@ protected void enter(final int index, final PlotCommit<L> currCommit) {
|
||||||
c.lane = nextFreeLane();
|
c.lane = nextFreeLane();
|
||||||
activeLanes.add(c.lane);
|
activeLanes.add(c.lane);
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int r = index - 1; r >= 0; r--) {
|
for (int r = index - 1; r >= 0; r--) {
|
||||||
final PlotCommit rObj = get(r);
|
final PlotCommit rObj = get(r);
|
||||||
if (rObj == c)
|
if (rObj == c)
|
||||||
break;
|
break;
|
||||||
rObj.addPassingLane(c.lane);
|
rObj.addPassingLane(c.lane);
|
||||||
}
|
}
|
||||||
|
|
||||||
currCommit.lane = c.lane;
|
currCommit.lane = c.lane;
|
||||||
} else {
|
} else {
|
||||||
// More than one child, or our child is a merge.
|
// More than one child, or our child is a merge.
|
||||||
// Use a different lane.
|
// Use a different lane.
|
||||||
//
|
//
|
||||||
|
|
||||||
|
// Process all our children. Especially important when there is more
|
||||||
|
// than one child (e.g. a commit is processed where other branches
|
||||||
|
// fork out). For each child the following is done
|
||||||
|
// 1. If no lane was assigned to the child a new lane is created and
|
||||||
|
// assigned
|
||||||
|
// 2. The lane of the child is closed. If this frees a position,
|
||||||
|
// this position will be added freePositions list.
|
||||||
|
// If we have multiple children which where previously not on a lane
|
||||||
|
// each such child will get his own new lane but all those new lanes
|
||||||
|
// will be on the same position. We have to take care that not
|
||||||
|
// multiple newly created (in step 1) lanes occupy that position on
|
||||||
|
// which the
|
||||||
|
// parent's lane will be on. Therefore we delay closing the lane
|
||||||
|
// with the parents position until all children are processed.
|
||||||
|
|
||||||
|
// The lane on that position the current commit will be on
|
||||||
|
PlotLane reservedLane = null;
|
||||||
|
|
||||||
for (int i = 0; i < nChildren; i++) {
|
for (int i = 0; i < nChildren; i++) {
|
||||||
final PlotCommit c = currCommit.children[i];
|
final PlotCommit c = currCommit.children[i];
|
||||||
if (activeLanes.remove(c.lane)) {
|
// don't forget to position all of your children if they are
|
||||||
recycleLane((L) c.lane);
|
// not already positioned.
|
||||||
freeLanes.add(Integer.valueOf(c.lane.getPosition()));
|
if (c.lane == null) {
|
||||||
}
|
c.lane = nextFreeLane();
|
||||||
|
activeLanes.add(c.lane);
|
||||||
|
if (reservedLane != null)
|
||||||
|
closeLane(c.lane);
|
||||||
|
else
|
||||||
|
reservedLane = c.lane;
|
||||||
|
} else if (reservedLane == null && activeLanes.contains(c.lane))
|
||||||
|
reservedLane = c.lane;
|
||||||
|
else
|
||||||
|
closeLane(c.lane);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// finally all children are processed. We can close the lane on that
|
||||||
|
// position our current commit will be on.
|
||||||
|
if (reservedLane != null)
|
||||||
|
closeLane(reservedLane);
|
||||||
|
|
||||||
currCommit.lane = nextFreeLane();
|
currCommit.lane = nextFreeLane();
|
||||||
activeLanes.add(currCommit.lane);
|
activeLanes.add(currCommit.lane);
|
||||||
|
|
||||||
|
// take care: when connecting yourself to your child make sure that
|
||||||
|
// you will not be located on a lane on which a passed commit is
|
||||||
|
// located on. Otherwise we would have to draw a line through a
|
||||||
|
// commit.
|
||||||
int remaining = nChildren;
|
int remaining = nChildren;
|
||||||
|
BitSet blockedPositions = new BitSet();
|
||||||
for (int r = index - 1; r >= 0; r--) {
|
for (int r = index - 1; r >= 0; r--) {
|
||||||
final PlotCommit rObj = get(r);
|
final PlotCommit rObj = get(r);
|
||||||
if (currCommit.isChild(rObj)) {
|
if (currCommit.isChild(rObj)) {
|
||||||
if (--remaining == 0)
|
if (--remaining == 0)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
if (rObj != null) {
|
||||||
|
PlotLane lane = rObj.getLane();
|
||||||
|
if (lane != null)
|
||||||
|
blockedPositions.set(lane.getPosition());
|
||||||
rObj.addPassingLane(currCommit.lane);
|
rObj.addPassingLane(currCommit.lane);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// Now let's check whether we have to reposition the lane
|
||||||
|
if (blockedPositions.get(currCommit.lane.getPosition())) {
|
||||||
|
int newPos = -1;
|
||||||
|
for (Integer pos : freePositions)
|
||||||
|
if (!blockedPositions.get(pos)) {
|
||||||
|
newPos = pos;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
if (newPos == -1)
|
||||||
|
newPos = positionsAllocated++;
|
||||||
|
freePositions.add(currCommit.lane.getPosition());
|
||||||
|
currCommit.lane.position = newPos;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void closeLane(PlotLane lane) {
|
||||||
|
recycleLane((L) lane);
|
||||||
|
if (activeLanes.remove(lane)) {
|
||||||
|
freePositions.add(Integer.valueOf(lane.getPosition()));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void setupChildren(final PlotCommit<L> currCommit) {
|
private void setupChildren(final PlotCommit<L> currCommit) {
|
||||||
|
@ -175,12 +239,12 @@ private void setupChildren(final PlotCommit<L> currCommit) {
|
||||||
|
|
||||||
private PlotLane nextFreeLane() {
|
private PlotLane nextFreeLane() {
|
||||||
final PlotLane p = createLane();
|
final PlotLane p = createLane();
|
||||||
if (freeLanes.isEmpty()) {
|
if (freePositions.isEmpty()) {
|
||||||
p.position = lanesAllocated++;
|
p.position = positionsAllocated++;
|
||||||
} else {
|
} else {
|
||||||
final Integer min = freeLanes.first();
|
final Integer min = freePositions.first();
|
||||||
p.position = min.intValue();
|
p.position = min.intValue();
|
||||||
freeLanes.remove(min);
|
freePositions.remove(min);
|
||||||
}
|
}
|
||||||
return p;
|
return p;
|
||||||
}
|
}
|
||||||
|
|
|
@ -213,8 +213,22 @@ long getObjectSize2(WindowCursor curs, String objectName, AnyObjectId objectId)
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean insertUnpackedObject(File tmp, ObjectId objectId, boolean force) {
|
InsertLooseObjectResult insertUnpackedObject(File tmp, ObjectId objectId,
|
||||||
return wrapped.insertUnpackedObject(tmp, objectId, force);
|
boolean createDuplicate) {
|
||||||
|
InsertLooseObjectResult result = wrapped.insertUnpackedObject(tmp,
|
||||||
|
objectId, createDuplicate);
|
||||||
|
switch (result) {
|
||||||
|
case INSERTED:
|
||||||
|
case EXISTS_LOOSE:
|
||||||
|
if (!unpackedObjects.contains(objectId))
|
||||||
|
unpackedObjects.add(objectId);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case EXISTS_PACKED:
|
||||||
|
case FAILURE:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
@ -57,6 +57,10 @@
|
||||||
import org.eclipse.jgit.storage.pack.PackWriter;
|
import org.eclipse.jgit.storage.pack.PackWriter;
|
||||||
|
|
||||||
abstract class FileObjectDatabase extends ObjectDatabase {
|
abstract class FileObjectDatabase extends ObjectDatabase {
|
||||||
|
static enum InsertLooseObjectResult {
|
||||||
|
INSERTED, EXISTS_PACKED, EXISTS_LOOSE, FAILURE;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public ObjectReader newReader() {
|
public ObjectReader newReader() {
|
||||||
return new WindowCursor(this);
|
return new WindowCursor(this);
|
||||||
|
@ -249,7 +253,8 @@ abstract long getObjectSize1(WindowCursor curs, AnyObjectId objectId)
|
||||||
abstract long getObjectSize2(WindowCursor curs, String objectName,
|
abstract long getObjectSize2(WindowCursor curs, String objectName,
|
||||||
AnyObjectId objectId) throws IOException;
|
AnyObjectId objectId) throws IOException;
|
||||||
|
|
||||||
abstract boolean insertUnpackedObject(File tmp, ObjectId id, boolean force);
|
abstract InsertLooseObjectResult insertUnpackedObject(File tmp,
|
||||||
|
ObjectId id, boolean createDuplicate);
|
||||||
|
|
||||||
abstract FileObjectDatabase newCachedFileObjectDatabase();
|
abstract FileObjectDatabase newCachedFileObjectDatabase();
|
||||||
|
|
||||||
|
|
|
@ -455,23 +455,33 @@ ObjectLoader openObject2(final WindowCursor curs,
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
boolean insertUnpackedObject(File tmp, ObjectId id, boolean force) {
|
InsertLooseObjectResult insertUnpackedObject(File tmp, ObjectId id,
|
||||||
if (!force && has(id)) {
|
boolean createDuplicate) {
|
||||||
// Object is already in the repository, remove temporary file.
|
// If the object is already in the repository, remove temporary file.
|
||||||
//
|
//
|
||||||
|
if (unpackedObjectCache.isUnpacked(id)) {
|
||||||
tmp.delete();
|
tmp.delete();
|
||||||
return true;
|
return InsertLooseObjectResult.EXISTS_LOOSE;
|
||||||
}
|
}
|
||||||
|
if (!createDuplicate && has(id)) {
|
||||||
|
tmp.delete();
|
||||||
|
return InsertLooseObjectResult.EXISTS_PACKED;
|
||||||
|
}
|
||||||
|
|
||||||
tmp.setReadOnly();
|
tmp.setReadOnly();
|
||||||
|
|
||||||
final File dst = fileFor(id);
|
final File dst = fileFor(id);
|
||||||
if (force && dst.exists()) {
|
if (dst.exists()) {
|
||||||
|
// We want to be extra careful and avoid replacing an object
|
||||||
|
// that already exists. We can't be sure renameTo() would
|
||||||
|
// fail on all platforms if dst exists, so we check first.
|
||||||
|
//
|
||||||
tmp.delete();
|
tmp.delete();
|
||||||
return true;
|
return InsertLooseObjectResult.EXISTS_LOOSE;
|
||||||
}
|
}
|
||||||
if (tmp.renameTo(dst)) {
|
if (tmp.renameTo(dst)) {
|
||||||
unpackedObjectCache.add(id);
|
unpackedObjectCache.add(id);
|
||||||
return true;
|
return InsertLooseObjectResult.INSERTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
// Maybe the directory doesn't exist yet as the object
|
// Maybe the directory doesn't exist yet as the object
|
||||||
|
@ -481,12 +491,12 @@ boolean insertUnpackedObject(File tmp, ObjectId id, boolean force) {
|
||||||
dst.getParentFile().mkdir();
|
dst.getParentFile().mkdir();
|
||||||
if (tmp.renameTo(dst)) {
|
if (tmp.renameTo(dst)) {
|
||||||
unpackedObjectCache.add(id);
|
unpackedObjectCache.add(id);
|
||||||
return true;
|
return InsertLooseObjectResult.INSERTED;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!force && has(id)) {
|
if (!createDuplicate && has(id)) {
|
||||||
tmp.delete();
|
tmp.delete();
|
||||||
return true;
|
return InsertLooseObjectResult.EXISTS_PACKED;
|
||||||
}
|
}
|
||||||
|
|
||||||
// The object failed to be renamed into its proper
|
// The object failed to be renamed into its proper
|
||||||
|
@ -495,7 +505,7 @@ boolean insertUnpackedObject(File tmp, ObjectId id, boolean force) {
|
||||||
// fail.
|
// fail.
|
||||||
//
|
//
|
||||||
tmp.delete();
|
tmp.delete();
|
||||||
return false;
|
return InsertLooseObjectResult.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
boolean tryAgain1() {
|
boolean tryAgain1() {
|
||||||
|
|
|
@ -83,9 +83,18 @@ public ObjectId insert(final int type, long len, final InputStream is)
|
||||||
final MessageDigest md = digest();
|
final MessageDigest md = digest();
|
||||||
final File tmp = toTemp(md, type, len, is);
|
final File tmp = toTemp(md, type, len, is);
|
||||||
final ObjectId id = ObjectId.fromRaw(md.digest());
|
final ObjectId id = ObjectId.fromRaw(md.digest());
|
||||||
if (db.insertUnpackedObject(tmp, id, false /* no duplicate */))
|
|
||||||
|
switch (db.insertUnpackedObject(tmp, id, false /* no duplicate */)) {
|
||||||
|
case INSERTED:
|
||||||
|
case EXISTS_PACKED:
|
||||||
|
case EXISTS_LOOSE:
|
||||||
return id;
|
return id;
|
||||||
|
|
||||||
|
case FAILURE:
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
final File dst = db.fileFor(id);
|
final File dst = db.fileFor(id);
|
||||||
throw new ObjectWritingException("Unable to create new object: " + dst);
|
throw new ObjectWritingException("Unable to create new object: " + dst);
|
||||||
}
|
}
|
||||||
|
|
2
pom.xml
2
pom.xml
|
@ -50,7 +50,7 @@
|
||||||
<groupId>org.eclipse.jgit</groupId>
|
<groupId>org.eclipse.jgit</groupId>
|
||||||
<artifactId>org.eclipse.jgit-parent</artifactId>
|
<artifactId>org.eclipse.jgit-parent</artifactId>
|
||||||
<packaging>pom</packaging>
|
<packaging>pom</packaging>
|
||||||
<version>0.9.0-SNAPSHOT</version>
|
<version>0.9.4-SNAPSHOT</version>
|
||||||
|
|
||||||
<name>JGit - Parent</name>
|
<name>JGit - Parent</name>
|
||||||
<url>${jgit-url}</url>
|
<url>${jgit-url}</url>
|
||||||
|
|
Loading…
Reference in New Issue