1. Commit history 확인
Git Bash 혹은 iTerm, 터미널 등등 중 아무거나 하나 열고
>> git log
위 명령어가 git commit 기록들을 보여준다.
내역이 있다면 Q 또는 q 를 누르면 내역에서 나가진다.
2. 커밋 내역 삭제
>> git reset HEAD~숫자 ~숫자에 '~1' 혹은 '~2' 같이 넣으면 그만큼 지우겠다는 의미.
>> git log 내가 삭제하려는 커밋이 삭제되었는지 확인!
위 같이 하면 커밋 삭제 완료!
3. 원격 저장소에 커밋 내역 push
>> git push -f origin [브랜치 이름] git branch 를 사용하면 현재 브랜치 확인 가능.
- commit history를 강제로 push하기 때문에 -f 또는 --force 명령어를 붙여줘야 한다.
- 원격 저장소에서 삭제되기 전에 다른 사람이 해당 브랜치의 커밋을 누군가 pull request했다면, pull한 사람의 로컬 저장소에는 적용이 안된다. 즉, 꼬일 수 있음.. 때문에 소통이 필요! 혹은 혼자 작업할 때 편한 방식.
현상 및 원인
git 에 push 를 할 때 발생되는 에러 이다
src refspec master does not match any
원인은 repository 정보가 변경되었을 때 나타나거나
다른 곳에서 clone 한 repository 를 내 repository 로 새로 만들어서 push 할 때 발생된다
해결 방법
git 정보가 틀어져서 그런거니
git 정보를 초기화 해준다
git init 를 하면 .git 폴더내의 정보들이 초기화 된다
초기화 되면 원격 repository 정보를 다시 등록해서
push 해주면 된다
터미널 명령으로 지난 2년 전 강의영상처럼 git에 올려주려 햇으나 오류가 떠서, 동기화 버튼 눌러서 git에 올려버림.
<어제 했던 실수들>
메시지 없이 커밋해버려서 파일들이 정착하지 못하고 계속 떠돌았음.
어제 gitignore 실수로 삭제해버려서 커밋하는데... 강의 영상과는 다르게 너무 오래걸려서 다 끄고 나옴.
오늘 새로 다시 깃 repository 생성하고 App 묶음세트도 다시 새롭게 내려받으니 gitignore이 생기면서 App의 설정대로 용량이 큰 파일 말고 내가 만든 소스들만 git에 올라가는 것을 확인하는 시간이되었음.
'🗄️git' 카테고리의 다른 글
git branch로 버전 관리 , git ignore 파일 cmd로 만들기 (0) | 2024.01.02 |
---|---|
git에 파일 올리기/ git 수정코드 올리기 (0) | 2023.05.25 |
Git의 init, add, commit 다루기(+ .gitignore) (0) | 2023.01.18 |
Git Bash 쓰는 이유와 ssh키 생성하여 git에 올리기 (0) | 2022.12.17 |
GIT 기초(저장 과정 정리) (0) | 2022.12.17 |