Just a thought, but check the files that are failing to see if they've got RCS keywords in them ($Id$, $File$, $Date$, etc). These cause all sorts of nasty problems. That's assuming it's definitely not a CRLF line ending problem on Windows. On Thu, Apr 11, 2013 at 8:01 PM, Christopher Yee Mon <christopher.yeemon@xxxxxxxxx> wrote: > I tried running git p4 submit on a repo that I've been running as an > interim bridge between git and perforce. Multiple people are using the > repo as a remote and its being periodically submitted back to > perforce. > > It's been working mostly fine. Then one day out of the blue I get this > error. I can no longer push any git commits to perforce. (This is from > the remote repo which I am pushing back to perforce) > > user@hostname:~/Source/code$ git p4 submit -M --export-labels > Perforce checkout for depot path //depot/perforce/workspace/ located > at /home/user/Source/git-p4-area/perforce/workspace/ > Synchronizing p4 checkout... > ... - file(s) up-to-date. > Applying ffa390f comments in config xml files > //depot/perforce/workspace/sub/folder/structure/first.xml#3 - opened for edit > //depot/perforce/workspace/sub/folder/structure/second.xml#3 - opened for edit > //depot/perforce/workspace/sub/folder/structure/third.xml#3 - opened for edit > //depot/perforce/workspace/sub/folder/structure/forth.xml#3 - opened for edit > //depot/perforce/workspace/sub/folder/structure/fifth.xml#1 - opened for edit > error: patch failed: sub/folder/structure/first.xml:1 > error: sub/folder/structure/first.xml: patch does not apply > error: patch failed: sub/folder/structure/second.xml:1 > error: sub/folder/structure/second.xml: patch does not apply > error: patch failed: sub/folder/structure/third.xml:1 > error: sub/folder/structure/third.xml: patch does not apply > error: patch failed: sub/folder/structure/forth.xml:1 > error: sub/folder/structure/forth.xml: patch does not apply > error: patch failed: sub/folder/structure/fifth.xml:1 > error: sub/folder/structure/fifth.xml: patch does not apply > Unfortunately applying the change failed! > //depot/perforce/workspace/sub/folder/structure/first.xml#1 - was edit, reverted > //depot/perforce/workspace/sub/folder/structure/second.xml#3 - was > edit, reverted > //depot/perforce/workspace/sub/folder/structure/third.xml#3 - was edit, reverted > //depot/perforce/workspace/sub/folder/structure/forth.xml#3 - was edit, reverted > //depot/perforce/workspace/sub/folder/structure/fifth.xml#3 - was edit, reverted > No commits applied. > > I thought it could be the .gitattributes setting that I had which was > this at the time was this: > > * text eol=lf > > My global core.autocrlf setting was also false. > > So I remade a new remote repo, and changed core.autocrlf to input and > changed .gitattributes to this > > * text=auto > > *.php text eol=lf > *.pl text eol=lf > *.pm text eol=lf > *.sh text eol=lf > > *.vbs text eol=crlf > *.bat text eol=crlf > *.ps1 text eol=crlf > > *.bdb binary > *.mtr binary > > Then I started to realize that it could just be the files in the > initial commit that are suspect, because when i made edits to other > files in the repo then tried to push them back with git p4 submit, > those files submitted successfully But the files in the commit where > I initially got the failure still give me this problem. > > Here's what it looks like when I retested with a fresh git repo cloned > from perforce with git p4 clone and tried to do the git p4 submit with > verbose turned on on only one of the suspecting files > > user@hostname:/code$ git p4 submit -M --export-labels --verbose > Reading pipe: git name-rev HEAD > Reading pipe: ['git', 'config', 'git-p4.allowSubmit'] > Reading pipe: git rev-parse --symbolic --remotes > Reading pipe: git rev-parse p4/master > Reading pipe: git cat-file commit 0457c7589ea679dcc0c9114b34f8f30bc2ee08cf > Reading pipe: git cat-file commit HEAD~0 > Reading pipe: git cat-file commit HEAD~1 > Reading pipe: ['git', 'config', 'git-p4.conflict'] > Origin branch is remotes/p4/master > Reading pipe: ['git', 'config', '--bool', 'git-p4.useclientspec'] > Opening pipe: ['p4', '-G', 'where', '//depot/perforce/workspace/...'] > Perforce checkout for depot path //depot/perforce/workspace/ located > at /home/user/Source/git-p4-area/perforce/workspace/ > Synchronizing p4 checkout... > ... - file(s) up-to-date. > Opening pipe: p4 -G opened ... > Reading pipe: ['git', 'rev-list', '--no-merges', 'remotes/p4/master..master'] > Reading pipe: ['git', 'config', '--bool', 'git-p4.skipUserNameCheck'] > Reading pipe: ['git', 'config', 'git-p4.detectCopies'] > Reading pipe: ['git', 'config', '--bool', 'git-p4.detectCopiesHarder'] > Reading pipe: ['git', 'show', '-s', '--format=format:%h %s', > 'ef3b95f5fec193fe2612b28e2e3b5e7f8ba9419e'] > Applying ef3b95f making test change > Opening pipe: p4 -G users > Reading pipe: ['git', 'log', '--max-count=1', '--format=%ae', > 'ef3b95f5fec193fe2612b28e2e3b5e7f8ba9419e'] > Reading pipe: git diff-tree -r -M > "ef3b95f5fec193fe2612b28e2e3b5e7f8ba9419e^" > "ef3b95f5fec193fe2612b28e2e3b5e7f8ba9419e" > //depot/perforce/workspace/sub/folder/structure/first.xml#3 - opened for edit > <stdin>:17: trailing whitespace. > <!-- comment line 1 --> > <stdin>:18: trailing whitespace. > <!-- comment line 2 --> > <stdin>:19: trailing whitespace. > <!-- comment line 3 --> > error: patch failed: sub/folder/structure/first.xml:1 > error: sub/folder/structure/first.xml: patch does not apply > Unfortunately applying the change failed! > Reading pipe: ['git', 'config', '--bool', 'git-p4.attemptRCSCleanup'] > //depot/perforce/workspace/sub/folder/structure/first.xml#3 - was edit, reverted > No commits applied. > Reading pipe: ['git', 'config', '--bool', 'git-p4.exportLabels'] > Opening pipe: ['p4', '-G', 'labels', '//depot/ipstor.maple/automation/...'] > Reading pipe: ['git', 'tag'] > Reading pipe: ['git', 'config', 'git-p4.labelExportRegexp'] > > In any case, I'm starting to think it could be a legitimate bug, which > is why I am submitting it here. Does anyone have any ideas for > suggestions on diagnosing what could be wrong? > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html