[IntelliJ | git] Github 잔디 안 심어지는 오류 해결 + preserve-merges was replaced by --rebase-merges 에러 해결

알린·2023년 9월 28일
0

TroubleShooting

목록 보기
17/25

오류 내용

요즘 인텔리제이로 코딩테스트 문제를 풀고 계속 푸시하고 있었는데,
레포지토리엔 푸시가 잘 되지만 이상하게 잔디는 안 심어지는 오류가 발생했다.
내가 한 공부가 기록이 되어야 공부할 맛이 나는 나로선,,, 당장 고쳐야겠다고 생각했다.


오류 해결

구글링을 해보니 나같은 사람들이 많았고,
내 깃허브의 Setting>Emails>Primary email address에 나오는 이메일IntelliJ에서 나의 이메일이 같아야한다고 했다.

git config --list

이 명령을 사용해 인텔리제이에서 나의 user.name="..."과 user.email="...@..."을 확인할 수 있다.

나의 경우엔 이메일은 일치했고, user.name이 의심이 갔다.

이렇게 내 깃허브 이름을 YeSeul로 언젠가 바꿨던 거 같은데,,
이메일 부분에선 문제 없다면, 아마 이름이 문제였던 듯 하다..

git config --global user.name "YeSeul"

user.name=yesue2로 되어있었고, 위의 명령으로 유저네임을 바꿔주었다.
user.name=YeSeul로 되는 거 까지 확인하고 다시 커밋 해보니 다시 잔디가 심어졌다!


추가수정

그치만 이미 커밋했던 것들이 아까워서 살려서 잔디를 심을 순 없을까 더 검색해보니
rebase를 통해 심을 수 있다고 한다.

git log --pretty=format:"%h = %an , %ar : %s" --graph

이 명령을 사용하면 git log를 확인할 수 있는데,
로그들 중 잔디가 심어지지 않은 커밋 내역의 해쉬코드를

git rebase -i -p 해쉬코드

여기에 입력해서 변경해야하는 커밋들 앞에 pick을 edit으로 수정해준다.

여기서 오류 또 발생
fatal: --preserve-merges was replaced by --rebase-merges
Note: Your pull.rebase configuration may also be set to 'preserve',
which is no longer supported; use 'merges' instead
에러가 발생했다.
에러메세지를 잘 읽어보면 더이상 --preserve-merges가 지원되지 않고 --rebase-merges로 대체되었다고 나온다.

해결방법

git rebase -i -p 해쉬코드

대신

git rebase -i -r 해쉬코드

코드를 사용해주어야한다.

pick을 edit으로 수정할 때 vim방식을 사용해야하는데, i를 눌러서 edit으로 수정해준 뒤 ESC를 누른 후 :wq를 누르면 변경사항이 저장된다.

profile
Android 짱이 되고싶은 개발 기록 (+ ios도 조금씩,,👩🏻‍💻)

0개의 댓글