Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 514357

Summary: `git rebase --skip` is unimplemented
Product: [ECD] Orion Reporter: Remy Suen <remy.suen>
Component: NodeAssignee: Remy Suen <remy.suen>
Status: RESOLVED FIXED QA Contact:
Severity: enhancement    
Priority: P2 CC: Michael_Rennie, steve_northover
Version: 13.0   
Target Milestone: 15.0   
Hardware: All   
OS: All   
Whiteboard:

Description Remy Suen CLA 2017-03-28 17:47:29 EDT
I asked in the libgit2 channel and this should be possible...

"the (hand-waving) idea here is that if you wanted to skip a commit in the rebase steps that you would simply call `next` without doing a commit.  (and maybe doing a reset in between...)"

https://github.com/eclipse/orion.client/blob/d92933359102e5a8fa34ee7d951c46f8fb78fd37/modules/orionode/lib/git/commit.js#L701-L702
Comment 1 Steve Northover CLA 2017-03-29 13:21:18 EDT
Remy, thanks for finding this.  Want to take a crack at it?
Comment 2 Remy Suen CLA 2017-03-31 03:46:51 EDT
(In reply to Steve Northover from comment #1)
> Remy, thanks for finding this.  Want to take a crack at it?

I am looking at this right now.

I almost have the simple case working right now. My working directory and index is completely clean with no changes or untracked files but I don't have my branch B and HEAD pointers quite right...

1. Commit A on branch A modifies the file.
2. Commit B on branch B modifies the file.
3. User is on branch B.
4. Rebase branch A.
5. Conflict occurs.
6. Skip it.
7. The tip of branch B is now pointing at commit A and the working directory and index is completely clean.
Comment 3 Remy Suen CLA 2017-03-31 05:11:06 EDT
I have the simple case working now and have an idea on how to implement the more general case...