SlideShare une entreprise Scribd logo
1  sur  19
Télécharger pour lire hors ligne
Git in Eclipse



Dariusz Łuksza
Blog: http://luksza.org
Mail: dariusz@luksza.org
Agenda
●   What Git is?
    ●   History
    ●   Git vs. CVS/SVN
    ●   How Git works?
●   Git commands
●   What EGit 0.8.1 can do?
●   Demo Time!
    ●   First: project, commit, branch, tag, fetch, push, merge
    ●   Keep high code quality thanks to Git
                                                              2
History of Git'a
2005 - Linus Torvalds starts Git
2006 - Proof-of-concept, quite unusable
2007 - Index reader, quickdiff
2008 - Add history view, commit, push/fetch
2009 - Eclipse decides on Git; moved to Eclipse.org
3/2010 - Released 0.7.0
           Diff/Merge
           Automatic IP Logs
           Preliminary merge algorithm implementation (not really usable for now on)

6/2010 - Released 0.8.0
           Usability Improvements
           Git Repositories View
           Tagging                 Slide taken from presentation:                                 3
                                   Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S.
                                   Pearce, R. Rosenberg and M. Sohn
Git vs. CVS/SVN
●   Distributed (but …)            ●   Centralized
    ●   Ability to work off-line       ●   no
    ●   Full local history             ●   no
●   Versions are described         ●   Numerically described
    using SHA-1                        versions
●   Fast and lightweight           ●   Every branch is a full copy
    branches                           of repository
●   Checkout on repository         ●   Checkout on file/catalog
    level                              level
●   Complex tag's                  ●   Simple tag's
                                                                  4
How Git works?
Saves state not deltas.




                                                         5
         Images taken from Pro Git book (http://progit.org)
How Git works?
    Objects




                                                     6
     Images taken from Pro Git book (http://progit.org)
How Git works?
Branches and tags




   v1.0




                                                          7
          Image taken from Pro Git book (http://progit.org)
How Git works?
Merge (fast-forward)




       fast-forward
          merge




                                                        8
        Images taken from Pro Git book (http://progit.org)
How Git works?
Merge (three-way merge)



      three-way
        merge




                                                            9
            Images taken from Pro Git book (http://progit.org)
How Git works?
              Rebase


1.




     2.




                 3.


                           10
How Git works?
       Structure of .git
extensions
   global exclude file
record branch changes
 object storage
  local branches
    default main branch
   remote tracking branches, divided by repository
   default remote repository
     default remote branch



configuration for this repository

 tip of current branch
cache for staging changes for next commit
                                                     11
Git commands
●   git init / git clone    ●   git pull
●   git add                 ●   git push
●   git status              ●   git stash
●   git commit              ●   git branch
●   git diff                ●   git tag
●   git fetch               ●   git checkout
●   git log                 ●   git config
●   git merge               ●   git format-patch
●   git rebase              ●   git mv / git rm
                                                   12
●   git remote              ●   git reset
Git commands
●   git init / git clone    ●   git pull
●   git add                 ●   git push
●   git status              ●   git stash
●   git commit              ●   git branch
●   git diff                ●   git tag
●   git fetch               ●   git checkout
●   git log                 ●   git config
●   git merge               ●   git format-patch
●   git rebase              ●   git mv / git rm
                                                   13
●   git remote              ●   git reset
What EGit 0.8.1 can do?
●   git init / git clone   ●   git pull
●   git add                ●   git push
●   git status             ●   git stash
●   git commit             ●   git branch
●   git diff               ●   git tag
●   git fetch              ●   git checkout
●   git log                ●   git config
●   git merge              ●   git format-patch
●   git rebase             ●   git mv / git rm
                                                                  14
●   git remote             ●   git reset         Autorem grafik jest:
                                                 Deleket (Jojo Mendoza)
Demo Time!

             15
First demo




Create and share project locally.




                                    16
Second Demo



     Working with remote project.
We'll use gitosis as a Git server and CGit for on-line
                 project presentation.




                                                         17
Third demo



   Benefiting from distributed VCS.

Using Git and Gerrit for keeping project in good
                    shape.



                                                   18
Q&A
●   Git: http://git-scm.com/
●   EGit: http://eclipse.org/egit/
●   JGit: http://eclipse.org/jgit/
●   EGit mailing list:
    http://dev.eclipse.org/mhonarc/lists/egit-dev/
●   JGit mailing list:
    http://dev.eclipse.org/mhonarc/lists/jgit-dev/
●   There is also an EGit forum on Eclipse forums:
    http://www.eclipse.org/forums/
                                                     19

Contenu connexe

Tendances

EclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heavenEclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heaven
msohn
 

Tendances (20)

Git Presentation
Git PresentationGit Presentation
Git Presentation
 
Git'in on Windows
Git'in on WindowsGit'in on Windows
Git'in on Windows
 
Version Control with Git
Version Control with GitVersion Control with Git
Version Control with Git
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
Git Tutorial
Git TutorialGit Tutorial
Git Tutorial
 
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro WorkshopOpen Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
Open Innovation Lab (OIL) - 20150227 - GIT Intro Workshop
 
Inside GitHub
Inside GitHubInside GitHub
Inside GitHub
 
Git advanced
Git advancedGit advanced
Git advanced
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
 
How to store large binary files in git repositories
How to store large binary files in git repositoriesHow to store large binary files in git repositories
How to store large binary files in git repositories
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
Git for standalone use
Git for standalone useGit for standalone use
Git for standalone use
 
Presentacion git
Presentacion gitPresentacion git
Presentacion git
 
Github
GithubGithub
Github
 
Social Coding GitHub 2015
Social Coding GitHub 2015Social Coding GitHub 2015
Social Coding GitHub 2015
 
Intro To Git
Intro To GitIntro To Git
Intro To Git
 
EclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heavenEclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heaven
 
SouthEast LinuxFest 2015 - intro to git
SouthEast LinuxFest 2015 -  intro to gitSouthEast LinuxFest 2015 -  intro to git
SouthEast LinuxFest 2015 - intro to git
 
News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26News from Git in Eclipse - EclipseCon EU - 2016-10-26
News from Git in Eclipse - EclipseCon EU - 2016-10-26
 
Flow
FlowFlow
Flow
 

En vedette

Team Development on Force.com with Github and Ant
Team Development on Force.com with Github and AntTeam Development on Force.com with Github and Ant
Team Development on Force.com with Github and Ant
Salesforce Developers
 
Intro to Version Control with Git and Github
Intro to Version Control with Git and GithubIntro to Version Control with Git and Github
Intro to Version Control with Git and Github
Joe Fleming
 
3 Git
3 Git3 Git

En vedette (10)

Team Development on Force.com with Github and Ant
Team Development on Force.com with Github and AntTeam Development on Force.com with Github and Ant
Team Development on Force.com with Github and Ant
 
Introduction to Git for Force.com Developers
Introduction to Git for Force.com DevelopersIntroduction to Git for Force.com Developers
Introduction to Git for Force.com Developers
 
Intro to Version Control with Git and Github
Intro to Version Control with Git and GithubIntro to Version Control with Git and Github
Intro to Version Control with Git and Github
 
Automating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous IntegrationAutomating Deployment Between Orgs Using Git & Continuous Integration
Automating Deployment Between Orgs Using Git & Continuous Integration
 
Continuous integration in github
Continuous integration in githubContinuous integration in github
Continuous integration in github
 
Fun with Jenkins & Salesforce
Fun with Jenkins & SalesforceFun with Jenkins & Salesforce
Fun with Jenkins & Salesforce
 
Hybrid Clouds: EC2/Heroku Calculator
Hybrid Clouds: EC2/Heroku CalculatorHybrid Clouds: EC2/Heroku Calculator
Hybrid Clouds: EC2/Heroku Calculator
 
How to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.comHow to Setup Continuous Integration With Git, Jenkins, and Force.com
How to Setup Continuous Integration With Git, Jenkins, and Force.com
 
7 common problems with salesforce data migration
7 common problems with salesforce data migration7 common problems with salesforce data migration
7 common problems with salesforce data migration
 
3 Git
3 Git3 Git
3 Git
 

Similaire à Git in Eclipse

Git tech talk
Git tech talkGit tech talk
Git tech talk
razasayed
 
News from Git in Java Land
News from Git in Java LandNews from Git in Java Land
News from Git in Java Land
msohn
 
Using git in eclipse by Chris Aniszczyk
Using git in eclipse by Chris AniszczykUsing git in eclipse by Chris Aniszczyk
Using git in eclipse by Chris Aniszczyk
EclipseDayParis
 
Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15
Chen-Han Hsiao
 

Similaire à Git in Eclipse (20)

Git basics
Git basicsGit basics
Git basics
 
You're doing it wrong! Git it right!
You're doing it wrong! Git it right!You're doing it wrong! Git it right!
You're doing it wrong! Git it right!
 
Git basics
Git basicsGit basics
Git basics
 
git KT .pptx
git KT .pptxgit KT .pptx
git KT .pptx
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
Git kelvin
Git   kelvinGit   kelvin
Git kelvin
 
Git and Github
Git and GithubGit and Github
Git and Github
 
Git.odp 0
Git.odp 0Git.odp 0
Git.odp 0
 
Git One Day Training Notes
Git One Day Training NotesGit One Day Training Notes
Git One Day Training Notes
 
Git tech talk
Git tech talkGit tech talk
Git tech talk
 
News from Git in Java Land
News from Git in Java LandNews from Git in Java Land
News from Git in Java Land
 
Lets git to it
Lets git to itLets git to it
Lets git to it
 
The Fundamentals of Git
The Fundamentals of GitThe Fundamentals of Git
The Fundamentals of Git
 
Using Subversion and Git Together
Using Subversion and Git TogetherUsing Subversion and Git Together
Using Subversion and Git Together
 
Git cheat-sheets
Git cheat-sheetsGit cheat-sheets
Git cheat-sheets
 
Git: Git'ing the Basic
Git: Git'ing the BasicGit: Git'ing the Basic
Git: Git'ing the Basic
 
Intro to Git
Intro to GitIntro to Git
Intro to Git
 
Using git in eclipse by Chris Aniszczyk
Using git in eclipse by Chris AniszczykUsing git in eclipse by Chris Aniszczyk
Using git in eclipse by Chris Aniszczyk
 
Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15Git basic stanley hsiao 2010_12_15
Git basic stanley hsiao 2010_12_15
 
Learn Git - For Beginners and Intermediate levels
Learn Git - For Beginners and Intermediate levelsLearn Git - For Beginners and Intermediate levels
Learn Git - For Beginners and Intermediate levels
 

Plus de Dariusz Łuksza

Guiding Diffy to the Enterprise land
Guiding Diffy to the Enterprise landGuiding Diffy to the Enterprise land
Guiding Diffy to the Enterprise land
Dariusz Łuksza
 

Plus de Dariusz Łuksza (9)

A story of 715 commits… in ~15 minutes

A story of 715 commits… in ~15 minutes
A story of 715 commits… in ~15 minutes

A story of 715 commits… in ~15 minutes

 
One Man App
One Man AppOne Man App
One Man App
 
Your own full blown Gerrit plugin
Your own full blown Gerrit pluginYour own full blown Gerrit plugin
Your own full blown Gerrit plugin
 
Guiding Diffy to the Enterprise land
Guiding Diffy to the Enterprise landGuiding Diffy to the Enterprise land
Guiding Diffy to the Enterprise land
 
Review your code like a Googler
Review your code like a GooglerReview your code like a Googler
Review your code like a Googler
 
Put more eyes on code
Put more eyes on codePut more eyes on code
Put more eyes on code
 
Gerrit Code Review - The Introduction
Gerrit Code Review - The IntroductionGerrit Code Review - The Introduction
Gerrit Code Review - The Introduction
 
Gerrit JavaScript Plugins
Gerrit JavaScript PluginsGerrit JavaScript Plugins
Gerrit JavaScript Plugins
 
Eclipse of idleness and focus on current task (rev. 2)
Eclipse of idleness and focus on current task (rev. 2)Eclipse of idleness and focus on current task (rev. 2)
Eclipse of idleness and focus on current task (rev. 2)
 

Dernier

Dernier (20)

AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Git in Eclipse

  • 1. Git in Eclipse Dariusz Łuksza Blog: http://luksza.org Mail: dariusz@luksza.org
  • 2. Agenda ● What Git is? ● History ● Git vs. CVS/SVN ● How Git works? ● Git commands ● What EGit 0.8.1 can do? ● Demo Time! ● First: project, commit, branch, tag, fetch, push, merge ● Keep high code quality thanks to Git 2
  • 3. History of Git'a 2005 - Linus Torvalds starts Git 2006 - Proof-of-concept, quite unusable 2007 - Index reader, quickdiff 2008 - Add history view, commit, push/fetch 2009 - Eclipse decides on Git; moved to Eclipse.org 3/2010 - Released 0.7.0 Diff/Merge Automatic IP Logs Preliminary merge algorithm implementation (not really usable for now on) 6/2010 - Released 0.8.0 Usability Improvements Git Repositories View Tagging Slide taken from presentation: 3 Understanding and Using Git at Eclipse | © 2010 by C. Aniszczyk, S. Pearce, R. Rosenberg and M. Sohn
  • 4. Git vs. CVS/SVN ● Distributed (but …) ● Centralized ● Ability to work off-line ● no ● Full local history ● no ● Versions are described ● Numerically described using SHA-1 versions ● Fast and lightweight ● Every branch is a full copy branches of repository ● Checkout on repository ● Checkout on file/catalog level level ● Complex tag's ● Simple tag's 4
  • 5. How Git works? Saves state not deltas. 5 Images taken from Pro Git book (http://progit.org)
  • 6. How Git works? Objects 6 Images taken from Pro Git book (http://progit.org)
  • 7. How Git works? Branches and tags v1.0 7 Image taken from Pro Git book (http://progit.org)
  • 8. How Git works? Merge (fast-forward) fast-forward merge 8 Images taken from Pro Git book (http://progit.org)
  • 9. How Git works? Merge (three-way merge) three-way merge 9 Images taken from Pro Git book (http://progit.org)
  • 10. How Git works? Rebase 1. 2. 3. 10
  • 11. How Git works? Structure of .git extensions global exclude file record branch changes object storage local branches default main branch remote tracking branches, divided by repository default remote repository default remote branch configuration for this repository tip of current branch cache for staging changes for next commit 11
  • 12. Git commands ● git init / git clone ● git pull ● git add ● git push ● git status ● git stash ● git commit ● git branch ● git diff ● git tag ● git fetch ● git checkout ● git log ● git config ● git merge ● git format-patch ● git rebase ● git mv / git rm 12 ● git remote ● git reset
  • 13. Git commands ● git init / git clone ● git pull ● git add ● git push ● git status ● git stash ● git commit ● git branch ● git diff ● git tag ● git fetch ● git checkout ● git log ● git config ● git merge ● git format-patch ● git rebase ● git mv / git rm 13 ● git remote ● git reset
  • 14. What EGit 0.8.1 can do? ● git init / git clone ● git pull ● git add ● git push ● git status ● git stash ● git commit ● git branch ● git diff ● git tag ● git fetch ● git checkout ● git log ● git config ● git merge ● git format-patch ● git rebase ● git mv / git rm 14 ● git remote ● git reset Autorem grafik jest: Deleket (Jojo Mendoza)
  • 16. First demo Create and share project locally. 16
  • 17. Second Demo Working with remote project. We'll use gitosis as a Git server and CGit for on-line project presentation. 17
  • 18. Third demo Benefiting from distributed VCS. Using Git and Gerrit for keeping project in good shape. 18
  • 19. Q&A ● Git: http://git-scm.com/ ● EGit: http://eclipse.org/egit/ ● JGit: http://eclipse.org/jgit/ ● EGit mailing list: http://dev.eclipse.org/mhonarc/lists/egit-dev/ ● JGit mailing list: http://dev.eclipse.org/mhonarc/lists/jgit-dev/ ● There is also an EGit forum on Eclipse forums: http://www.eclipse.org/forums/ 19