Tôi sử dụng git cho các dự án cá nhân và nghĩ rằng nó rất tuyệt. Nó nhanh, linh hoạt, mạnh mẽ và hoạt động tuyệt vời để phát triển từ xa.
Nhưng bây giờ nó được yêu cầu trong công việc và thành thật mà nói, chúng tôi đang gặp vấn đề.
Ngoài ra, git dường như không hoạt động tốt để phát triển tập trung trong một tổ chức lớn (hơn 20 nhà phát triển) với các nhà phát triển có khả năng và mức độ tinh vi khác nhau của git - đặc biệt là so với các hệ thống kiểm soát nguồn khác như Perforce hoặc Subversion, nhằm vào loại môi trường đó. (Vâng, tôi biết, Linus không bao giờ có ý định đó.)
Nhưng - vì lý do chính trị - chúng tôi bị mắc kẹt với git, ngay cả khi nó tệ vì những gì chúng tôi đang cố gắng làm với nó.
Dưới đây là một số điều chúng ta đang thấy:
- Các công cụ GUI chưa hoàn thiện
- Sử dụng các công cụ dòng lệnh, thật dễ dàng để bắt kịp hợp nhất và xóa các thay đổi của người khác
- Nó không cung cấp các quyền đối với kho lưu trữ cho mỗi người dùng ngoài các đặc quyền chỉ đọc hoặc đọc ghi trên toàn cầu
- Nếu bạn có quyền đối với BẤT KỲ phần nào của kho lưu trữ, bạn có thể làm điều đó tương tự với MỌI phần của kho lưu trữ, vì vậy bạn không thể làm điều gì đó như tạo một nhánh theo dõi nhóm nhỏ trên máy chủ trung tâm mà những người khác không thể gây rối với.
- Khó có thể khuyến khích các quy trình làm việc khác với quy trình "bất cứ điều gì xảy ra" hoặc "nhà độc tài nhân từ", chứ đừng nói đến việc thực thi
- Không rõ liệu tốt hơn nên sử dụng một kho lưu trữ lớn duy nhất (cho phép mọi người xáo trộn mọi thứ) hay nhiều kho lưu trữ cho mỗi thành phần (khiến bạn đau đầu khi cố gắng đồng bộ hóa các phiên bản).
- Với nhiều kho lưu trữ, cũng không rõ ràng làm thế nào để sao chép tất cả các nguồn mà người khác có bằng cách lấy từ kho lưu trữ trung tâm hoặc làm điều gì đó như tải mọi thứ vào lúc 4:30 chiều hôm qua.
Tuy nhiên, tôi nghe nói rằng mọi người đang sử dụng thành công git trong các tổ chức phát triển lớn.
Nếu bạn đang ở trong tình huống đó - hoặc nếu bạn thường có các công cụ, mẹo và thủ thuật để giúp sử dụng git dễ dàng và hiệu quả hơn trong một tổ chức lớn, nơi một số người không phải là người hâm mộ dòng lệnh - tôi rất muốn nghe những gì bạn có để gợi ý.
BTW, tôi đã hỏi một phiên bản của câu hỏi này trên LinkedIn và không có câu trả lời thực sự nhưng rất nhiều câu "trời ơi, tôi cũng muốn biết điều đó!"
CẬP NHẬT: Hãy để tôi làm rõ ...
Nơi tôi làm việc, chúng tôi không thể sử dụng BẤT KỲ THỨ GÌ ngoài git . Nó không phải là một lựa chọn. Chúng tôi bị mắc kẹt với nó. Chúng tôi không thể sử dụng swurial, svn, bitkeeper, Visual Source Safe, ClearCase, PVCS, SCCS, RCS, bazaar, Darcs, monotone, Perforce, Fossil, AccuRev, CVS, hoặc thậm chí là Máy chiếu tốt của Apple mà tôi đã sử dụng vào năm 1987. Vì vậy, trong khi bạn được hoan nghênh thảo luận về các lựa chọn khác, bạn sẽ không nhận được tiền thưởng nếu bạn không thảo luận về git.
Ngoài ra, tôi đang tìm kiếm các mẹo thực tế về cách sử dụng git trong doanh nghiệp . Tôi đặt một danh sách toàn bộ các vấn đề mà chúng tôi đang gặp phải ở đầu câu hỏi này. Một lần nữa, mọi người được hoan nghênh thảo luận về lý thuyết, nhưng nếu bạn muốn kiếm được tiền thưởng, hãy cho tôi giải pháp.
a process
... (Tôi ghét từ đó)