Cái nào tốt hơn cho các sửa lỗi nhỏ và các tính năng nhỏ - đặt tên chi nhánh theo số vé hoặc đặt tên theo mô tả tính năng?


10

Tôi đang ở giữa một sự bất đồng (dĩ nhiên là thân mật) với sự dẫn dắt của tôi về việc đặt tên chi nhánh phù hợp. Điều này áp dụng cho các nhánh tính năng sửa lỗi và nhỏ, không phải các nhánh tính năng chạy dài. Đối với các nhánh tính năng hoạt động lâu dài, chúng tôi đồng ý rằng các tên dễ đọc của con người sẽ tốt hơn. Dưới đây là hai quan điểm:

Của tôi

Đặt tên chi nhánh theo đội của họ và số vé là tốt hơn. Nó giúp dễ dàng tìm thấy chúng trong hệ thống bán vé của chúng tôi và nhập ngắn hơn. Nó cũng giúp tìm kiếm các chi nhánh có liên quan trong GIT dễ dàng hơn khi tìm kiếm thông tin lịch sử về một vé.

Thí dụ:

team-name/12345
team-name/53719

Của anh ấy:

Đặt tên chi nhánh theo tính năng / chức năng của họ. Nó làm cho nó dễ dàng tự động hoàn thành, và dễ nhớ hơn các số riêng lẻ.

Thí dụ:

team-name/fix-that-sql-bug
team-name/expand-http-parser

Một thỏa hiệp tôi đưa ra là:

team-name/12345-fix-that-sql-bug

Nhưng anh ấy không thích điều này, vì nó gây rối với tự động hoàn thành GIT.

Nếu điều này chủ yếu dựa trên quan điểm, xin vui lòng cho tôi hướng dẫn về cách điều này có thể phù hợp hơn với SO - nhưng tôi nghĩ rằng những lý do tôi đưa ra có thể được sửa đổi / thêm vào để đưa ra câu trả lời theo kinh nghiệm.


theo kinh nghiệm của tôi, việc đặt tên tốt nhất cho các nhánh để sửa lỗi nhỏ và các tính năng nhỏ thường là thân cây (hợp nhất sớm, hợp nhất thường xuyên => không cần cách ly các thay đổi mà không có sự biện minh đầy đủ). Tất nhiên, điều này không áp dụng cho các bản sửa lỗi quan trọng đối với mã phiên bản cũ đang chạy trong sản xuất, với sự cô lập là hợp lý quá đủ (và đến lượt nó, việc đặt tên các nhánh theo vé là điều tự nhiên: sau tất cả, bạn không làm bất cứ điều gì đặc biệt có ý nghĩa như một tính năng, bạn chỉ cần sửa một lỗi sản xuất quan trọng cụ thể có vé cụ thể tại đó)
gnat

Câu trả lời:


5

Trong trường hợp này, có vẻ như bạn có thể thỏa hiệp về một quy ước đặt tên có cả số và mô tả:

Thí dụ:

tên nhóm / (12345) -fix-that-sql-bug

tên nhóm / (53719) -Exand-http-Parser

Thực sự không có câu trả lời chính xác ở đây, nó chủ quan tùy thuộc vào quan điểm của bạn.

Nhưng nếu cả hai thỏa hiệp, bạn sẽ có được điều tốt nhất của cả hai thế giới. Tôi cố gắng và ghi nhớ điều này khi chúng tôi có những bất đồng tương tự về đội của mình.

Biên tập:

Để giải quyết vấn đề tự động hoàn tất, bạn có thể đặt id được đánh số trong ngoặc, theo cách này khi bạn nhập vào một nhánh bạn luôn gõ (để xem các nhánh. Từ danh sách này, bạn sẽ có thể thấy id được đánh số và mô tả. Đơn giản chỉ cần nhập một vài số, tab và nó sẽ


Tôi đồng ý, và tôi đã thêm điều này - tôi nghĩ thật ngớ ngẩn khi không đồng ý với sự thỏa hiệp này.
Codeman

Có phải tự động hoàn thành chỉ hoạt động từ khi bắt đầu tên chi nhánh? bạn có thể đặt ID ở cuối không? Tôi không sử dụng chức năng tự động hoàn thành nên tôi không quen với nó.
dmck

vâng, nó hoạt động từ đầu đến cuối - nếu bạn muốn có được, team-name/12345-my-ticket-fixbạn phải gõ team-name/123TAB, về cơ bản.
Codeman

@ Pheonixblade9 Xem bản chỉnh sửa của tôi để biết giải pháp khả thi, đặt một (trước khi ID sẽ ngăn bạn khỏi phải biết ID khi nhập tên chi nhánh
dmck

1

Nó thực sự không quan trọng miễn là có một hệ thống nhất quán mà mọi người đều đồng ý và hiểu.

Tôi sẽ nói mặc dù việc đi theo số vé sẽ giúp mọi thứ dễ nhớ hơn cho chi nhánh nào hoạt động. Khi họ trực tiếp gắn vào số vấn đề chứ không phải là một mô tả. Việc chỉ mô tả dường như làm cho việc nhớ lại vấn đề cụ thể được coi là khó khăn hơn và có thể trở nên dài dòng cố gắng để tránh mơ hồ.

team-name/bug-that-has-specific-circumstances-to-occur-and-takes-alot-to-describe


0

Đặt tên một cái gì đó chỉ để tận dụng tự động hoàn thành là ngu ngốc.

Tôi đồng ý rằng một liên kết đến trình theo dõi lỗi rất quan trọng (quan trọng hơn một cái tên hay vì nó xác định chính xác vấn đề đang được giải quyết bởi nhánh mà một vài từ không có) nhưng đồng thời, nó không thể sử dụng được. để biết sự khác biệt giữa lỗi # 7312 và # 7213. Ngoài ra, việc không mong đợi mọi người có được các con số hoàn toàn chính xác mỗi lần - một ngày nào đó sẽ có người sai phạm vì họ đã đọc sai / nhập sai 7312 cho 7213. (ai đó trong nhóm của tôi đã làm điều đó ngày hôm nay!)

Vì vậy, làm cả hai - đánh số nhánh và thêm một mô tả văn bản rất ngắn chỉ để hoạt động như một kiểm tra. Tôi sẽ đặt số đầu tiên - tự động hoàn thành bị nguyền rủa - vì dù sao bạn vẫn phải biết văn bản của chi nhánh (ví dụ: "bug-fix-for-server" hoặc "fix-bug-for-server" - bạn vẫn cần biết nếu nó bắt đầu bằng f hoặc b!)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.