Tôi có một máy chủ Git từ xa, đây là kịch bản mà tôi muốn thực hiện:
Đối với mỗi lỗi / tính năng tôi tạo một nhánh Git khác nhau
Tôi tiếp tục cam kết mã của mình trong chi nhánh Git đó với các tin nhắn Git không chính thức
Trong kho lưu trữ hàng đầu, chúng tôi phải thực hiện một cam kết cho một lỗi với thông báo Git chính thức
Vậy làm cách nào tôi có thể hợp nhất chi nhánh của mình với chi nhánh từ xa để họ chỉ nhận được một cam kết cho tất cả các đăng ký của tôi (tôi thậm chí muốn cung cấp thông báo cam kết cho việc này)?
git merge --squash
thực hiện tất cả trên dòng lệnh trong một lần bắn và bạn chỉ hy vọng nó hoạt động. git rebase -i
đưa ra một trình soạn thảo và cho phép bạn tinh chỉnh rebase. Nó chậm hơn, nhưng bạn có thể thấy những gì bạn đang làm. Ngoài ra, có sự khác biệt giữa rebase và merge mà hơi quá liên quan để giải quyết trong một bình luận.
merge --squash
từ cái cũ sang cái mới, và sau đó hợp nhất nhánh mới để làm chủ. Nhánh cũ trở nên lỗi thời.