Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [jgit-dev] Handling of modify/delete conflict

Hey.

 

OK, there is something more. The deleted & ignored file is still there in the working tree (as it is generated by a generator again after deleting it from git). This causes the described behaviour.

 

I have a test repo here: https://drive.google.com/file/d/0B05h8C3gLt38Y1JCS05ja1BZSUU/view?usp=sharing

 

Just master is checked out. Try to rebase master onto my_branch. This will show you what I mean :) then try on the command line, which will expose different behaviour.

 

Cheers,

Markus

 

Von: Christian Halstrick [mailto:christian.halstrick@xxxxxxxxx]
Gesendet: Mittwoch, 5. November 2014 15:26
An: Duft Markus
Betreff: Re: [jgit-dev] Handling of modify/delete conflict

 

I took a sample repo and on branch master I ignored and deleted a file 'a'. On branch side I modify file 'a'. I switch to branch master and try to "Rebase on" side branch with EGit. A conflict is reported. When going to staging view to stage my deletion I see that the file 'a' is there in "unstaged changes" with a red conflict marker. Staged changes contains my ".gitgnore" file. Now I delete that file again in repository view. The conflict vanishes from "unstaged changes" and a deletion for 'a' appears in "staged changes". Now I can click "Continue" in staging view and my deletion won. I found it strange that I could not resolve this situation only with the use of staging view. I had to explicitly delete the resource in Resource View/Project Explorer.

 


Ciao
  Chris

 

On Wed, Nov 5, 2014 at 2:40 PM, Duft Markus <Markus.Duft@xxxxxxxxxxxxxxxx> wrote:

Hey,

 

I have a situation where I want to delete and ignore some generated files in the repository. Meanwhile, somebody else changed those files. Now I want to rebase my commit that includes the deletion of those files. Now there is some different behaviour between C and E/JGit:

 

In EGit I get the checkout conflict dialog stating that rebase cannot continue, as I have files that would block the rebase. I cannot actually come out of that situation, as I cannot reset (I’m current already), I cannot stash (there are no changes) and I cannot commit (again: no changes). The only way to get out of here without C-Git is to delete the now-ignored files in the working tree and re-try the rebase. This can be quite tedious if it is a lot of generated files.

 

With C-Git, the behaviour is different. It recognizes that there is a modify/delete conflict during the rebase, and marks the files accordingly. I then just delete them and go with rebase –continue, and all is well.

 

Is there any rationale behind this behaviour or is it a bug?

 

Cheers,

Markus

 

--

Mit freundlichen Grüßen / Best regards

 

Markus Duft | Software Architect

SSI SCHÄFER | Salomon Automation GmbH | Friesachstraße 15 | 8114 Friesach bei Graz | Austria

Phone +43 3127 200-575 | Fax +43 3127 200-22

markus.duft@xxxxxxxxxxxxxxxx

Website | Blog | YouTube | Facebook

 

Salomon Automation GmbH | Friesachstrasse 15 | 8114 Friesach bei Graz | Austria
Registered Office: Friesach bei Graz | Commercial Register: 49324 K | VAT no. ATU28654300
Commercial Court: Landesgericht für Zivilrechtssachen Graz


_______________________________________________
jgit-dev mailing list
jgit-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/jgit-dev

 

Salomon Automation GmbH | Friesachstrasse 15 | 8114 Friesach bei Graz | Austria
Registered Office: Friesach bei Graz | Commercial Register: 49324 K | VAT no. ATU28654300
Commercial Court: Landesgericht für Zivilrechtssachen Graz

Back to the top