git

    reset --hard로 삭제한 커밋 git reflog를 이용해 살리기

    프로젝트를 진행하면서 reset --hard 로 커밋을삭제하면 원래 기존의 status 값을 반환해주는 줄 알았는데 아니었다... 결국에는 reset --hard 로 내가 작업한 영역이 사라졌다. 어떻게 다시 내가 작업한 영역을 가져올지 서칭을 통해 알게되었다. git reflog 실수로 reset --hard로 파일을 지운 경우 위 명령어를 이용해 복원할 수 있다. 전체적인 과정은 다음과 같다. git reflog로 이전 커밋 목록을 띄운다 복원하고 싶은 커밋으로 checkout 한다. 커밋에 checkout 한 상태이기 때문에 Detached HEAD 상태가 된다. 복원하고 싶은 커밋에서 git branch backup 명령어로 브랜치를 만든다. (브랜치 이름이 꼭 backup일 필요는 없다. 원하는..

    github 자주쓰이는 명령어 정리

    # 모든 파일을 Staging Area로 이동 git add . # 몇개가 add 됐는지 file들의 상태확인 git status # 파일 저장소에 커밋 git commit -m "메세지내용" # 저장소에 푸쉬 git push # 해당 저장소 commit내역 pull로 가지고오기 # 최신화 됐는지 git fetch all 필수로 하기 git pull # 병합할 브랜치로 이동해서 무슨브랜치랑 병합할건지 설정 git merge origin develop # 나의 헤드 , 커밋내역을 보여줌 git log # 원격저장소의 내용을 로컬에 업데이트 git fetch --all # 로컬 캐시에 작업할 영억을 담아둠 git stash # 저장해둔 로컬캐쉬를 현재 브랜치에 적용시킴 git stash -apply # 원격..

    git checkout 갱신

    refactoring 브랜치로 체크아웃 해서 작업하려고 git checkout refactoring 명령어를 입력하니, 다음과 같은 에러메세지를 마주했다. error: pathspec 'refactoring' did not match any file(s) known to git 해당 에러는 로컬 저장소의 git과 리모트 저장소의 git 정보가 동기화 되지 않아서, 새로 만들어진 리모트 저장소 브랜치를 참조할 수 없기에 발생하는 에러다. 그러므로 아래 명령어로 원격 브랜치를 업데이트 한 뒤 checkout을 실행하면 잘 동작한다! git remote update git checkout 브랜치명 git remote update : 모든 원격 브랜치를 업데이트하여 최신 상태로 갱신한다. 하지만 로컬 저장소에서..