Tôi đã sử dụng Git tại hai công ty trước đây để kiểm soát phiên bản. Có vẻ như từ những gì tôi đã nghe nói rằng khoảng 90% các công ty sử dụng Git trên các hệ thống kiểm soát phiên bản khác.
Một trong những điểm bán hàng lớn nhất của Git là nó được phân cấp, tức là tất cả các kho lưu trữ đều như nhau; không có kho lưu trữ trung tâm / nguồn sự thật. Đây là một tính năng Linus Torvalds vô địch.
Nhưng dường như mọi công ty đều sử dụng Git theo cách tập trung, giống như người ta sẽ sử dụng SVN hoặc CVS. Luôn có một kho lưu trữ trung tâm trên một máy chủ (thường là trên GitHub) mà mọi người kéo từ và đẩy tới. Tôi chưa bao giờ thấy hoặc nghe nói (theo kinh nghiệm hạn chế được thừa nhận của tôi) mọi người sử dụng Git theo cách thực sự phi tập trung mà nó dự định, tức là đẩy và kéo đến các kho lưu trữ của đồng nghiệp khác khi họ thấy phù hợp.
Câu hỏi của tôi là:
- Tại sao mọi người không sử dụng quy trình làm việc phân tán cho Git trong thực tế?
- Là khả năng làm việc theo cách phân tán thậm chí quan trọng đối với kiểm soát phiên bản hiện đại, hay nó chỉ nghe có vẻ hay?
Biên tập
Tôi nhận ra tôi đã không vượt qua giai điệu chính xác trong câu hỏi ban đầu của mình. Có vẻ như tôi đã hỏi tại sao mọi người sẽ làm việc theo cách tập trung khi một hệ thống kiểm soát phiên bản phân tán (DVCS) rõ ràng là vượt trội. Trên thực tế, điều tôi muốn nói là, tôi không thấy bất kỳ lợi ích nào cho DVCS cả . Tuy nhiên, tôi thường nghe mọi người giảng về tính ưu việt của nó, trong khi thế giới thực dường như đồng ý với quan điểm của tôi.