오늘 개인과제 제출을 위해 깃 레포지토리로 푸시를 할 계획였습니다.
당시 행했던 순서는 다음과 같습니다.
git init
git add .
git commit -m "first commit"
git config --global user.name "<이름>"
git config --global user.email "<이메일>"
git remote add orgin <레포지토리 주소>
git push origin main
이렇게 푸쉬까지 진행했는데 에러가 떠서 보니 pull
을 진행하고 push
를 해달라는 내용이였습니다. 첫 푸쉬라 그냥 될 줄 알고 진행했었는데 알고보니 레포지토리를 생성하는 와중에 만들었던 readme
파일 때문에 충돌이 일어나는 것을 알게되었습니다. 이후 git pull origin main
을 하는데 이게 또 오류가 나오게 되더군요..
그래서 인터넷을 찾아본 결과 git pull origin +main
브랜치 앞에 +
를 붙혀 해결했다는 내용의 글을 확인할 수 있었습니다. 그래서 실행해보니 정말로 pull
이 받아졌습니다. 그런데 이상하게도 readme
는 들어오질 않았습니다. 그 상태에서 바로 push
를 진행하니 업로드가 잘 되는걸 깃 허브에서 확인했습니다. 헌데 분명히 아까 있었던 readme
가 있지 않았습니다.
확인결과 +
를 적게되면 강제로 명령을 실행하는 커맨드로 바뀐다는 것을 알게되었습니다. 어떤 원리로 readme
를 불러오지 않고 그냥 지워버린건지는 알 수 없었으나 해당 명령을 통해 깃 충돌을 해결할 수 있어서 다행이였습니다.
다시 찾아보니 데이터 유실위험이 엄청 큰 커멘드라는 것을 알게되었습니다. 첫 번째 업로드라 유실당할게 없어서 다행이였지 그 동안 작업한 커밋이나 다른 작업물들이 있었다면... 정말 위험했을 것 같습니다..