SlideShare a Scribd company logo
Git in real product
Git???
• Git là 1 hệ thống Distributed revision
control (Distributed version control or
decentralized version control), tạm dịch là
hệ thống quản lý source phân tán.
• By Linus Torvalds
• Chỉ mất 3s để đồng bộ metadata !!!
History
• Bắt đầu được phát triển tháng 03/04/2005
• Public 06/04/2005
• Self-hosting vào 07/04/2005
• Lần merge đầu tiên giữa nhiều branch diễn ra
vào 18/04/2005
• Torvals đã đạt được mục tiêu của ông vào
29/04/2005 khi ông thử kiểm với Linux Kernel
trong 6.7s
• Release cùng kernel 2.6.12 vào 16/06/2005
• Release phiên bản 1.0 vào 21/12/2005
Spec
• Strong support for non-linear development: hỗ trợ mạnh mẽ phát
triển không tuyến tính (phát triển song song các chức năng)
• Distributed development: Hỗ trợ phát triển và lưu source 1 cách
phân tán giống như Darcs, BitKeeper, Mercurial, SVK, Bazaar and
Monotone. Người dùng sẽ có 1 bản copy trên local và sẽ sử dụng
nó để phát triển, merger branch,...
• Compatibility with existing systems/protocols: thích ứng được
với những hệ thống và giao thức hiện có (HTTP,FTP,rsync,ssh,
plain socket,...)
• Efficient handling of large projects: có khả năng quản lý được
những project lớn, git hoạt động nhanh, mạnh mẽ, hiệu suất cao.
• Cryptographic authentication of history: xác thực history bằng
mật mã.
• Toolkit-based design: git được viết bằng C để nâng cao tốc độ
thực thi.
• Pluggable merge strategies: git có 1 model để meger không toàn
vẹn và cũng hỗ trợ rất nhiều thuật toán để hoàn thiện quá trình
merge, chỉ với trường hợp ko thể meger được thì mới cần người
dùng phải tiến hành merge bằng tay.
Mô hình Git
Decentralized but centralized
Git sv SVN
Git sv SVN
● GIT is distributed, SVN is not
● GIT stores content as metadata,
SVN stores just files
● GIT branches are not the same
as SVN branches
● GIT’s content integrity is better
than SVN’s: SHA-1
• Using Git in real
product
Branch
• Main branches:
– master
– develop
• Supporting branches
– Feature branches
– Release branches
– Hotfix branches
Main branch
• branch sẽ tồn tại mãi mãi và
song song
– master: ứng với phiên bản
thực tế của product
– develop: ứng với phiên bản
cuối cùng sẵn sàng để release
lên phiên bản thực tế
Supporting branches
• Feature branches
– branch off từ : develop
– merge vào: develop
– Quy luật đặt tên: bất kể j trừ master, develop,
release-, hay hotfix-
• Release branches
– Được branch off từ:develop
– Được merge vào develop và master.
– Quy tắc đặt tên: release-*
Supporting branches
• Hotfix branches
– Branch off from: master
– được merge vào:develop and master
– Quy tắc đặt tên:hotfix-*
Supporting branches
Gitlab
● Open source
● Git repository management, code reviews,
issue tracking, activity feeds, wikis and
continuous integration
● 25,000 users on one server or a highly
available active/active cluster
https://about.gitlab.com/downloads/
Ref
● Git flow
○ https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
○ http://nvie.com/posts/a-successful-git-branching-model/
● Tut
○ Online Training
■ https://try.github.io/levels/1/challenges/1
■ http://pcottle.github.io/learnGitBranching/
○ Other
■ http://git-scm.com/docs/gittutorial
■ https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-init
Giới thiệu git
Ad

More Related Content

What's hot (20)

Git for beginners
Git for beginnersGit for beginners
Git for beginners
Arulmurugan Rajaraman
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
Lee Hanxue
 
Git and GitHub for Documentation
Git and GitHub for DocumentationGit and GitHub for Documentation
Git and GitHub for Documentation
Anne Gentle
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
Geoff Hoffman
 
Git and Github
Git and GithubGit and Github
Git and Github
Wen-Tien Chang
 
Introduction git
Introduction gitIntroduction git
Introduction git
Dian Sigit Prastowo
 
Git real slides
Git real slidesGit real slides
Git real slides
Lucas Couto
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
Nilay Binjola
 
Từ Gà Đến Pro Git và GitHub trong 60 phút
Từ Gà Đến Pro Git và GitHub trong 60 phútTừ Gà Đến Pro Git và GitHub trong 60 phút
Từ Gà Đến Pro Git và GitHub trong 60 phút
Huy Hoàng Phạm
 
Tutoriel GIT
Tutoriel GITTutoriel GIT
Tutoriel GIT
Francois ANDRE
 
GitLab.pptx
GitLab.pptxGitLab.pptx
GitLab.pptx
LeoulZewelde1
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
Venkat Malladi
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
James Gray
 
Presentacion git
Presentacion gitPresentacion git
Presentacion git
Ignacio Martín
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requests
Bartosz Kosarzycki
 
Git
GitGit
Git
Shinu Suresh
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
Nicolás Tourné
 
Git basics to advance with diagrams
Git basics to advance with diagramsGit basics to advance with diagrams
Git basics to advance with diagrams
Dilum Navanjana
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
Rakesh Sukumar
 
Git n git hub
Git n git hubGit n git hub
Git n git hub
Jiwon Baek
 
Github - Git Training Slides: Foundations
Github - Git Training Slides: FoundationsGithub - Git Training Slides: Foundations
Github - Git Training Slides: Foundations
Lee Hanxue
 
Git and GitHub for Documentation
Git and GitHub for DocumentationGit and GitHub for Documentation
Git and GitHub for Documentation
Anne Gentle
 
Git 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using GitGit 101 - Crash Course in Version Control using Git
Git 101 - Crash Course in Version Control using Git
Geoff Hoffman
 
Git - Basic Crash Course
Git - Basic Crash CourseGit - Basic Crash Course
Git - Basic Crash Course
Nilay Binjola
 
Từ Gà Đến Pro Git và GitHub trong 60 phút
Từ Gà Đến Pro Git và GitHub trong 60 phútTừ Gà Đến Pro Git và GitHub trong 60 phút
Từ Gà Đến Pro Git và GitHub trong 60 phút
Huy Hoàng Phạm
 
Intro to git and git hub
Intro to git and git hubIntro to git and git hub
Intro to git and git hub
Venkat Malladi
 
Git and GitHub
Git and GitHubGit and GitHub
Git and GitHub
James Gray
 
Git-flow workflow and pull-requests
Git-flow workflow and pull-requestsGit-flow workflow and pull-requests
Git-flow workflow and pull-requests
Bartosz Kosarzycki
 
Starting with Git & GitHub
Starting with Git & GitHubStarting with Git & GitHub
Starting with Git & GitHub
Nicolás Tourné
 
Git basics to advance with diagrams
Git basics to advance with diagramsGit basics to advance with diagrams
Git basics to advance with diagrams
Dilum Navanjana
 
Introduction to github slideshare
Introduction to github slideshareIntroduction to github slideshare
Introduction to github slideshare
Rakesh Sukumar
 

Similar to Giới thiệu git (14)

Tranning git
Tranning gitTranning git
Tranning git
Cương Hỏa
 
Tranning git
Tranning gitTranning git
Tranning git
Cương Hỏa
 
2016
20162016
2016
linh linh
 
Git it
Git itGit it
Git it
Manh Tien Hoang
 
VNPAY Git Seminar
VNPAY Git SeminarVNPAY Git Seminar
VNPAY Git Seminar
Mr Slowly
 
Guilde GIT.pptx
Guilde GIT.pptxGuilde GIT.pptx
Guilde GIT.pptx
ssuser0b8037
 
Topic2_DevOps(Development)_Framework.pdf
Topic2_DevOps(Development)_Framework.pdfTopic2_DevOps(Development)_Framework.pdf
Topic2_DevOps(Development)_Framework.pdf
dtc2154801030102
 
Subversion Seminar [2010]
Subversion Seminar [2010]Subversion Seminar [2010]
Subversion Seminar [2010]
Luân Võ Thành
 
Kiến trúc máy tính và hệ điều hành - Nhóm 14
Kiến trúc máy tính và hệ điều hành -  Nhóm 14Kiến trúc máy tính và hệ điều hành -  Nhóm 14
Kiến trúc máy tính và hệ điều hành - Nhóm 14
ssuseraf6e97
 
using github and gitlan. Cách sử dụng git
using github and gitlan. Cách sử dụng gitusing github and gitlan. Cách sử dụng git
using github and gitlan. Cách sử dụng git
NguynQucLong4
 
Bang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIITBang Cuu Chuong Git | NIIT
Bang Cuu Chuong Git | NIIT
NIIT - ICT Hà Nội
 
Slide 02 Tổng quan về git- Git HTML.pdf
Slide 02 Tổng quan về git- Git  HTML.pdfSlide 02 Tổng quan về git- Git  HTML.pdf
Slide 02 Tổng quan về git- Git HTML.pdf
tk020803
 
VNPAY Git Seminar
VNPAY Git SeminarVNPAY Git Seminar
VNPAY Git Seminar
Mr Slowly
 
Topic2_DevOps(Development)_Framework.pdf
Topic2_DevOps(Development)_Framework.pdfTopic2_DevOps(Development)_Framework.pdf
Topic2_DevOps(Development)_Framework.pdf
dtc2154801030102
 
Kiến trúc máy tính và hệ điều hành - Nhóm 14
Kiến trúc máy tính và hệ điều hành -  Nhóm 14Kiến trúc máy tính và hệ điều hành -  Nhóm 14
Kiến trúc máy tính và hệ điều hành - Nhóm 14
ssuseraf6e97
 
using github and gitlan. Cách sử dụng git
using github and gitlan. Cách sử dụng gitusing github and gitlan. Cách sử dụng git
using github and gitlan. Cách sử dụng git
NguynQucLong4
 
Slide 02 Tổng quan về git- Git HTML.pdf
Slide 02 Tổng quan về git- Git  HTML.pdfSlide 02 Tổng quan về git- Git  HTML.pdf
Slide 02 Tổng quan về git- Git HTML.pdf
tk020803
 
Ad

Giới thiệu git

  • 1. Git in real product
  • 2. Git??? • Git là 1 hệ thống Distributed revision control (Distributed version control or decentralized version control), tạm dịch là hệ thống quản lý source phân tán. • By Linus Torvalds • Chỉ mất 3s để đồng bộ metadata !!!
  • 3. History • Bắt đầu được phát triển tháng 03/04/2005 • Public 06/04/2005 • Self-hosting vào 07/04/2005 • Lần merge đầu tiên giữa nhiều branch diễn ra vào 18/04/2005 • Torvals đã đạt được mục tiêu của ông vào 29/04/2005 khi ông thử kiểm với Linux Kernel trong 6.7s • Release cùng kernel 2.6.12 vào 16/06/2005 • Release phiên bản 1.0 vào 21/12/2005
  • 4. Spec • Strong support for non-linear development: hỗ trợ mạnh mẽ phát triển không tuyến tính (phát triển song song các chức năng) • Distributed development: Hỗ trợ phát triển và lưu source 1 cách phân tán giống như Darcs, BitKeeper, Mercurial, SVK, Bazaar and Monotone. Người dùng sẽ có 1 bản copy trên local và sẽ sử dụng nó để phát triển, merger branch,... • Compatibility with existing systems/protocols: thích ứng được với những hệ thống và giao thức hiện có (HTTP,FTP,rsync,ssh, plain socket,...) • Efficient handling of large projects: có khả năng quản lý được những project lớn, git hoạt động nhanh, mạnh mẽ, hiệu suất cao. • Cryptographic authentication of history: xác thực history bằng mật mã. • Toolkit-based design: git được viết bằng C để nâng cao tốc độ thực thi. • Pluggable merge strategies: git có 1 model để meger không toàn vẹn và cũng hỗ trợ rất nhiều thuật toán để hoàn thiện quá trình merge, chỉ với trường hợp ko thể meger được thì mới cần người dùng phải tiến hành merge bằng tay.
  • 8. Git sv SVN ● GIT is distributed, SVN is not ● GIT stores content as metadata, SVN stores just files ● GIT branches are not the same as SVN branches ● GIT’s content integrity is better than SVN’s: SHA-1
  • 9. • Using Git in real product
  • 10. Branch • Main branches: – master – develop • Supporting branches – Feature branches – Release branches – Hotfix branches
  • 11. Main branch • branch sẽ tồn tại mãi mãi và song song – master: ứng với phiên bản thực tế của product – develop: ứng với phiên bản cuối cùng sẵn sàng để release lên phiên bản thực tế
  • 12. Supporting branches • Feature branches – branch off từ : develop – merge vào: develop – Quy luật đặt tên: bất kể j trừ master, develop, release-, hay hotfix- • Release branches – Được branch off từ:develop – Được merge vào develop và master. – Quy tắc đặt tên: release-*
  • 13. Supporting branches • Hotfix branches – Branch off from: master – được merge vào:develop and master – Quy tắc đặt tên:hotfix-*
  • 15. Gitlab ● Open source ● Git repository management, code reviews, issue tracking, activity feeds, wikis and continuous integration ● 25,000 users on one server or a highly available active/active cluster
  • 17. Ref ● Git flow ○ https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow ○ http://nvie.com/posts/a-successful-git-branching-model/ ● Tut ○ Online Training ■ https://try.github.io/levels/1/challenges/1 ■ http://pcottle.github.io/learnGitBranching/ ○ Other ■ http://git-scm.com/docs/gittutorial ■ https://www.atlassian.com/git/tutorials/setting-up-a-repository/git-init