2017-11-13 8 views
0

rebased 브랜치에 커밋 수가 너무 많을 때 간단한 문제 해결을 위해 git rebase (충돌이 발생하지 않음)이 발생했습니다. 나는 google에 stackoverflow에 유사한 과실을 찾아 낼 수 없었다.git rebase - 긴 브랜치에서만 토론하기

나는 71 개 커밋으로 (? 정말로) 긴 지점을 리베이스하려고 문제를 발견했습니다 분기가 짧은 경우

$ git clone [email protected]/project.git 
$ cd project 
$ git checkout develop 
$ vim README.md # just a simple text update on tracked file 
$ git add README.md 
$ git commit -m "crash test" 
$ git checkout feature/branch-to-be-rebased 
$ git rebase --onto develop feature/big-branch-to-be-rebased~71 

First, rewinding head to replay your work on top of it... 
Applying: commit 01 
Applying: commit 02 
Applying: commit 03 
... 
Applying: commit 20 
Assertion failed: (postlen ? fixed_preimage.nr == preimage->nr : fixed_preimage.nr <= preimage->nr), function update_pre_post_images, file apply.c, line 2322. 
/Applications/Xcode.app/Contents/Developer/usr/libexec/git-core/git-rebase--am: line 16: 44878 Abort trap: 6   git am $git_am_opt --rebasing --resolvemsg="$resolvemsg" ${gpg_sign_opt:+"$gpg_sign_opt"} < "$GIT_DIR/rebased-patches" 

git rebase

가 제대로 작동 (이 지점을 커밋 8 일).

내 OS는 Sierra 10.12.6

$ git --version 
git version 2.13.6 (Apple Git-96) 

같은 일이 날짜 양조의 자식 버전까지 사용하는 일이 있습니다 :

$ /usr/local/Cellar/git/2.15.0/bin/git --version 
git version 2.15.0 

내가 어떤 사람들은 자식 워크 플로우에 대해 다른 의견을 가지고 알고 있지만, 지점 이 질문은 순전히 기술적 인 문제입니다. 따라서 스쿼시, 체리 피클 등의 대안에는 관심이 없습니다.

이 충돌을 해결할 수있는 방법이 있습니까? git rebase에는 처리 할 수있는 커밋 수에 대한 일종의 상한이 있습니까? 이것은 알려진 버그입니까?

답변

1

이 충돌을 해결할 수있는 방법이 있습니까?

힘내에서 버그를 복구하십시오. (당신은 당신이 해결에 관심이없는 말했지만, 이것은 명령 행 인수로 --whitespace=fix를 가진, 또는 구성에 apply.whitespace=fix 설정에서 오는 것 같습니다. 아마 문제를 회피 것을 제거.)

이 자식 REBASE이 있습니까 처리 할 수있는 커밋 수에 대한 일종의 상한?

번호

이 알려진 버그인가요?

글쎄, 지금입니다. :-) 좋은 재생산 기가 없으면 아무도 이 아니면으로 고칠 수 있는지 확실하지 않습니다. (따라서 아마도 "알려진 버그"가 무엇을 의미하는지에 달려 있습니다. 예는 공백 고정 코드에 버그가 있음을 보여 줍니 다. 그러나 버그가 무엇인지 아직 확실하지 않습니다.)

+0

실제로 매우 긴 시간) [적용] 공백 = 내 '~/.gitconfigure'에 을 수정하십시오. 이 줄을 없애기 위해서였습니다. 고마워요! 효과가있다. –