2014-09-21 15 views
32

Tôi có thể chưa có thuật ngữ. Tôi đã tạo tệp để được thêm vào một dự án mở trên git. Tôi chia tay dự án. Tôi đã thực hiện một số thay đổi và cam kết cuối cùng của tôi là tệp tôi muốn yêu cầu cho dự án chứ không phải những thay đổi nhỏ mà tôi đã thực hiện trước khi thực hiện. Khi tôi truy cập trang web github và yêu cầu kéo, tôi nhận được tất cả các cam kết trước khi tôi muốn nó là tệp cuối cùng của một tệp và tôi không muốn gửi tất cả các cam kết khác vì tôi không nghĩ rằng nó cần thiết cho dự án. Chỉ những thay đổi của riêng tôi. Tôi làm gì? Tôi có nên tạo một bản sao khác hoặc đính kèm tệp đơn lẻ và gửi đi, nếu có thể.Git - Cherry chọn một cam kết duy nhất cho yêu cầu kéo

+0

Chỉ cần thông báo, điều này không hoạt động như mô tả của SLaks. Mặc dù tôi đã chọn anh đào, cam kết hợp nhất cuối cùng để làm chủ, PR vẫn muốn tổng hợp 31 cam kết cuối cùng tôi đã thực hiện để xuất xứ: chủ nhân kể từ khi PR lớn cuối cùng tôi đệ trình. Bây giờ tôi đã thử khoảng một chục cách để anh đào chọn một cam kết duy nhất để tạo ra một PR, tất cả đều không thành công. 100% thất bại. Tôi đã thử đặt lại nhánh cho cam kết cuối cùng, tạo ra một nhánh tính năng chỉ với cam kết cuối cùng, tạo ra một diff/patch và PR'ing, không may mắn. Trong mọi trường hợp, nó muốn tạo PR với 31 cam kết cuối cùng mà tôi đã thực hiện cho – user3565738

Trả lời

59

Bạn cần phải tạo chi nhánh mới từ HEAD từ xa, chọn cherry cam kết nhánh đó, đẩy nhánh tới repo của bạn trên GitHub, sau đó tạo yêu cầu kéo.

git checkout -b mybranch 
git fetch upstream 
git reset --hard upstream/master 
git cherry-pick <commit-hash> 
git push origin mybranch:mybranch 
+0

Hoàn thành công việc cảm ơn bạn! Bạn đề nghị thực hiện yêu cầu kéo trong tương lai như thế nào? Tôi có nên giữ mọi thứ cục bộ và chỉ cam kết với github ngã ba của tôi và tôi muốn lấy yêu cầu? – user3590149

+0

@ user3590149: Có và tạo một nhánh riêng cho mỗi yêu cầu kéo. Nếu muốn, bạn có thể đẩy các thay đổi không kéo yêu cầu đến một nhánh khác. – SLaks

+1

Dường như là những gì tôi đang tìm kiếm. Tôi không biết tất cả những gì tôi đang làm, nhưng ... ở đây có sự xáo trộn hàng hóa! :) –

Các vấn đề liên quan