Patch Set 6:

Matthias, could you check console output after synchronizing egit?

I constantly get this stack trace (even when I try to launch synchronization on current master):

Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded
	at org.eclipse.jgit.storage.file.PackFile.read(PackFile.java:611)
	at org.eclipse.jgit.storage.file.WindowCache.load(WindowCache.java:314)
	at org.eclipse.jgit.storage.file.WindowCache.getOrLoad(WindowCache.java:393)
	at org.eclipse.jgit.storage.file.WindowCache.get(WindowCache.java:204)
	at org.eclipse.jgit.storage.file.WindowCursor.pin(WindowCursor.java:334)
	at org.eclipse.jgit.storage.file.WindowCursor.copy(WindowCursor.java:203)
	at org.eclipse.jgit.storage.file.PackFile.readFully(PackFile.java:524)
	at org.eclipse.jgit.storage.file.PackFile.load(PackFile.java:679)
	at org.eclipse.jgit.storage.file.PackFile.get(PackFile.java:227)
	at org.eclipse.jgit.storage.file.ObjectDirectory.openObject1(ObjectDirectory.java:439)
	at org.eclipse.jgit.storage.file.FileObjectDatabase.openObjectImpl1(FileObjectDatabase.java:172)
	at org.eclipse.jgit.storage.file.FileObjectDatabase.openObject(FileObjectDatabase.java:157)
	at org.eclipse.jgit.storage.file.WindowCursor.open(WindowCursor.java:122)
	at org.eclipse.jgit.revwalk.RevWalk.getCachedBytes(RevWalk.java:855)
	at org.eclipse.jgit.revwalk.RevCommit.parseHeaders(RevCommit.java:136)
	at org.eclipse.jgit.revwalk.MergeBaseGenerator.next(MergeBaseGenerator.java:148)
	at org.eclipse.jgit.revwalk.StartGenerator.next(StartGenerator.java:102)
	at org.eclipse.jgit.revwalk.RevWalk.next(RevWalk.java:420)
	at org.eclipse.egit.ui.internal.synchronize.model.GitModelCommit.calculateAncestor(GitModelCommit.java:169)
	at org.eclipse.egit.ui.internal.synchronize.model.GitModelCommit.<init>(GitModelCommit.java:56)
	at org.eclipse.egit.ui.internal.synchronize.model.GitModelRepository.getListOfCommit(GitModelRepository.java:206)
	at org.eclipse.egit.ui.internal.synchronize.model.GitModelRepository.getChildren(GitModelRepository.java:76)
	at org.eclipse.egit.ui.internal.synchronize.model.GitModelRoot.getChildren(GitModelRoot.java:50)
	at org.eclipse.egit.ui.internal.synchronize.mapping.GitModelWorkbenchAdapter.getChildren(GitModelWorkbenchAdapter.java:29)
	at org.eclipse.ui.model.BaseWorkbenchContentProvider.getChildren(BaseWorkbenchContentProvider.java:64)
	at org.eclipse.ui.model.BaseWorkbenchContentProvider.getElements(BaseWorkbenchContentProvider.java:73)
	at org.eclipse.team.ui.mapping.SynchronizationContentProvider.getDelegateChildren(SynchronizationContentProvider.java:176)
	at org.eclipse.team.ui.mapping.SynchronizationContentProvider.internalGetChildren(SynchronizationContentProvider.java:121)
	at org.eclipse.team.ui.mapping.SynchronizationContentProvider.getElements(SynchronizationContentProvider.java:56)
	at org.eclipse.ui.internal.navigator.extensions.SafeDelegateTreeContentProvider.getElements(SafeDelegateTreeContentProvider.java:101)
	at org.eclipse.ui.internal.navigator.NavigatorContentServiceContentProvider$1.run(NavigatorContentServiceContentProvider.java:149)
	at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42)


It seams that something change in break calculating common ancestor in egit ... I'll investigate on this