SlideShare a Scribd company logo
1 of 111
Git Magic:
Versioning Files
  Like a Boss
  Tommy MacWilliam
   tmacwilliam@cs50.net
Today

• setting up like a boss
• basic git like a boss
• using branches like a boss
• reverting changes like a boss
• collaborating like a boss
Git is...
• “Git is distributed version control system
  focused on speed, effectivity and real-world
  usability on large projects”
  •   “distributed development”
  •   “non-linear development”
  •   “efficient handling of large projects”
  •   “cryptographic authentication of history”
Git is...
Git is...


Awesome.
Installing Git

• Windows: http://code.google.com/p/
  msysgit/
• OS X: http://code.google.com/p/git-osx-
  installer/
• Appliance: already installed!
Installing Git

root@appliance(~): git
usage: git [--version] [--exec-path[=<path>]] [--html-path]
       [-p|--paginate|--no-pager] [--no-replace-objects]
       [--bare] [--git-dir=<path>] [--work-tree=<path>]
       [-c name=value] [--help]
       <command> [<args>]
git config --global
user.name
“Tommy MacWilliam”
git config --global
user.email
tmacwilliam@cs50.net
git init
Commits

• snapshots of your project
• what your files look like at a given point
• single event in project history
git status
git add index.php
git add --all
git add --all
git add --all
git commit
Commit Messages

• short message describing what’s different in
  this commit
• add any new features?
• fix some bugs?
• break anything?
Commit Messages
Commit Messages


• http://www.commitlogsfromlastnight.com/
git commit -a -m
  “oh hi, mark!”
git log
5aeebab117b892fa42002146e4c62be676bc4621




b43b0ad1e8108e7ab870d7a54feac93ae8b8600e




461476587780aa9fa5611ea6dc3912c146a91760
Commit   5aeebab117b892fa42002146e4c62be676bc4621
  ID


         b43b0ad1e8108e7ab870d7a54feac93ae8b8600e




         461476587780aa9fa5611ea6dc3912c146a91760




HEAD
git show
git show b43b0
git init
git status
 git add



git commit
   git log
 git show
git init
git status
 git add



git commit
   git log
 git show
Branches
• non-linear development process
 • changes on one branch do not affect
    other branches
• crazy idea? make a branch
• didn’t work? delete the branch
• all done? merge the branch
git branch test
git branch test
git branch test
git checkout test
5aeeb




 b43b0




 46147




master
5aeeb
         git branch test



 b43b0      f862f




 46147      36223




master      test
git merge
5aeeb




 b43b0    f862f




 46147    36223




         git merge
 87aed


master    test
Like a boss.
git branch -D test
Merge vs. Rebase


• git merge: new commit, non-linear history
• git rebase: no new commit, linear history
5aeeb
         git branch test



 b43b0      f862f




 46147      36223




master      test
5aeeb




 b43b0



         git rebase

 46147                f862f   36223




master
Conflicts


• change in one branch can be incompatible
  with another
• git tries to resolve, but sometimes cannot
Conflict Resolution
int main(int argc, char** argv) {
   printf(“you invited all my friends”);
}

int main(int argc, char** argv) {
   printf(“good thinking!”);
}
Conflict Resolution

int main(int argc, char** argv) {
   <<<<<<< HEAD:file.c
   printf(“you invited all my friends”);
   =======
   printf(“good thinking!”);
   >>>>>>> f862f:file.c
}
git checkout
 git branch




 git merge
 git rebase
git checkout
 git branch




 git merge
 git rebase
git commit -m “oops.”
git revert b43b0
5aeeb




b43b0




46147
5aeeb




b43b0




46147



          git revert b43b0
 42bb4
(b43b0)
File-Specific Reverts

• git checkout -- index.php
 • replace with version in index
• git checkout b43b0 index.php
 • replace with version in commit b43b0
git reset --hard b43b0
git reflog
git bisect
Like a boss.
git revert
  git reset




git checkout
  git bisect
git revert
  git reset




git checkout
  git bisect
“distributed development”
ssh-keygen
git push
git@github.com:cs50/project
        master
git remote add origin
git@github.com:cs50/project
git remote add origin
git@github.com:cs50/project
git push origin master
git clone
git@github.com:cs50/project
git pull origin master
git pull --rebase
git init
git add --all
git commit

  Alice         Bob
git remote add origin url
git push origin master

 Alice                      Bob
git remote add origin url
git push origin master

 Alice                      Bob
git clone url

Alice          Bob
git clone url

Alice          Bob
git add --all
        git commit

Alice          Bob
git push origin master

Alice                 Bob
git push origin master

Alice                 Bob
git pull origin master

Alice                    Bob
git pull origin master

Alice                    Bob
git branch -a
git checkout -b
   origin/test
scp ~/.ssh/id_rsa.pub
host:~/.ssh/authorized_keys
git init --bare
git remote add live
user@cloud.cs50.net:~/project
git remote add live
user@cloud.cs50.net:~/project
  git push live master
Hooks
•   applypatch-msg      •   post-applypatch

•   commit-msg          •   pre-commit

•   post-commit         •   pre-commit-msg

•   post-receive        •   pre-rebase

•   post-update         •   update
post-receive
#!/bin/sh
GIT_WORK_TREE=/home/tmacwill/public_html 
git checkout -f
chmod -R 644 /home/tmacwill/public_html/
*.html
chmod -R 600 /home/tmacwill/public_html/
*.php
Like a boss.
git clone
git push




git remote
  git pull
git clone
git push




git remote
  git pull
More Resources

• http://progit.org/book/
• http://book.git-scm.com/
• http://gitref.org/
• http://git-scm.com/documentation
git commit -a -m
     “thanks!”

More Related Content

What's hot

Git - Get Ready To Use It
Git - Get Ready To Use ItGit - Get Ready To Use It
Git - Get Ready To Use ItDaniel Kummer
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hubVenkat Malladi
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHubNicolás Tourné
 
Git, from the beginning
Git, from the beginningGit, from the beginning
Git, from the beginningJames Aylett
 
Git Basics - RubyFest 2009
Git Basics - RubyFest 2009Git Basics - RubyFest 2009
Git Basics - RubyFest 2009Ariejan de Vroom
 
Git Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basicsGit Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basicsChris Bohatka
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e MergingRodrigo Branas
 
Git Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsGit Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsJeremy Lindblom
 
GIT presentation
GIT presentationGIT presentation
GIT presentationNaim Latifi
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsLee Hanxue
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionAnwarul Islam
 

What's hot (20)

Git - Get Ready To Use It
Git - Get Ready To Use ItGit - Get Ready To Use It
Git - Get Ready To Use It
 
Git tutorial
Git tutorialGit tutorial
Git tutorial
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
 
Git training v10
Git training v10Git training v10
Git training v10
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
 
Git, from the beginning
Git, from the beginningGit, from the beginning
Git, from the beginning
 
Git Basics - RubyFest 2009
Git Basics - RubyFest 2009Git Basics - RubyFest 2009
Git Basics - RubyFest 2009
 
Git 101 for Beginners
Git 101 for Beginners Git 101 for Beginners
Git 101 for Beginners
 
Git advanced
Git advancedGit advanced
Git advanced
 
Git Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basicsGit Obstacle Course: Stop BASHing your head and break down the basics
Git Obstacle Course: Stop BASHing your head and break down the basics
 
Git internals
Git internalsGit internals
Git internals
 
#3 - Git - Branching e Merging
#3 - Git - Branching e Merging#3 - Git - Branching e Merging
#3 - Git - Branching e Merging
 
Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)Introduction to Git (Greg Lonnon)
Introduction to Git (Greg Lonnon)
 
Git and Github workshop
Git and Github workshopGit and Github workshop
Git and Github workshop
 
Git Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential CommandsGit Educated About Git - 20 Essential Commands
Git Educated About Git - 20 Essential Commands
 
GIT presentation
GIT presentationGIT presentation
GIT presentation
 
Advanced Git
Advanced GitAdvanced Git
Advanced Git
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
 
Introduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training SessionIntroduction to Gitlab | Gitlab 101 | Training Session
Introduction to Gitlab | Gitlab 101 | Training Session
 
Git
GitGit
Git
 

Viewers also liked

Gitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesGitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesJavier Alvarez
 
Community live #1 - Gitflow Workflow
Community live #1 - Gitflow WorkflowCommunity live #1 - Gitflow Workflow
Community live #1 - Gitflow WorkflowLiora Milbaum
 
Puppet at GitHub - PuppetConf 2013
Puppet at GitHub - PuppetConf 2013Puppet at GitHub - PuppetConf 2013
Puppet at GitHub - PuppetConf 2013Puppet
 
Git like a Pro (How to use it as it was meant to)
Git like a Pro (How to use it as it was meant to)Git like a Pro (How to use it as it was meant to)
Git like a Pro (How to use it as it was meant to)Dennis Doomen
 
SemVer, the whole story
SemVer, the whole storySemVer, the whole story
SemVer, the whole storyJakeGinnivan
 
Semantic Versioning Lightning Talk
Semantic Versioning Lightning TalkSemantic Versioning Lightning Talk
Semantic Versioning Lightning TalkAaron Blythe
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requestsBartosz Kosarzycki
 

Viewers also liked (8)

Gitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de BranchesGitflow - Una metología para manejo de Branches
Gitflow - Una metología para manejo de Branches
 
Community live #1 - Gitflow Workflow
Community live #1 - Gitflow WorkflowCommunity live #1 - Gitflow Workflow
Community live #1 - Gitflow Workflow
 
Puppet at GitHub - PuppetConf 2013
Puppet at GitHub - PuppetConf 2013Puppet at GitHub - PuppetConf 2013
Puppet at GitHub - PuppetConf 2013
 
Git like a Pro (How to use it as it was meant to)
Git like a Pro (How to use it as it was meant to)Git like a Pro (How to use it as it was meant to)
Git like a Pro (How to use it as it was meant to)
 
SemVer, the whole story
SemVer, the whole storySemVer, the whole story
SemVer, the whole story
 
Pubmi gitflow
Pubmi gitflowPubmi gitflow
Pubmi gitflow
 
Semantic Versioning Lightning Talk
Semantic Versioning Lightning TalkSemantic Versioning Lightning Talk
Semantic Versioning Lightning Talk
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requests
 

Similar to Git Magic: Versioning Files like a Boss

Git Started With Git
Git Started With GitGit Started With Git
Git Started With GitNick Quaranto
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control SystemVictor Wong
 
Introducción a git y GitHub
Introducción a git y GitHubIntroducción a git y GitHub
Introducción a git y GitHubLucas Videla
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remotoRodrigo Branas
 
Git for the Android Developer
Git for the Android DeveloperGit for the Android Developer
Git for the Android DeveloperEffective
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using GitTony Hillerson
 
Git for the Android Developer
Git for the Android DeveloperGit for the Android Developer
Git for the Android DeveloperEffectiveUI
 
Introduction To Git Workshop
Introduction To Git WorkshopIntroduction To Git Workshop
Introduction To Git Workshopthemystic_ca
 
Git session Dropsolid.com
Git session Dropsolid.comGit session Dropsolid.com
Git session Dropsolid.comdropsolid
 
Version Control and Git - GitHub Workshop
Version Control and Git - GitHub WorkshopVersion Control and Git - GitHub Workshop
Version Control and Git - GitHub WorkshopAll Things Open
 
.Git for WordPress Developers
.Git for WordPress Developers.Git for WordPress Developers
.Git for WordPress Developersmpvanwinkle
 

Similar to Git Magic: Versioning Files like a Boss (20)

Git Started With Git
Git Started With GitGit Started With Git
Git Started With Git
 
Git Distributed Version Control System
Git   Distributed Version Control SystemGit   Distributed Version Control System
Git Distributed Version Control System
 
Git Basics Philips
Git Basics PhilipsGit Basics Philips
Git Basics Philips
 
Loading...git
Loading...gitLoading...git
Loading...git
 
Wokshop de Git
Wokshop de Git Wokshop de Git
Wokshop de Git
 
Introducción a git y GitHub
Introducción a git y GitHubIntroducción a git y GitHub
Introducción a git y GitHub
 
#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto#5 - Git - Contribuindo com um repositório remoto
#5 - Git - Contribuindo com um repositório remoto
 
Git for the Android Developer
Git for the Android DeveloperGit for the Android Developer
Git for the Android Developer
 
SCM for Android Developers Using Git
SCM for Android Developers Using GitSCM for Android Developers Using Git
SCM for Android Developers Using Git
 
Git for the Android Developer
Git for the Android DeveloperGit for the Android Developer
Git for the Android Developer
 
Git Tech Talk
Git  Tech TalkGit  Tech Talk
Git Tech Talk
 
Introduction To Git Workshop
Introduction To Git WorkshopIntroduction To Git Workshop
Introduction To Git Workshop
 
Working with Git
Working with GitWorking with Git
Working with Git
 
Git 基础
Git 基础Git 基础
Git 基础
 
simple Git
simple Git simple Git
simple Git
 
Git session Dropsolid.com
Git session Dropsolid.comGit session Dropsolid.com
Git session Dropsolid.com
 
Version Control and Git - GitHub Workshop
Version Control and Git - GitHub WorkshopVersion Control and Git - GitHub Workshop
Version Control and Git - GitHub Workshop
 
.Git for WordPress Developers
.Git for WordPress Developers.Git for WordPress Developers
.Git for WordPress Developers
 
Basic git
Basic gitBasic git
Basic git
 
Git basics
Git basicsGit basics
Git basics
 

Recently uploaded

18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdfssuser54595a
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsKarinaGenton
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxSayali Powar
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformChameera Dedduwage
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfakmcokerachita
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...M56BOOKSTORE PRODUCT/SERVICE
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxGaneshChakor2
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxiammrhaywood
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTiammrhaywood
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 

Recently uploaded (20)

18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
18-04-UA_REPORT_MEDIALITERAСY_INDEX-DM_23-1-final-eng.pdf
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
Science 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its CharacteristicsScience 7 - LAND and SEA BREEZE and its Characteristics
Science 7 - LAND and SEA BREEZE and its Characteristics
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptxPOINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
POINT- BIOCHEMISTRY SEM 2 ENZYMES UNIT 5.pptx
 
Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
A Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy ReformA Critique of the Proposed National Education Policy Reform
A Critique of the Proposed National Education Policy Reform
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Class 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdfClass 11 Legal Studies Ch-1 Concept of State .pdf
Class 11 Legal Studies Ch-1 Concept of State .pdf
 
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
KSHARA STURA .pptx---KSHARA KARMA THERAPY (CAUSTIC THERAPY)————IMP.OF KSHARA ...
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
call girls in Kamla Market (DELHI) 🔝 >༒9953330565🔝 genuine Escort Service 🔝✔️✔️
 
CARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptxCARE OF CHILD IN INCUBATOR..........pptx
CARE OF CHILD IN INCUBATOR..........pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdfTataKelola dan KamSiber Kecerdasan Buatan v022.pdf
TataKelola dan KamSiber Kecerdasan Buatan v022.pdf
 
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptxSOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
SOCIAL AND HISTORICAL CONTEXT - LFTVD.pptx
 
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPTECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
ECONOMIC CONTEXT - LONG FORM TV DRAMA - PPT
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 

Git Magic: Versioning Files like a Boss

Editor's Notes

  1. \n
  2. \n
  3. \n
  4. \n
  5. \n
  6. \n
  7. \n
  8. \n
  9. mkdir repo\nvim index.php: &lt;?php echo &amp;#x2018;git rocks&amp;#x2019;; ?&gt;\nvim page.php: &lt;?php echo &amp;#x2018;tommy does, too&amp;#x2019;; ?&gt;\ngit init\n
  10. \n
  11. git status\n
  12. \n
  13. \n
  14. \n
  15. \n
  16. \n
  17. \n
  18. \n
  19. git add --all\ngit commit\n
  20. \n
  21. \n
  22. vim page2.php: &lt;?php echo &amp;#x2018;woo more commits&amp;#x2019;; ?&gt;\nvim index.php: &lt;?php echo &amp;#x2018;I made a change!&amp;#x2019;; ?&gt;\ngit add --all\ngit commit -m &amp;#x201C;another commit&amp;#x201D;\ngit log\n
  23. \n
  24. git show\ngit show PREVIOUS COMMIT\n
  25. \n
  26. \n
  27. \n
  28. \n
  29. \n
  30. git branch test\ngit branch\ngit checkout test\ngit branch\nvim crazy.php: &lt;?php echo &amp;#x2018;this is a crazy idea&amp;#x2019;; ?&gt;\ngit add --all\ngit commit -m &amp;#x201C;so crazy up in here&amp;#x201D;\nls\ngit log\ngit checkout master\nls\ngit log\n
  31. \n
  32. \n
  33. git branch\ngit checkout master\nvim index.php: &lt;?php echo &amp;#x2018;this page is boring&amp;#x2019;; ?&gt;\ngit add --all\ngit commit -m &amp;#x201C;third commit on master&amp;#x201D;\ngit merge test\ngit log\n
  34. git branch -D test\ngit branch\n
  35. \n
  36. \n
  37. git log --graph\ncd ../rebased\ngit checkout master\ngit rebase test\ngit log --graph\ncd ../repo\n
  38. \n
  39. \n
  40. \n
  41. \n
  42. \n
  43. \n
  44. \n
  45. ls\ngit log\nvim index.php: &lt;?php echo &amp;#x2018;good idea&amp;#x2019;; ?&gt;\ngit commit -a -m &amp;#x201C;sweet&amp;#x201D;\nvim index.php: &lt;?php echo &amp;#x2018;bad idea&amp;#x2019;; ?&gt;\ngit commit -a -m &amp;#x201C;oops&amp;#x201D;\ngit revert to commit &amp;#x201C;sweet&amp;#x201D;\nCONFLICT!\ngit status\nvim index.php\ngit commit -a -m &amp;#x201C;revert&amp;#x201D;\ngit log\n
  46. vim index.php: &lt;?php echo &amp;#x2018;only gonna add this&amp;#x2019;; ?&gt;\ngit add --all\ngit checkout -- index.php\nvim index.php\ngit checkout &lt;commit with &amp;#x201C;sweet&amp;#x201D;&gt; index.php\nvim index.php\n
  47. git reset --hard HEAD\n
  48. git checkout &lt;commit with &amp;#x201C;another commit&amp;#x201D;&gt;\ngit log\ngit reflog\ngit checkout master\n
  49. git bisect good &lt;first commit&gt;\ngit bisect bad HEAD\ngit bisect bad\ngit checkout master\n
  50. \n
  51. \n
  52. \n
  53. \n
  54. \n
  55. \n
  56. \n
  57. git remote add origin git@github.com:tmac721/seminar.git\ngit remote\ngit remote show origin\ngit push origin master\n
  58. cd ../\ngit clone git@github.com:tmac721/seminar.git\ncd test\nls\ngit log\n
  59. \n
  60. \n
  61. \n
  62. \n
  63. \n
  64. \n
  65. \n
  66. \n
  67. \n
  68. \n
  69. \n
  70. \n
  71. \n
  72. \n
  73. \n
  74. \n
  75. \n
  76. \n
  77. \n
  78. ssh cloud\nmkdir repo\ncd repo\ngit init --bare\ncd hooks\nvim post-receive: copy this\nchmod a+x post-receive\ngit remote add origin ssh://tmacwill@cloud.cs50.net/home/tmacwill/repo\ngit push origin master\n\n
  79. \n
  80. \n
  81. \n
  82. \n