SlideShare a Scribd company logo
GitGot: 
The Swiss Army Chainsaw 
of Git Repo Management 
John SJ Anderson • Infinity Interactive 
@genehack • OSCON'14
Hi, I'm John.
@genehack
Sammy
@sammygenehack
Two kids
A Wife
long-suffering conference widow 
A Wife
photobomber is 
not impressed. 
long-suffering conference widow 
A Wife
Job
Hobbies
Hobbies
Hobbies
Lots of Hobbies
I've got a lot of balls in the air
Revision control 
$HOME
Why bother?
say 
automation 
again
Ingy döt Net
Things I wanted to steal
Things I wanted to add
App::AYCABTU?!?!‽
GitGot
Whirlwind 
Tour
got add
% got add 
Name: foo 
URL: 
Path: /Users/genehack/foo 
Tags: bar
got add -D
got clone <REPO URL>
got clone -D <REPO URL>
got fork <GITHUB URL>
~/.gitgot
- name: App-Amylase 
path: /Users/genehack/proj/App-Amylase 
repo: git@github.com:genehack/App-Amylase.git 
type: git 
- name: Git-Wrapper 
path: /Users/genehack/proj/Git-Wrapper 
repo: git@github.com:genehack/Git-Wrapper.git 
tags: git 
type: git 
- name: HiD 
path: /Users/genehack/proj/HiD 
repo: git@github.com:genehack/HiD.git 
type: git 
- name: Perl-Build 
path: /opt/plenv/plugins/perl-build 
repo: git://github.com/tokuhirom/Perl-Build.git 
type: git
But now what?
got list
got ls
1) App-Amylase git git@github.com:genehack/App-Amylase.git 
2) Git-Wrapper git git@github.com:genehack/Git-Wrapper.git 
3) HiD git git@github.com:genehack/HiD.git 
4) Perl-Build git git://github.com/tokuhirom/Perl-Build.git 
5) Perl-Critic git git@github.com:genehack/Perl-Critic.git 
6) STAMPS git git@github.com:genehack/STAMPS.git 
7) advanced-moose-class git ssh://git@git.iinteractive.com/train/advanced-moose-class.git 
8) app-gitgitr git git@github.com:genehack/app-gitgitr.git 
9) app-gitgot git git@github.com:genehack/app-gitgot.git
got ls -q
1) App-Amylase 
2) Git-Wrapper 
3) HiD 
4) Perl-Build 
5) Perl-Critic 
6) STAMPS 
7) advanced-moose-class 
8) app-gitgitr 
9) app-gitgot
got ls [repos]
got ls 5
5) Perl-Critic
got ls 5-8
5) Perl-Critic 
6) STAMPS 
7) advanced-moose-class 
8) app-gitgitr
got ls HiD
3) HiD
got ls -t git
2) Git-Wrapper 
8) app-gitgitr 
9) app-gitgot
got ls 5-8 HiD 21 -t git
2) Git-Wrapper 
3) HiD 
5) Perl-Critic 
6) STAMPS 
7) advanced-moose-class 
8) app-gitgitr 
9) app-gitgot 
21) etc
got status
got st
1) App-Amylase : OK 
2) Git-Wrapper : OK 
3) HiD : OK 
4) Perl-Build : OK 
5) Perl-Critic : OK 
6) STAMPS : OK 
7) advanced-moose-class : OK 
8) app-gitgitr : OK 
9) app-gitgot : OK
1) App-Amylase : OK 
2) Git-Wrapper : OK 
3) HiD : Dirty 
Dirty 
4) Perl-Build : OK 
5) Perl-Critic : OK 
6) STAMPS : OK 
7) advanced-moose-class : OK 
8) app-gitgitr : OK 
9) app-gitgot : OK
1) App-Amylase : OK 
2) Git-Wrapper : OK 
3) HiD : OK 
4) Perl-Build : Dirty 
5) Perl-Critic : OK 
6) STAMPS : OK 
7) advanced-moose-class : OK 
8) app-gitgitr : OK 
9) app-gitgot : OK 
1) 1) App-App-Amylase Amylase : : OK 
OK 
2) 2) Git-Git-Wrapper Wrapper : : OK 
OK 
3) 3) HiD HiD : : OK 
OK 
4) 4) Perl-Perl-Build Build : : OK 
OK 
5) 5) Perl-Perl-Critic Critic : : OK 
OK 
6) STAMPS STAMPS : : OK OK Ahead by 1 
7) advanced-moose-class : OK 
8) app-gitgitr : OK 
9) app-gitgot : OK 
7) advanced-moose-class : OK 
8) app-gitgitr : OK 
9) app-gitgot : OK
got st -q
3) HiD : Dirty 
6) STAMPS : OK Ahead by 1 
got st -q 
Dirty
got update
got up
1) App-Amylase : Up to date 
2) Git-Wrapper : Up to date 
3) HiD : Up to date 
4) Perl-Build : Updated 
Updating 7f25f89..72587c8 
Fast-forward 
lib/Perl/Build.pm | 14 +++++++++++++- 
script/perl-build | 14 +++++++++++++- 
2 files changed, 26 insertions(+), 2 deletions(-) 
5) Perl-Critic : Up to date
got update_status
got upst
got upst -q
How much would you pay?
Wait, don't answer yet
got fetch
got push
got gc
got this
got that
got chdir
got cd
got tmux
got tmux -s
How much 
would 
you pay 
now
Good news! 
It's free!
Works on any perl 
from the last 5 years
cpan App::GitGot
cpanm App::GitGot
Find me at OSCON 
and I'll help you install!
Easy to extend
package App::GitGot::Command::chdir; 
# ABSTRACT: open a subshell in a selected project 
! 
use Mouse; 
extends 'App::GitGot::Command'; 
use 5.010; 
! 
sub command_names { qw/ chdir cd / } 
! 
sub _execute { 
my( $self, $opt, $args ) = @_; 
! 
unless ( $self->active_repos and $self->active_repos == 1 ) { 
say STDERR 'ERROR: You need to select a single repo'; 
exit(1); 
} 
! 
my( $repo ) = $self->active_repos; 
! 
chdir $repo->path 
or say STDERR "ERROR: Failed to chdir to repo ($!)" and exit(1); 
! 
exec $ENV{SHELL}; 
} 
! 
__PACKAGE__->meta->make_immutable; 
1;
package App::GitGot::Command::chdir; 
# ABSTRACT: open a subshell in a 
selected project 
! 
use Mouse; 
extends 'App::GitGot::Command'; 
use 5.010;
sub command_names { qw/ chdir cd / } 
!
sub _execute { 
my( $self, $opt, $args ) = @_; 
! 
unless ( $self->active_repos and $self->active_repos == 1 ) { 
say STDERR 'ERROR: You need to select a single repo'; 
exit(1); 
} 
! 
my( $repo ) = $self->active_repos; 
! 
chdir $repo->path 
or say STDERR "ERROR: Failed to chdir to repo ($!)" 
and exit(1); 
! 
exec $ENV{SHELL}; 
}
package App::GitGot::Command::chdir; 
# ABSTRACT: open a subshell in a selected project 
! 
use Mouse; 
extends 'App::GitGot::Command'; 
use 5.010; 
! 
sub command_names { qw/ chdir cd / } 
! 
sub _execute { 
my( $self, $opt, $args ) = @_; 
! 
unless ( $self->active_repos and $self->active_repos == 1 ) { 
say STDERR 'ERROR: You need to select a single repo'; 
exit(1); 
} 
! 
my( $repo ) = $self->active_repos; 
! 
chdir $repo->path 
or say STDERR "ERROR: Failed to chdir to repo ($!)" and exit(1); 
! 
exec $ENV{SHELL}; 
} 
! 
__PACKAGE__->meta->make_immutable; 
1;
Suggestions welcome!
Wait… 
there's 
more!
App::MiseEnPlace
% cat .mise 
--- 
manage: 
- doc 
- etc 
- private 
- proj/* 
- src/* 
create: 
directories: 
- bin 
- proj 
- src 
- var 
links: 
- Desktop: var/tmp 
- Desktop: tmp
create: 
directories: 
- ~/.ssh 
links: 
- authinfo: ~/.authinfo 
- bash_private: ~/.bash_private 
- github-identity: ~/.github-identity 
- netrc: ~/.netrc 
- ssh/authorized_keys: ~/.ssh/authorized_keys 
- ssh/config: ~/.ssh/config 
- ssh/id_dsa: ~/.ssh/id_dsa 
- ssh/id_dsa.pub: ~/.ssh/id_dsa.pub 
- zsh_private: ~/.zsh_private
got
https://github.com/ 
genehack/app-gitgot
https://github.com/ 
genehack/app-miseenplace
Thanks 
Ingy döt Net 
Yanick Champoux 
Michael Greb 
Rolando Pereira 
Chris Prather
Questions?
https://github.com/genehack/ 
app-gitgot 
! 
https://github.com/genehack/ 
app-miseenplace

More Related Content

What's hot

Git Real
Git RealGit Real
Git Real
Gong Haibing
 
JPA Week3 Entity Mapping / Hexagonal Architecture
JPA Week3 Entity Mapping / Hexagonal ArchitectureJPA Week3 Entity Mapping / Hexagonal Architecture
JPA Week3 Entity Mapping / Hexagonal Architecture
Covenant Ko
 
DO YOU WANT TO USE A VCS
DO YOU WANT TO USE A VCSDO YOU WANT TO USE A VCS
DO YOU WANT TO USE A VCS
SeongJae Park
 
Gittalk
GittalkGittalk
Gittalk
prtinsley
 
Reading Other Peoples Code (NDC London 2019)
Reading Other Peoples Code (NDC London 2019)Reading Other Peoples Code (NDC London 2019)
Reading Other Peoples Code (NDC London 2019)
Patricia Aas
 
Ankara jug mayıs 2013 sunumu
Ankara jug mayıs 2013 sunumuAnkara jug mayıs 2013 sunumu
Ankara jug mayıs 2013 sunumu
Ankara JUG
 
Geb for browser automation
Geb for browser automationGeb for browser automation
Geb for browser automation
Jacob Aae Mikkelsen
 
Let the contribution begin
Let the contribution beginLet the contribution begin
Let the contribution begin
SeongJae Park
 
Git Basics - RubyFest 2009
Git Basics - RubyFest 2009Git Basics - RubyFest 2009
Git Basics - RubyFest 2009
Ariejan de Vroom
 
Secure Programming Practices in C++ (NDC Oslo 2018)
Secure Programming Practices in C++ (NDC Oslo 2018)Secure Programming Practices in C++ (NDC Oslo 2018)
Secure Programming Practices in C++ (NDC Oslo 2018)
Patricia Aas
 
git. WTF is it doing anyway?
git. WTF is it doing anyway?git. WTF is it doing anyway?
git. WTF is it doing anyway?
Erin Zimmer
 
Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)
Boise Web Technologies Group
 
Week7 bean life cycle
Week7 bean life cycleWeek7 bean life cycle
Week7 bean life cycle
Covenant Ko
 
Puppet Continuous Integration with PE and GitLab
Puppet Continuous Integration with PE and GitLabPuppet Continuous Integration with PE and GitLab
Puppet Continuous Integration with PE and GitLab
Alessandro Franceschi
 
Git, Jenkins & Chuck
Git, Jenkins & ChuckGit, Jenkins & Chuck
Git, Jenkins & Chuck
Juraj Michálek
 
とりあえずはじめるChatOps
とりあえずはじめるChatOpsとりあえずはじめるChatOps
とりあえずはじめるChatOps
正貴 小川
 
DrupalCafe5 VCS
DrupalCafe5 VCSDrupalCafe5 VCS
DrupalCafe5 VCS
Yuriy Gerasimov
 
Testing of javacript
Testing of javacriptTesting of javacript
Testing of javacript
Lei Kang
 
DevQuiz 2011 の模範解答 Android編
DevQuiz 2011 の模範解答 Android編DevQuiz 2011 の模範解答 Android編
DevQuiz 2011 の模範解答 Android編
Makoto Yamazaki
 
C++ The Principles of Most Surprise
C++ The Principles of Most SurpriseC++ The Principles of Most Surprise
C++ The Principles of Most Surprise
Patricia Aas
 

What's hot (20)

Git Real
Git RealGit Real
Git Real
 
JPA Week3 Entity Mapping / Hexagonal Architecture
JPA Week3 Entity Mapping / Hexagonal ArchitectureJPA Week3 Entity Mapping / Hexagonal Architecture
JPA Week3 Entity Mapping / Hexagonal Architecture
 
DO YOU WANT TO USE A VCS
DO YOU WANT TO USE A VCSDO YOU WANT TO USE A VCS
DO YOU WANT TO USE A VCS
 
Gittalk
GittalkGittalk
Gittalk
 
Reading Other Peoples Code (NDC London 2019)
Reading Other Peoples Code (NDC London 2019)Reading Other Peoples Code (NDC London 2019)
Reading Other Peoples Code (NDC London 2019)
 
Ankara jug mayıs 2013 sunumu
Ankara jug mayıs 2013 sunumuAnkara jug mayıs 2013 sunumu
Ankara jug mayıs 2013 sunumu
 
Geb for browser automation
Geb for browser automationGeb for browser automation
Geb for browser automation
 
Let the contribution begin
Let the contribution beginLet the contribution begin
Let the contribution begin
 
Git Basics - RubyFest 2009
Git Basics - RubyFest 2009Git Basics - RubyFest 2009
Git Basics - RubyFest 2009
 
Secure Programming Practices in C++ (NDC Oslo 2018)
Secure Programming Practices in C++ (NDC Oslo 2018)Secure Programming Practices in C++ (NDC Oslo 2018)
Secure Programming Practices in C++ (NDC Oslo 2018)
 
git. WTF is it doing anyway?
git. WTF is it doing anyway?git. WTF is it doing anyway?
git. WTF is it doing anyway?
 
Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)
 
Week7 bean life cycle
Week7 bean life cycleWeek7 bean life cycle
Week7 bean life cycle
 
Puppet Continuous Integration with PE and GitLab
Puppet Continuous Integration with PE and GitLabPuppet Continuous Integration with PE and GitLab
Puppet Continuous Integration with PE and GitLab
 
Git, Jenkins & Chuck
Git, Jenkins & ChuckGit, Jenkins & Chuck
Git, Jenkins & Chuck
 
とりあえずはじめるChatOps
とりあえずはじめるChatOpsとりあえずはじめるChatOps
とりあえずはじめるChatOps
 
DrupalCafe5 VCS
DrupalCafe5 VCSDrupalCafe5 VCS
DrupalCafe5 VCS
 
Testing of javacript
Testing of javacriptTesting of javacript
Testing of javacript
 
DevQuiz 2011 の模範解答 Android編
DevQuiz 2011 の模範解答 Android編DevQuiz 2011 の模範解答 Android編
DevQuiz 2011 の模範解答 Android編
 
C++ The Principles of Most Surprise
C++ The Principles of Most SurpriseC++ The Principles of Most Surprise
C++ The Principles of Most Surprise
 

Viewers also liked

Cuestionario niños primero
Cuestionario niños primeroCuestionario niños primero
Cuestionario niños primero
onceuno
 
The Ultimate Car Repair Cheatsheet
The Ultimate Car Repair CheatsheetThe Ultimate Car Repair Cheatsheet
The Ultimate Car Repair Cheatsheet
Eason Chan
 
Parts of speech_handbook
Parts of speech_handbookParts of speech_handbook
Parts of speech_handbook
Shoaib Ali
 
Resepi nasi ayam
Resepi nasi ayamResepi nasi ayam
Resepi nasi ayam
Jarayah Jais
 
Convertible Leasing Guide
Convertible Leasing GuideConvertible Leasing Guide
Convertible Leasing Guide
SwapaLease.com
 
How a guitar works
How a guitar worksHow a guitar works
How a guitar works
restebic
 
10 Reasons Native Advertising is for Hospitality Business
10 Reasons Native Advertising is for Hospitality Business10 Reasons Native Advertising is for Hospitality Business
10 Reasons Native Advertising is for Hospitality BusinessLogo Design Guru
 
Cuestionario De Creacion De Ambientes 2
Cuestionario De Creacion De Ambientes 2Cuestionario De Creacion De Ambientes 2
Cuestionario De Creacion De Ambientes 2
Dannysiita
 
Dzul herrerapractica2
Dzul herrerapractica2Dzul herrerapractica2
Dzul herrerapractica2
matildedzul
 
Behind the Curtain: Real-world HR Tech Implementations and What You Need to ...
Behind the Curtain: Real-world HR Tech Implementations and What You Need to  ...Behind the Curtain: Real-world HR Tech Implementations and What You Need to  ...
Behind the Curtain: Real-world HR Tech Implementations and What You Need to ...
bhropen
 
20160629 Habitat Introduction: Austin DevOps/Mesos User Group
20160629 Habitat Introduction: Austin DevOps/Mesos User Group 20160629 Habitat Introduction: Austin DevOps/Mesos User Group
20160629 Habitat Introduction: Austin DevOps/Mesos User Group
Matt Ray
 
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
Go Green
 
Licencias
LicenciasLicencias
Licencias
Michelle Salazar
 
Game of thrones slide show UPDATED
Game of thrones slide show UPDATEDGame of thrones slide show UPDATED
Game of thrones slide show UPDATED
Anna Daniel
 
Game of thrones
Game of thronesGame of thrones
Game of thrones
rakelm
 
Trastornos de la personalidad
Trastornos de la personalidad Trastornos de la personalidad
Simon Reason - Unleashing the power of your definition of done
Simon Reason - Unleashing the power of your definition of doneSimon Reason - Unleashing the power of your definition of done
Simon Reason - Unleashing the power of your definition of done
Scrum Australia Pty Ltd
 

Viewers also liked (17)

Cuestionario niños primero
Cuestionario niños primeroCuestionario niños primero
Cuestionario niños primero
 
The Ultimate Car Repair Cheatsheet
The Ultimate Car Repair CheatsheetThe Ultimate Car Repair Cheatsheet
The Ultimate Car Repair Cheatsheet
 
Parts of speech_handbook
Parts of speech_handbookParts of speech_handbook
Parts of speech_handbook
 
Resepi nasi ayam
Resepi nasi ayamResepi nasi ayam
Resepi nasi ayam
 
Convertible Leasing Guide
Convertible Leasing GuideConvertible Leasing Guide
Convertible Leasing Guide
 
How a guitar works
How a guitar worksHow a guitar works
How a guitar works
 
10 Reasons Native Advertising is for Hospitality Business
10 Reasons Native Advertising is for Hospitality Business10 Reasons Native Advertising is for Hospitality Business
10 Reasons Native Advertising is for Hospitality Business
 
Cuestionario De Creacion De Ambientes 2
Cuestionario De Creacion De Ambientes 2Cuestionario De Creacion De Ambientes 2
Cuestionario De Creacion De Ambientes 2
 
Dzul herrerapractica2
Dzul herrerapractica2Dzul herrerapractica2
Dzul herrerapractica2
 
Behind the Curtain: Real-world HR Tech Implementations and What You Need to ...
Behind the Curtain: Real-world HR Tech Implementations and What You Need to  ...Behind the Curtain: Real-world HR Tech Implementations and What You Need to  ...
Behind the Curtain: Real-world HR Tech Implementations and What You Need to ...
 
20160629 Habitat Introduction: Austin DevOps/Mesos User Group
20160629 Habitat Introduction: Austin DevOps/Mesos User Group 20160629 Habitat Introduction: Austin DevOps/Mesos User Group
20160629 Habitat Introduction: Austin DevOps/Mesos User Group
 
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
Emma Burlow, QSA Partners, Go Green December Business Breakfast, St Mary Redc...
 
Licencias
LicenciasLicencias
Licencias
 
Game of thrones slide show UPDATED
Game of thrones slide show UPDATEDGame of thrones slide show UPDATED
Game of thrones slide show UPDATED
 
Game of thrones
Game of thronesGame of thrones
Game of thrones
 
Trastornos de la personalidad
Trastornos de la personalidad Trastornos de la personalidad
Trastornos de la personalidad
 
Simon Reason - Unleashing the power of your definition of done
Simon Reason - Unleashing the power of your definition of doneSimon Reason - Unleashing the power of your definition of done
Simon Reason - Unleashing the power of your definition of done
 

Similar to GitGot: The Swiss Army Chainsaw of Git Repo Management

Git::Hooks
Git::HooksGit::Hooks
Git::Hooks
Mikko Koivunalho
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
Victor Wong
 
Github basics
Github basicsGithub basics
Github basics
Radoslav Georgiev
 
GIT from n00b
GIT from n00bGIT from n00b
GIT from n00b
Supachai Vorrasing
 
Version Control and Git - GitHub Workshop
Version Control and Git - GitHub WorkshopVersion Control and Git - GitHub Workshop
Version Control and Git - GitHub Workshop
All Things Open
 
Git - Some tips to do it better
Git - Some tips to do it betterGit - Some tips to do it better
Git - Some tips to do it better
Jonas De Smet
 
Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for Artists
David Newbury
 
Matt Gauger - Git & Github web414 December 2010
Matt Gauger - Git & Github web414 December 2010Matt Gauger - Git & Github web414 December 2010
Matt Gauger - Git & Github web414 December 2010
Matt Gauger
 
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
 
Git: Why And How to
Git: Why And How toGit: Why And How to
Git: Why And How to
lanhuonga3
 
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
Dong-hee Na
 
Becoming a Git Master
Becoming a Git MasterBecoming a Git Master
Becoming a Git Master
Nicola Paolucci
 
How to use git without rage
How to use git without rageHow to use git without rage
How to use git without rage
Javier Lafora Rey
 
Jedi Mind Tricks for Git
Jedi Mind Tricks for GitJedi Mind Tricks for Git
Jedi Mind Tricks for Git
Jan Krag
 
GIT, RVM, FIRST HEROKU APP
GIT, RVM, FIRST HEROKU APPGIT, RVM, FIRST HEROKU APP
GIT, RVM, FIRST HEROKU APP
Pavel Tyk
 
Sacándole jugo a git
Sacándole jugo a gitSacándole jugo a git
Sacándole jugo a git
Berny Cantos
 
Introducción a git y GitHub
Introducción a git y GitHubIntroducción a git y GitHub
Introducción a git y GitHub
Lucas Videla
 
Jedi Mind Tricks in Git
Jedi Mind Tricks in GitJedi Mind Tricks in Git
Jedi Mind Tricks in Git
Johan Abildskov
 
From Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShiftFrom Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShift
Eric D. Schabell
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
Nick Quaranto
 

Similar to GitGot: The Swiss Army Chainsaw of Git Repo Management (20)

Git::Hooks
Git::HooksGit::Hooks
Git::Hooks
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
 
Github basics
Github basicsGithub basics
Github basics
 
GIT from n00b
GIT from n00bGIT from n00b
GIT from n00b
 
Version Control and Git - GitHub Workshop
Version Control and Git - GitHub WorkshopVersion Control and Git - GitHub Workshop
Version Control and Git - GitHub Workshop
 
Git - Some tips to do it better
Git - Some tips to do it betterGit - Some tips to do it better
Git - Some tips to do it better
 
Introduction to Git for Artists
Introduction to Git for ArtistsIntroduction to Git for Artists
Introduction to Git for Artists
 
Matt Gauger - Git & Github web414 December 2010
Matt Gauger - Git & Github web414 December 2010Matt Gauger - Git & Github web414 December 2010
Matt Gauger - Git & Github web414 December 2010
 
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
 
Git: Why And How to
Git: Why And How toGit: Why And How to
Git: Why And How to
 
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
[GSoC 2017] gopy: Updating gopy to support Python3 and PyPy
 
Becoming a Git Master
Becoming a Git MasterBecoming a Git Master
Becoming a Git Master
 
How to use git without rage
How to use git without rageHow to use git without rage
How to use git without rage
 
Jedi Mind Tricks for Git
Jedi Mind Tricks for GitJedi Mind Tricks for Git
Jedi Mind Tricks for Git
 
GIT, RVM, FIRST HEROKU APP
GIT, RVM, FIRST HEROKU APPGIT, RVM, FIRST HEROKU APP
GIT, RVM, FIRST HEROKU APP
 
Sacándole jugo a git
Sacándole jugo a gitSacándole jugo a git
Sacándole jugo a git
 
Introducción a git y GitHub
Introducción a git y GitHubIntroducción a git y GitHub
Introducción a git y GitHub
 
Jedi Mind Tricks in Git
Jedi Mind Tricks in GitJedi Mind Tricks in Git
Jedi Mind Tricks in Git
 
From Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShiftFrom Code to Cloud - PHP on Red Hat's OpenShift
From Code to Cloud - PHP on Red Hat's OpenShift
 
Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
 

More from John Anderson

#speakerlife
#speakerlife#speakerlife
#speakerlife
John Anderson
 
Introduction to Git (even for non-developers)
Introduction to Git (even for non-developers)Introduction to Git (even for non-developers)
Introduction to Git (even for non-developers)
John Anderson
 
Logs are-magic-devfestweekend2018
Logs are-magic-devfestweekend2018Logs are-magic-devfestweekend2018
Logs are-magic-devfestweekend2018
John Anderson
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
John Anderson
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
John Anderson
 
Do you want to be right or do you want to WIN?
Do you want to be right or do you want to WIN?Do you want to be right or do you want to WIN?
Do you want to be right or do you want to WIN?
John Anderson
 
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
 
You got chocolate in my peanut butter! .NET on Mac & Linux
You got chocolate in my peanut butter! .NET on Mac & LinuxYou got chocolate in my peanut butter! .NET on Mac & Linux
You got chocolate in my peanut butter! .NET on Mac & Linux
John Anderson
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
John Anderson
 
Old Dogs & New Tricks: What's New with Perl5 This Century
Old Dogs & New Tricks: What's New with Perl5 This CenturyOld Dogs & New Tricks: What's New with Perl5 This Century
Old Dogs & New Tricks: What's New with Perl5 This Century
John Anderson
 
Introduction to Git (even for non-developers!)
Introduction to Git (even for non-developers!)Introduction to Git (even for non-developers!)
Introduction to Git (even for non-developers!)
John Anderson
 
Introduction to Git for Non-Developers
Introduction to Git for Non-DevelopersIntroduction to Git for Non-Developers
Introduction to Git for Non-Developers
John Anderson
 
A Modest Introduction To Swift
A Modest Introduction To SwiftA Modest Introduction To Swift
A Modest Introduction To Swift
John Anderson
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
John Anderson
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
John Anderson
 
JSON Web Tokens Will Improve Your Life
JSON Web Tokens Will Improve Your LifeJSON Web Tokens Will Improve Your Life
JSON Web Tokens Will Improve Your Life
John Anderson
 
Old Dogs & New Tricks: What's New With Perl5 This Century
Old Dogs & New Tricks: What's New With Perl5 This CenturyOld Dogs & New Tricks: What's New With Perl5 This Century
Old Dogs & New Tricks: What's New With Perl5 This Century
John Anderson
 
A Modest Introduction to Swift
A Modest Introduction to SwiftA Modest Introduction to Swift
A Modest Introduction to Swift
John Anderson
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
John Anderson
 
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
John Anderson
 

More from John Anderson (20)

#speakerlife
#speakerlife#speakerlife
#speakerlife
 
Introduction to Git (even for non-developers)
Introduction to Git (even for non-developers)Introduction to Git (even for non-developers)
Introduction to Git (even for non-developers)
 
Logs are-magic-devfestweekend2018
Logs are-magic-devfestweekend2018Logs are-magic-devfestweekend2018
Logs are-magic-devfestweekend2018
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
 
Do you want to be right or do you want to WIN?
Do you want to be right or do you want to WIN?Do you want to be right or do you want to WIN?
Do you want to be right or do you want to WIN?
 
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)
 
You got chocolate in my peanut butter! .NET on Mac & Linux
You got chocolate in my peanut butter! .NET on Mac & LinuxYou got chocolate in my peanut butter! .NET on Mac & Linux
You got chocolate in my peanut butter! .NET on Mac & Linux
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
 
Old Dogs & New Tricks: What's New with Perl5 This Century
Old Dogs & New Tricks: What's New with Perl5 This CenturyOld Dogs & New Tricks: What's New with Perl5 This Century
Old Dogs & New Tricks: What's New with Perl5 This Century
 
Introduction to Git (even for non-developers!)
Introduction to Git (even for non-developers!)Introduction to Git (even for non-developers!)
Introduction to Git (even for non-developers!)
 
Introduction to Git for Non-Developers
Introduction to Git for Non-DevelopersIntroduction to Git for Non-Developers
Introduction to Git for Non-Developers
 
A Modest Introduction To Swift
A Modest Introduction To SwiftA Modest Introduction To Swift
A Modest Introduction To Swift
 
A static site generator should be your next language learning project
A static site generator should be your next language learning projectA static site generator should be your next language learning project
A static site generator should be your next language learning project
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
 
JSON Web Tokens Will Improve Your Life
JSON Web Tokens Will Improve Your LifeJSON Web Tokens Will Improve Your Life
JSON Web Tokens Will Improve Your Life
 
Old Dogs & New Tricks: What's New With Perl5 This Century
Old Dogs & New Tricks: What's New With Perl5 This CenturyOld Dogs & New Tricks: What's New With Perl5 This Century
Old Dogs & New Tricks: What's New With Perl5 This Century
 
A Modest Introduction to Swift
A Modest Introduction to SwiftA Modest Introduction to Swift
A Modest Introduction to Swift
 
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To YouLogs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
Logs Are Magic: Why Git Workflows and Commit Structure Should Matter To You
 
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
Friends Don't Let Friends Browse Unencrypted: Running a VPN for friends and f...
 

Recently uploaded

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
zyfovom
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
davidjhones387
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
fovkoyb
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Florence Consulting
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
cuobya
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
uehowe
 
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
cuobya
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
ysasp1
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
hackersuli
 
Azure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdfAzure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdf
AanSulistiyo
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
xjq03c34
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
saathvikreddy2003
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
Trish Parr
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
zoowe
 
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
bseovas
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
Toptal Tech
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
Danica Gill
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
Trending Blogers
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
SEO Article Boost
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
ukwwuq
 

Recently uploaded (20)

学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
学位认证网(DU毕业证)迪肯大学毕业证成绩单一比一原版制作
 
Discover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to IndiaDiscover the benefits of outsourcing SEO to India
Discover the benefits of outsourcing SEO to India
 
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
存档可查的(USC毕业证)南加利福尼亚大学毕业证成绩单制做办理
 
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdfMeet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
Meet up Milano 14 _ Axpo Italia_ Migration from Mule3 (On-prem) to.pdf
 
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
制作毕业证书(ANU毕业证)莫纳什大学毕业证成绩单官方原版办理
 
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
办理毕业证(UPenn毕业证)宾夕法尼亚大学毕业证成绩单快速办理
 
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
假文凭国外(Adelaide毕业证)澳大利亚国立大学毕业证成绩单办理
 
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
成绩单ps(UST毕业证)圣托马斯大学毕业证成绩单快速办理
 
[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024[HUN][hackersuli] Red Teaming alapok 2024
[HUN][hackersuli] Red Teaming alapok 2024
 
Azure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdfAzure EA Sponsorship - Customer Guide.pdf
Azure EA Sponsorship - Customer Guide.pdf
 
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
办理新西兰奥克兰大学毕业证学位证书范本原版一模一样
 
Design Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptxDesign Thinking NETFLIX using all techniques.pptx
Design Thinking NETFLIX using all techniques.pptx
 
Search Result Showing My Post is Now Buried
Search Result Showing My Post is Now BuriedSearch Result Showing My Post is Now Buried
Search Result Showing My Post is Now Buried
 
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
国外证书(Lincoln毕业证)新西兰林肯大学毕业证成绩单不能毕业办理
 
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
不能毕业如何获得(USYD毕业证)悉尼大学毕业证成绩单一比一原版制作
 
Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!Ready to Unlock the Power of Blockchain!
Ready to Unlock the Power of Blockchain!
 
7 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 20247 Best Cloud Hosting Services to Try Out in 2024
7 Best Cloud Hosting Services to Try Out in 2024
 
Explore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories SecretlyExplore-Insanony: Watch Instagram Stories Secretly
Explore-Insanony: Watch Instagram Stories Secretly
 
Understanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdfUnderstanding User Behavior with Google Analytics.pdf
Understanding User Behavior with Google Analytics.pdf
 
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
制作原版1:1(Monash毕业证)莫纳什大学毕业证成绩单办理假
 

GitGot: The Swiss Army Chainsaw of Git Repo Management