![]() Problem occurs when the checkout wants to create a file 'd/f' but the workingtree contains a dirty file 'd'. In order to create d/f the file 'd' would have to be deleted and since the file is dirty that content would be lost. This should lead to a CheckoutConflictException for d/f when failOnConflict was set to true. This fix also changes jgit checkout semantics to be more like native gits checkout semantics. If during a checkout jgit wants to delete a folder but finds that the working tree contains a dirty file at this path then JGit will now throw an exception instead of silently keeping the dirty file. Like in this example: git init touch b git add b git commit -m addB mkdir a touch a/c git add a/c git commit -m addAC rm -fr a touch a git checkout HEAD~ Change-Id: I9089123179e09dd565285d50b0caa308d290cccd Signed-off-by: Rüdiger Herrmann <ruediger.herrmann@gmx.de> Also-by: Rüdiger Herrmann <ruediger.herrmann@gmx.de> |
||
---|---|---|
.. | ||
.settings | ||
META-INF | ||
src/org/eclipse/jgit | ||
tst/org/eclipse/jgit/pgm | ||
.classpath | ||
.gitignore | ||
.project | ||
BUCK | ||
about.html | ||
build.properties | ||
org.eclipse.jgit.pgm--All-Tests (Java7).launch | ||
org.eclipse.jgit.pgm--All-Tests (Java8) (de).launch | ||
org.eclipse.jgit.pgm--All-Tests (Java8).launch | ||
org.eclipse.jgit.pgm--All-Tests.launch | ||
plugin.properties | ||
pom.xml |