Thursday, April 7, 2016

Merging multiple commits into a single commit which are already pushed into a central repository

If you're merging local commits:

If the code is already pushed into a central repository and having multiple commits for a single fix/feature, now you wanted to merge couple commits into a single commit to make the git history clear.

Step 1: Identify how many last commits you wanted to merge ?

$ git reflog
4585fc6 HEAD@{0}: commit: fixig build scripts
c10447a HEAD@{1}: commit: fixing build issues
baa56c0 HEAD@{2}: commit: Using forked repo for testing
f744eec HEAD@{3}: commit: Missing tag
c30816d HEAD@{4}: commit: Missing tag
ea302be HEAD@{5}: commit: Removing bin folder
6560cb9 HEAD@{6}: commit: Build files and studio plugins folder structure

From above, I wanted to merge from HEAD@{0} to HEAD@{6} - That basically last 7 commits


Step 2: Rebase interactively

$ git rebase -i origin/master~7 master


Step 3:  Push the changes forcefully to a central repo

$ git push origin +master


Monday, March 21, 2016

Updating eclipse features/plugins from terminal


Format:
./eclipse -clean -purgeHistory -application org.eclipse.equinox.p2.director -noSplash -repository <update site url> -installIUs <feature ID> 


Examples:

./eclipse -clean -purgeHistory -application org.eclipse.equinox.p2.director -noSplash -repository http://download.eclipse.org/recommenders/updates/stable/ -installIUs org.eclipse.recommenders.repositories.categories.deps 


./eclipse -clean -purgeHistory -application org.eclipse.equinox.p2.director -noSplash -repository http://download.eclipse.org/mylyn/releases/latest -installIUs org.eclipse.mylyn.commons.sdk.feature.group


./eclipse -clean -purgeHistory -application org.eclipse.equinox.p2.director -noSplash -repository http://download.eclipse.org/mylyn/releases/latest -installIUs org.eclipse.mylyn.commons.notifications.feature.group


./eclipse -clean -purgeHistory -application org.eclipse.equinox.p2.director -noSplash -repository http://download.eclipse.org/modeling/emf/updates/releases/ -installIUs org.eclipse.emf.databinding.edit.feature.group



Resources:

Closing all the Virtual running machines in the system

http://askubuntu.com/questions/457329/shutting-down-all-virtualbox-vagrant-vms-in-one-easy-to-use-bash-command-that

kondals-MacBook-Pro:~ kondalkolipaka$ VBoxManage list runningvms
"default" {f12ab661-116e-42f0-8d2b-05fc76175022}

kondals-MacBook-Pro:~ kondalkolipaka$ VBoxManage controlvm default poweroff
0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%


Here default is the VM name which is running. We can also provide UUID instead of name.

Wednesday, March 9, 2016

How to find the eclipse version number

In eclipse root directory you can find .eclipseproduct file

name=Eclipse Platform
id=org.eclipse.platform

version=4.4.2

You can also find the exact bundle id from - eclipse/configuration/config.ini

eclipse.buildId=4.4.2.M20150925-0400

Sunday, March 6, 2016

Eclipse non-model dialog

@Override
protected void setShellStyle(int newShellStyle) {           
     super.setShellStyle(SWT.CLOSE | SWT.MODELESS| SWT.BORDER | SWT.TITLE);
     setBlockOnOpen(false);
}


Friday, February 19, 2016

Text setMessage with SWT.MULTI style

Text setMessage with SWT.MULTI style - Yes, this doesn't work!.

https://bugs.eclipse.org/bugs/show_bug.cgi?id=397695

Seems to be that's a native OS behaviour for Windows and GTK platforms.

Example:

Text  releaseNotesTxt = new Text(appPreviewComposite, SWT.MULTI | SWT.BORDER | SWT.WRAP | SWT.V_SCROLL );
releaseNotesTxt.setMessage("Enter your release notes for this build (Optional)");


But this works with SWT.Single or SWT.Search