2012-01-28 22 views
7

Khi tôi làm như sau:git-p4 nộp không thành công với bản vá không áp dụng

$ git-p4 submit 

tôi gió lên với lỗi dấu vết sau:

error: patch failed: foo/bar/blah.h:1 
error: foo/bar/blah.h: patch does not apply 
Unfortunately applying the change failed! 
What do you want to do? 
[s]kip this patch/[a]pply the patch forcibly and with .rej files/[w]rite the patch to a file (patch.txt) 

Làm thế nào tôi có thể phục hồi từ tình trạng này và tạo thành công?

FWIW, máy chủ P4 của chúng tôi được định cấu hình để sử dụng mở rộng từ khóa (filetype = text + k) và có từ khóa mở rộng ở dòng 3 của tệp vấn đề. Tôi đã thực hiện thay đổi tại dòng 1.

Tôi đã thử xóa delta ở dòng 1, nhưng lỗi vẫn tồn tại khi tôi thử gửi git-p4.

Trả lời

6

Đã tìm ra ngay sau khi đăng câu hỏi này.

Bí quyết xảy ra sau lưng P4 và loại bỏ việc mở rộng từ khóa.

chmod +w foo/bar/blah.h 
edit foo/bar/blah.h #change $File: //depot/foo/bar/blah.h$ to $File$ 
chmod -w foo/bar/blah.h 
git-p4 submit 

Điều này hiệu quả.

1

Điều này bit tôi là tốt. Tùy chọn khác là thay đổi loại tệp thông qua công cụ GUI hoặc dòng lệnh sao cho nó không còn là loại tệp text+k hoặc text+ko (do đó việc mở rộng không xảy ra). Nếu bạn làm điều đó, nó sẽ cam kết OK.

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