예를 들어서
3번째 커밋
2번째 커밋
1번째 커밋
이렇게 3개의 커밋이 있을 때, 보통은 git rebase -i HEAD~3 이렇게 해서 1번이랑 2번 합치던가, 2번이랑 3번 합치던가 아니면 1번2번을 3번에 하나로 합치잖아.
근데 "2번째 커밋" 을 제외하고 1번쨰랑 3번째를 합치고 싶은데 어떻게 해야하냐?
내가 원하는 결과는 아래처럼 해도되고,
1,3번째 커밋
2번째 커밋
혹은 다음 아래처럼 해도됨.(순서는 상관없음)
2번째 커밋
1,3번째 커밋
cherry-pick
2번커밋 revert해서 1234 합치고 다시 2번 cherry-pick으로 따로 커밋하면 될듯 근데 충돌 잘나게 생김
그냥 순서 옮기면됨
댓글들 고마워. 내가 커맨드 찾아서 해결함. 1. git rebase -i HEAD~3 2. 3번을 1번 밑으로 내려서 squash 3. 충돌나는 파일들 수정 4. git add -u 하고 그 다음 git rebase --continue 6. 그랬더니 2번째 커밋하고 충돌남. 그래서 그 부분 또 수정 7. git add -u 하고 그 다음 git rebase --continue 8. 해결!(결과로 나온 순서는 1,3번째 커밋이 가장 최신. 2번째가 가장 오래됨)
git rebase에서 라인 순서 바꾸면 커밋순서 달라짐
ㅇㅇ 라인 순서 바꿔서 했음. 충돌 나는건 피할 수 없더라.
그건 어쩔수없지