diff --git a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java index 1b4a9ff23..90a3f9416 100644 --- a/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java +++ b/org.eclipse.jgit.test/tst/org/eclipse/jgit/lib/DirCacheCheckoutTest.java @@ -128,11 +128,14 @@ public class DirCacheCheckoutTest extends ReadTreeTest { RevCommit topic = git.commit().setMessage("topic-1").call(); assertIndex(mkmap("f", "f()\nside", "G/i", "i()")); + writeTrashFile("untracked", "untracked"); + resetHard(master); assertIndex(mkmap("f", "f()\nmaster", "D/g", "g()\ng2()", "E/h", "h()")); resetHard(topic); assertIndex(mkmap("f", "f()\nside", "G/i", "i()")); - assertWorkDir(mkmap("f", "f()\nside", "G/i", "i()")); + assertWorkDir(mkmap("f", "f()\nside", "G/i", "i()", "untracked", + "untracked")); assertEquals(MergeStatus.CONFLICTING, git.merge().include(master) .call().getMergeStatus()); @@ -143,7 +146,7 @@ public class DirCacheCheckoutTest extends ReadTreeTest { resetHard(master); assertIndex(mkmap("f", "f()\nmaster", "D/g", "g()\ng2()", "E/h", "h()")); assertWorkDir(mkmap("f", "f()\nmaster", "D/g", "g()\ng2()", "E/h", - "h()")); + "h()", "untracked", "untracked")); } private DirCacheCheckout resetHard(RevCommit commit) diff --git a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java index 9b0bc7b01..25acf16a3 100644 --- a/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java +++ b/org.eclipse.jgit/src/org/eclipse/jgit/dircache/DirCacheCheckout.java @@ -351,12 +351,8 @@ public class DirCacheCheckout { remove(i.getEntryPathString()); conflicts.remove(i.getEntryPathString()); } else { - // We are about to remove an untracked file. Check that - // it is ignored - otherwise that's an conflict - if (!f.isEntryIgnored()) - conflicts.add(walk.getPathString()); - else - remove(f.getEntryPathString()); + // untracked file, neither contained in tree to merge + // nor in index } } } else {