Tôi là một người thường xuyên đi lại và tôi thấy nó phù hợp với tôi, nhưng phải thừa nhận rằng các thông điệp cam kết của tôi hầu như luôn luôn như thế,
Age: 9 mins [*] Working on implementing and testing PaintSystem.
Age: 17 mins [*] Working on implementing and testing PaintSystem.
Age: 37 mins [*] Working on implementing and testing PaintSystem.
Age: 52 mins [*] Working on implementing and testing PaintSystem.
Vì vậy, tôi không thể nói chính xác rằng việc thực hiện các cam kết thường xuyên và theo thói quen như vậy đối với chi nhánh của tôi (đồng bóng) đã khuyến khích chính xác các nhật ký cam kết chi tiết nhất. Đôi khi, tôi thậm chí sẽ thực hiện mã nửa chừng nếu vợ tôi yêu cầu tôi ra ngoài ăn tối vào thời điểm đó tôi sẽ nhanh chóng sao chép và sử dụng tin nhắn cam kết "Làm việc trên [...]" trước đó.
Các mẫu nhật ký cam kết của tôi thường như, "Working on [...] Working on [...] Working [...] Completed [...] Started working on [...] Working on [...] Completed [...] Started working on [...]"
Mặc dù mặt trái, nó đã cứu mông tôi. Đôi khi, tôi gặp phải trường hợp khó khăn mà tôi không lường trước và kiểm tra lại, tại thời điểm đó, các cam kết thường xuyên giúp tôi tìm ra chính xác nơi tôi đã giới thiệu lỗi.
Vì vậy, tôi không biết về những thói quen tốt nhất và tôi chắc chắn không phải là người biết lắng nghe những thói quen ghi nhật ký cam kết lý tưởng, nhưng tôi chắc chắn có thể nói rằng việc cam kết thường xuyên hơn chắc chắn có thể giúp ích khi bạn cần thực hiện hồi quy.
Mỗi thay đổi một dòng có được một cam kết không?
Tôi đã cam kết thay đổi một dòng trước đây nhưng thường là những thay đổi khó khăn và có lẽ tôi đã thiếu thời gian. Cam kết của tôi không phải lúc nào cũng giống với các đơn vị hoàn thành và hoàn thành công việc hoặc thay đổi. Như đã nói, đôi khi chúng chỉ là kết quả của việc vợ tôi yêu cầu tôi ra ngoài ăn tối một cách bất ngờ.
TBH rất nhiều cam kết của tôi theo "Working on [...]"
mô hình nhật ký đó không mô hình hóa các đơn vị thay đổi mạch lạc (tại sao tôi thường không thể đưa ra một thông điệp tốt hơn "Working on [...]"
) mà chỉ là kết quả của việc tôi hít thở, như tự pha một tách cà phê. Các "Completed [...]"
thông điệp cho biết kết thúc của đơn vị công việc, và ở đó tôi thường viết một tin nhắn nhiều chi tiết hơn cùng với người đầu tiên "Started working on [...]"
thông điệp loại khi tôi chỉ bắt đầu làm việc trên một cái gì đó. Nếu bạn trung bình cam kết cứ sau 15 phút một lần, thì những tin nhắn "Làm việc trên [...]" sẽ giống như những người ở giữa cho những gì ai đó có thể cam kết trong một cam kết cồng kềnh với một thông điệp chi tiết hơn.
Tôi có nên cam kết trước bất kỳ thử nghiệm nào không (ví dụ: ít nhất là đối với lỗi cú pháp / biên dịch và sau đó phải hoàn toàn hoàn thành nó, vì ý tưởng không hoạt động hoặc thông báo là dối trá)?
Tôi chỉ tiếp tục và cam kết trước khi chạy thử nghiệm đôi khi (một lần nữa nếu tôi có một sự kiện bất ngờ). Ngoài ra, mặc dù tôi là một mình, tôi vẫn đẩy tới một máy chủ (chỉ một máy chủ đang chạy ở đây trên mạng LAN) có CI. Điều đó có vẻ như quá mức cần thiết nhưng dunno, tôi đã quá quen với việc dựa vào đó tại nơi làm việc trước đây của tôi. Thêm vào đó, tôi không muốn bị làm phiền khi phải chạy tất cả các bài kiểm tra đơn vị và tích hợp của mình mỗi lần. Tôi thích có tất cả gắn liền với chỉ đẩy. Nếu một bài kiểm tra thất bại, nó đủ dễ để làm việc theo hướng tiến lên trong đó tôi thực hiện hồi quy, sửa lỗi trong vòng quay mới nhất và tiếp tục. Điều đó nói rằng, tôi ít nhất xây dựng mã chống lại một bản dựng gỡ lỗi trước khi tôi cam kết.
Tôi có nên đảm bảo rằng tôi cam kết mỗi sáng / chiều trước khi tôi ngừng làm việc cho bữa tối trong khi nó vẫn còn tươi?
Tôi muốn cam kết trước khi ra ngoài và nghỉ ngơi giữa lập trình. Tôi đã không thực sự suy nghĩ nhiều về lý do chính xác cho đến khi tôi gặp phải câu hỏi này. Tôi cho rằng điều đó là để ngăn bản thân tôi chọn nơi tôi rời đi mà không có nhật ký cam kết ở nơi tôi rời đi mà tôi có thể khác biệt. Hmm, tôi cần phải quay lại với bạn về điều đó vì có thể không cần thiết về mặt lý thuyết với mức độ thường xuyên tôi cam kết. Tôi vẫn cảm thấy thoải mái hơn khi cam kết và thúc đẩy trước khi rời khỏi máy tính vì bất kỳ lý do gì. Một số trong đó có thể là nỗi sợ tâm lý trước đây, nói, Máy tính bốc cháy sau khi tôi rời đi và có người quản lý dự án trở lại vào những ngày chúng tôi sử dụng SVN với các nhà phát triển đôi khi không làm gì cả và không ngừng nhắc nhở chúng tôi kiểm tra mã thường xuyên nhất có thể trong khi nhắc nhở chúng tôi rằng mã của chúng tôi là tài sản của công ty. Ngoài ra, nó hiệu quả hơn một chút, đặc biệt là với việc đẩy để quy trình CI của tôi có thể bắt đầu chạy tất cả các thử nghiệm trong khi tôi đi để tôi có thể quay lại và xem kết quả.
Ồ và đôi khi tôi cảm thấy hơi say sau khi rời đi và thường cố gắng viết mã phức tạp trong khi say (mặc dù không phải lúc nào tôi cũng nghĩ ra một hệ thống menu ngữ cảnh thực sự tốt sau khi có một khoảnh khắc eureka trong khi say, nhưng tôi chỉ có 6 loại bia và mã đó không phức tạp lắm). Nếu tôi cố gắng làm điều đó, ít nhất tôi đã cam kết mã được viết một cách tỉnh táo trước khi tôi rời đi để quay trở lại thay vì trộn mã say với mã tỉnh táo, tại đó nhật ký cam kết của tôi có thể đọc như thế, "Reverting back to code written before Jagermeister shots."
tôi không làm điều này rất thường xuyên trừ khi tôi có một cảm hứng mã say rượu, nhưng trong những trường hợp hiếm hoi đó, nó thực sự giúp tôi thực hiện một điều gì đó trước khi tôi ra ngoài và say rượu.