SlideShare a Scribd company logo
Nicolás Tourné @nicotourne
CTO of BeeReal
Tandil, Argentina - 2013
#BeeTalks
Starting with
Git & GitHub
Agenda
• What’s a Version Control System?
• What the heck is Git?
• Some Git commands
• What’s about GitHub?
• Git in Action!
What’s a Version Control System?
“An application that allows you to
record changes to your codebase in a
structured and controlled fashion.”
Why do I need that?
• Makes it way easier to undo errors / roll
back to earlier versions of code
• Makes it way easier to share a codebase
between developers without creating
conflicts
• Makes it way easier to deploy changes
from development to staging or production
environments
Popular Version Control Systems
• CVS - Concurrent Version System
• SVN - SubVersioN
• Git
• Mercurial
• Bazaar
• LibreSource
What the heck is Git?
• Distributed Source Control system
• Open source, free (GNU GPL V2)
• Originally developed by Linus Torvalds for
the development of the Linux Kernel in 2005
• Focus on speed and efficiency
• Quite a unique design and therefore
sometimes a bit scary and difficult to
understand
• Save snapshots, no differences
• Branching (lightweight & fast)
• Automatic merge of files
• Used on personal or very large projects, and
for all size of teams
What the heck is Git?
Distributed Development
• Every Git working directory contains the
complete repository and history and full
revision tracking capabilities
• You’re not dependent on a central server
and you don’t have to be online
• It’s extremely fast - much faster than SVN,
CVS and other systems
Centralized vs Distributed
Development
SVN / CVS - Centralized development
John
Central
Peter Bob Carl
Git - Distributed development
Centralized vs Distributed
Development
John
Peter
Bob
Carl
Central
A Git Sample
1. A new git is initialized as a remote
repository
John Remote repository Peter
master
C0
A Git Sample
2. John and Peter clone the git repository
John Remote repository Peter
master
C0
master
C0
master
C0
A Git Sample
3. John does a commit
John Remote repository Peter
master
C1
master
C0
master
C0
C0
A Git Sample
4. John does a push
John Remote repository Peter
master
C1
master
C0
C0
master
C1
C0
A Git Sample
5. Peter does a pull
John Remote repository Peter
master
C1
master
C1
C0
master
C1
C0 C0
A Git Sample
6. John does a commit & push
John Remote repository Peter
master
C2
master
C1
C1
master
C2
C0 C0
C0 C0
A Git Sample
7. Peter does a commit
John Remote repository Peter
master
C2
master
C3
C1
master
C2
C1 C1
C0 C0 C0
A Git Sample
8. Peter does a pull (fetch & merge)
John Remote repository Peter
master
C2
master
C2C1
master
C2
C1
C1C0 C0
C0
C3
C4
A Git Sample
9. Peter does a push
John Remote repository Peter
master
C2
master
C2C1
master
C4
C1C0 C1
C0
C3
C4
C2 C3
C0
A Git Sample
10. John does a pull
John Remote repository Peter
master
C4
master
C2
master
C4
C1C1 C1
C0
C3
C4
C2 C3
C0
C2 C3
C0
Git Commands
Getting and Creating projects
init
To create a git repository from an existing
directory of files
$ git init
clone
If you want to get a copy of a project, you
need to clone it
$ git clone [url]
Git Commands
Basic Snapshotting
git add
You have to add file contents to your staging
area before you can commit them
$ git add index.php
git status
View the status of your files in the working
directory and staging area
$ git status
Git Commands
Basic Snapshotting
git diff
Shows diff of what is staged and what is
modified but unstaged
$ git diff
git commit
Records a snapshot of the staging area
$ git commit -m “My comment”
Git Commands
Basic Snapshotting
git reset
Undo changed and commits
$ git reset
git rm
Remove files from the staging area
$ git rm index.php
Git Commands
Basic Snapshotting
git mv
Git doesn’t track file renames
$ git mv index.php index.html
git stash
Save changes made in the current index and
working directory for later
$ git stash
Git Commands
Branching and Merging
git branch
List, create and manage branches
$ git branch
$ git branch QA
git checkout
Switch to a new branch context
$ git checkout QA
$ git checkout -b live
Git Commands
Branching and Merging
git merge
Merge a branch context into your current one
$ git branch
$ git merge QA
git log
Show commit history of a branch
$ git log
Git Commands
Branching and Merging
git tag
Tag a point in history as important
$ git tag -a v1.0
Git Commands
Sharing and Updating Projects
git fetch
Download new branches and data from
remote repository
$ git fetch
git pull
Fetch from a remote repo and try to merge
into the current branch
$ git pull
Git Commands
Sharing and Updating Projects
git push
Push your new branches and data to a remote
repository
$ git push
What's about GitHub?
• It’s a Git repository hosting service… but it
adds many of its own features
• While Git is a command line tool, GitHub
provides a web-based graphical interface
• It also provides access control and several
collaboration features, such as wikis and
basic task management tools
What's about GitHub?
• By default, all projects are public and free. In
you want a private project, then pay
• You can clone any public repository, follow
projects and developers, post comments, etc
• It’s becoming the Facebook’s for developers
Git in Action!
Go to your computer and start playing...
1. Create a new repository on GitHub
2. Clone this repository
3. Add new files
4. Commit and push them
5. Create a new branch and merge files
Thank you
for your attention!
Questions?
Just tweet me @nicotourne
or mail me at ntourne@beerealit.com
beerealit.com
More info at...
Official Git site
http://git-scm.com
Some slides
http://www.slideshare.net/jomikr/quick-introduction-to-git
http://www.slideshare.net/reallyordinary/intro-to-git-for-drupal-7
http://www.slideshare.net/anildigital/git-introduction
http://www.slideshare.net/chacon/getting-git
Git commands
http://gitref.org/basic
GitHub site
http://github.com

More Related Content

What's hot

HacktoberFest-Git&GitHub
HacktoberFest-Git&GitHubHacktoberFest-Git&GitHub
HacktoberFest-Git&GitHub
GDSCIIITBbsr
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Simplilearn
 
Workshop on Git and GitHub
Workshop on Git and GitHubWorkshop on Git and GitHub
Workshop on Git and GitHub
DSCVSSUT
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Yan Vugenfirer
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Colin Su
 
Git, GitHub and Open Source
Git, GitHub and Open SourceGit, GitHub and Open Source
Git, GitHub and Open Source
Lorna Mitchell
 
Let's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHubLet's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHub
Kim Moir
 
git and github
git and githubgit and github
git and github
Darren Oakley
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
Jiwon Baek
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
Rakesh Sukumar
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
Rick Umali
 
How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
Karsten Dambekalns
 
The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with Git
E Carter
 
Brief tutorial on Git
Brief tutorial on GitBrief tutorial on Git
Brief tutorial on Git
聖文 鄭
 
Github Case Study By Amil Ali
Github Case Study By Amil AliGithub Case Study By Amil Ali
Github Case Study By Amil Ali
AmilAli1
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
GoogleDevelopersStud1
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
KMS Technology
 
Introduction to git and github
Introduction to git and githubIntroduction to git and github
Introduction to git and github
Aderemi Dadepo
 
GitHub Basics - Derek Bable
GitHub Basics - Derek BableGitHub Basics - Derek Bable
GitHub Basics - Derek Bable
"FENG "GEORGE"" YU
 

What's hot (20)

HacktoberFest-Git&GitHub
HacktoberFest-Git&GitHubHacktoberFest-Git&GitHub
HacktoberFest-Git&GitHub
 
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
Git Tutorial For Beginners | What is Git and GitHub? | DevOps Tools | DevOps ...
 
Workshop on Git and GitHub
Workshop on Git and GitHubWorkshop on Git and GitHub
Workshop on Git and GitHub
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git, GitHub and Open Source
Git, GitHub and Open SourceGit, GitHub and Open Source
Git, GitHub and Open Source
 
Let's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHubLet's Git this Party Started: An Introduction to Git and GitHub
Let's Git this Party Started: An Introduction to Git and GitHub
 
git and github
git and githubgit and github
git and github
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
 
Intro to Git & GitHub
Intro to Git & GitHubIntro to Git & GitHub
Intro to Git & GitHub
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
 
How Git and Gerrit make you more productive
How Git and Gerrit make you more productiveHow Git and Gerrit make you more productive
How Git and Gerrit make you more productive
 
The everyday developer's guide to version control with Git
The everyday developer's guide to version control with GitThe everyday developer's guide to version control with Git
The everyday developer's guide to version control with Git
 
Brief tutorial on Git
Brief tutorial on GitBrief tutorial on Git
Brief tutorial on Git
 
Github Case Study By Amil Ali
Github Case Study By Amil AliGithub Case Study By Amil Ali
Github Case Study By Amil Ali
 
Git and Github Session
Git and Github SessionGit and Github Session
Git and Github Session
 
Git Version Control System
Git Version Control SystemGit Version Control System
Git Version Control System
 
Introduction to git and github
Introduction to git and githubIntroduction to git and github
Introduction to git and github
 
GitHub Basics - Derek Bable
GitHub Basics - Derek BableGitHub Basics - Derek Bable
GitHub Basics - Derek Bable
 

Viewers also liked

CV-Pooja 3...
CV-Pooja 3...CV-Pooja 3...
CV-Pooja 3...
Pooja Gupta
 
SHAMIQ1.RESUME new
SHAMIQ1.RESUME newSHAMIQ1.RESUME new
SHAMIQ1.RESUME new
shamiqaftab
 
Can Marketers Get to Grips with the Human Condition?
Can Marketers Get to Grips with the Human Condition?Can Marketers Get to Grips with the Human Condition?
Can Marketers Get to Grips with the Human Condition?
Klaxon
 
Bilingual Evaluations: Writing the FIE report for Bilingual Students
Bilingual Evaluations:  Writing the FIE report for Bilingual StudentsBilingual Evaluations:  Writing the FIE report for Bilingual Students
Bilingual Evaluations: Writing the FIE report for Bilingual Students
Bilinguistics
 
Wyniki egzaminów PZS Lędziny
Wyniki egzaminów PZS LędzinyWyniki egzaminów PZS Lędziny
Wyniki egzaminów PZS Lędziny
Kamil Waśniowski
 
Video Advertising Growth
Video Advertising GrowthVideo Advertising Growth
Video Advertising Growth
Drive Research
 
Baby Steps to Note-Taking for Consecutive Interpreting
Baby Steps to Note-Taking for Consecutive InterpretingBaby Steps to Note-Taking for Consecutive Interpreting
Baby Steps to Note-Taking for Consecutive Interpreting
National Council on Interpreting in Health Care (NCIHC)
 
CV-Virendra
CV-VirendraCV-Virendra
CV-Virendra
Virendra Pal
 

Viewers also liked (9)

CV-Pooja 3...
CV-Pooja 3...CV-Pooja 3...
CV-Pooja 3...
 
SQL
SQLSQL
SQL
 
SHAMIQ1.RESUME new
SHAMIQ1.RESUME newSHAMIQ1.RESUME new
SHAMIQ1.RESUME new
 
Can Marketers Get to Grips with the Human Condition?
Can Marketers Get to Grips with the Human Condition?Can Marketers Get to Grips with the Human Condition?
Can Marketers Get to Grips with the Human Condition?
 
Bilingual Evaluations: Writing the FIE report for Bilingual Students
Bilingual Evaluations:  Writing the FIE report for Bilingual StudentsBilingual Evaluations:  Writing the FIE report for Bilingual Students
Bilingual Evaluations: Writing the FIE report for Bilingual Students
 
Wyniki egzaminów PZS Lędziny
Wyniki egzaminów PZS LędzinyWyniki egzaminów PZS Lędziny
Wyniki egzaminów PZS Lędziny
 
Video Advertising Growth
Video Advertising GrowthVideo Advertising Growth
Video Advertising Growth
 
Baby Steps to Note-Taking for Consecutive Interpreting
Baby Steps to Note-Taking for Consecutive InterpretingBaby Steps to Note-Taking for Consecutive Interpreting
Baby Steps to Note-Taking for Consecutive Interpreting
 
CV-Virendra
CV-VirendraCV-Virendra
CV-Virendra
 

Similar to Github

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
 
Git installation and configuration
Git installation and configurationGit installation and configuration
Git installation and configuration
Kishor Kumar
 
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
 
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
 
Git presentation
Git presentationGit presentation
Git presentation
Vikas Yaligar
 
Version control git day02
Version control   git day02Version control   git day02
Version control git day02
Gourav Varma
 
Introduction to git hub
Introduction to git hubIntroduction to git hub
Introduction to git hub
Naveen Pandey
 
3 Git
3 Git3 Git
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with Git
Robert Lee-Cann
 
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
tnscharishma
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
Rick Umali
 
Git overview
Git overviewGit overview
Git overview
Gowarthini
 
O365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van RousseltO365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van Rousselt
NCCOMMS
 
Git for uninitiated
Git for uninitiatedGit for uninitiated
Git for uninitiated
John C. Chan
 
Introduction to Git for Network Engineers
Introduction to Git for Network EngineersIntroduction to Git for Network Engineers
Introduction to Git for Network Engineers
Joel W. King
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
BigBlueHat
 
Intro to Git, GitHub, and Devpost
Intro to Git, GitHub, and DevpostIntro to Git, GitHub, and Devpost
Intro to Git, GitHub, and Devpost
Andrew Kerr
 
GitHub Event.pptx
GitHub Event.pptxGitHub Event.pptx
GitHub Event.pptx
KeerthanaJ32
 
Git Workflow
Git WorkflowGit Workflow
Git Workflow
Gary Yeh
 
Introduction to git
Introduction to gitIntroduction to git
Introduction to git
Nguyen Van Hung
 

Similar to Github (20)

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
 
Git installation and configuration
Git installation and configurationGit installation and configuration
Git installation and configuration
 
Mini-training: Let’s Git It!
Mini-training: Let’s Git It!Mini-training: Let’s Git It!
Mini-training: Let’s Git It!
 
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
 
Git presentation
Git presentationGit presentation
Git presentation
 
Version control git day02
Version control   git day02Version control   git day02
Version control git day02
 
Introduction to git hub
Introduction to git hubIntroduction to git hub
Introduction to git hub
 
3 Git
3 Git3 Git
3 Git
 
Beginner's Guide to Version Control with Git
Beginner's Guide to Version Control with GitBeginner's Guide to Version Control with Git
Beginner's Guide to Version Control with Git
 
git and github-1.pptx
git and github-1.pptxgit and github-1.pptx
git and github-1.pptx
 
Introduction to Git
Introduction to GitIntroduction to Git
Introduction to Git
 
Git overview
Git overviewGit overview
Git overview
 
O365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van RousseltO365Con18 - Git and GitHub - Rick van Rousselt
O365Con18 - Git and GitHub - Rick van Rousselt
 
Git for uninitiated
Git for uninitiatedGit for uninitiated
Git for uninitiated
 
Introduction to Git for Network Engineers
Introduction to Git for Network EngineersIntroduction to Git for Network Engineers
Introduction to Git for Network Engineers
 
The Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHubThe Basics of Open Source Collaboration With Git and GitHub
The Basics of Open Source Collaboration With Git and GitHub
 
Intro to Git, GitHub, and Devpost
Intro to Git, GitHub, and DevpostIntro to Git, GitHub, and Devpost
Intro to Git, GitHub, and Devpost
 
GitHub Event.pptx
GitHub Event.pptxGitHub Event.pptx
GitHub Event.pptx
 
Git Workflow
Git WorkflowGit Workflow
Git Workflow
 
Introduction to git
Introduction to gitIntroduction to git
Introduction to git
 

Recently uploaded

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Safe Software
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
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
 
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
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
Driving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success StoryDriving Business Innovation: Latest Generative AI Advancements & Success Story
Driving Business Innovation: Latest Generative AI Advancements & Success Story
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
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
 
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...
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 

Github

  • 1. Nicolás Tourné @nicotourne CTO of BeeReal Tandil, Argentina - 2013 #BeeTalks Starting with Git & GitHub
  • 2. Agenda • What’s a Version Control System? • What the heck is Git? • Some Git commands • What’s about GitHub? • Git in Action!
  • 3. What’s a Version Control System? “An application that allows you to record changes to your codebase in a structured and controlled fashion.”
  • 4. Why do I need that? • Makes it way easier to undo errors / roll back to earlier versions of code • Makes it way easier to share a codebase between developers without creating conflicts • Makes it way easier to deploy changes from development to staging or production environments
  • 5. Popular Version Control Systems • CVS - Concurrent Version System • SVN - SubVersioN • Git • Mercurial • Bazaar • LibreSource
  • 6. What the heck is Git? • Distributed Source Control system • Open source, free (GNU GPL V2) • Originally developed by Linus Torvalds for the development of the Linux Kernel in 2005 • Focus on speed and efficiency • Quite a unique design and therefore sometimes a bit scary and difficult to understand
  • 7. • Save snapshots, no differences • Branching (lightweight & fast) • Automatic merge of files • Used on personal or very large projects, and for all size of teams What the heck is Git?
  • 8. Distributed Development • Every Git working directory contains the complete repository and history and full revision tracking capabilities • You’re not dependent on a central server and you don’t have to be online • It’s extremely fast - much faster than SVN, CVS and other systems
  • 9. Centralized vs Distributed Development SVN / CVS - Centralized development John Central Peter Bob Carl
  • 10. Git - Distributed development Centralized vs Distributed Development John Peter Bob Carl Central
  • 11. A Git Sample 1. A new git is initialized as a remote repository John Remote repository Peter master C0
  • 12. A Git Sample 2. John and Peter clone the git repository John Remote repository Peter master C0 master C0 master C0
  • 13. A Git Sample 3. John does a commit John Remote repository Peter master C1 master C0 master C0 C0
  • 14. A Git Sample 4. John does a push John Remote repository Peter master C1 master C0 C0 master C1 C0
  • 15. A Git Sample 5. Peter does a pull John Remote repository Peter master C1 master C1 C0 master C1 C0 C0
  • 16. A Git Sample 6. John does a commit & push John Remote repository Peter master C2 master C1 C1 master C2 C0 C0 C0 C0
  • 17. A Git Sample 7. Peter does a commit John Remote repository Peter master C2 master C3 C1 master C2 C1 C1 C0 C0 C0
  • 18. A Git Sample 8. Peter does a pull (fetch & merge) John Remote repository Peter master C2 master C2C1 master C2 C1 C1C0 C0 C0 C3 C4
  • 19. A Git Sample 9. Peter does a push John Remote repository Peter master C2 master C2C1 master C4 C1C0 C1 C0 C3 C4 C2 C3 C0
  • 20. A Git Sample 10. John does a pull John Remote repository Peter master C4 master C2 master C4 C1C1 C1 C0 C3 C4 C2 C3 C0 C2 C3 C0
  • 21. Git Commands Getting and Creating projects init To create a git repository from an existing directory of files $ git init clone If you want to get a copy of a project, you need to clone it $ git clone [url]
  • 22. Git Commands Basic Snapshotting git add You have to add file contents to your staging area before you can commit them $ git add index.php git status View the status of your files in the working directory and staging area $ git status
  • 23. Git Commands Basic Snapshotting git diff Shows diff of what is staged and what is modified but unstaged $ git diff git commit Records a snapshot of the staging area $ git commit -m “My comment”
  • 24. Git Commands Basic Snapshotting git reset Undo changed and commits $ git reset git rm Remove files from the staging area $ git rm index.php
  • 25. Git Commands Basic Snapshotting git mv Git doesn’t track file renames $ git mv index.php index.html git stash Save changes made in the current index and working directory for later $ git stash
  • 26. Git Commands Branching and Merging git branch List, create and manage branches $ git branch $ git branch QA git checkout Switch to a new branch context $ git checkout QA $ git checkout -b live
  • 27. Git Commands Branching and Merging git merge Merge a branch context into your current one $ git branch $ git merge QA git log Show commit history of a branch $ git log
  • 28. Git Commands Branching and Merging git tag Tag a point in history as important $ git tag -a v1.0
  • 29. Git Commands Sharing and Updating Projects git fetch Download new branches and data from remote repository $ git fetch git pull Fetch from a remote repo and try to merge into the current branch $ git pull
  • 30. Git Commands Sharing and Updating Projects git push Push your new branches and data to a remote repository $ git push
  • 31. What's about GitHub? • It’s a Git repository hosting service… but it adds many of its own features • While Git is a command line tool, GitHub provides a web-based graphical interface • It also provides access control and several collaboration features, such as wikis and basic task management tools
  • 32. What's about GitHub? • By default, all projects are public and free. In you want a private project, then pay • You can clone any public repository, follow projects and developers, post comments, etc • It’s becoming the Facebook’s for developers
  • 33. Git in Action! Go to your computer and start playing... 1. Create a new repository on GitHub 2. Clone this repository 3. Add new files 4. Commit and push them 5. Create a new branch and merge files
  • 34. Thank you for your attention! Questions? Just tweet me @nicotourne or mail me at ntourne@beerealit.com beerealit.com
  • 35. More info at... Official Git site http://git-scm.com Some slides http://www.slideshare.net/jomikr/quick-introduction-to-git http://www.slideshare.net/reallyordinary/intro-to-git-for-drupal-7 http://www.slideshare.net/anildigital/git-introduction http://www.slideshare.net/chacon/getting-git Git commands http://gitref.org/basic GitHub site http://github.com