You are on page 1of 2

Chủ đề: Tìm hiểu về Git?

Thực hiện: Vũ Hồng Nhật


1. Git là gì?
Khi lập trình, do vô tình hoặc cố ý sửa chữa hoặc làm mất 1 đoạn code,
bạn làm cách nào để restore lại. Rất khó nhớ chi tiết để rewrite lại đoạn
code đó. Nhưng với phần mền quản lý phiên bản mã nguồn thì những
công việc trên bạn có thể sử lí 1 cách dễ dàng vì phần mền này cho phép
bạn quay lại phiên bản trước 1 cách dễ dàng. Vì vậy phần mền quản lí
phiên bản mã nguồn là 1 phần thiết yếu của 1 lập trình viên và 1trong
những phiên bản hỗi trợ tốt nhất hiện nay là Git.
Git sẽ giúp cho người dùng lưu lại các phiên bản của những lần thay đổi
mã nguồn để dễ dàng khôi phục lại phiên bản cũ mà không cần phải nhớ
là mình đã chỉnh ở đâu, tất cả những phiên bản bạn cần điều đã được sao
lưu.
 Git:
-Lưu lại cái phiên bản khác nhau của mã nguồn dự án phần mền
-Khôi phục lại mã nguồn của 1 phiên bản bất kì
-Dễ dàng so sánh giữ các phiên bản
-Phát hiện ai đã thao tác trên các phiên bản
-Khôi phục lại tập tin đã mất
-Dễ dàng thực hiện thử nghiệm các tính năng mới mà không sợ
ảnh hưởng đến phiên bản gốc
-Giúp phối hợp dự án 1 cách hiệu quả
Git là một hệ thống quản lí phiên bản phân tán (Distributed version
Control System - DVCS) ra đời năm 2005 và hiện được dùng rất phổ
biến.
2. Git Flow là gì?
Git Flow là tên gọi của 1 tool (command) hỗ trợ branch model gọi là A
successful Git branching model do Vincent Driessen đề xuất ra. Người
ta thường gọi đó là model hay tool, và trong git-flow có 5 kiểu với mỗi
vai trò khác nhau (tùy trường hợp mà có lúc là 6 kiểu), switch các kiểu
với nhau để phát triển Bằng việc set trước các branch, những rule khi
merge, dù có bao nhiêu developer cùng thời điểm phát triển vẫn có thể
quản lý branch dễ dàng, và tránh được những vấn đề do merge.
Git Flow đưa ra các quy ước để triển khai công việc. Mục đích là các
nhóm công việc triển khai song song nhưng không ảnh hưởng tới nhau.
Các  môi trường development, staging và production tách biệt giúp quá
trình kiểm thử (QA), trả lại feedback và xử lý các issue được gọn gàng và
thống nhất hơn nhiều.

Có 6 kiểu branch được định nghĩa trong Git Flow:


 Master branch: là branch được tạo mới repository và tạo mặc
định trong Git. Những người mới bắt đầu thường có xu hướng
commit trực tiếp và branch master, nhưng trong git-flow thì ta
không commit trực tiếp vào master(đây là branch dùng để
marge-hợp nhất)
 Release branch: Branch release là branch dùng để release sản
phẩm như đúng tên gọi của nó. Khi release sản phẩm thì có rất
nhiều những task liên quan khác cần thiết nữa, những task liên
quan đó sẽ được release trên branch release mà ta ngắt ra từ
branch develop. Sau khi release xong, sẽ merge vào branch
master và branch develop, ghi release tag vào merge commit
của branch master sau đó xóa branch release đi.
 Hotfix branch: Khi release sản phẩm cũng có khi ta phát hiện ra
bug rất nghiêm trọng, Những lúc như vậy ta sẽ ngắt ra branch
hotfix trực tiếp từ branch master để tiến hành sửa, sau khi sửa
xong sẽ merge vào master và develop và ghi lại release tag. Sau
đó sẽ xóa branch hotfix đi.
 Support branch: nó đặc thù với những PJ cần tiếp tục support
các version cũ. Ở branch này sẽ thực hiện lưu version cũ và
release.

You might also like