This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 244660

Summary: Support for combining commits
Product: versioncontrol Reporter: pinus <pinus>
Component: GitAssignee: Ondrej Vrabec <ovrabec>
Status: NEW ---    
Severity: normal CC: apireviews, git, mitya, Noctis, Saljack
Priority: P3    
Version: 8.0.1   
Hardware: PC   
OS: Linux   
Issue Type: ENHANCEMENT Exception Reporter:
Attachments: api patch

Description pinus 2014-05-22 16:52:50 UTC
I want to be able to aggregate several local commit to one big commit before pushing it. NB should support doing this. Including rephrasing of the messages. Netbeans could select the commits that are not pushed for selection. Select the commits you want to combine, edit the message and go.
Comment 1 Ondrej Vrabec 2014-05-22 17:07:14 UTC
Are you talking about interactive rebase and its ability to squash commits?
Comment 2 pinus 2014-05-22 19:56:54 UTC
Yes git rebase -i, pick and squash.
Comment 3 Ondrej Vrabec 2014-07-10 08:28:13 UTC
need to create an api for that in libs.git...
please review the api patch
Comment 4 Ondrej Vrabec 2014-07-10 08:28:16 UTC
Created attachment 147966 [details]
api patch
Comment 5 pinus 2014-07-10 20:06:22 UTC
(In reply to Ondrej Vrabec from comment #3)
> need to create an api for that in libs.git...
> please review the api patch

Well to do a serious review I'm not enough into the details. For example I have no idea what the Thread.sleep(1100); is about. It looks creepy to me.

I'll see it from the users perspective. You commit early and often. Go back and forth, try this and that. Now you want to push the stuff to a more public repository. Not everybody should or wants to see your steps. You need to cleanup first. 

You need to go back in your commit history and select the commits you want to clean up. Probably to the status of the remote repository at pull time, if it is a tracked branch. If it is not tracked you need to pick the start commit manually.

After picking the commits a diff would be great. The diff should show the changes in all files to its previous commit. This gives you an overview what the new commit will change. This is a real advantage over the command line. 

With a cherry on top it would be possible to export the changes as a patch.
Comment 6 Ondrej Vrabec 2014-07-16 12:40:30 UTC
not enough time for 8.0.1
Comment 7 eolivelli 2016-11-22 10:56:29 UTC
any news on this issue ?
is there any other feature planned ?
Comment 8 bugmenot1 2016-11-29 07:02:10 UTC
Can I also merge feature branches with master with squashing commit