2012-05-24 35 views
34
+ bbb 
- aaa 

# --- 
# To remove '-' lines, make them ' ' lines (context). 
# To remove '+' lines, delete them. 
# Lines starting with # will be removed. 
# 
# If the patch applies cleanly, the edited hunk will immediately be 
# marked for staging. If it does not apply cleanly, you will be given 
# an opportunity to edit again. If all lines of the hunk are removed, 
# then the edit is aborted and the hunk is left unchanged. 

Tôi chỉ đơn giản là không hiểu những gì make them ' ' lines có nghĩa là. Cách áp dụng + bbb chỉ nhưng không áp dụng - aaa?chế độ chỉnh sửa git hunk - cách xóa đường '-'?

Trả lời

53

make them ' ' lines có nghĩa là bạn cần phải thay thế - ở phía trước của đường thẳng bằng (khoảng trắng).

+2

điệp rất giáo khoa ... – jacktrades

+1

Để thêm vào đó, nếu chỉnh sửa với 'vim' và bạn muốn thay thế hàng loạt trên nhiều dòng, ví dụ: , 7-200, lệnh sau sẽ làm: ': 7,200s/^ -//'. Regex này tìm kiếm một '-' duy nhất ở đầu mỗi dòng trong phạm vi được chỉ định và thay thế nó bằng một dấu cách. – Adama

+0

Tuyệt vời Tôi không biết phải làm gì cho đến khi thấy câu trả lời này. Cảm ơn –

9

Một hunk như thế này:

+ bbb <-- line added 
- aaa <-- line deleted 
    ccc <-- line unchanged 

sẽ biến thành nội dung như thế này:

bbb 
ccc 

Để giữ một dòng được đánh dấu để xóa (bắt đầu bằng '-'), biến nó thành một phù hợp với cùng một tiền tố với dòng unchanged ở trên (vì vậy nó sẽ giữ nguyên):

+ bbb 
    aaa 
    ccc 

Khi hunk được áp dụng, nội dung sẽ trông như thế này:

bbb 
aaa 
ccc 
+5

"* Để giữ một dòng được đánh dấu để xóa (bắt đầu bằng '-'), hãy biến nó thành một dòng mà không có bất kỳ tiền tố nào (vì vậy nó sẽ giữ nguyên): *". Trên thực tế điều này là không chính xác, nếu bạn làm cho chúng '''' dòng, bạn nhận được một 'bản vá không áp dụng'; bạn ** cần ** không gian '''' –

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