Hợp nhất cam kết từ các ngã ba khác nhau của cùng một repo trong GitHub


8

Làm cách nào tôi có thể áp dụng yêu cầu kéo được tạo cho kho lưu trữ cha mẹ của ngã ba của tôi vào thanh mã của ngã ba. Không chắc ai có thể hiểu câu hỏi này :), tôi sẽ cố gắng giải thích bằng một ví dụ.

Có một repo https://github.com/balupton/history.js , có một số yêu cầu kéo cho repo này chưa được sáp nhập vào codebase, ví dụ: https://github.com/balupton/history .js / kéo / 251 / cam kết . Vì một số lý do, nhà phát triển ban đầu không chấp nhận nó. Bây giờ, tôi đã rẽ nhánh repo này https://github.com/prudnikov/history.js và muốn hợp nhất yêu cầu kéo đặc biệt này vào kho lưu trữ mu. Tôi có thể làm cái này như thế nào?


Github thực sự được thiết kế để làm cho việc này khó hơn ... vì mô hình doanh thu của họ dựa trên tài khoản của công ty. Nếu bạn nâng cấp lên một tổ chức, bạn có thể thấy điều này dễ dàng hơn.

Câu trả lời:


5

Bạn có thể chỉ cần kéo xuống repo khác và hợp nhất với nó.

git pull {url-of-repo-with-commit-you-want-to-merge-in}

Điều này sẽ tìm nạp repo được đề cập và tự động chuyển tiếp hợp nhất trong bất kỳ cam kết nào bạn không có trong tài khoản của mình.

Vì vậy, trong ví dụ của bạn, trong khi trên nhánh chính của bạn hoặc nếu bạn muốn thử nghiệm nó trên một số nhánh khác:

git pull git://github.com/dantipa/history.js.git
remote: Counting objects: 9, done.
remote: Compressing objects: 100% (1/1), done.
remote: Total 5 (delta 4), reused 5 (delta 4)
Unpacking objects: 100% (5/5), done.
From git://github.com/dantipa/history.js
 * branch            HEAD       -> FETCH_HEAD
Updating e84ad00..e2d5251
Fast-forward
 scripts/uncompressed/history.js |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

Bây giờ với cam kết khác được hợp nhất với cam kết của bạn, bạn có thể đẩy lùi lên điều khiển từ xa của riêng bạn với sự thay đổi bổ sung đó.


Nhưng điều này sẽ kéo theo toàn bộ chi nhánh với tất cả các cam kết đi trước CHÍNH, phải không?
Vladimir Prudnikov

2
Ồ, tôi đã có một ý tưởng. Tôi nên tạo một chi nhánh mới cục bộ, kéo xuống các xác nhận từ các repo khác, sau đó quay lại các cam kết mong muốn của chủ và anh đào.
Vladimir Prudnikov

Có, làm việc ở một chi nhánh khác mà bạn có thể chọn từ anh đào sẽ an toàn hơn và cho phép kiểm soát nhiều hơn
Eight Days of Malaise 7/213

Hãy chú ý nếu bạn thực sự chọn cherry từ một repo khác vì điều này có thể gây nhầm lẫn nếu bạn tạo yêu cầu kéo của riêng mình cho repo ban đầu được rẽ nhánh.
Chris
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.