Từ hướng dẫn sử dụng, git-format-patch chuẩn bị các bản vá phù hợp để gửi email, trong khi git-diff cho thấy các thay đổi.
Chúng là hai thứ khác nhau và có mục đích khác nhau, chúng chỉ tình cờ xuất ra một định dạng vá lỗi. Nhưng git-format-patch
thêm dữ liệu về một cam kết (ngày tháng, tác giả, thông báo cam kết) và gói nó thành một định dạng phù hợp để gửi dưới dạng thư Unix (mặc dù đây chỉ là những tệp, vì vậy chúng có thể được gửi đến các phương thức khác và vẫn được áp dụng bởi git-am).
Đồng thời git-format-patch
tạo một tệp bản vá cho mỗi cam kết trong phạm vi mà bạn chỉ định. Những thay đổi này sẽ được thêm vào dưới dạng cam kết vào kho lưu trữ của bạn với git-am
.
git-diff
chỉ hiển thị sự khác biệt giữa hai trạng thái bạn yêu cầu và có thể được sử dụng để tạo tệp vá. Nhưng đây chỉ là một tệp vá thông thường và việc áp dụng bản vá sẽ chỉ thay đổi trạng thái của thư mục làm việc.
Và có, bạn có thể tạo một bản vá cho chỉ mục của mình theo cách đó.