• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
(E)Git + Tycho + Gerrit + Mylyn = #WIN @ Eclipse Day Toulouse 2012
 

(E)Git + Tycho + Gerrit + Mylyn = #WIN @ Eclipse Day Toulouse 2012

on

  • 1,155 views

 

Statistics

Views

Total Views
1,155
Views on SlideShare
1,147
Embed Views
8

Actions

Likes
2
Downloads
11
Comments
0

2 Embeds 8

http://www.linkedin.com 7
https://twitter.com 1

Accessibility

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    (E)Git + Tycho + Gerrit + Mylyn = #WIN @ Eclipse Day Toulouse 2012 (E)Git + Tycho + Gerrit + Mylyn = #WIN @ Eclipse Day Toulouse 2012 Presentation Transcript

    • • (E)Git • + Tycho • + Gerrit • + ______ Mylyn • _ • = #WIN * • * mostlyEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • What you will learn § A better way to go than good ol’ CVS/SVN + PDE Build § How Git can improve your development workflow § How continuous integration coupled with code review can save you time § Where to look for to get startedEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • … and what you will not! § How to actually setup Gerrit, Hudson § How to write better code JEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • DVCSs in a nutshell § No central repository § Fast § Branching/Merging made easier §  easy to experiment new ideas §  easy to isolate featuresEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • § Created by Linus Torvalds in 2005 § Need for a fast, distributed, corruption-proof SCM to manage the Linux kernel codebaseEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git cool features § Staging area § Hooks §  sending an e-mail §  rejecting a push if e.g. header files are missing §  smart management of binary files § Stashing, cherry-picking, bisecting, … § Advanced merge strategies § File renaming § GitHub! and also bitbucket, Gitorious, …Eclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git workflow § Useful read: http://nvie.com/posts/a-successful-git- branching-model/Eclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools – gitxEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools – SourceTreeEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools – GithubEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools – TortoiseGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Git tools § gitx § SourceTree () § GitHub () § TortoiseGit § EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • EGit § Team provider for Git § Git perspective § Integration with the Project Explorer § Synchronize § History § Integration with MylynEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • DEMO! • EGitEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Tycho § A way to build, test and release Eclipse/OSGi artifacts with Maven § Tycho feature list: §  Build OSGi bundles / Eclipse plugins §  Execute tests within the OSGi runtime §  Build Eclipse Features §  Build p2 repositories §  RCP applications a.k.a. Products §  … § Integrates with the rest of the Maven ecosystemEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Relationship with Maven § What is Maven? A build system! § Tycho is a set of Maven plugins § How is it different from other Maven plugins? §  It reuses the PDE metadata to configure the build §  It alters the standard Maven resolution logic to support OSGi dependencies (MANIFEST.MF, feature.xml, etc.) §  It adds to Maven the ability to read p2 repositoryEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Relationship with p2 § What is p2? An OSGi-based provisioning system for OSGi! § Tycho reads and downloads dependencies from p2 repositories. § Tycho produces p2 repositories § Internally, tycho embeds parts of p2 in order to perform the dependency resolution § Maven + p2 = Tycho! JEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • DEMO! • TychoEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Code review? § When one developer writes code, another developer is asked to review that code § A careful line-by-line critique § Happens in a non-threatening context § Goal is cooperation, not fault-finding § Integral part of coding process § Otherwise this will happen: §  Debugging someone elses broken code §  Involuntary code review: Not so good; emotions may flare http://code.google.com/p/rietveld/downloads/detail?name=Mondrian2006.pdfEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Gerrit § Developped by Google (for Android) § Based on Git § Web-based code review tool acting as a Git repository managing pending patches before they are merged into a blessed repositoryEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Interacting with a Git repository Working Tree fetch pull commit Remote repository push Local repositoryEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Interacting with a Gerrit repository fetch Blessed Working Tree pull repository commit sync push Local repository Gerrit for reviewEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Gerrit workflowEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • DEMO! • GerritEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Mylyn § Mylyn is a task and application lifecycle management (ALM) framework § Task-focused interface à realign the IDE so as you only see relevant code/information § Huge ecosystem of plug-ins to integrate with ALM and collaboration toolsEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • MylynEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • DEMO! • MylynEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Gerrit + Tycho + Jenkins/Hudson – DEMO!Eclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • In a nutshell § Git can really help you § Tycho is stable*, powerful, and extensible § Mylyn rocks. Well integrated with JDT, CDT, EGit, Hudson/Jenkins, Gerrit… § Code review with Gerrit is the icing on the cake (if you have someone to help you set it up J) * http://wiki.eclipse.org/CBIEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012
    • Questions? … Thank you! J Benjamin Cabé @kartben http://blog.benjamin-cabe.comEclipse Day Toulouse Copyright © 2012 Sierra Wireless. All Right reserved. Made available under the Eclipse Public License v1.0.May 24th,, 2012