Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Git in real product
Git???
• Git là 1 hệ thống Distributed revision
control (Distributed version control or
decentralized version control), tạ...
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 ...
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ứ...
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 t...
• 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 ph...
Supporting branches
• Feature branches
– branch off từ : develop
– merge vào: develop
– Quy luật đặt tên: bất kể j trừ mas...
Supporting branches
• Hotfix branches
– Branch off from: master
– được merge vào:develop and master
– Quy tắc đặt tên:hotf...
Supporting branches
Gitlab
• Open source
• Git repository management, code reviews,
issue tracking, activity feeds, wikis and
continuous integ...
https://about.gitlab.com/downloads/
Ref
• Git flow
– https://www.atlassian.com/git/tutorials/comparing-workflows/gitflow-workflow
– http://nvie.com/posts/a-su...
Git in real product
Upcoming SlideShare
Loading in …5
×

Git in real product

464 views

Published on

Git

Published in: Data & Analytics
  • Login to see the comments

Git in real product

  1. 1. Git in real product
  2. 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. 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. 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.
  5. 5. Mô hình Git
  6. 6. Decentralized but centralized
  7. 7. Git sv SVN
  8. 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. 9. • Using Git in real product
  10. 10. Branch • Main branches: – master – develop • Supporting branches – Feature branches – Release branches – Hotfix branches
  11. 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. 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. 13. Supporting branches • Hotfix branches – Branch off from: master – được merge vào:develop and master – Quy tắc đặt tên:hotfix-*
  14. 14. Supporting branches
  15. 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
  16. 16. https://about.gitlab.com/downloads/
  17. 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

×