2017-09-08 4 views
0
>git rebase <parent> 
First, rewinding head to replay your work on top of it... 
Applying: <First Change> 
Applying: <Second Change> 
.git/rebase-apply/patch:20: trailing whitespace. 

warning: 1 line adds whitespace errors. 
error: Your local changes to the following files would be overwritten by merge: 
     <some exiting project file file> 
     <another existing project file> 
Please commit your changes or stash them before you merge. 
Aborting 
error: Failed to merge in the changes. 
Using index info to reconstruct a base tree... 
Falling back to patching base and 3-way merge... 
Patch failed at 0002 <Second change> 
The copy of the patch that failed is found in: .git/rebase-apply/patch 

병합 또는 리베이스 중에 CONFLICT 개의 파일을 확인하는 데 익숙합니다. 그러나이 상황은 나에게 당혹 스럽다. CONFLICT는 없습니다. 두 번째 변경 사항은 덮어 쓸 파일이 있기 때문에 적용 할 수 없습니다. 이는 나에게 의미가 없습니다. 이들은 모두 추적되는 기존 파일입니다. git status rebase가 보류중인 추가를 표시하지 않기 전에 파일은 git log -- <some exiting project file file>에 올바르게 표시됩니다. <First Change>은이 파일들을 만지지 않습니다. <Second Change>은 패치를 수정하지만 rebase는 패치를 덮어 쓰기로 여깁니다.Git rebase는 단계 사이에 커밋되지 않은 파일을 남겨 둡니까?

이 수수께끼에 대한 설명, 어떤 제안이 문제를 해결하는 방법?

git version 2.14.1.windows.1

+0

그리고 완전히 이해하기 쉽도록 1 분 후에 리베이스가 깨끗하게 적용됩니다. 그것은 전에도 4 번이나 실패했고 어제도 실패했습니다 (여러 번 실패한 후 적용되었습니다). 동일한 단계, 항상 동일한 파일에서 항상 실패합니다. –

답변

0

나는 VS 오픈 파일 핸들과 자식을 유지 사이의 상호 작용에 의해 발생되는 결론에 도달했다. js/ts/css 파일을 체크 인/체크 아웃/브랜치 변경/원점 복귀 등의 작업을하는 동안 실행되는 작업을 수행하는 등 악화 요인이있는 것으로 보입니다. 파일의 보안 설명자가있는 액세스가 완전히 거부 된 것을 확인했습니다. busted (예 : 로컬 시스템이 아닌 파일의 소유권을 가져올 수 없음). 그런 가난한 상태에서 NTFS 메타 데이터 처리를 보는 것이 슬프지만 나에게 결론은 다음과 같다. git으로 작업 할 때 close VS. 또는 명령 줄에서 vim과 msbuild를 사용하십시오.이 방법은 좀 더 알기 쉽고 사용하기 쉽습니다.하지만 나는 빗나가 다.