레포지토리를 먼저 만들고 코드를 작성했으면 쉬웠을텐데 난 코드를 다 작성한 후에 레포지토리를 만들어서 너무 힘들었ㄷㅏ.. 덕분에 코드를 한번 날려먹고 복구한 뒤에 브랜치를 만들기까지의 과정을 정리해보았다.
우선 reflog
명령어를 사용해서 작업한 커밋 내역을 확인한다.
git reflog
나같은 경우 아래처럼 나왔다.
앞에 노란색으로 해시값이 붙어 있고 작업 내역을 확인할 수 있다.
reset 과정에서 로컬 파일이 날아갔기 때문에 그 이전으로 되돌아가야 한다.
해당 커밋으로 이동
git checkout 해시값(노란색 글씨)
이렇게 하면 일단 기존 작업 내역 복구는 끝났다!
이제 기존에 있던 레포지토리를 삭제하고 다시 만든다.
rm -rf .git
이 명령어를 실행하면 기존 히스토리가 전부 삭제되기 때문에 미리 백업해두는 게 좋다! (아래는 예시 백업 명령어)
mkdir ~/backup_project cp -r * ~/backup_project/
이제 GitHub에 들어가서 새로운 레포지토리를 만든다.
이때 초기 설정 명령어를 복사해둔다.
새로 만든 레포지토리를 초기화하고 add
와 commit
을 해준다.
git init
git add .
git commit -m "커밋 메시지"
그리고 아까 복사해둔 초기 명령어를 입력한다.
git remote add origin 레포지토리 주소
git branch -M main
git push -u origin main
이제 새로운 브랜치를 만들고 이동한다.
git checkout -b prop-drilling
→ 생성과 이동이 한꺼번에 된다. 현재 브랜치의 위치를 확인하려면 git branch
를 입력하면 된다.
이후 코드를 수정하고 변경된 파일을 추가한 후 커밋하면 된다.
git add .
git commit -m "커밋 메시지"
마지막으로 푸시하면 끝! (습관적으로 main
을 입력하는 나를 발견했다…)
git push origin prop-drilling
만약 브랜치명을 안 쓰고 push
하고 싶다면 다음 명령어를 실행하면 된다.
그러면 이후에는 git push
만 입력해도 자동으로 해당 브랜치에 푸시된다.
git push --set-upstream origin 브랜치명
지금까지는 혼자 작업하다 보니 add
, commit
, push
만 반복했는데 조금만 복잡한 작업을 하려고 하면 너무 어렵다. 앞으로 협업할 일이 더 많아질 텐데 브랜치 사용법을 좀 더 익혀둬야겠다…🥹