Cách yêu cầu đóng góp trên GitHub


16

Một dự án tôi đã sử dụng để thực hiện gần đây đã chuyển từ sử dụng Subversion tự lưu trữ sang git được lưu trữ GitHub cho giải pháp kiểm soát nguồn của nó. Tên của tôi xuất hiện trong các cam kết, nhưng tôi có thể thấy không có cách nào để khẳng định chúng là "của tôi" từ tài khoản github của mình.

Tôi biết phải có một số cách để làm điều này, vì những người đóng góp khác có đóng góp của họ được liên kết với tài khoản github, ngay cả trước khi chuyển sang sử dụng github.

Bất cứ ai có thể cho tôi biết làm thế nào tôi có thể tuyên bố những thay đổi này là của tôi?


Có lẽ bạn cần thêm một .mailmaptập tin. Tôi không chắc chắn nếu GitHub tôn trọng họ, mặc dù.
asmeker

Ah, có vẻ như nó không.
asmeker

Câu trả lời:


12

GitHub sử dụng phù hợp với tài khoản cho các cam kết được thực hiện thông qua địa chỉ email liên kết với các git commit ở một bên (tức là bạn user.emailthiết lập) và những người liên quan đến tài khoản GitHub mặt khác (xem “Về cam kết địa chỉ email”“Tại sao các cam kết của tôi liên quan cho người dùng sai? nghiêm trọng trong Tài liệu người dùng GitHub). Để khớp cam kết với tài khoản của bạn, chỉ cần thêm (các) địa chỉ email được liên kết của họ vào tài khoản GitHub của bạn .


2
Github sẽ áp dụng những điều đó vào biểu đồ đóng góp hồi tố? Dường như không làm như vậy.
Matt M.

1
@MattM. Tôi không chắc về điều đó. Nếu không, đó có vẻ là một lỗi trong việc xử lý biểu đồ của GitHub đối với tôi. Báo cáo với họ có lẽ?
kopischke

Để hoàn thiện, những cài đặt email sai đó có thể do thay đổi email trước đó. Thật vậy, ai sẽ biết những thực tiễn tốt nhất như vậy khi rời khỏi công ty của bạn TRƯỚC? Github nên cho tôi biết hậu quả như vậy khi tôi xóa email cũ thông qua trang cài đặt hồ sơ của họ.
RayLuo

0

Ngoài câu trả lời của kopischke :

Vì việc đối sánh được thực hiện theo địa chỉ email - nếu email trong cam kết khớp với email của bạn, nó sẽ tự động thực hiện.

Lý tưởng nhất là việc thay thế và sửa lỗi email này đã được thực hiện trong khi chuyển đổi từ SVN sang Git. Nếu sử dụng các công cụ để chuyển đổi nó, cũng có các tùy chọn để ánh xạ từng email / người dùng sang một email khác sẽ được viết trong các cam kết Git tương ứng.

  • Tôi đã làm điều đó cho tổ chức của mình khi chuyển các dự án từ SVN sang Git, và nó hoạt động rất tốt. Mặc dù tôi phải lập bản đồ rất nhiều địa chỉ theo cách thủ công vì các tập lệnh tôi tạo để tự động hóa nó không thể bắt được tất cả các trường hợp, nhưng mọi thứ đều hoạt động và mỗi email trong bất kỳ cam kết nào đều được liên kết với người dùng trong tổ chức.

Sau khi dự án được tải lên GitHub (hoặc bất kỳ dịch vụ lưu trữ Git nào khác) hoặc chia sẻ với người khác theo bất kỳ cách nào - vấn đề khó khăn hơn nhiều:
Có thể chỉnh sửa tất cả các cam kết tại địa phương và cung cấp thông tin bạn muốn (ví dụ: email mới) , nhưng bạn sẽ buộc phải đẩy repo và mọi người sẽ phải buộc kéo nó.
Thật hợp lý nếu dự án có số lượng thành viên / cộng tác viên nhỏ và không có dĩa, sau đó bạn có thể tiếp cận từng người trong số họ và sắp xếp thay đổi đó.

Tôi thực sự không nghĩ GitHub cung cấp một công cụ như vậy, nhưng, có thể nếu bạn thêm email trong cam kết dưới dạng một email khác vào tài khoản GitHub của bạn - nó sẽ nhận ra nó - đáng để thử nếu có thể.

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.