Đối với tất cả những người nói rằng "chỉ cam kết khi bạn có một thông điệp hữu ích, được suy nghĩ kỹ để viết và khi tính năng của bạn hoàn thành 100% và bạn có các bài kiểm tra đơn vị cho nó", tôi nói: Bạn vẫn còn trong suy nghĩ của SVN .
Nếu bạn đang sử dụng git , đây là thứ tôi sẽ gọi là quy trình làm việc thông minh:
- Cam kết thường xuyên như bạn muốn . Viết bất kỳ tin nhắn nhanh cũ ở đó. Không ai sẽ nhìn thấy nó dù sao.
- Sau khi nói, 10 lần cam kết, bạn đã hoàn thành tính năng mà bạn đang làm việc. Bây giờ viết bài kiểm tra và cam kết những bài kiểm tra. Hoặc bất cứ điều gì bạn muốn. Nếu bạn thích TDD, hãy viết bài kiểm tra trước, tôi không quan tâm, git cũng không.
git rebase -i
từ cam kết 'lộn xộn' đầu tiên mà bạn đã thêm và sửa chữa lịch sử địa phương của mình bằng cách xóa, chỉnh sửa, bỏ qua và làm sạch lịch sử gần đây của bạn thành các cam kết sạch sẽ, hợp lý với các thông điệp tốt đẹp .
- Sau khi dọn dẹp, hãy nhờ ai đó kéo từ bạn.
- Rửa sạch và lặp lại.
Lưu ý rằng bước 3 là khi bạn kết thúc với những cam kết tốt đẹp đó sau đó và khi sử dụng SVN, bạn phải tránh việc cam kết cho đến khi bạn thực hiện hai bước đầu tiên, đó là điều mà hầu hết các câu trả lời khác đang đề xuất. IOW, bạn không muốn gây ra một nửa mã chưa được viết, chưa được kiểm tra cho người khác, vì vậy bạn không cam kết trong một tuần, cho đến khi tính năng của bạn được thực hiện. Bạn không sử dụng kiểm soát phiên bản cho toàn bộ tiềm năng của nó.
Cũng lưu ý rằng bất cứ nơi nào giữa các bước 1 và 3, bạn có thể git push
thay đổi gương nhân bản riêng của mình trên máy chủ để nhận bản sao lưu miễn phí nếu ổ cứng máy tính xách tay của bạn chết.