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)
Dự án có 4 người mà đú Git Flow chuẩn chỉnh thì đúng là tự hành hạ nhau thật, vẽ ra lắm nhánh xong merge mệt nghỉ vì code chồng chéo. Team nhỏ thế này cứ quất GitHub Flow hoặc Trunk-based Development là đẹp nhất, cứ có tính năng mới thì tạo branch ngắn, xong PR thẳng vào main luôn cho nhanh gọn. Làm vậy vừa đỡ rối rắm vừa học được cách review code thực tế, sau này đi làm ở công ty quen rồi mới cần nâng cấp lên mấy quy trình phức tạp hơn.
Dự án có 4 người mà đú Git Flow chuẩn chỉnh thì khác gì dùng dao mổ trâu đi cắt tiết gà, chỉ tổ phức tạp hóa vấn đề rồi cãi nhau thêm. Đội hình này cứ áp dụng mô hình GitHub Flow rút gọn là chuẩn bài nhất, vừa nhanh gọn vừa không sợ rối code. Cụ thể cứ làm theo 3 bước này: tạo nhánh `feature` riêng cho từng tính năng nhỏ, xong việc thì tạo Pull Request để người khác review rồi mới merge thẳng vào `main`. là deploy trực tiếp từ `main` lên môi trường chạy thật, đảm bảo mượt mà không đau đầu.
Về vụ này thì cách tối ưu nhất là chuẩn bị kỹ từ đầu. Nếu làm online thì cứ vào thẳng cổng dịch vụ công chính thức, làm theo đúng biểu mẫu là tầm 3-5 ngày xong thôi.
Dự án có 4 người mà đú Git Flow chuẩn chỉnh thì đúng là tự vẽ dây buộc mình, rườm rà không cần thiết. Team nhỏ thế này cứ áp dụng GitHub Flow hoặc Gitlab Flow là đẹp nhất, vừa nhanh gọn vừa đỡ mất công giải quyết conflict mệt nghỉ. Cứ chốt nhanh 2 bước cốt lõi này mà làm: tạo một nhánh `main` để chạy production và mỗi đứa tự táng một nhánh `feature/*` riêng khi code tính năng mới. Xong xuôi thì tạo Pull Request để người khác review rồi mới merge vào `main`, đảm bảo vừa chuyên nghiệp mà không bị rối tung.
Vụ này đợt trước team 3 đứa nhà mình cũng cãi nhau một trận chí mạng, rút ra chân lý là team dưới 5 người mà đú Git flow chuẩn chỉnh thì chỉ có tự bóp dái. Đám `develop`, `release`, `hotfix` làm loãng hết cả code base trong khi chỉ cần 1 con `main` với mỗi tính năng vứt ra một nhánh `feature` riêng là đủ sống rồi. Cứ bảo "cho chuyên nghiệp" chứ bao giờ dự án phình to lên, quản lý chục người hẵng hay, chứ team bé tí thế này cứ cái gì nhanh gọn, ít bước merge mà phang thôi chủ thớt ạ.
Team 4 người mà đú Git Flow chuẩn chỉnh thì khác gì lấy dao mổ trâu đi giết gà, chỉ tổ tự chuốc lấy mấy cái conflict lòi mắt với ngồi gõ lệnh mỏi tay thôi chủ thớt ạ. Điểm mấu chốt bạn cần nhớ là quy trình sinh ra để phục vụ dự án chứ không phải để làm cảnh hay khoe mẽ, dự án nhỏ thì cứ GitHub Flow hoặc Trunk-based thẳng tiến cho lành. Cứ bảo anh em làm cái nhánh `dev` với vài nhánh `feature` nhỏ lẻ là đủ mượt rồi, bao giờ team lên chục người hay có release bản thương mại phức tạp hãy tính tiếp.
Team 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ổ phức tạp hóa vấn đề rồi cãi nhau thêm. Dự án nhỏ gọn thì cứ chơi kiểu GitHub Flow hoặc Gitlab Flow cho lành, cứ `feature branch` xong tạo Pull Request rồi merge thẳng vào `main` là đẹp. Làm kinh doanh hay làm tech thì nguyên tắc tối thượng vẫn là tối ưu tốc độ và dòng tiền, code cũng thế, cái nào nhanh gọn, ít bug, release lẹ tay ra sản phẩm mới là vua.
Dự án có 4 người mà đú theo Git Flow chuẩn chỉnh thì đúng là tự mua dây buộc mình, sớm muộn gì cũng rối tung lên vì suốt ngày đi giải quyết conflict với merge nhánh. **Điểm mấu chốt bạn cần nhớ là** team nhỏ thế này cứ áp dụng GitHub Flow hoặc Gitlab Flow cho lành, tất cả cứ quất chung vào một nhánh `main` hoặc tạo nhánh tính năng ngắn hạn rồi Pull Request là đủ chuyên nghiệp rồi. Đừng phức tạp hóa vấn đề làm gì chỉ để đổi lấy cái danh "làm việc chuẩn enterprise", tốn thời gian fix bug merge còn hơn là code thật.
Dự án có 4 người mà đú theo Git Flow chuẩn chỉnh thì chỉ có tự vẽ dây trói mình, làm xong mấy cái branch `develop`, `release`, `hotfix` chắc hết bố nó thời gian code. Team nhỏ thế này cứ quất **GitHub Flow** hoặc **Trunk-based Development** là nhàn nhất: cứ tạo feature branch từ `main`, code xong làm cái Pull Request cho người khác review rồi merge thẳng lên `main` luôn. Cái sơ đồ Git Flow nhìn thì hoành tráng nhưng thực tế áp vào team ít người chỉ tổ rối rắm, sinh ra lắm bước thừa thãi cản trở tiến độ thôi bác ạ.
Team 4 người mà đú Git Flow chuẩn chỉnh thì sớm muộn gì cũng loạn, cứ GitHub Flow hoặc Gitlab Flow mà táng cho nhẹ đầu. Cứ làm theo 3 bước gọn thế này là xong: tạo nhánh `feature` riêng cho từng đứa từ `main`, code xong thì mở Pull Request để người khác review, rồi mới bấm merge thẳng vào `main`. Dùng thế vừa nhanh gọn, dễ quản lý conflict lại vừa tập được thói quen code team chuẩn chỉnh trước khi bước chân ra đời đi làm thật.
Đ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.