Lưu trữ mã nguồn và tự động hoá

GitLab

Tự đặt trên máy chủ công ty, kèm sẵn quy trình kiểm thử và triển khai

Với đơn vị làm cho ngân hàng hay cơ quan nhà nước, khả năng cài toàn bộ nền tảng lên máy chủ công ty không phải tiện ích mà là điều kiện bắt buộc.

Tự dựng máy chủ riêngTích hợp sẵn quy trình triển khaiBản tự dựng cần cấu hình mạnh
8.6
ĐIỂM TOPỨNGDỤNG
Hạng #9 trong nhóm Developer & lập trình
Nhà phát triển
GitLab
Nền tảng
Web · Windows · macOS · Linux
Giá
Bản cộng đồng tự đặt máy chủ miễn phí · Bản đám mây có gói miễn phí cho nhóm nhỏ · Gói trả phí theo người dùng
Ngôn ngữ
English, có bản dịch một phần sang nhiều ngôn ngữ
NGƯỜI DÙNG CHẤM

Bạn đánh giá GitLab thế nào?

Điểm này độc lập với điểm của ban biên tập và quyết định thứ hạng ở tab “Người dùng bình chọn”.

Chưa có bình chọn
Bạn thấy sao?
Không cần đăng nhập. Mỗi người một phiếu, đổi lại được.
CHẤM ĐIỂM

Điểm từng tiêu chí

Điểm tổng là trung bình có trọng số của các tiêu chí bên dưới.

Khả năng tự đặt máy chủ
9.7
Kiểm thử và triển khai tự động
9.5
Quản lý công việc
9
Yêu cầu tài nguyên
6
Dễ bắt đầu
7
REVIEW

Đánh giá chi tiết GitLab

Trả lời ngắn: GitLab được nhiều doanh nghiệp chọn vì bản tự đặt trên máy chủ công ty dễ triển khai và kèm sẵn quy trình kiểm thử, triển khai tự động.

Điều kiện: bản tự đặt cần máy chủ khá mạnh và một người phụ trách vận hành.

Vì sao doanh nghiệp muốn tự đặt máy chủ?

Mã nguồn thường là tài sản có giá trị nhất của một công ty phần mềm, và với nhiều ngành thì nó còn nằm trong phạm vi điều chỉnh của quy định.

Khi bạn dùng dịch vụ trên đám mây, toàn bộ mã nguồn nằm trên hạ tầng của một công ty nước ngoài. Với phần lớn doanh nghiệp thì điều đó chấp nhận được.

Nhưng với đơn vị làm cho ngân hàng, cơ quan nhà nước hoặc lĩnh vực quốc phòng, hợp đồng thường ghi rõ mã nguồn và dữ liệu không được rời khỏi lãnh thổ hoặc khỏi hệ thống nội bộ.

Trong tình huống đó, khả năng cài toàn bộ nền tảng lên máy chủ của chính công ty không phải tiện ích mà là điều kiện bắt buộc.

GitLab làm được gì?

ViệcMức độGhi chú
Tự đặt trên máy chủ công tyTốt nhấtBản cộng đồng miễn phí, đầy đủ tính năng cốt lõi
Quy trình kiểm thử và triển khai tự độngTốt nhấtTích hợp sẵn, không cần dịch vụ ngoài
Gộp mọi khâu vào một nền tảngRất tốtMã nguồn, việc, kiểm thử, triển khai, giám sát
Quản lý quyền truy cập chi tiếtRất tốtPhân quyền tới từng nhánh
Quản lý công việc và kế hoạchRất tốtĐầy đủ hơn đối thủ đáng kể
Bản trên đám mây có gói miễn phíTốtĐủ cho nhóm nhỏ
Yêu cầu cấu hình máy chủ khi tự đặtKémNgốn bộ nhớ, cần máy khá mạnh
Quy mô cộng đồng mã nguồn mởKháNhỏ hơn nhiều so với đối thủ dẫn đầu
Giao diệnKháNhiều tính năng nên menu khá rối

Ai nên dùng GitLab?

  • Công ty có yêu cầu mã nguồn không rời hệ thống nội bộ — nhóm cần nó nhất.
  • Đội muốn gộp mọi khâu vào một nền tảng — bớt số công cụ phải trả tiền.
  • Đơn vị cần phân quyền chi tiết theo từng nhánh — quản trị rất đầy đủ.
  • Nhóm làm nhiều dự án cần quy trình triển khai thống nhất — cấu hình dùng lại được.

Chưa phù hợp nếu bạn là cá nhân muốn xây hồ sơ nghề nghiệp — GitHub là nơi nhà tuyển dụng nhìn vào.

Dùng bản đám mây hay tự đặt máy chủ?

Quyết định này ảnh hưởng tới chi phí vận hành nhiều năm nên đáng cân nhắc kỹ.

Tình huốngNên chọn cách nào
Nhóm dưới mười người, không ràng buộc quy địnhBản đám mây, đỡ hẳn việc vận hành
Hợp đồng yêu cầu dữ liệu trong nướcTự đặt máy chủ
Công ty chưa có người quản trị hệ thốngBản đám mây, đừng tự đặt
Cần chạy kiểm thử với khối lượng rất lớnTự đặt thường rẻ hơn về dài hạn
Đội phân tán nhiều nơi, làm từ xaBản đám mây đơn giản hơn
Mã nguồn thuộc dự án cho khu vực côngTự đặt, kiểm tra kỹ quy định áp dụng
Chi phí thật của việc tự đặt máy chủ không nằm ở giấy phép phần mềm mà ở thời gian con người. Bản cộng đồng miễn phí, nhưng bạn cần một người biết cấu hình máy chủ, theo dõi dung lượng, cập nhật bản vá bảo mật, và xử lý khi hệ thống ngừng chạy vào lúc cả đội đang cần đẩy mã. Với công ty dưới mười lập trình viên, chi phí thời gian đó thường vượt xa tiền thuê bao bản đám mây. Chỉ nên tự đặt khi bạn có lý do bắt buộc, hoặc đã có sẵn đội vận hành hạ tầng.

Quy trình triển khai bản tự đặt cho công ty

  1. Kiểm tra quy định ngành có bắt buộc không (1 ngày) — Nếu không bắt buộc, cân nhắc lại.
  2. Chuẩn bị máy chủ đủ mạnh (1 ngày) — Bộ nhớ là yếu tố quan trọng nhất.
  3. Cài đặt và cấu hình sao lưu tự động (2 ngày) — Sao lưu trước khi có dữ liệu thật.
  4. Nhập mã nguồn từ nơi cũ sang (1 ngày) — Kiểm tra lịch sử có đầy đủ không.
  5. Dựng quy trình kiểm thử tự động cho một dự án mẫu (3 ngày) — Rồi nhân bản cho dự án khác.
  6. Đặt lịch cập nhật bản vá định kỳ (liên tục) — Việc không bao giờ kết thúc.

Vì sao phải cấu hình sao lưu trước khi có dữ liệu thật?

Đây là thứ tự mà nhiều đội làm ngược, và hậu quả chỉ lộ ra vào đúng lúc tệ nhất.

Cách làm thường thấy là dựng hệ thống, nhập mã nguồn vào, cho cả đội dùng, rồi tính chuyện sao lưu sau khi mọi thứ đã ổn định. Nhưng khi hệ thống đã chạy tốt thì việc sao lưu không còn cảm giác cấp bách, và nó bị đẩy xuống cuối danh sách.

Vấn đề là bản sao lưu chỉ chứng minh được giá trị khi bạn thử khôi phục. Một cấu hình sao lưu chạy hằng đêm nhưng chưa bao giờ được khôi phục thử có thể đang tạo ra những tệp vô dụng mà không ai biết.

Làm ngược lại thì mọi thứ đơn giản hơn: dựng sao lưu khi hệ thống còn trống, thử khôi phục ngay lúc đó — nếu hỏng thì cũng không mất gì. Sau khi đã xác nhận quy trình khôi phục hoạt động, bạn mới đưa dữ liệu thật vào và yên tâm.

Hạn chế cần biết

Bản tự đặt ngốn tài nguyên máy chủ

Cần bộ nhớ khá lớn ngay cả với đội nhỏ.

Cần người phụ trách vận hành lâu dài

Không phải cài một lần rồi quên.

Giao diện nhiều tính năng nên rối

Người mới mất thời gian tìm đúng mục.

Cộng đồng nhỏ hơn đối thủ dẫn đầu

Ít bài hướng dẫn và ít người đã gặp lỗi giống bạn.

Ít giá trị cho hồ sơ nghề nghiệp cá nhân

Nhà tuyển dụng thường xem hồ sơ trên nền tảng khác.

GitLab so với các nền tảng khác

Tiêu chíGitLabGitHubGit thuần trên máy chủ riêng
Tự đặt máy chủ dễ dàngTốt nhấtKháRất tốt
Quy trình kiểm thử tích hợpTốt nhấtRất tốtKhông có
Quản lý công việc và kế hoạchTốt nhấtTốtKhông có
Quy mô cộng đồngKháTốt nhấtKhông có
Yêu cầu tài nguyên máy chủCaoKhông cầnThấp
Dễ bắt đầuTốtTốt nhấtKém

Xem thêm đánh giá GitHub, đánh giá Git, đánh giá Docker, hoặc duyệt nhóm công cụ lập trình.

Kết luận

GitLab là lựa chọn đúng khi công ty bạn có lý do bắt buộc để giữ mã nguồn trong hệ thống nội bộ, hoặc muốn gộp nhiều khâu vào một nền tảng duy nhất.

Phần kiểm thử và triển khai tự động tích hợp sẵn là điểm mạnh thật — bạn không phải ghép thêm dịch vụ bên ngoài và trả thêm một khoản thuê bao nữa.

Nhưng nếu bạn là nhóm nhỏ không bị ràng buộc quy định, hãy tính kỹ chi phí thời gian vận hành trước khi quyết định tự đặt máy chủ. Khoản đó thường lớn hơn tiền thuê bao mà bạn định tiết kiệm.

Về bài đánh giá này: Yêu cầu tài nguyên tối thiểu và cơ cấu các gói của GitLab thay đổi theo phiên bản. Kiểm tra thông tin hiện hành tại trang chủ GitLab.
ĐÁNH GIÁ

Điểm mạnh & điểm yếu

Điểm mạnh

  • Bản cộng đồng cài lên máy chủ công ty được và vẫn đủ tính năng cốt lõi
  • Quy trình kiểm thử và triển khai tự động tích hợp sẵn, không cần dịch vụ ngoài
  • Gộp mã nguồn, kế hoạch, kiểm thử và giám sát vào một nền tảng duy nhất
  • Phân quyền chi tiết tới từng nhánh trong kho
  • Phần quản lý công việc và lộ trình đầy đủ hơn đối thủ đáng kể

Điểm yếu

  • Bản tự đặt đòi hỏi máy chủ nhiều bộ nhớ ngay cả với đội nhỏ
  • Cần một người phụ trách vận hành lâu dài chứ không cài một lần rồi quên
  • Menu nhiều tầng khiến người mới mất thời gian tìm đúng mục
  • Ít bài hướng dẫn tiếng Việt hơn hẳn nền tảng dẫn đầu
  • Hồ sơ cá nhân ở đây gần như không có giá trị khi đi ứng tuyển
Phù hợp nhất với
Công ty có ràng buộc mã nguồn không rời hệ thống nội bộĐội muốn gộp nhiều khâu vào một nền tảngĐơn vị cần phân quyền chi tiết theo nhánhNhóm làm nhiều dự án cần quy trình triển khai thống nhất
HỎI ĐÁP

Câu hỏi thường gặp

Vì sao doanh nghiệp muốn tự đặt máy chủ?

Vì với ngân hàng, cơ quan nhà nước hay lĩnh vực quốc phòng, hợp đồng thường ghi rõ mã nguồn không được rời khỏi hệ thống nội bộ.

Nhóm nhỏ không bị ràng buộc thì nên chọn gì?

Bản đám mây, vì nó bỏ được toàn bộ gánh nặng vận hành mà vẫn đủ tính năng.

Chi phí thật của việc tự đặt nằm ở đâu?

Ở thời gian con người: cấu hình máy chủ, theo dõi dung lượng, cập nhật bản vá và xử lý sự cố lúc cả đội đang cần đẩy mã.

Vì sao phải cấu hình sao lưu trước khi có dữ liệu thật?

Vì lúc hệ thống còn trống bạn thử khôi phục thoải mái, hỏng cũng không mất gì.

Không thử khôi phục thì rủi ro là gì?

Cấu hình chạy hằng đêm vẫn có thể đang tạo ra những tệp vô dụng mà không ai biết cho tới lúc cần dùng.

Đội thường làm sai thứ tự thế nào?

Dựng hệ thống, nhập dữ liệu, cho cả đội dùng, rồi mới tính chuyện sao lưu khi mọi thứ đã ổn định.

Yếu tố phần cứng nào quan trọng nhất khi tự đặt?

Bộ nhớ, vì đây là thứ nền tảng này tiêu thụ nhiều nhất.

Có thể chuyển từ nền tảng khác sang không?

Có, và nên kiểm tra kỹ xem lịch sử thay đổi có được mang sang đầy đủ hay không.

Khi nào thì không nên tự đặt máy chủ?

Khi công ty chưa có người quản trị hệ thống — lúc đó bản đám mây là lựa chọn hợp lý duy nhất.

KẾT LUẬN

Chi phí thật của việc tự đặt máy chủ nằm ở thời gian con người chứ không ở giấy phép — với đội dưới mười người, khoản đó thường vượt tiền thuê bao bản đám mây.