Mấy hôm nay team mình đang cãi nhau vụ chọn quy trình làm việc với Git cho dự án sắp tới. Dự án thì nhỏ thôi có bốn người, mà mỗi đứa một ý làm rối tung cả lên. Người thì thích kiểu đơn giản đẩy thẳng lên main, đứa khác lại khăng khăng đòi áp dụng Git flow chuẩn chỉnh cho chuyên nghiệp. Nhìn sơ đồ Git flow thấy rườm rà quá trời nào là develop, feature, release rồi hotfix các kiểu. Sợ áp dụng vào xong thành ra phức tạp hóa vấn đề, mất thời gian fix conflict còn hơn là code. Căng thật đấy. Bác nào có kinh nghiệm vụ này cứu mình với. Dự án nhỏ ít người thì nên dùng mô hình nào cho gọn nhẹ mà vẫn kiểm soát được mã nguồn nhỉ.
Lăn tăn áp dụng Git flow vào dự án nhóm thế nào.
Thảo luận (33 bình luận chính)
Team có 4 người mà đú Git Flow chuẩn chỉnh thì đúng là tự mua dây buộc mình, vẽ ra mấy cái nhánh develop, release với hotfix xong khéo ngồi giải quyết merge conflict còn cực hơn viết code. Dự án nhỏ thế này cứ quất GitHub Flow hoặc Trunk-based Development là nhàn nhất, mỗi tính năng làm một nhánh `feature`, xong tạo Pull Request rồi review nhanh gọn đẩy thẳng lên `main`. Làm vậy vừa học được cách review code nhóm, vừa không bị rối tung sơ đồ Git mà vẫn giữ được tính chuyên nghiệp tối thiểu.
Team có vỏn vẹn 4 mạng mà đú Git Flow chuẩn chỉnh thì đúng là tự vẽ dây buộc mình, sớm muộn gì cũng loạn code với conflict ngập mặt. Dự án nhỏ thì cứ chơi kiểu GitHub Flow hoặc GitLab Flow đơn giản thôi: nhánh `main` để chạy thật, mỗi đứa làm tính năng gì thì tự bứt một nhánh `feature` rồi tạo Pull Request để review qua lại trước khi merge. Điểm mấu chốt bạn cần nhớ là quy trình sinh ra để phục vụ tiến độ chứ không phải để làm cảnh, đừng mang dao mổ trâu đi cắt tiết gà rồi lại ngồi khóc tiếng mán.
Vụ này đợt trước team 4 mạng của mình cũng cãi nhau một trận chí mạng vì cái tội thích đú đởn Git flow trong khi dự án thì bé tí. Kinh nghiệm xương máu là nhóm dưới 5 người mà cứ `develop`, `release`, `hotfix` đủ kiểu thì chỉ có tự bóp dái, mất thời gian merge mệt xỉu chứ chẳng chuyên nghiệp gì đâu. Bác cứ quăng ngay cái Git flow phức tạp đấy đi, áp dụng mô hình GitHub Flow siêu gọn nhẹ, ai làm tính năng gì thì tạo branch từ `main`, code xong tạo Pull Request để người khác review rồi merge thẳng lên. Vừa nhanh, vừa dễ quản lý mà lại không hại não, anh em trong team lại vui vẻ hòa thuận ngay ấy mà.
Vụ này đợt trước team 4 người của mình cũng cãi nhau một trận chí mạng vì cứ tưởng cứ áp dụng Git flow chuẩn chỉnh như công ty lớn mới là chuyên nghiệp. thực tế chứng minh là dự án nhỏ mà đẻ ra lắm branch `develop`, `release`, `feature` quá chỉ tổ làm anh em rối rắm, mất thời gian merge conflict với quản lý lằng nhằng thêm việc. Bọn mình đã phải quay về dùng kiểu GitHub Flow đơn giản, cứ có task là tạo branch từ `main`, xong tạo Pull Request review rồi merge thẳng lên, vừa nhanh gọn nhẹ lại chẳng đau đầu chút nào.
Dự án có 4 mạng mà đú Git Flow chuẩn chỉnh thì đúng là tự lấy đá ghè chân mình, vẽ đường cho hươu chạy rồi ngồi giải quyết conflict mệt nghỉ. Cứ GitHub Flow hoặc làm cái mô hình Trunk-based đơn giản, nhánh ai nấy code xong tạo Pull Request vào main là xong phim, vừa nhanh gọn lại không lo rối rắm. Đứa nào thích hoành tráng thì bảo cứ làm dự án cá nhân áp dụng nguyên cục Git Flow trước đi rồi hẵng đem vào team nhỏ cho anh em nhờ.
Dự án cỏ 4 người mà đú Git Flow chuẩn chỉnh thì khác gì dao mổ trâu đi cắt tiết gà, chỉ tổ ôm thêm đống conflict và loạn branch không cần thiết. Team cứ quất ngay GitHub Flow hoặc kiểu Feature Branch đơn giản là đẹp nhất: nhánh `main` để chạy production, ai làm tính năng gì thì tạo nhánh `feature/tên-tính-năng`, code xong thì mở Pull Request để người khác review rồi `merge` vào `main`. Nhẹ đầu, dễ kiểm soát mà vẫn giữ được tính kỷ luật cho team, không phải cãi nhau mất thời gian.
Team 4 người mà đú Git Flow chuẩn chỉnh thì khác gì dao mổ trâu đi cắt tiết gà, chỉ tổ ôm thêm đống nhánh `develop`, `release`, `feature` rồi ngồi conflict lòi mắt. Cứ áp dụng **GitHub Flow** hoặc **Trunk-based Development** cho tôi: lấy `main` làm gốc, ai làm tính năng gì thì tạo một nhánh `feature/*` ngắn hạn, code xong thì tạo Pull Request để review rồi merge thẳng vào `main`. Nhỏ gọn, thực tế, không vẽ vời phức tạp để anh em tập trung mà code.
Nhóm có vỏn vẹn 4 người mà đú đởn quất cái Git Flow chuẩn chỉnh thì chỉ có nước tự bóp cổ nhau vì ngồi giải quyết conflict với merge request cả ngày. Điểm mấu chốt bạn cần nhớ là dự án nhỏ thì cứ chơi kiểu GitHub Flow hoặc Trunk-based cho lành, cứ nhánh `main` với vài nhánh `feature` ngắn hạn là đủ mượt mà rồi. Ép cái quy trình cồng kềnh vào vừa mất thời gian fix lỗi vặt vừa dễ sinh ra ức chế nội bộ, lúc đấy lại mất tiền oan đi thuê người về gỡ rối thì khổ.
Dự án có vỏn vẹn bốn người mà ôm cái Git flow chuẩn chỉnh vào thì khác nào vác dao mổ trâu đi cắt tiết gà, chỉ tổ làm khổ nhau thêm. Điểm mấu chốt bạn cần nhớ là quy trình sinh ra để tối ưu hiệu suất chứ không phải để tra tấn anh em trong team, team nhỏ thì cứ GitHub Flow hay Git Branching đơn giản là ngon bổ rẻ nhất. Cứ fang thẳng nhánh `main` kết hợp Pull Request để review code qua lại, vừa nhanh gọn lẹ lại chẳng sợ đụng độ conflict tóe loe rồi mất thời gian ngồi fix oan uổng.
Vụ này đợt trước team mình 4 đứa cũng cãi nhau một trận vì cái tội vẽ vời cái sơ đồ Git Flow phức tạp xong toàn conflict lòi mắt. Dự án nhỏ có 4 người mà đú đởn Git Flow chuẩn chỉnh thì chỉ tổ tự hành nhau, cứ đẩy thẳng lên `main` như ông thì toang sớm vì dễ đè code của nhau. Kinh nghiệm thực tế của mình là cứ vứt xó cái Git Flow nặng nề đi, áp dụng mô hình GitHub Flow hoặc Trunk-based là đẹp nhất cho team ít người. Cứ mỗi tính năng làm một nhánh `feature` riêng, code xong thì tạo Pull Request để người khác review rồi mới merge, vừa nhanh gọn, kiểm soát được code lại chẳng sợ rối tung lên.
Điểm mấu chốt bạn cần nhớ là tuyệt đối không vào các trang web dịch vụ trung ...
Tại chủ đề: Đà Nẵng làm hộ chiếu ở đâu nhanh gọn, nộp hồ sơ ở cơ sở nào thế nào.Điểm mấu chốt bạn cần nhớ là đừng bao giờ lao đầu vào thuê dịch vụ thiết kế w...
Tại chủ đề: Có mẹo nào làm một website đơn giản mà không tốn kém không?Chuẩn rồi chủ thớt, lúc cần gấp mà mò mẫm bực mình phết. Bác cứ bấm ngay tổ h...
Tại chủ đề: Mọi người cho em hỏi cách chụp màn hình máy tính dell làm sao nhanh nhất ạĐiểm mấu chốt bạn cần nhớ là tuyệt đối không ký bất kỳ giấy tờ trắng hay hợp ...
Tại chủ đề: Kinh nghiệm làm thủ tục vay thế chấp sổ đỏ tự túc đỡ mất thời gianChia buồn với chủ thớt vì chuyện gia đình không như ý, nhưng đã quyết thì làm...
Tại chủ đề: Nộp đơn ly hôn ở đâu để giải quyết nhanh gọn nhất.