Yêu cầu kéo có phải là đánh giá mã không?

Yêu cầu kéo [PR] là một quá trình khi mã mới được xem xét trước khi hợp nhất để phát triển nhánh hoặc nhánh chính trong kho lưu trữ Git như GitHub

Tác giả tạo PR, trong khi người đánh giá đánh giá PR. PR có thể tốn thời gian, gây phiền nhiễu hoặc thậm chí gây căng thẳng nếu thực hiện sai

Các vấn đề PR phổ biến là

  • PR dài quá. PR bị bỏ ngỏ. Không ai đánh giá PR
  • Người đánh giá tiếp tục soi mói những lỗi nhỏ. Tác giả cứ lặp đi lặp lại những sai lầm tương tự
  • Cuộc trò chuyện không phản hồi. Thảo luận trở nên ướt át. Không có gì được giải quyết

Để nuôi dưỡng một quy trình PR lành mạnh, cả tác giả và người đánh giá nên có sự hiểu biết lẫn nhau về những điều nên làm và không nên làm trong quá trình đánh giá PR

Hoàn toàn dựa trên kinh nghiệm cá nhân, 16 phép xã giao sau đây có thể được sử dụng làm hướng dẫn đánh giá PR trong nhóm hoặc tổ chức của bạn

1. Nhanh nhưng không tức giận

Chìa khóa đầu tiên cho một quy trình PR lành mạnh là khả năng đáp ứng. Theo thuật ngữ của giáo dân, nhanh chóng. Nhanh như thế nào?

Bạn mất bao lâu từ khi nhận được yêu cầu xem xét đến khi mở yêu cầu kéo? . Nó có thể cản trở anh ấy làm việc với câu chuyện tiếp theo dựa trên PR

Trả lời bình luận cũng vậy. Với tư cách là người đánh giá hoặc là tác giả, bạn nên tiếp tục cuộc trò chuyện một cách tích cực cho đến khi vấn đề được giải quyết. Tuy nhiên, đừng tức giận nếu bên kia không phản hồi. Họ có thể đang làm việc gì đó khẩn cấp hơn

Chuyển ngữ cảnh đắt tiền. Chuyển đổi ngữ cảnh sau một thời gian dài sẽ tốn kém hơn vì bạn phải nhớ lại những gì bạn đã làm. Các nhà phát triển có trí nhớ cá vàng khi nhớ những gì họ đã viết

2. Bé nhỏ

Chìa khóa để PR nhanh là nhỏ. Một PR với một dòng thay đổi là ngọt ngào. Chẳng ai muốn dành nửa ngày làm việc để xem xét 1.867 dòng thay đổi. Một số công ty như Google có văn hóa từ chối PR nếu nó có hơn 500 dòng

Nếu bạn có thể chia các thay đổi của mình thành các phần nhỏ hơn không liên quan, điều đó sẽ giúp ích cho chính bạn và những người đánh giá

3. Chính xác

PR nên tập trung vào một câu chuyện hoặc một lỗi. Nó chỉ nên làm những gì nó có nghĩa là để làm. Bạn không nên sửa một vài lỗi trong một lần PR. Một PR cho một lỗi và bạn sẽ ngạc nhiên về tốc độ phê duyệt của những PR đó

Nếu đó không phải là yêu cầu của câu chuyện, bạn không nên đổi tên biến, thay đổi kiểu CSS hoặc sửa lỗi thụt lề một cách không cần thiết

Bạn rất muốn cấu trúc lại một chức năng bởi vì nó được viết quá tệ, nhưng nó không phải là trọng tâm trong PR của bạn, vì vậy hãy để nó cho một PR khác. Có những thay đổi không liên quan đó làm tăng quy mô của PR, cũng như tăng nỗ lực xem xét một cách không cần thiết

4. Xem lại trước khi tạo

Là một tác giả, bạn nên xem lại mã của mình lần cuối trước khi tạo PR. Bạn nên uống cà phê hoặc đi vệ sinh trước đó vì nó sẽ giúp bạn sảng khoái hơn khi nhìn vào mã của mình

Thật ngạc nhiên, bạn có thể thấy mình vô tình kiểm tra một số mã đang thực hiện hoặc mã thử nghiệm. Cũng có thể có lỗi đánh máy, thụt lề ngoài ý muốn hoặc ngắt dòng bổ sung

Không ai vui vẻ cho hay nhận bình luận về những vấn đề nhỏ nhặt đó vì nó làm mất đi sự chú ý của cả người bình duyệt và tác giả.

Cài đặt plugin để ngăn chặn những sai lầm này. Sử dụng ESLint để thực thi kiểu dáng. Sử dụng Prettier để định dạng lại mã. Sử dụng Husky để chạy kiểm tra kẻ nói dối trước khi cam kết

5. Trả lời và phản ứng

Luôn trả lời mọi bình luận, bất kể đó có phải là câu hỏi hay không. Trả lời với một cái gì đó như. “Sẽ làm được”, “Hoàn thành” hoặc “Bắt tốt”. Biểu tượng cảm xúc đơn giản như ngón tay cái giơ lên ​​👍 hoặc mặt cười 😀 là một cử chỉ xác nhận đơn giản

Nếu bạn không đồng ý, hãy giải thích tại sao. Tốt hơn là để lại bình luận mà không được giám sát sau khi GitHub tự động giải quyết nó. [GitHub giải quyết tất cả nhận xét trong tệp sau khi thay đổi mới trong tệp đó được đẩy. ]

Người đánh giá sẽ không biết tác giả đồng ý hay không đồng ý với bình luận, vì vậy họ phải tự mình xem sự thay đổi để đảm bảo rằng tác giả không vô tình quên giải quyết vấn đề đó.

6. Không phải lúc nào LGTM

Có vẻ tốt với tôi thường có nghĩa là PR có vẻ ổn… Đôi khi, nó có nghĩa là “quá dài để đọc, dù sao cũng chấp thuận”

LGTM chỉ có ý nghĩa khi có một vài dòng thay đổi. LGTM chỉ là cái cớ để đưa ra nhận xét đúng đắn bất kể PR tốt hay cần phải làm nhiều hơn

7. Đừng đồng ý với mọi thứ

Đánh giá PR là một cuộc thảo luận hơn là một cuộc trò chuyện một chiều. Người đánh giá có thể là một nhà phát triển cấp cao có nhiều năm kinh nghiệm, nhưng họ có thể không có nhiều ngữ cảnh như bạn trong PR của mình

Khi người đánh giá đưa ra đề xuất thay đổi bất cứ điều gì, hãy suy nghĩ kỹ trước khi bạn bắt đầu thay đổi vì thay đổi có thể không cần thiết và có thể phá vỡ logic ban đầu của bạn

Đừng ngại phản đối bất kỳ đề xuất nào, nhưng hãy đưa ra lý do tại sao bạn nghĩ rằng giải pháp của mình là đủ tốt

8. Lịch sự đi

Đây là lẽ thường trong tất cả các loại giao tiếp. Không có hại trong việc lịch sự. Sử dụng. “Bạn có phiền đổi nó thành…”, “Không phải tốt hơn là…”, “Tôi nghĩ chúng ta nên…”, v.v. Nói. “Xin lỗi” nếu bạn hiểu sai điều gì đó hoặc đưa ra gợi ý sai

9. Đừng la hét

KHÔNG SỬ DỤNG TRƯỜNG HỢP GỌI. Không ai muốn bị hét vào mặt, bằng lời nói hoặc văn bản

Không sử dụng dấu chấm than trừ khi đó là một lời khen. Cảm xúc có thể được đọc qua văn bản. Nó không giúp ích gì cho bất cứ ai ngay cả khi bạn la hét hay thể hiện sự tức giận của mình

10. không thô tục

Điều này nên tránh mọi lúc. Mặc dù sự thô tục có thể được coi như một trò đùa, nhưng không phải ai cũng cảm thấy thoải mái với điều đó. Bài PR có thể bị người khác xem, vì vậy hãy chuyên nghiệp

Ngăn ngừa

  • WTF
  • Tôi không đồng ý với điều này
  • Đây là f ** vua tuyệt vời

11. Đề xuất trên thực thi

Không có vẻ như bạn đang yêu cầu tác giả thay đổi thứ gì đó mà bạn thích. Không thực thi quy tắc bất thành văn trừ khi đó là nguyên tắc được nhóm hoặc tổ chức của bạn thực thi rõ ràng

Thực hiện theo các quy tắc lịch sự. Chọn những từ thích hợp để diễn đạt một gợi ý hơn là thực thi

Thay vì nói. “Trích xuất ba dòng này thành một chức năng khác,” bạn nên nói. “Bạn nên trích xuất những dòng này thành một chức năng khác. ”

12. Đưa ra một lý do và một ví dụ

Nếu bạn không đồng ý với điều gì đó, hãy đưa ra lý do và ví dụ về giải pháp tốt hơn. Hãy cho tác giả biết chính xác những gì bạn nghĩ là tốt hơn

Nếu tác giả chuyển sang thứ mà bạn vẫn cho là chưa đủ hay, thì chỉ phí thêm một vòng công sức mà thôi. đây là một ví dụ tốt

+ if [results.length > 1] {
+ return true;
+ } else {
+ return false;
+ }
For better readability, wouldn't it better to shorten this logic to:```
return results.length > 1
```

Ví dụ về nhận xét không mang tính xây dựng

  • Tôi nghĩ rằng nên có một giải pháp tốt hơn. [Như thế nào?]
  • Tôi thấy khó đọc dòng mã này. [Vì vậy, bạn nghĩ cái nào tốt hơn?]

13. Thảo luận ngoại tuyến

Nếu bạn và đồng nghiệp của bạn đang làm việc tại cùng một văn phòng, hãy giải quyết các vấn đề phức tạp ngoại tuyến. Thay vì tạo ra các chủ đề trò chuyện trong PR, hãy đi đến bàn của người đó và giải thích trực tiếp với họ

Không có ích gì khi lãng phí thời gian đăng đi đăng lại các bình luận. Để lại kết quả của cuộc thảo luận ở phần bình luận cuối cùng để những người khác biết nó đã được giải quyết như thế nào

14. Hãy vui vẻ

Không ai nghĩ PR là vui, vì vậy bạn nên làm cho nó vui. PR là một quá trình mệt mỏi vì bạn cần thu thập nhiều ngữ cảnh khi đọc mã, đặc biệt khi mã được viết bởi một nhà phát triển thiếu kinh nghiệm. Đôi khi, sự mệt mỏi của bạn khiến bạn vô thức viết những bình luận gay gắt

Sử dụng biểu tượng cảm xúc hoặc GIF nếu không mất nhiều thời gian tìm kiếm chúng. Ví dụ: sử dụng dấu cách 👾 để biểu thị khoảng trống không cần thiết

15. Đáp lễ

Nếu người đánh giá đánh giá PR của bạn kịp thời, hãy trả ơn bằng cách đánh giá PR tiếp theo của họ theo cách tương tự. Nếu mọi người đều nghĩ theo cách này, chẳng phải thế giới sẽ là một nơi tốt đẹp hơn sao?

16. Nói lời cám ơn

Nếu ai đó đã xem xét và phê duyệt, hãy nói lời cảm ơn trong nhận xét. Có lẽ không ai làm điều đó, nhưng bạn nên

PR là một cơ hội học tập. Nói lời cảm ơn nếu bạn học được điều gì đó. Nếu người đánh giá đã dành rất nhiều thời gian cho PR của bạn, hãy nói lời cảm ơn vì thời gian và công sức của họ

Là tác giả, bạn cũng nên dành lời khen cho tác giả khi thấy những thay đổi thật rực rỡ. Tác giả đã tái cấu trúc một đoạn mã lộn xộn thành một vài dòng xứng đáng được đánh giá cao

Một lần nữa, nó luôn tốt hơn LGTM

Những từ cuối

Vào cuối ngày, đó là tất cả về sự đồng cảm. PR là một quá trình đòi hỏi sự tương tác của con người. Hãy đặt mình vào vị trí của người khác để cảm nhận được cách người ta mong muốn được đối xử

Yêu cầu kéo có giống như đánh giá mã không?

Mở Yêu cầu kéo - Đây là yêu cầu chính thức để cam kết của bạn được nhà phát triển khác xem xét. Đánh giá mã – Nhà phát triển đồng ý thực hiện đánh giá mã đối với cam kết của bạn, việc này có thể được thực hiện chính thức hoặc không chính thức. Nếu được phê duyệt, cam kết của bạn sẽ tiến thêm một bước [lên #5 hoặc #6 tùy thuộc vào quy trình của nhóm bạn]

Yêu cầu kéo trong mã hóa là gì?

Yêu cầu kéo cho phép bạn nói với người khác về những thay đổi mà bạn đã đẩy tới một nhánh trong kho lưu trữ trên GitHub . Sau khi yêu cầu kéo được mở, bạn có thể thảo luận và xem xét các thay đổi tiềm năng với cộng tác viên và thêm các cam kết tiếp theo trước khi các thay đổi của bạn được hợp nhất vào nhánh cơ sở.

Đánh giá yêu cầu kéo là gì?

Đánh giá cho phép cộng tác viên nhận xét về những thay đổi được đề xuất trong yêu cầu kéo, phê duyệt thay đổi hoặc yêu cầu thay đổi thêm trước khi yêu cầu kéo được hợp nhất . Quản trị viên kho lưu trữ có thể yêu cầu tất cả các yêu cầu kéo được phê duyệt trước khi được hợp nhất.

PR là một đánh giá ngang hàng hoặc yêu cầu kéo?

Nhà phát triển phần mềm sử dụng yêu cầu kéo , hay còn gọi là PR, để bắt đầu quá trình tích hợp các thay đổi mã mới vào kho lưu trữ chính của dự án. Các yêu cầu kéo được gửi qua các hệ thống git, như GitLab, GitHub và BitBucket, để thông báo cho những người còn lại trong nhóm của bạn rằng một nhánh hoặc nhánh đã sẵn sàng để được xem xét.

Chủ Đề