ErrorLog - Git main branch에 push하기...^^

miyaongg·2023년 2월 20일
0
post-thumbnail

얼마 전까지 세미 프로젝트처럼 진행하던 게 있었다.
형상관리는 gitlab을 사용했고, main branch에는 프로젝트와 공통 컴포넌트들만 올려두고 각자 branch를 따서 나누어 작업을 시작했다.

작업자가 각자 branch를 따서 작업을 하고, develop branch에 합치고 최종으로 main에 공통으로 관리하는 구조였다.

[error💨]
어쨋든 작업을 하다가 집에서 좀 더 하려고 개인 노트북에 프로젝트를 clone 하고 열심히 ^_^ 컴포넌트 짜고 커밋은 못하고 잠들었다

그렇게 다음 날 이어서 작업하려고 전 날 밤에 작업하던 걸 commit & push를 했는데...? 왜 지금 내 pc에 아무 변동이 없을까.......?
왜 잠잠할까.........~ 왜 내가 만든 컴포넌트 추가가 안되어있을까...~
뭐지? 뭐지? 하고 보다가..

원인은
git 구조가 pull request를 날려서 관리자가 보고 통합해주는 구조가 아니었기 때문에 공통 main branch까지 접근이 가능했다.
개인 노트북에 전체 프로젝트를 clone해서 내 branch를 checkout 받고 작업을 했었어야 했는데 그냥 바로 해서 main branch에 작업을 하고... main branch에 push를 냅다 한거지...
잘 다듬어서 코딩한 거면 모르겠는데 집에서 기능 구현 해보려고 얼레벌레 짜서 잘 다듬어지지 않은 코드를....

[resolve💫]
누가 보기 전에 얼른 없애야 했다.
그동안 충돌나서 merge는 그래도 몇 번 해봤지만 commit, push를 되돌려본 적은 없어서 열심히 구글링해서 방법을 찾았다.


//브랜치와 HEAD가 가리켰던 커밋 목록 조회
$ git reflog 
//원하는 시점으로 워킹 디렉토리 되돌림
$ git reset HEAD@{number} 

//되돌려진 상태에서 커밋
$ git commit -m "Write commit messages" 
//원격 저장소에 강제로 push
$ git push origin +[branch name]
//ex
$ git push origin +main

[출처]
https://gmlwjd9405.github.io/2018/05/25/git-add-cancle.html

이렇게 하니까 main branch commit 목록에서 내가 commit했던 흔적이 깔끔하게 사라졌다! 감사합니다....감사합니다.........

오늘의 교훈
이렇게 단순히 branch 나눠서 작업할 때는... branch 확인 잘 하자..
교훈 얻었으면 됐지..^^

profile
Front-End Developer

0개의 댓글