SlideShare a Scribd company logo
Introduction to Git
                               OJ Tibi <oj@tibi.ph>




Saturday, June 18, 2011

Greets to all.
Ask how many have used Git, of any other RCS, CVS, SVN, etc.
About Me

                     • Ex-ninja of PoliticalArena.com and newbie
                          warrior at Shopinas.com
                     • 3+ years enjoying CakePHP
                     • Fedora fan


Saturday, June 18, 2011

Short description about the author of the presentation.
What is Git?



Saturday, June 18, 2011

Git is a distributed revision control system (RCS). An RCS is a kind of software that tracks
changes on files that are in a certain repository. “Distributed” describes how Git does not
need a central server to record changes on the said repository.
Saturday, June 18, 2011

Short information about Linus Torvalds and on creating Git.
Linus (and the Linux project) needed a new RCS after BitKeeper became non-free.
Linus found that current SCMs lack performance, decided to make Git.
Saturday, June 18, 2011

Short information about Linus Torvalds and on creating Git.
Linus (and the Linux project) needed a new RCS after BitKeeper became non-free.
Linus found that current SCMs lack performance, decided to make Git.
Saturday, June 18, 2011

Short information about Linus Torvalds and on creating Git.
Linus (and the Linux project) needed a new RCS after BitKeeper became non-free.
Linus found that current SCMs lack performance, decided to make Git.
Saturday, June 18, 2011

Short information about Linus Torvalds and on creating Git.
Linus (and the Linux project) needed a new RCS after BitKeeper became non-free.
Linus found that current SCMs lack performance, decided to make Git.
Git is...
                     •    A distributed revision
                          control system

                     •    Created by Linus
                          Torvalds and Junio
                          Hamano

                     •    Independent of network
                          access or a central
                          server (reminds you of
                          SVN, huh?)




Saturday, June 18, 2011

Short description about Git.
Who Uses Git?



Saturday, June 18, 2011

List of companies or projects that use Git, starts with Twitter...
Saturday, June 18, 2011

...Facebook, and CakePHP as examples of projects that use Git.
These projects and companies rely on the fast, independent, distributed nature of Git.
Saturday, June 18, 2011

...Facebook, and CakePHP as examples of projects that use Git.
These projects and companies rely on the fast, independent, distributed nature of Git.
Saturday, June 18, 2011

...Facebook, and CakePHP as examples of projects that use Git.
These projects and companies rely on the fast, independent, distributed nature of Git.
Saturday, June 18, 2011

...Facebook, and CakePHP as examples of projects that use Git.
These projects and companies rely on the fast, independent, distributed nature of Git.
Where to Use Git?



Saturday, June 18, 2011

Following is a list of file types where one may consider putting into an RCS, specifically Git.
Saturday, June 18, 2011

Source code, talk about kinds of source code (HTML5, CSS3, PHP, Python, Ruby, JS)
“Projects like the web site of a multinational company that hopefully wouldn’t get hacked
again and again...”
Saturday, June 18, 2011

PDFs, text documents, spreadsheets, presentations
Next: images (binaries)
Saturday, June 18, 2011

PDFs, text documents, spreadsheets, presentations
Next: images (binaries)
Saturday, June 18, 2011

PDFs, text documents, spreadsheets, presentations
Next: images (binaries)
Saturday, June 18, 2011

PDFs, text documents, spreadsheets, presentations
Next: images (binaries)
Saturday, June 18, 2011

Images (and some binaries), YMMV, as not all images are recommended to be kept inside
source control. Most projects need images, so you might want to count them in. SVG
illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even
sometimes PSDs... just to make sure you can roll back to something in case you need to
make some edits. :)
Saturday, June 18, 2011

Images (and some binaries), YMMV, as not all images are recommended to be kept inside
source control. Most projects need images, so you might want to count them in. SVG
illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even
sometimes PSDs... just to make sure you can roll back to something in case you need to
make some edits. :)
Saturday, June 18, 2011

Images (and some binaries), YMMV, as not all images are recommended to be kept inside
source control. Most projects need images, so you might want to count them in. SVG
illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even
sometimes PSDs... just to make sure you can roll back to something in case you need to
make some edits. :)
Saturday, June 18, 2011

Images (and some binaries), YMMV, as not all images are recommended to be kept inside
source control. Most projects need images, so you might want to count them in. SVG
illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even
sometimes PSDs... just to make sure you can roll back to something in case you need to
make some edits. :)
Saturday, June 18, 2011

Images (and some binaries), YMMV, as not all images are recommended to be kept inside
source control. Most projects need images, so you might want to count them in. SVG
illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even
sometimes PSDs... just to make sure you can roll back to something in case you need to
make some edits. :)
Getting Git



Saturday, June 18, 2011

Explain the methods how Git can be obtained.
Git It Here
                     •    *Nix                               •   http://git-scm.com/
                                                                 download (build it, old-
                          •   yum install git                    school)

                          •   apt-get install git-core       •   http://macports.org/

                          •   http://git-scm.com/        •   PC
                              download
                                                             •   http://code.google.com/
                     •    Mac                                    p/msysgit

                          •   http://code.google.com/
                              p/git-osx-installer/



Saturday, June 18, 2011

*Note: Didn’t include Cygwin because it’s kinda bloated.
Basic Git Workflow



Saturday, June 18, 2011

To work effectively using Git...
“init” or “clone” a repo             make changes


    “add” and “commit” your changeset

                                              “merge” conflicts, if any


 “push” changes to                          “pull” changes from remote
      remote


                                         “format-patch” for submission
         “tag” a version for
               release
Saturday, June 18, 2011

A basic understanding of a Git workflow. Unlike SVN, Git needs an additional step to “push”
changes from the local repository to the remote repository.
“format-patch” what?!?

                     • git format-patch enables the user to create
                          patches that can be sent via e-mail.
                     • Was useful for Linux kernel devs, reviewing
                          code in small teams.




Saturday, June 18, 2011

format-patch lets the user make patches that can be submitted via electronic mail.
site how Linux devs review the code by peers before submitting to the main repository.
Share Your Code!

                     • “git format-patch” old-skool, but effective
                          for peers
                     • “git push” to a remote repository
                     •             it, or try




Saturday, June 18, 2011

Offer some choices on how to share a Git repository.
Further Reading
                     •    http://git-scm.com/

                     •    http://gitref.org/

                     •    http://www.kernel.org/
                          pub/software/scm/git/
                          docs/gittutorial.html

                     •    http://help.github.com/

                     •    Google it (of course)




Saturday, June 18, 2011

Some reading resources for Git learning.
~Fin~
                 Always code as if the guy who ends up maintaining your code will be
                  a violent psychopath who knows where you live.  ~ Martin Golding




Saturday, June 18, 2011

That concludes the introduction to Git. I hope you had some insight and use it for your
projects.
Follow me!
                                    http://twitter.com/ojtibi
                                          http://tibi.ph/




Saturday, June 18, 2011

Don’t forget to follow me on Twitter and visit my weblog.

Introduction to Git by OJ Tibi is licensed under a Creative Commons Attribution-ShareAlike
3.0 Unported License.

More Related Content

What's hot

Git and the inQbation Experience
Git and the inQbation ExperienceGit and the inQbation Experience
Git and the inQbation Experience
Blake Newman
 
Git slides
Git slidesGit slides
Git slides
55020
 
An introduction to Git.
An introduction to Git.An introduction to Git.
An introduction to Git.
Sten Govaerts
 
Ten Things You Didn't Know Git And GitHub Could Do
Ten Things You Didn't Know Git And GitHub Could DoTen Things You Didn't Know Git And GitHub Could Do
Ten Things You Didn't Know Git And GitHub Could DoOwen Ou
 
Contributing to YUI
Contributing to YUIContributing to YUI
Contributing to YUI
Dav Glass
 
Git
GitGit
ESE 2010: Using Git in Eclipse
ESE 2010: Using Git in EclipseESE 2010: Using Git in Eclipse
ESE 2010: Using Git in Eclipse
Chris Aniszczyk
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Randal Schwartz
 
Git workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakowGit workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakow
Luca Milanesio
 
EclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heavenEclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heaven
msohn
 
LA Python #1: Intro, Events, Advocacy
LA Python #1: Intro, Events, AdvocacyLA Python #1: Intro, Events, Advocacy
LA Python #1: Intro, Events, Advocacy
Audrey Roy
 
Git: A Getting Started Presentation
Git: A Getting Started PresentationGit: A Getting Started Presentation
Git: A Getting Started PresentationNap Ramirez
 
Formal verification of algorithms
Formal verification of algorithmsFormal verification of algorithms
Formal verification of algorithms
Jordy Moos
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
Tony Hillerson
 
Gitting better
Gitting betterGitting better
Gitting better
Ali Servet Donmez
 
Introducing Github and Octocats by Tony Bangratz
Introducing Github and Octocats by Tony BangratzIntroducing Github and Octocats by Tony Bangratz
Introducing Github and Octocats by Tony BangratzRailsGirls_RTM
 

What's hot (18)

Git and the inQbation Experience
Git and the inQbation ExperienceGit and the inQbation Experience
Git and the inQbation Experience
 
Git slides
Git slidesGit slides
Git slides
 
An introduction to Git.
An introduction to Git.An introduction to Git.
An introduction to Git.
 
Ten Things You Didn't Know Git And GitHub Could Do
Ten Things You Didn't Know Git And GitHub Could DoTen Things You Didn't Know Git And GitHub Could Do
Ten Things You Didn't Know Git And GitHub Could Do
 
Contributing to YUI
Contributing to YUIContributing to YUI
Contributing to YUI
 
Git
GitGit
Git
 
ESE 2010: Using Git in Eclipse
ESE 2010: Using Git in EclipseESE 2010: Using Git in Eclipse
ESE 2010: Using Git in Eclipse
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakowGit workshop 33degree 2011 krakow
Git workshop 33degree 2011 krakow
 
EclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heavenEclipseCon 2010 talk: Towards contributors heaven
EclipseCon 2010 talk: Towards contributors heaven
 
16 Git
16 Git16 Git
16 Git
 
LA Python #1: Intro, Events, Advocacy
LA Python #1: Intro, Events, AdvocacyLA Python #1: Intro, Events, Advocacy
LA Python #1: Intro, Events, Advocacy
 
Git: A Getting Started Presentation
Git: A Getting Started PresentationGit: A Getting Started Presentation
Git: A Getting Started Presentation
 
Git General
Git GeneralGit General
Git General
 
Formal verification of algorithms
Formal verification of algorithmsFormal verification of algorithms
Formal verification of algorithms
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
 
Gitting better
Gitting betterGitting better
Gitting better
 
Introducing Github and Octocats by Tony Bangratz
Introducing Github and Octocats by Tony BangratzIntroducing Github and Octocats by Tony Bangratz
Introducing Github and Octocats by Tony Bangratz
 

Viewers also liked

Mwhackathon 2012
Mwhackathon 2012Mwhackathon 2012
Mwhackathon 2012
Matthijs van der Meulen
 
WordCamp Phoenix 2012
WordCamp Phoenix 2012WordCamp Phoenix 2012
WordCamp Phoenix 2012
Jay Thompson
 
No Fear
No FearNo Fear
No Fear
cliener
 
All out in the Cloud - CloudEast 2012
All out in the Cloud - CloudEast 2012All out in the Cloud - CloudEast 2012
All out in the Cloud - CloudEast 2012Jan Jongboom
 
An Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp PhoenixAn Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp Phoenix
vegasgeek
 
Conquering The Context Conundrum
Conquering The Context ConundrumConquering The Context Conundrum
Conquering The Context Conundrum
Daniel Eizans
 
What's our Status?
What's our Status?What's our Status?
What's our Status?
Dirk Haun
 
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Nathan O'Hanlon
 
On Shrink It and Pink It: Designing Experiences for Women
On Shrink It and Pink It: Designing Experiences for WomenOn Shrink It and Pink It: Designing Experiences for Women
On Shrink It and Pink It: Designing Experiences for Women
Jessica Ivins
 
Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類
Satoshi imai
 
Building a Responsive Web Design Process
Building a Responsive Web Design ProcessBuilding a Responsive Web Design Process
Building a Responsive Web Design Process
Lydia Whitehead
 
Let's Sketchnote — MidwestUX 2012
Let's Sketchnote — MidwestUX 2012Let's Sketchnote — MidwestUX 2012
Let's Sketchnote — MidwestUX 2012
Veronica Erb
 
Community at Scale
Community at ScaleCommunity at Scale
Community at Scale
Lydia Pintscher
 
Design Swoon - Visual Trends & WordPress
Design Swoon - Visual Trends  & WordPressDesign Swoon - Visual Trends  & WordPress
Design Swoon - Visual Trends & WordPress
Sara Cannon
 
Body Language The Hidden Language
Body Language The Hidden LanguageBody Language The Hidden Language
Body Language The Hidden Language
Brad Nunnally
 

Viewers also liked (15)

Mwhackathon 2012
Mwhackathon 2012Mwhackathon 2012
Mwhackathon 2012
 
WordCamp Phoenix 2012
WordCamp Phoenix 2012WordCamp Phoenix 2012
WordCamp Phoenix 2012
 
No Fear
No FearNo Fear
No Fear
 
All out in the Cloud - CloudEast 2012
All out in the Cloud - CloudEast 2012All out in the Cloud - CloudEast 2012
All out in the Cloud - CloudEast 2012
 
An Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp PhoenixAn Introduction to Multisite - WordCamp Phoenix
An Introduction to Multisite - WordCamp Phoenix
 
Conquering The Context Conundrum
Conquering The Context ConundrumConquering The Context Conundrum
Conquering The Context Conundrum
 
What's our Status?
What's our Status?What's our Status?
What's our Status?
 
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20Html5 web sockets - Brad Drysdale - London Web 2011-10-20
Html5 web sockets - Brad Drysdale - London Web 2011-10-20
 
On Shrink It and Pink It: Designing Experiences for Women
On Shrink It and Pink It: Designing Experiences for WomenOn Shrink It and Pink It: Designing Experiences for Women
On Shrink It and Pink It: Designing Experiences for Women
 
Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類Lispmeetup48 cl-online-learningによる文書分類
Lispmeetup48 cl-online-learningによる文書分類
 
Building a Responsive Web Design Process
Building a Responsive Web Design ProcessBuilding a Responsive Web Design Process
Building a Responsive Web Design Process
 
Let's Sketchnote — MidwestUX 2012
Let's Sketchnote — MidwestUX 2012Let's Sketchnote — MidwestUX 2012
Let's Sketchnote — MidwestUX 2012
 
Community at Scale
Community at ScaleCommunity at Scale
Community at Scale
 
Design Swoon - Visual Trends & WordPress
Design Swoon - Visual Trends  & WordPressDesign Swoon - Visual Trends  & WordPress
Design Swoon - Visual Trends & WordPress
 
Body Language The Hidden Language
Body Language The Hidden LanguageBody Language The Hidden Language
Body Language The Hidden Language
 

Similar to Intro to Git

Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
GoogleDevelopersStud
 
Enterprise git
Enterprise gitEnterprise git
Enterprise gitPedro Melo
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
GoogleDevelopersStud1
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
Betclic Everest Group Tech Team
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
Otto Kekäläinen
 
An Introduction to Git (even for non-developers)
An Introduction to Git (even for non-developers)An Introduction to Git (even for non-developers)
An Introduction to Git (even for non-developers)
John Anderson
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
Nicolás Tourné
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
Panagiotis Papadopoulos
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Yan Vugenfirer
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
uzair
 
Git extension-training
Git extension-trainingGit extension-training
Git extension-training
Eric Guo
 
Github
GithubGithub
Getting started With GIT
Getting started With GITGetting started With GIT
Getting started With GIT
GhadiAlGhosh
 
Introduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptxIntroduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptx
Abdul Salam
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech Article
PRIYATHAMDARISI
 
Hello, Git!
Hello, Git!Hello, Git!
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
tnscharishma
 
3 Git
3 Git3 Git
An introductory guide to GIT
An introductory guide to GITAn introductory guide to GIT
An introductory guide to GIT
Amith jayasekara
 

Similar to Intro to Git (20)

Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
Enterprise git
Enterprise gitEnterprise git
Enterprise git
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
Git best practices workshop
Git best practices workshopGit best practices workshop
Git best practices workshop
 
An Introduction to Git (even for non-developers)
An Introduction to Git (even for non-developers)An Introduction to Git (even for non-developers)
An Introduction to Git (even for non-developers)
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
 
Intro to Git and GitHub
Intro to Git and GitHubIntro to Git and GitHub
Intro to Git and GitHub
 
Git
GitGit
Git
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdfGit Tutorial A Comprehensive Guide for Beginners.pdf
Git Tutorial A Comprehensive Guide for Beginners.pdf
 
Git extension-training
Git extension-trainingGit extension-training
Git extension-training
 
Github
GithubGithub
Github
 
Getting started With GIT
Getting started With GITGetting started With GIT
Getting started With GIT
 
Introduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptxIntroduction to git and githhub with practicals.pptx
Introduction to git and githhub with practicals.pptx
 
Introduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech ArticleIntroduction to GitHub, Open Source and Tech Article
Introduction to GitHub, Open Source and Tech Article
 
Hello, Git!
Hello, Git!Hello, Git!
Hello, Git!
 
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
 
3 Git
3 Git3 Git
3 Git
 
An introductory guide to GIT
An introductory guide to GITAn introductory guide to GIT
An introductory guide to GIT
 

Recently uploaded

Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Albert Hoitingh
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
Neo4j
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
Prayukth K V
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
Quotidiano Piemontese
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
ControlCase
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
91mobiles
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
DianaGray10
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Aggregage
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
Neo4j
 

Recently uploaded (20)

Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
GraphSummit Singapore | The Future of Agility: Supercharging Digital Transfor...
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
National Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practicesNational Security Agency - NSA mobile device best practices
National Security Agency - NSA mobile device best practices
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
PCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase TeamPCI PIN Basics Webinar from the Controlcase Team
PCI PIN Basics Webinar from the Controlcase Team
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5UiPath Test Automation using UiPath Test Suite series, part 5
UiPath Test Automation using UiPath Test Suite series, part 5
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Generative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to ProductionGenerative AI Deep Dive: Advancing from Proof of Concept to Production
Generative AI Deep Dive: Advancing from Proof of Concept to Production
 
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
GraphSummit Singapore | Enhancing Changi Airport Group's Passenger Experience...
 

Intro to Git

  • 1. Introduction to Git OJ Tibi <oj@tibi.ph> Saturday, June 18, 2011 Greets to all. Ask how many have used Git, of any other RCS, CVS, SVN, etc.
  • 2. About Me • Ex-ninja of PoliticalArena.com and newbie warrior at Shopinas.com • 3+ years enjoying CakePHP • Fedora fan Saturday, June 18, 2011 Short description about the author of the presentation.
  • 3. What is Git? Saturday, June 18, 2011 Git is a distributed revision control system (RCS). An RCS is a kind of software that tracks changes on files that are in a certain repository. “Distributed” describes how Git does not need a central server to record changes on the said repository.
  • 4. Saturday, June 18, 2011 Short information about Linus Torvalds and on creating Git. Linus (and the Linux project) needed a new RCS after BitKeeper became non-free. Linus found that current SCMs lack performance, decided to make Git.
  • 5. Saturday, June 18, 2011 Short information about Linus Torvalds and on creating Git. Linus (and the Linux project) needed a new RCS after BitKeeper became non-free. Linus found that current SCMs lack performance, decided to make Git.
  • 6. Saturday, June 18, 2011 Short information about Linus Torvalds and on creating Git. Linus (and the Linux project) needed a new RCS after BitKeeper became non-free. Linus found that current SCMs lack performance, decided to make Git.
  • 7. Saturday, June 18, 2011 Short information about Linus Torvalds and on creating Git. Linus (and the Linux project) needed a new RCS after BitKeeper became non-free. Linus found that current SCMs lack performance, decided to make Git.
  • 8. Git is... • A distributed revision control system • Created by Linus Torvalds and Junio Hamano • Independent of network access or a central server (reminds you of SVN, huh?) Saturday, June 18, 2011 Short description about Git.
  • 9. Who Uses Git? Saturday, June 18, 2011 List of companies or projects that use Git, starts with Twitter...
  • 10. Saturday, June 18, 2011 ...Facebook, and CakePHP as examples of projects that use Git. These projects and companies rely on the fast, independent, distributed nature of Git.
  • 11. Saturday, June 18, 2011 ...Facebook, and CakePHP as examples of projects that use Git. These projects and companies rely on the fast, independent, distributed nature of Git.
  • 12. Saturday, June 18, 2011 ...Facebook, and CakePHP as examples of projects that use Git. These projects and companies rely on the fast, independent, distributed nature of Git.
  • 13. Saturday, June 18, 2011 ...Facebook, and CakePHP as examples of projects that use Git. These projects and companies rely on the fast, independent, distributed nature of Git.
  • 14. Where to Use Git? Saturday, June 18, 2011 Following is a list of file types where one may consider putting into an RCS, specifically Git.
  • 15. Saturday, June 18, 2011 Source code, talk about kinds of source code (HTML5, CSS3, PHP, Python, Ruby, JS) “Projects like the web site of a multinational company that hopefully wouldn’t get hacked again and again...”
  • 16. Saturday, June 18, 2011 PDFs, text documents, spreadsheets, presentations Next: images (binaries)
  • 17. Saturday, June 18, 2011 PDFs, text documents, spreadsheets, presentations Next: images (binaries)
  • 18. Saturday, June 18, 2011 PDFs, text documents, spreadsheets, presentations Next: images (binaries)
  • 19. Saturday, June 18, 2011 PDFs, text documents, spreadsheets, presentations Next: images (binaries)
  • 20. Saturday, June 18, 2011 Images (and some binaries), YMMV, as not all images are recommended to be kept inside source control. Most projects need images, so you might want to count them in. SVG illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even sometimes PSDs... just to make sure you can roll back to something in case you need to make some edits. :)
  • 21. Saturday, June 18, 2011 Images (and some binaries), YMMV, as not all images are recommended to be kept inside source control. Most projects need images, so you might want to count them in. SVG illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even sometimes PSDs... just to make sure you can roll back to something in case you need to make some edits. :)
  • 22. Saturday, June 18, 2011 Images (and some binaries), YMMV, as not all images are recommended to be kept inside source control. Most projects need images, so you might want to count them in. SVG illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even sometimes PSDs... just to make sure you can roll back to something in case you need to make some edits. :)
  • 23. Saturday, June 18, 2011 Images (and some binaries), YMMV, as not all images are recommended to be kept inside source control. Most projects need images, so you might want to count them in. SVG illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even sometimes PSDs... just to make sure you can roll back to something in case you need to make some edits. :)
  • 24. Saturday, June 18, 2011 Images (and some binaries), YMMV, as not all images are recommended to be kept inside source control. Most projects need images, so you might want to count them in. SVG illustrations, PNG icons, GIF diagrams of your corporate network, JPG photos and even sometimes PSDs... just to make sure you can roll back to something in case you need to make some edits. :)
  • 25. Getting Git Saturday, June 18, 2011 Explain the methods how Git can be obtained.
  • 26. Git It Here • *Nix • http://git-scm.com/ download (build it, old- • yum install git school) • apt-get install git-core • http://macports.org/ • http://git-scm.com/ • PC download • http://code.google.com/ • Mac p/msysgit • http://code.google.com/ p/git-osx-installer/ Saturday, June 18, 2011 *Note: Didn’t include Cygwin because it’s kinda bloated.
  • 27. Basic Git Workflow Saturday, June 18, 2011 To work effectively using Git...
  • 28. “init” or “clone” a repo make changes “add” and “commit” your changeset “merge” conflicts, if any “push” changes to “pull” changes from remote remote “format-patch” for submission “tag” a version for release Saturday, June 18, 2011 A basic understanding of a Git workflow. Unlike SVN, Git needs an additional step to “push” changes from the local repository to the remote repository.
  • 29. “format-patch” what?!? • git format-patch enables the user to create patches that can be sent via e-mail. • Was useful for Linux kernel devs, reviewing code in small teams. Saturday, June 18, 2011 format-patch lets the user make patches that can be submitted via electronic mail. site how Linux devs review the code by peers before submitting to the main repository.
  • 30. Share Your Code! • “git format-patch” old-skool, but effective for peers • “git push” to a remote repository • it, or try Saturday, June 18, 2011 Offer some choices on how to share a Git repository.
  • 31. Further Reading • http://git-scm.com/ • http://gitref.org/ • http://www.kernel.org/ pub/software/scm/git/ docs/gittutorial.html • http://help.github.com/ • Google it (of course) Saturday, June 18, 2011 Some reading resources for Git learning.
  • 32. ~Fin~ Always code as if the guy who ends up maintaining your code will be a violent psychopath who knows where you live.  ~ Martin Golding Saturday, June 18, 2011 That concludes the introduction to Git. I hope you had some insight and use it for your projects.
  • 33. Follow me! http://twitter.com/ojtibi http://tibi.ph/ Saturday, June 18, 2011 Don’t forget to follow me on Twitter and visit my weblog. Introduction to Git by OJ Tibi is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.