Công ty tôi làm việc đã cho tôi dự án chuyển dự án java của họ từ CVS sang Git. Vì nhiều lý do, họ không muốn sử dụng một công cụ khác ngoài Eclipse. Vì vậy, chúng tôi đang mắc kẹt với EGit.EGit: Làm cách nào để ngăn việc hợp nhất nhanh về phía trước?
Tôi đã tìm kiếm rất nhiều để tìm quy trình làm việc phù hợp với dự án của chúng tôi. Điều này có vẻ khá liên quan và được nhiều người sử dụng: http://nvie.com/posts/a-successful-git-branching-model/
Vấn đề là khi chúng tôi cố gắng xem nó có thể hoạt động như thế nào với EGit bằng cách sử dụng cam kết, chi nhánh & kết hợp, rất nhiều quá trình hợp nhất nhanh xảy ra. Vấn đề với việc hợp nhất nhanh về phía trước là nó làm cho bạn mất điểm bắt đầu của chi nhánh.
Khách hàng chúng tôi làm việc vì muốn có thể chọn các tính năng sẽ có trong bản phát hành tiếp theo và sẽ không có tính năng nào. Đó là một trong những lý do chính chúng tôi muốn chuyển từ CVS sang Git, vì dường như không có cách nào dễ dàng trong CVS để tìm tệp nào đã được sửa đổi do tính năng số 1 và tệp nào đã được sửa đổi cho đối tượng địa lý số 2. Trong git, chúng tôi có thể tạo các chi nhánh cho đối tượng địa lý # 1 & # 2 và tìm tệp nào đã được sửa đổi cho các tính năng này. Tuy nhiên, do tiến nhanh về phía trước, nó giống như quay trở lại CVS, chúng tôi không thể biết được tính năng số 1 và đó là tính năng số 2.
Vì vậy, có cách nào để ngăn chặn hợp nhất nhanh chóng không? Chúng tôi đã cố gắng để đưa các cấu hình này vào Eclipse:
[core]
mergeoptions = --no-ff
[merge]
ff = false
Nhưng nó không ngăn EGIT thực hiện hợp nhất tiến nhanh. Nếu tính năng này không được thực hiện với JGit/EGit, sẽ có cách nào khác để có một quy trình làm việc bằng cách sử dụng Egit theo sau những gì khách hàng muốn (khả năng chọn các tính năng để phát hành). Sử dụng dòng lệnh có lẽ sẽ giải quyết được vấn đề, nhưng nếu có thể giữ nó trong Eclipse, điều đó sẽ tốt đẹp.
Cảm ơn bạn