2015-03-31 15 views
5

Cho một móc sau, cam kết thực thi Git tùy ý, nó không chạy trong khi không phản hồi tương tác, không với rebase --force-rebase cũng không phải với rebase --no-ff là từ đồng nghĩa ở chế độ không tương tác theo GIT-REBASE (1) Manpage.Tại sao một móc hậu Git trên rebase không tương tác không chạy?

Nhưng bằng cách thực hiện một lần rebase tương tác với rebase --interactive --no-ff, cùng một móc Git được chạy trên hậu cam kết.

Ai đó có thể giải thích lý do đằng sau hành vi này.

Trả lời

0

Từ https://git-scm.com/docs/git-rebase

--no-ff Với --interactive, anh đào-chọn tất cả rebased cam kết thay vì nhanh chóng chuyển tiếp so với giá cũ không thay đổi. Điều này đảm bảo rằng toàn bộ lịch sử của chi nhánh được rebased bao gồm các cam kết mới.

Không có - tương tác, đây là từ đồng nghĩa cho --force-rebase.

Bạn có thể tìm thấy điều này hữu ích sau khi hoàn nguyên một nhánh chủ đề hợp nhất, như tùy chọn này tái tạo các chi nhánh chủ đề với cam tươi để nó có thể được remerged thành công mà không cần phải "phục hồi các đảo chiều" (xem hoàn nguyên-a- Cách hợp nhất bị lỗi để biết chi tiết).

Chọn anh đào tạo ra các cam kết mới và móc sau git sau khi commit mới được tạo, phải không?

Từ: https://git-scm.com/docs/git-cherry-pick

MÔ TẢ Với một hoặc cam kết hiện có hơn, áp dụng thay đổi mỗi người giới thiệu, ghi nhận mới cam kết cho mỗi. Điều này đòi hỏi cây làm việc của bạn phải sạch sẽ (không có sửa đổi từ cam kết CHÍNH).

Điều đó có rõ ràng không?

+0

Vì vậy, điều đó ảnh hưởng như thế nào đến móc nối? Vui lòng giải thích. – ams

+0

Tôi đã cập nhật câu trả lời – grimsock

+0

Tôi nghĩ điều này giải thích lý do tại sao móc * làm * kích hoạt, nhưng bạn không giải thích tại sao móc có thể * không * kích hoạt. – ams

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