fromzero
쪼렙 성장기
fromzero
전체 방문자
오늘
어제
  • Home
    • TIL
      • Python
      • HTML&CSS
      • Django
      • React
      • React Native
      • Git & Jira
      • Tech News
    • Algorithm
      • SW Expert Amademy
      • Baekjoon Online Judge
    • SSAFY
    • Daily log

인기 글

최근 댓글

최근 글

글쓰기 | 설정
hELLO · Designed By 정상우.
fromzero

쪼렙 성장기

[Git] 깃허브 잔디 누락 됐을 때 (--preserve-merges가 안 먹힌다면)
TIL/Git & Jira

[Git] 깃허브 잔디 누락 됐을 때 (--preserve-merges가 안 먹힌다면)

2022. 7. 19. 01:01

 

 

몇 개월 전,

깃허브를 확인했더니

잔디가 전혀 입력되지 않은 빅! 이슈를 발견하고

멘붕이었던 적이 있다

 

 

그때 구글링을 통해 발견한 빛과 소금 같은 게시글!

 

github 잔디밭 안 심어지는 현상 해결 및 이미 커밋한 내용 반영하기

1. github 잔디 안심어지는 현상 해결 흔히 잔디밭이라고 불리는 github contributions(activity) 나의 저장소 중 어디라도 commit해서 push해서 반영 시키면 잔디가 심어져야하는데 심어지지 않을때가 있다.

wellbell.tistory.com

 

이 글 덕에 문제를 잘 해결했었다.

 

 

오늘 친구가 같은 문제를 겪고 있길래

저 블로그 글을 소개 해줬는데,

중간에 막혀서 안된다는거!!

 

 

일단 문제의 원인은 간단하다

컴퓨터에 등록 되어 있는 유저네임과 유저이메일이

레포지토리에 등록된 것과 일치하지 않아서!

 

 

이건 위 블로그에 적힌 대로 수정해주면 된다

 

그 이후에!

rebase를 할 때 발생하는 문제에 대해서 이야기를 좀 해보자

 

 

제대로 안 심긴 커밋의 해시코드를 찾고 난 이후에

그걸 활용해서

$ git rebase -i -p 해시코드

를 입력했는데 다음과 같은 오류창을 만난다면

넵

제 블로그에 오신 것을 환영합니다

 

원활한 검색을 위해 위의 메시지를 먼저 적어보겠다 ㅎㅎ

fetal: --preserve-merges was repalced by --rebase-merges

Note: Your `pull.rebase` configuration may also be set to 'preserve', 

which is no longer supported; use 'merges' instead.

 

영어만 보면 아득해지는 사람.. 나야나...

사실 저 메시지에 모든 게 있었는데도 불구하고!

조각조각 검색을 하면서 엄청 헤맸다 ㅠ

 

결론만 말하면,

이제 --preserve-merges라는 명령어는 지원하지 않아서 발생한 문제!

 

처음 코드를 보고 아니.. 쓴 적도 없는 명령어 뭐 어쩌라고? 이랬는데 ㅋㅋ

저기에 -p라고 쓴게 바로 --preserve-merges의 줄임말!

(참고로 -i는 --interactive를 줄인 것)

 

 

그래서 시키는대로 명령어를 바꿔서

$ git rebase -i --rebase-merges 해시코드

를 적어주면 잔디 복구가 가능하다! ㅎㅎ

 

 

--rebase-merges도 뭔가 줄임말이 있겠지만... 못 찾았다 힣ㅎㅎ힣

그래서 정직하게 다 적어줬다 ㅎㅎ

 

 

사실 찾으면서도 확신하지 못한게

rebase != merge이기 때문인데..

확신을 얻으려고 여러 자료를 찾아보니까

맞는 것 같아서 시도 했고 결국 (친구의) 잔디를 살릴 수 있었다!

ㅋㅋㅋㅋㅋㅋ

 

 

내가 해당 문제를 겪었던 건

내 개인 레포지토리(깃허브)와 교육용 레포지토리(깃랩)의

계정이 달라서 바꾸는 과정에서 문제가 생긴거고

친구 역시 마찬가지긴 한데

명령어 문제는 컴퓨터를 바꾸면서 깃을 새로 깔다보니

몇 달전까진 잘 쓰던 명령어가 안 먹어서 생긴 일 같다.

 

 

무튼,

내가 참고했던 링크들을 남겨둘테니

구경해도 좋다 ㅎㅎ

(이 문제와 관련된 건 아니고, --preserve-merges가 --rebase-merges로 대체 됐다는 이야기)

 

 

git rebase --interactive --rebase-merges

Recorded by mbrehin

asciinema.org

 

Document Git 2.18 feature `--rebase-merges` · Issue #6 · rocketraman/gitworkflow

Git 2.18 has an option for interactive rebase called --rebase-merges, which will eventually replace the clunky --preserve-merges. This capability can be used to rebase a topic with merges interacti...

github.com

 

 

+ 그래도 안 될 때 는 나...

 


 

일단 더 찾아보겠습니다 

또 안되네.. 하

 

 

edit으로 바꿔야하는 창도 안나오고 ㅠㅠ

그래서 계속 돌고 돌고 이상한 커밋만 쌓이고 잔디는 갱신이 안됐는데

새로운? 명령어를 찾았다

 

git rebase -i 커밋해시코드

 

이걸 했더니 해시코드 옆에 pick이 떠서 인서트 키를 누른 후 edit으로 변경할 수 있었다!

이렇게 !!!!!!!!

 

사실 이 커밋 이후에 rebase 된 게 있어서;; 조금 다른 안내문이 나왔는데

무시하고 일단 시키는대로 했다

git commit --allow-empty

 

그러면 맨 첫 블로그에서 말한 창이 또 나온다 ㅎㅎ

그냥 나와주면 된다

저작자표시 비영리 변경금지 (새창열림)
    fromzero
    fromzero

    티스토리툴바