1

When I use jgit to complete git pull as follows:

git.pull().call();

It causes an Exception

Caused by: java.io.IOException: Multiple merge bases for:
  0479d50e9bcb14f197e1f703cb9d20ce402e38be
  e52e86d1977a42c934a939f04d63deb8eaeb38bf found:
  518a66929b4480a5bd25defc5fe643937fc16cfa
  513273d6f0327f41c914c7cd5573adeb7d396d8f
    at org.eclipse.jgit.merge.Merger.getBaseCommit(Merger.java:217)
    at org.eclipse.jgit.merge.Merger.mergeBase(Merger.java:182)
    at org.eclipse.jgit.merge.ThreeWayMerger.mergeBase(ThreeWayMerger.java:121)
    at org.eclipse.jgit.merge.ResolveMerger.mergeImpl(ResolveMerger.java:187)
    at org.eclipse.jgit.merge.Merger.merge(Merger.java:156)
    at org.eclipse.jgit.merge.ThreeWayMerger.merge(ThreeWayMerger.java:108)
    at org.eclipse.jgit.api.MergeCommand.call(MergeCommand.java:208)

I want to know why it shows mutiple merge bases?

I would like to know how to fix the error using just Jgit and not the command line git?

Tuxdude
  • 47,485
  • 15
  • 109
  • 110
sinory
  • 784
  • 3
  • 8
  • 19
  • I have seen the link,But I don't know how to fix the error using just Jgit – sinory Apr 24 '13 at 04:11
  • @sinory: Please look into the linked question again and the linked bug of jgit. robinst provided some information in his answer, too. – guerda Apr 24 '13 at 11:46

1 Answers1

1

The current stable release of JGit does not have the "recursive" merge strategy yet.

But it is implemented in the development version (master branch) and will be released with 3.0, see the following commits and bug 380314:

http://git.eclipse.org/c/jgit/jgit.git/commit/?id=ab99b78ca08a6b52e9ae8b49afa04dd16496f2ac http://git.eclipse.org/c/jgit/jgit.git/commit/?id=aa7be667bcca4bdb28b2485e28a05da54c431df7

So either build JGit yourself or download a snapshot build from the Eclipse Maven repository.

If you use a build tool that supports Maven dependencies, use the following repository and artifact version:

<dependencies>
    <dependency>
        <groupId>org.eclipse.jgit</groupId>
        <artifactId>org.eclipse.jgit</artifactId>
        <version>3.0.0-SNAPSHOT</version>
    </dependency>
</dependencies>
<repositories>
    <repository>
        <id>eclipse-jgit</id>
        <url>https://repo.eclipse.org/content/groups/jgit/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>
robinst
  • 30,027
  • 10
  • 102
  • 108