Git studynotes
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
283
On Slideshare
280
From Embeds
3
Number of Embeds
1

Actions

Shares
Downloads
4
Comments
0
Likes
1

Embeds 3

https://www.linkedin.com 3

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. git  A  Study  Note     Richard  Kuo  
  • 2. What?  Why?  How?  When?  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   2  
  • 3. What  is  git?  •  Free  open  source  soDware  version  control   tool.  •  Created  by  Linus  Torvalds  In  2  weeks  for   managing  Linux  code.  •  GitHub:  soDware  hos3ng  site  -­‐  On  16   January  2013,  GitHub  announced  it  had   passed  the  3  million  users  mark  and  now   hos3ng  more  than  5  million  repositories.  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   3  
  • 4. Why  git?  •  Distributed.  •  Full  history  repository.  •  No  network  requirement,  work  offline  at   anywhere  and  any3me.  •  Small  foot  print  and  fast.  •  Flexible,  accommodate  any  workflow.  •  Pseudo  industry  standard.  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   4  
  • 5. Object  Database   http://www.youtube.com/watch?v=GYnOwPl8yCE  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   5  
  • 6. 4  Object  Types  •  Blob  (content)   •  Tree  (directory  lis3ngs)   -­‐  Header   -­‐  Header   -­‐  File  content.   -­‐  For  each  file  or  directory   -­‐  File  permission   -­‐  Object  type   -­‐  SHA-­‐1   -­‐  File  /  Directory  name  •  Commit  (snapshots)     Tag  (meta-­‐data  of  a  commit)   •  –  Author  informa3on   –  Name   –  Commicer  informa3on   –  Tagger   –  Commit  message   –  Date   –  SHA-­‐1  of  any  parent  commits   –  SHA-­‐1  of  the  tree  that  the   –  Commit  hash   commit  points  to   –  …  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   6  
  • 7. GIT  Object  Model  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   7  
  • 8. References  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   8  
  • 9. Git  Commit  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   9  
  • 10. Scenario  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   10  
  • 11. 3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   11   hcp://www.technovelty.org/linux/git-­‐workflow.html  
  • 12. GIT  Expressed  in  UML   hcp://utsl.gen.nz/talks/git-­‐svn/intro.html    3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   12  
  • 13. 3  +  1  Areas  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   13  
  • 14. Important  Concepts  •  Manipulate  graph.  •  Track  contents,  not  files.  •  Object  name  is  hash  code  which  generated   from  its  content.  •  Immutable  objects,  move  reference  pointers.  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   14  
  • 15. Demo  
  • 16. 3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   16   Credit:  hcp://nvie.com/posts/a-­‐successful-­‐git-­‐branching-­‐model/  
  • 17. 3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   17  
  • 18. 3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   18  
  • 19. References  •  Books  and  tutorials   –  Git  Immersion   –  Cheat  Sheet   –  A  Visual  Git  Reference  •  Workflow     –  Commit  policy   –  A  successful  Git  branching  model  •  Credit:  Patrick  Hogan  for  Images  for  slides  5,  7,  8,  10  about   objects  database.  3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   19  
  • 20. Backup  Slides  
  • 21. hcps://raw.github.com/macharrison/Git-­‐Supervisual-­‐Cheatsheet/master/gitcheat.png    3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   21  
  • 22. 3/1/13   Crea3ve  Common  BY-­‐AS-­‐NC   22