Cách thực hiện Yêu cầu kéo đầu tiên của bạn trên GitHub

Làm thế nào để bạn tạo PR để chỉnh sửa một dự án trên GitHub?

Nhiều hướng dẫn tồn tại về chủ đề này nhưng chúng làm cho mọi thứ trở nên quá phức tạp bằng cách giả sử một người phải đóng gópcho một dự án. Vì vậy, có tất cảgitthiết lập trước đó.

Điều gì sẽ xảy ra nếu bạn chỉ cần chỉnh sửa một tệp, có thể dự án README để sửa lỗi chính tả?

Bạn không cần biết cách viết mã hoặc cách sử dụng Git để làm điều đó. Nhưng một khi bạn bắt đầu thực hiện Yêu cầu kéo, bạn có thể làm nhiều việc khác và cộng tác trong các dự án với những người khác! Và có thể điều này sẽ thúc đẩy bạn cũng đóng góp mã sau này.

Tôi cho rằng bạn đã có một (miễn phí)GitHubtài khoản. Nếu bạn không, hãy truy cậpgithub.comvà nhận một cái.

Hãy để tôi chỉ cho bạn quá trình.

Tôi đã đến trang nàyhttps://web.dev/prefers-color-scheme/và tôi tìm thấy một lỗi chính tả có thể xảy ra. Dòng này thiếu một dấu chấm ở cuối.

The article I want to edit

Tôi không phải là một nazi ngữ pháp, điều này chỉ nhằm mục đích tìm kiếm một ví dụ 😄

Tôi biết rằng trang web đó được lưu trữ trên GitHub và bài viết chính xác đó được lưu trữ ở đây:https://github.com/GoogleChrome/web.dev/tree/master/src/site/content/en/blog/prefers-color-scheme

The github folder of the article

Tôi mở tệp index.mdhttps://github.com/GoogleChrome/web.dev/blob/master/src/site/content/en/blog/prefers-color-scheme/index.mdtrực tiếp trên GitHub và tôi nhấn biểu tượng bút chì trên thanh công cụ của tệp. Di chuột qua nó cho biết “Fork this project and edit the file”.

The index.md file

Điều này sẽ hiển thị chế độ xem của người chỉnh sửa với thông tin này:

Bạn đang chỉnh sửa một tệp trong một dự án mà bạn không có quyền ghi vào. Việc gửi thay đổi đối với tệp này sẽ ghi tệp đó vào một nhánh mới trong fork flaviocopes / web.dev của bạn, vì vậy bạn có thể gửi yêu cầu kéo.

The editor view

Tôi có thể đi và thêm dấu chấm đó, sau đó ở biểu mẫu ở dưới cùng, tôi giải thích những thay đổi tôi đã thực hiện:

Propose file change

Tôi đã nhấn nút “Thay đổi tệp đề xuất” và chế độ xem so sánh xuất hiện.

Compare view

Ở đó, tôi có thể xem lại những thay đổi mà tôi đã thực hiện, để đảm bảo rằng tất cả đều ổn, và cuối cùng tôi có thể nhấp vào nút “Tạo yêu cầu kéo”. Hiện tại, các thay đổi đã được thực hiện đối vớicái nĩa của bạncủa dự án, được tạo tự động bởi GitHub khi bạn nhấp vào biểu tượng bút chì.

Open pull request

Ở phía trên cùng của chế độ xem này, bạn có thể thấy rằng tôi sắp gửi PR choGoogleChrome/web.devdự án từ biểu mẫu của tôiflaviocopes/web.dev, từ chi nhánh của tôipatch-2để họmasterchi nhánh.

Nhấn nút “Tạo Yêu cầu kéo” sẽ hiển thị một biểu mẫu khác mà tôi có thể viết mô tả chi tiết cho Yêu cầu kéo.

Yêu cầu kéo có thể chứa nhiều thay đổi khác nhau, vì vậy về lý thuyết, bạn có thể có nhiều tệp được chỉnh sửa trong cùng một bài PR, đây là lý do tại sao bạn có thể thêm bản tóm tắt.

Kho lưu trữ này có một mẫu cho văn bản PR, để giúp nhóm quản lý nó. PR của chúng tôi rất đơn giản vì vậy tôi xóa mẫu và chỉ dán nội dung từ thông điệp cam kết từ trước đó.

Chú ý gợi ý bên phải? Họ cho tôi biết dự án có tệp CONTRIBUTING.md, trong đó giải thích cách đóng góp và hướng dẫn. Tuyệt đấy.

Contributing

Có vẻ như chúng tôi cần phải ký một TƯLĐTT (Thỏa thuận cấp phép cộng tác viên) để hoàn thành PR của mình. Trước đây, tôi đã ký TƯLĐTT của Google nên tôi đã rõ bước này, nhưng bạn có thể cần phải khắc phục điều đó. Hầu hết các dự án không thực sự cần nó.

Tôi đã nhấp vào “Tạo yêu cầu kéo” và PR bây giờ đã được gửi!

Pull Request sent

Bây giờ, những người bảo trì dự án sẽ tham gia và chấp nhận nó, bạn chỉ cần đợi một email cho bạn biết rằng nó đã được hợp nhất hoặc bất kỳ nhận xét nào của người khác.

[… Một vài giờ trôi qua…]

Tôi nhận được email phản hồi, bài PR đã bị từ chối vì dấu chấm đó thực sự đã ở đúng vị trí! (Tôi không biết điều đó).

Nhưng dù sao thì đây là một điều tôi muốn thêm vào: đừng tức giận hoặc khó chịu nếu một bài PR bạn gửi không được chấp nhận. Những người bảo trì dự án làm việc với nó trong nhiều tháng hoặc nhiều năm và họ biết rõ hơn bạn về những gì tốt hơn cho nó.

Thêm vào đó, đặc biệt là với mã, lượt xem có thể rất khác và một bài PR mà bạn nghĩ là tuyệt vời có thể không được hoan nghênh.

Tốt nhất bạn nên hỏi trước khi thực hiện một PR quan trọng, để xem liệu đó có phải là thứ mà dự án thực sự cần hay không.

Nhưng đây là một chủ đề riêng của nó.


Thêm hướng dẫn git: