Change-Id: I61c9c173237a535da8576a9299bfd4bb29e8f56b Signed-off-by: Matthias Sohn <matthias.sohn@sap.com>tags/v3.0.0.201305080800-m7
source.. = src/ | |||||
output.. = bin/ | |||||
bin.includes = META-INF/,\ | |||||
.,\ | |||||
plugin.properties | |||||
source.. = src/ | |||||
output.. = bin/ | |||||
bin.includes = META-INF/,\ | |||||
.,\ | |||||
plugin.properties |
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!-- | |||||
Copyright (C) 2010, Jens Baumgart <jens.baumgart@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. | |||||
--> | |||||
<project xmlns="http://maven.apache.org/POM/4.0.0" | |||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | |||||
<modelVersion>4.0.0</modelVersion> | |||||
<parent> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit-parent</artifactId> | |||||
<version>3.0.0-SNAPSHOT</version> | |||||
</parent> | |||||
<artifactId>org.eclipse.jgit.junit.http</artifactId> | |||||
<name>JGit - JUnit Http Utility Classes</name> | |||||
<description> | |||||
Utility classes to support Http based JUnit testing of JGit applications. | |||||
</description> | |||||
<properties> | |||||
<translate-qualifier/> | |||||
</properties> | |||||
<dependencies> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>junit</groupId> | |||||
<artifactId>junit</artifactId> | |||||
<scope>provided</scope> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit.http.server</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit.junit</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jetty</groupId> | |||||
<artifactId>jetty-servlet</artifactId> | |||||
</dependency> | |||||
</dependencies> | |||||
<build> | |||||
<sourceDirectory>src/</sourceDirectory> | |||||
<resources> | |||||
<resource> | |||||
<directory>.</directory> | |||||
<includes> | |||||
<include>plugin.properties</include> | |||||
</includes> | |||||
</resource> | |||||
</resources> | |||||
<plugins> | |||||
<plugin> | |||||
<artifactId>maven-jar-plugin</artifactId> | |||||
<configuration> | |||||
<archive> | |||||
<manifestFile>${bundle-manifest}</manifestFile> | |||||
</archive> | |||||
</configuration> | |||||
</plugin> | |||||
</plugins> | |||||
</build> | |||||
</project> | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<!-- | |||||
Copyright (C) 2010, Jens Baumgart <jens.baumgart@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. | |||||
--> | |||||
<project xmlns="http://maven.apache.org/POM/4.0.0" | |||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> | |||||
<modelVersion>4.0.0</modelVersion> | |||||
<parent> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit-parent</artifactId> | |||||
<version>3.0.0-SNAPSHOT</version> | |||||
</parent> | |||||
<artifactId>org.eclipse.jgit.junit.http</artifactId> | |||||
<name>JGit - JUnit Http Utility Classes</name> | |||||
<description> | |||||
Utility classes to support Http based JUnit testing of JGit applications. | |||||
</description> | |||||
<properties> | |||||
<translate-qualifier/> | |||||
</properties> | |||||
<dependencies> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>junit</groupId> | |||||
<artifactId>junit</artifactId> | |||||
<scope>provided</scope> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit.http.server</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jgit</groupId> | |||||
<artifactId>org.eclipse.jgit.junit</artifactId> | |||||
<version>${project.version}</version> | |||||
</dependency> | |||||
<dependency> | |||||
<groupId>org.eclipse.jetty</groupId> | |||||
<artifactId>jetty-servlet</artifactId> | |||||
</dependency> | |||||
</dependencies> | |||||
<build> | |||||
<sourceDirectory>src/</sourceDirectory> | |||||
<resources> | |||||
<resource> | |||||
<directory>.</directory> | |||||
<includes> | |||||
<include>plugin.properties</include> | |||||
</includes> | |||||
</resource> | |||||
</resources> | |||||
<plugins> | |||||
<plugin> | |||||
<artifactId>maven-jar-plugin</artifactId> | |||||
<configuration> | |||||
<archive> | |||||
<manifestFile>${bundle-manifest}</manifestFile> | |||||
</archive> | |||||
</configuration> | |||||
</plugin> | |||||
</plugins> | |||||
</build> | |||||
</project> |
<?xml version="1.0" encoding="UTF-8"?> | |||||
<feature | |||||
id="org.eclipse.jgit.junit" | |||||
label="%featureName" | |||||
version="3.0.0.qualifier" | |||||
provider-name="%providerName"> | |||||
<description url="http://www.eclipse.org/jgit/"> | |||||
%description | |||||
</description> | |||||
<copyright> | |||||
%copyright | |||||
</copyright> | |||||
<license url="%licenseURL"> | |||||
%license | |||||
</license> | |||||
<url> | |||||
<update label="%updateSiteName" url="http://download.eclipse.org/egit/updates"/> | |||||
<discovery label="%updateSiteName" url="http://download.eclipse.org/egit/updates"/> | |||||
</url> | |||||
<requires> | |||||
<import plugin="com.jcraft.jsch"/> | |||||
</requires> | |||||
<plugin | |||||
id="org.eclipse.jgit.junit" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0" | |||||
unpack="false"/> | |||||
<plugin | |||||
id="org.eclipse.jgit.junit.http" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0"/> | |||||
<plugin | |||||
id="org.eclipse.jgit.http.server" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0"/> | |||||
</feature> | |||||
<?xml version="1.0" encoding="UTF-8"?> | |||||
<feature | |||||
id="org.eclipse.jgit.junit" | |||||
label="%featureName" | |||||
version="3.0.0.qualifier" | |||||
provider-name="%providerName"> | |||||
<description url="http://www.eclipse.org/jgit/"> | |||||
%description | |||||
</description> | |||||
<copyright> | |||||
%copyright | |||||
</copyright> | |||||
<license url="%licenseURL"> | |||||
%license | |||||
</license> | |||||
<url> | |||||
<update label="%updateSiteName" url="http://download.eclipse.org/egit/updates"/> | |||||
<discovery label="%updateSiteName" url="http://download.eclipse.org/egit/updates"/> | |||||
</url> | |||||
<requires> | |||||
<import plugin="com.jcraft.jsch"/> | |||||
</requires> | |||||
<plugin | |||||
id="org.eclipse.jgit.junit" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0" | |||||
unpack="false"/> | |||||
<plugin | |||||
id="org.eclipse.jgit.junit.http" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0"/> | |||||
<plugin | |||||
id="org.eclipse.jgit.http.server" | |||||
download-size="0" | |||||
install-size="0" | |||||
version="0.0.0"/> | |||||
</feature> |
/* | |||||
* Copyright (C) 2012, Tomasz Zarna <tomasz.zarna@tasktop.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.pgm; | |||||
import static org.junit.Assert.assertArrayEquals; | |||||
import static org.junit.Assert.assertEquals; | |||||
import org.eclipse.jgit.api.Git; | |||||
import org.eclipse.jgit.lib.CLIRepositoryTestCase; | |||||
import org.junit.Test; | |||||
public class ReflogTest extends CLIRepositoryTestCase { | |||||
@Test | |||||
public void testClean() throws Exception { | |||||
assertArrayEquals(new String[] { "" }, execute("git reflog")); | |||||
} | |||||
@Test | |||||
public void testSingleCommit() throws Exception { | |||||
new Git(db).commit().setMessage("initial commit").call(); | |||||
assertEquals("6fd41be HEAD@{0}: commit (initial): initial commit", | |||||
execute("git reflog")[0]); | |||||
} | |||||
@Test | |||||
public void testBranch() throws Exception { | |||||
Git git = new Git(db); | |||||
git.commit().setMessage("first commit").call(); | |||||
git.checkout().setCreateBranch(true).setName("side").call(); | |||||
writeTrashFile("file", "side content"); | |||||
git.add().addFilepattern("file").call(); | |||||
git.commit().setMessage("side commit").call(); | |||||
assertArrayEquals(new String[] { | |||||
"38890c7 side@{0}: commit: side commit", | |||||
"d216986 side@{1}: branch: Created from commit first commit", | |||||
"" }, execute("git reflog refs/heads/side")); | |||||
} | |||||
/* | |||||
* Copyright (C) 2012, Tomasz Zarna <tomasz.zarna@tasktop.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.pgm; | |||||
import static org.junit.Assert.assertArrayEquals; | |||||
import static org.junit.Assert.assertEquals; | |||||
import org.eclipse.jgit.api.Git; | |||||
import org.eclipse.jgit.lib.CLIRepositoryTestCase; | |||||
import org.junit.Test; | |||||
public class ReflogTest extends CLIRepositoryTestCase { | |||||
@Test | |||||
public void testClean() throws Exception { | |||||
assertArrayEquals(new String[] { "" }, execute("git reflog")); | |||||
} | |||||
@Test | |||||
public void testSingleCommit() throws Exception { | |||||
new Git(db).commit().setMessage("initial commit").call(); | |||||
assertEquals("6fd41be HEAD@{0}: commit (initial): initial commit", | |||||
execute("git reflog")[0]); | |||||
} | |||||
@Test | |||||
public void testBranch() throws Exception { | |||||
Git git = new Git(db); | |||||
git.commit().setMessage("first commit").call(); | |||||
git.checkout().setCreateBranch(true).setName("side").call(); | |||||
writeTrashFile("file", "side content"); | |||||
git.add().addFilepattern("file").call(); | |||||
git.commit().setMessage("side commit").call(); | |||||
assertArrayEquals(new String[] { | |||||
"38890c7 side@{0}: commit: side commit", | |||||
"d216986 side@{1}: branch: Created from commit first commit", | |||||
"" }, execute("git reflog refs/heads/side")); | |||||
} | |||||
} | } |
/* | |||||
* Copyright (C) 2012, Tomasz Zarna <tomasz.zarna@tasktop.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.pgm; | |||||
import java.util.Collection; | |||||
import org.eclipse.jgit.api.Git; | |||||
import org.eclipse.jgit.api.ReflogCommand; | |||||
import org.eclipse.jgit.lib.Constants; | |||||
import org.eclipse.jgit.lib.ReflogEntry; | |||||
import org.eclipse.jgit.lib.Repository; | |||||
import org.kohsuke.args4j.Argument; | |||||
@Command(common = true, usage = "usage_manageReflogInformation") | |||||
class Reflog extends TextBuiltin { | |||||
@Argument(metaVar = "metaVar_ref") | |||||
private String ref; | |||||
@Override | |||||
protected void run() throws Exception { | |||||
ReflogCommand cmd = new Git(db).reflog(); | |||||
if (ref != null) | |||||
cmd.setRef(ref); | |||||
Collection<ReflogEntry> entries = cmd.call(); | |||||
int i = 0; | |||||
for (ReflogEntry entry : entries) { | |||||
outw.println(toString(entry, i++)); | |||||
} | |||||
} | |||||
private String toString(ReflogEntry entry, int i) { | |||||
final StringBuilder s = new StringBuilder(); | |||||
s.append(entry.getNewId().abbreviate(7).name()); | |||||
s.append(" "); //$NON-NLS-1$ | |||||
s.append(ref == null ? Constants.HEAD : Repository.shortenRefName(ref)); | |||||
s.append("@{" + i + "}:"); //$NON-NLS-1$ //$NON-NLS-2$ | |||||
s.append(" "); //$NON-NLS-1$ | |||||
s.append(entry.getComment()); | |||||
return s.toString(); | |||||
} | |||||
} | |||||
/* | |||||
* Copyright (C) 2012, Tomasz Zarna <tomasz.zarna@tasktop.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.pgm; | |||||
import java.util.Collection; | |||||
import org.eclipse.jgit.api.Git; | |||||
import org.eclipse.jgit.api.ReflogCommand; | |||||
import org.eclipse.jgit.lib.Constants; | |||||
import org.eclipse.jgit.lib.ReflogEntry; | |||||
import org.eclipse.jgit.lib.Repository; | |||||
import org.kohsuke.args4j.Argument; | |||||
@Command(common = true, usage = "usage_manageReflogInformation") | |||||
class Reflog extends TextBuiltin { | |||||
@Argument(metaVar = "metaVar_ref") | |||||
private String ref; | |||||
@Override | |||||
protected void run() throws Exception { | |||||
ReflogCommand cmd = new Git(db).reflog(); | |||||
if (ref != null) | |||||
cmd.setRef(ref); | |||||
Collection<ReflogEntry> entries = cmd.call(); | |||||
int i = 0; | |||||
for (ReflogEntry entry : entries) { | |||||
outw.println(toString(entry, i++)); | |||||
} | |||||
} | |||||
private String toString(ReflogEntry entry, int i) { | |||||
final StringBuilder s = new StringBuilder(); | |||||
s.append(entry.getNewId().abbreviate(7).name()); | |||||
s.append(" "); //$NON-NLS-1$ | |||||
s.append(ref == null ? Constants.HEAD : Repository.shortenRefName(ref)); | |||||
s.append("@{" + i + "}:"); //$NON-NLS-1$ //$NON-NLS-2$ | |||||
s.append(" "); //$NON-NLS-1$ | |||||
s.append(entry.getComment()); | |||||
return s.toString(); | |||||
} | |||||
} |