"Shawn O. Pearce" <spearce@xxxxxxxxxxx> wrote: > Tomi Pakarinen <tomi.pakarinen@xxxxxxxxx> wrote: > > testTrivialTwoWay_disjointhistories() failed because merge strategy > > didn't handle missing base > > version. Am'i right? > > If that isn't coming out right then perhaps tw.idEqual() is busted Yup, that's what it is, idEqual is busted. The definition of TreeWalk.idEqual is: public boolean idEqual(final int nthA, final int nthB) { final AbstractTreeIterator ch = currentHead; final AbstractTreeIterator a = trees[nthA]; final AbstractTreeIterator b = trees[nthB]; return a.matches == ch && b.matches == ch && a.idEqual(b); } The problem is this method always returns false if the name isn't defined in either path. I think this is the definition we want instead: if (a.matches == ch && b.matches == ch) return a.idEqual(b); if (a.matches != ch && b.matches != ch) { // If neither tree matches the current path node then neither // tree has this entry. In such case the ObjectId is zero(), // and zero() is always equal to zero(). // return true; } return false; Patch to follow. -- Shawn. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html