Thêm tệp vào cam kết trước đó
Nếu bạn đã thúc đẩy chi nhánh bạn đang làm việc, vui lòng xem trang người đàn ông trước. Đặc biệt, xin lưu ý:
Viết lại (hoặc bất kỳ hình thức viết lại nào khác) một nhánh mà những người khác đã làm việc dựa trên đó là một ý tưởng tồi: bất kỳ ai ở phía dưới của nó đều bị buộc phải sửa lịch sử của họ theo cách thủ công.
Tuy nhiên, nếu bạn chưa đẩy được nhánh của mình, hãy chuẩn bị bước vào vùng nguy hiểm .
Tìm băm cam kết
Trước tiên, bạn cần biết mã băm cam kết của cam kết mà bạn muốn thêm vào. Điều này được hiển thị bởi git log
. Bạn thực sự muốn chỉ định cam kết trước khi bạn muốn thêm vào. (Bạn có thể coi nó như là chỉ mục bắt đầu của phần cam kết mà bạn muốn thay đổi.) Bạn có thể đảm bảo rằng mình có cam kết phù hợp bằng cách chạy git log -1 HEAD~n
. Trong đó 'n' là một số nguyên mà bạn tăng lên cho đến khi bạn có đúng cam kết. Hoặc bạn có thể đếm, không thực sự.
Nhưng, nếu bạn đếm, ít nhất hãy xác nhận rằng bạn có cam kết phù hợp với git log -1 HEAD~5
hoặc bất kỳ số lượng của bạn. Bạn KHÔNG nên thấy cam kết mà bạn muốn thêm vào.
NGUY HIỂM , heh
Bây giờ bạn đã sẵn sàng để chạy git rebase -i HEAD~5
. Hoặc bất kỳ hàm băm cam kết của bạn là gì. Thao tác này sẽ hiển thị trình soạn thảo văn bản yêu thích của bạn và một tệp để chỉnh sửa. Tệp là danh sách việc cần làm cho lệnh rebase. Các nhận xét trong tệp cho bạn biết bạn có những lựa chọn nào. Chỉ cần tìm dòng có cam kết mà bạn muốn thêm vào và trên dòng đó thay đổi "pick" thành "edit". Bây giờ hãy lưu và đóng tệp.
Rebase sẽ dừng khi nó đạt đến cam kết mà bạn đã yêu cầu chỉnh sửa. Chạy a git status
để xem thông tin bổ sung mà nó cung cấp. Giai đoạn các tệp của bạn để thêm vào cam kết với git add .
hoặc bất kỳ tên tệp nào.
Sau đó, làm git commit --amend
. Điều này sẽ sửa đổi cam kết bạn đã chọn để chỉnh sửa.
Cuối cùng, hãy chạy git rebase --continue
.
Nếu nghi ngờ, trên Linux, bạn có thể tìm hiểu thêm bằng cách đọc qua đầu ra tài liệu bằng man git-rebase
hoặc git --help rebase
.