Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
<ul>@Kim_Moir IBM Ottawa </ul><ul>Migrating to Git: Rethinking the Commit </ul>
<ul>Git Happens </ul><ul>@Kim_Moir IBM Ottawa </ul>
 
<ul>About Us </ul><ul><li>10 year old code repository
Around 40 active committers
Produce approximately 600 bundles a build
Limited Git experience before migration </li></ul>
<ul>Active development streams: 4.2, 4.1.x, 3.8, 3.7.x </ul>
 
Unix group (guid) -> Git repo 2 CVS repos -> ~25 Git repos
 
 
<ul>CVS:  </ul><ul><li>Condition
Copy to temporary location
Run cvs2git </li></ul>
<ul><li>git fast-import CVS content into temporary Git repository
git-move-refs
git prune, repack, gc and repack
Run a script to remove delete only tags </li></ul>
<ul><li>Add gitignore file via git filter-branch
Clone into bare repo
git prune, repack, gc and repack
copy repo into final location </li></ul>
<ul>“ It’s one thing to migrate to Git, it’s another thing to use it” -Olivier Thomann </ul>
<ul>“ Git: The command line is where it’s at” -Bogdan Gheorge </ul>
 
<ul>“ Patches are like dumping a database into a text file.  You need to think in terms of releasing fixes to branches ins...
<ul>“ That operation is four pay-grade levels above my current git-foo .” -Paul Webster </ul>
<ul>“ I have broken the platform-ui git repository. ” -Bug 361707 </ul><ul>“ Better policy to guard against deleting all b...
 
Upcoming SlideShare
Loading in …5
×

of

Migrating to Git:  Rethinking the Commit Slide 1 Migrating to Git:  Rethinking the Commit Slide 2 Migrating to Git:  Rethinking the Commit Slide 3 Migrating to Git:  Rethinking the Commit Slide 4 Migrating to Git:  Rethinking the Commit Slide 5 Migrating to Git:  Rethinking the Commit Slide 6 Migrating to Git:  Rethinking the Commit Slide 7 Migrating to Git:  Rethinking the Commit Slide 8 Migrating to Git:  Rethinking the Commit Slide 9 Migrating to Git:  Rethinking the Commit Slide 10 Migrating to Git:  Rethinking the Commit Slide 11 Migrating to Git:  Rethinking the Commit Slide 12 Migrating to Git:  Rethinking the Commit Slide 13 Migrating to Git:  Rethinking the Commit Slide 14 Migrating to Git:  Rethinking the Commit Slide 15 Migrating to Git:  Rethinking the Commit Slide 16 Migrating to Git:  Rethinking the Commit Slide 17 Migrating to Git:  Rethinking the Commit Slide 18 Migrating to Git:  Rethinking the Commit Slide 19 Migrating to Git:  Rethinking the Commit Slide 20 Migrating to Git:  Rethinking the Commit Slide 21 Migrating to Git:  Rethinking the Commit Slide 22 Migrating to Git:  Rethinking the Commit Slide 23 Migrating to Git:  Rethinking the Commit Slide 24 Migrating to Git:  Rethinking the Commit Slide 25 Migrating to Git:  Rethinking the Commit Slide 26 Migrating to Git:  Rethinking the Commit Slide 27 Migrating to Git:  Rethinking the Commit Slide 28 Migrating to Git:  Rethinking the Commit Slide 29 Migrating to Git:  Rethinking the Commit Slide 30
Upcoming SlideShare
Let's Git this Party Started: An Introduction to Git and GitHub
Next
Download to read offline and view in fullscreen.

3 Likes

Share

Download to read offline

Migrating to Git: Rethinking the Commit

Download to read offline

Migrating to Git: Rethinking the Commit
EclipseCon Europe, November 3, 2011

Related Audiobooks

Free with a 30 day trial from Scribd

See all

Migrating to Git: Rethinking the Commit

  1. 1. <ul>@Kim_Moir IBM Ottawa </ul><ul>Migrating to Git: Rethinking the Commit </ul>
  2. 2. <ul>Git Happens </ul><ul>@Kim_Moir IBM Ottawa </ul>
  3. 4. <ul>About Us </ul><ul><li>10 year old code repository
  4. 5. Around 40 active committers
  5. 6. Produce approximately 600 bundles a build
  6. 7. Limited Git experience before migration </li></ul>
  7. 8. <ul>Active development streams: 4.2, 4.1.x, 3.8, 3.7.x </ul>
  8. 10. Unix group (guid) -> Git repo 2 CVS repos -> ~25 Git repos
  9. 13. <ul>CVS: </ul><ul><li>Condition
  10. 14. Copy to temporary location
  11. 15. Run cvs2git </li></ul>
  12. 16. <ul><li>git fast-import CVS content into temporary Git repository
  13. 17. git-move-refs
  14. 18. git prune, repack, gc and repack
  15. 19. Run a script to remove delete only tags </li></ul>
  16. 20. <ul><li>Add gitignore file via git filter-branch
  17. 21. Clone into bare repo
  18. 22. git prune, repack, gc and repack
  19. 23. copy repo into final location </li></ul>
  20. 24. <ul>“ It’s one thing to migrate to Git, it’s another thing to use it” -Olivier Thomann </ul>
  21. 25. <ul>“ Git: The command line is where it’s at” -Bogdan Gheorge </ul>
  22. 27. <ul>“ Patches are like dumping a database into a text file. You need to think in terms of releasing fixes to branches instead of passing around patches. Patches also lose some Git provenance information such as author and parent. ” -John Arthorne </ul>
  23. 28. <ul>“ That operation is four pay-grade levels above my current git-foo .” -Paul Webster </ul>
  24. 29. <ul>“ I have broken the platform-ui git repository. ” -Bug 361707 </ul><ul>“ Better policy to guard against deleting all branches and tags from our public repos” -Bug 362076 </ul>
  25. 34. <ul>“ There are three categories of costs that we incurred during the Git migration: The migration process itself, the developer learning curve and dealing with EGit issues ” -Mike Wilson </ul>
  26. 35. <ul><li>Read
  27. 36. Test migration
  28. 37. Communicate </li></ul>
  29. 38. <ul>“ The complexity of our code is the barrier to contribution, not the SCM ”. -Paul Webster </ul>
  30. 40. <ul>Questions? </ul><ul>“ Git happens ” -Kim Moir </ul>
  31. 41. <ul>Useful links </ul><ul><li>Managing large binary files with Git http://stackoverflow.com/questions/540535/managing-large-binary-files-with-git
  32. 42. Git workflows for CVS users http://wiki.eclipse.org/Platform-releng/Git_Workflows </li></ul><ul><li>[email_address] mailing list </li></ul><ul><li>EGit Documentation http://eclipse.org/egit/documentation/
  33. 43. Git parable http://tom.preston-werner.com/2009/05/19/the-git-parable.html
  34. 44. Pro Git Book http://progit.org /
  35. 45. Think like a git http://think-like-a-git.net /
  36. 46. Migration scripts we used git://git.eclipse.org/e4/org.eclipse.migration.git
  37. 47. Git flow discussion http://dev.eclipse.org/mhonarc/lists/eclipse-dev/msg09229.html </li></ul>
  38. 48. <ul>Image credits </ul><ul><li>Beach http://www.flickr.com/photos/archer10/2218592521/sizes/
  39. 49. Reading room in British Museum http://www.flickr.com/photos/cliveabrown/2258478542/
  40. 50. Blackbirds at dusk http://www.flickr.com/photos/moonjazz/1216783552/
  41. 51. Binary bridge at Georgia Tech http://www.flickr.com/photos/mcclanahoochie/5068845349/sizes/l/in/photostream/
  42. 52. Branches http://www.flickr.com/photos/e_phots/3012896283/
  43. 53. Git stash http://www.flickr.com/photos/dealingwith/4295488113/
  44. 54. Fork you http://www.flickr.com/photos/sunfox/4365495446/sizes/l/in/photostream/
  45. 55. Rethink http://www.flickr.com/photos/venegas/5549123/
  46. 56. Gears http://www.flickr.com/photos/wwarby/4782904694
  47. 57. Git gas station http://www.flickr.com/photos/soo/6047596987/
  48. 58. Advice http://www.flickr.com/photos/wurzle/659315/
  49. 59. Fraser river delta http://www.flickr.com/photos/ecstaticist/3055718118/
  50. 60. Women with laptops at Pop Life http://www.flickr.com/photos/yourdon/5157431891/in/photostream/ </li></ul>
  51. 61. <ul>Legal notice </ul><ul><li>Copyright © IBM Corp., 2007-2011. All rights reserved.  This presentation and the source code in it are made available under the Creative Commons Att. Nc Nd 3.0 license.
  52. 62. Java and all Java-based trademarks are trademarks of Sun Microsystems, Inc. in the United States, other countries, or both.
  53. 63. Eclipse and the Eclipse logo are trademarks of Eclipse Foundation, Inc.
  54. 64. IBM and the IBM logo are trademarks or registered trademarks of IBM Corporation, in the United States, other countries or both.
  55. 65. Other company, product, or service names may be trademarks or service marks of others.
  56. 66. THE INFORMATION DISCUSSED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY.  WHILE EFFORTS WERE MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION, IT IS PROVIDED &quot;AS IS&quot; WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, AND IBM SHALL NOT BE RESPONSIBLE FOR ANY DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, SUCH INFORMATION.  ANY INFORMATION CONCERNING IBM'S PRODUCT PLANS OR STRATEGY IS SUBJECT TO CHANGE BY IBM WITHOUT NOTICE </li></ul>
  • abhishekgattani_

    Jan. 9, 2018
  • ttres

    Dec. 10, 2011
  • yonialonso

    Nov. 16, 2011

Migrating to Git: Rethinking the Commit EclipseCon Europe, November 3, 2011

Views

Total views

6,384

On Slideshare

0

From embeds

0

Number of embeds

1,541

Actions

Downloads

18

Shares

0

Comments

0

Likes

3

×