2009-07-13 19 views
22

Tôi có một tập tin mà tôi đã làm việc trên và sau đó nhận ra rằng tôi đã có một sai lầm trong đó một vài dòng ở trên, nơi tôi đã làm việc. Tôi nhanh chóng sửa lỗi và muốn cam kết trước khi tôi thực hiện phần còn lại của công việc. Tuyệt vời, đây là nơi mà git add --patch xuất hiện!Tôi có thể sửa đổi kích thước của git-add không?

Trừ, tôi được trình bày chỉ với một hunk kết hợp cả hai thay đổi. Có thể tự nói với git rằng tôi muốn hai hunks?

+0

Bạn có nghĩa là: "[Làm cách nào để giảm kích thước hunk mặc định?] (Https://stackoverflow.com/q/33891010/1429450)" – Geremia

+1

@Geremia whoa, liên kết đệ quy! –

Trả lời

33

Ngoài 'y' và 'n', một trong những câu trả lời bạn có thể đưa ra khi nó hỏi bạn về một đoạn là 's', vì 'chia đoạn này thành những phần nhỏ hơn'. Danh sách đầy đủ:

y - stage this hunk 
n - do not stage this hunk 
q - quit, do not stage this hunk nor any of the remaining ones 
a - stage this and all the remaining hunks in the file 
d - do not stage this hunk nor any of the remaining hunks in the file 
g - select a hunk to go to 
/- search for a hunk matching the given regex 
j - leave this hunk undecided, see next undecided hunk 
J - leave this hunk undecided, see next hunk 
k - leave this hunk undecided, see previous undecided hunk 
K - leave this hunk undecided, see previous hunk 
s - split the current hunk into smaller hunks 
e - manually edit the current hunk 
? - print help 
+0

Tuyệt vời, cảm ơn bạn. – pr1001

+3

Nếu bạn * thực sự * cần kiểm soát hãy thử 'e' để chỉnh sửa bản vá trực tiếp. Bằng cách này, bạn thậm chí có thể thay đổi nội dung bản vá (không chỉ chọn các phần của bản vá). –

+0

TLDR: Để có được hunk nhỏ hơn, tôi sử dụng 's'. –

10

git gui sẽ cho phép bạn cam kết một dòng, ngay cả khi chúng được bao quanh bởi các dòng đã sửa đổi khác mà bạn không muốn cam kết.

+3

Bằng cách nào đó tôi chưa bao giờ thấy điều này. Cảm ơn! –

+2

Bạn cũng có thể làm tương tự với git cola. –

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