Khi tôi làm việc trên một nhánh tính năng, tôi có xu hướng muốn dọn sạch các cam kết trong nhánh bằng cách sử dụng một rebase tương tác trước khi công việc của tôi được xem xét và tích hợp trong nhánh chính.
Trong quá trình phát triển tính năng, tôi muốn đẩy công việc trung gian của mình đến kho lưu trữ từ xa như một biện pháp dự phòng. Tức là khi ổ cứng của tôi gặp sự cố, tôi không muốn toàn bộ nhánh tính năng của mình bị mất.
Tuy nhiên, điều này dẫn đến thực tế là tôi thường phải thực hiện một git push --force
kho lưu trữ từ xa sau một cuộc nổi loạn, một hành động thường được tán thành. Hoặc như trang github được liên kết nói:
Vì việc thay đổi lịch sử cam kết của bạn có thể gây khó khăn cho những người khác khi sử dụng kho lưu trữ, nên nó được coi là thực hành xấu để phản hồi lại các cam kết khi bạn đã bị đẩy vào kho lưu trữ.
Có một chính sách (thường được chấp nhận) để giải quyết xung đột này?
Tại sao đây không phải là bản sao của "Nguyên tắc vàng nổi loạn" rất cần thiết?
Câu hỏi của tôi ở đây yêu cầu một chính sách để giải quyết xung đột giữa việc muốn sao lưu công việc của bạn trong kho lưu trữ từ xa và từ chối công việc của bạn , trong khi câu hỏi khác cố gắng phủ nhận rằng có một cuộc xung đột và hỏi tại sao một số người nghĩ rằng xung đột tồn tại, và do đó hỏi tại sao "nó là thiết yếu" không đẩy lực lượng nổi dậy?