2016-05-31 2 views
1

"master"브랜치의 마지막 두 커밋을 명령 리셋과 병합해야하지만 어떻게해야하는지 알 수 없습니다. 나는 단지 리베이스 (rebase)가있는 솔루션을 찾았지만 제대로 작동하지 않았다. 정말 도움이 될 것입니다. 고마워요! 당신이 리베이스 접근에게 또 다른 기회를 제공하려는 경우, git rebase -i HEAD~2를 사용리셋을 사용하여 마지막 두 커밋을 하나로 병합합니다.

commit c6757068ca0768eb7afadb6a87d43fb4f3967d1b 
Author: Name <mail> 
Date: Wed Jun 1 00:13:47 2016 +0200 

    Add name to copyright 

commit 476dae7afcd9f143bb48f932f1281c21d872ebb0 
Author: Name <mail> 
Date: Wed Jun 1 00:13:11 2016 +0200 

    Add tag <i> on line 13 
+0

'git rebase'는 갈 길입니다. 정확히 무엇을 시도 했습니까? – jamesdlin

+0

다른 옵션이 있습니다. 'git branch tmp; git reset HEAD ~ 2 --hard; git merge tmp --squash; git add.; git commit;'이것은 보통 한 브랜치의 새로운 커밋을 하나의 커밋으로 다른 브랜치로 병합하려는 경우에 사용됩니다 . – ElpieKay

답변

3

: 그것은 도움이 될 것입니다 경우 여기

두 커밋 마지막이다. 그런 다음 명령 줄 도구를 사용하여 최신 커밋의 "pick"명령을 "squash"로 대체하여 가장 최근의 커밋을 이전 명령으로 스쿼시합니다.

또는 작업 디렉토리가 깨끗하다고 ​​가정하고 git reset --soft HEAD~2을 시도한 다음 완전히 새로 작성하십시오. 그 커밋의 내용은 여러분이 하나로 합치려는 가장 최근의 두 커밋과 동일합니다.

관련 문제