Dev/Git 6

[Git] push error - unpack failed: index-pack abnormal exit

github로 push가 안되는 문제 발생. cmd 와 sts 플러그인 모두 push 반영이 안되었다. 오류 메세지 $ git push Enumerating objects: 10, done. Counting objects: 100% (10/10), done. Delta compression using up to 4 threads Compressing objects: 100% (5/5), done. Writing objects: 100% (6/6), 700 bytes | 77.00 KiB/s, done. Total 6 (delta 3), reused 0 (delta 0) remote: error: object 커밋해쉬번호: nullSha1: contains entries pointing to null sh..

Dev/Git 2019.12.31

[Git] fetch 후 에러(Failed to lock refs/heads/master)

문제 발생 Failed to lock refs/heads/master 메세지가 계속 출력되는 에러가 발생했다. cannot lock ref 'refs/heads/master': is at 9ce4fa9196311a76c786d64227affcef6f273092 but expected dac5ce6c9ffb5500244e72e92e9a4c7ca3ae34c4 해결 방안 Git CMD를 이용해 해당 명령어를 작성하여 해결하였다.git update-ref refs/heads/master 커밋id 참조 사이트 - Git Refs 개념 https://git-scm.com/book/ko/v2/Git%EC%9D%98-%EB%82%B4%EB%B6%80-Git-Refs https://git-scm.com/book/ko/v..

Dev/Git 2019.06.10

[Git] command line 버전관리

명령어로 git을 사용하는 것은 복잡하지만, gui를 사용하지 않고 진행 가능하다. 또한 더욱 다양한 기능이 존재한다.gitbash : 명령어를 통해 깃을 제어하는 프로그램 (실행하면 콘솔창이 뜸). 설치 후 'git' 을 치면 성공적으로 설치가 됐을 경우 깃 관련 정보가 조회된다.ls -algit init : 저장소 초기화 git : git repositorycd .. 부모디렉토리 조회.git 이라는 디렉토리를 지우면 버전정보가 기록된 것이 모두 사라진다. (삭제하지 않도록 유의) Working tree : 수정한 전체 파일들.Staging Area : 버전이 만들어져야 할때 변경된 파일 10개중 2개만 저장하고 싶을 때 이 곳에 올려둔다.Repository(저장소) : 버전이 저장 되어지는 곳. ca..

Dev/Git 2019.02.16

[Git] cherry-pick, Interactive Rebase

[작업을 여기저기로 옮기기] 작업을 여기저로 옮기는 개념은 '이 일은 여기에 저 일은 저기에 두는 등 정확하고 유연하게 브랜치 설정을 하는 것'. git cherry-pick git cherry-pick 현재 위치(HEAD) 아래에 있는 일련의 커밋들에 대한 복사본을 만들겠다는 것을 의미한다. rebase를 통해 브랜치를 복사할 수 있지만 cherry-pick 명령어를 통해 일련의 커밋들에 대한 일괄적인 복사본을 생성할 수 있다. git cherry-pick C2 C4 # C2와 C4를 커밋하면서 사본을 만들겠다는 명령어 git Interactive Rebase Git cherry-pick은 원하는 커밋이 무엇인지 알 때(커밋 해시값) 아주 유용하다. > cherry-pick은 간단함은 큰 장점. 원하는..

Dev/Git 2019.02.14

[Git] Head, Relative Ref, reset, revert

1. HEAD HEAD는 현재 checkout된 커밋(현재 작업중인 커밋) 을 가리킨다.고로 HEAD는 항상 작업트리의 가장 최근 커밋을 가리킨다. 작업트리에 변화를 주는 git 명령어들은 대부분 HEAD를 변경하는것으로 시작한다. 일반적으로 HEAD는 브랜치의 이름을 가리키고 있다. 커밋을 하게 되면, bugFix의 상태가 바뀌고 이 변경은 HEAD를 통해서 확인 가능함. HEAD 분리하기 HEAD를 분리한다는 것 = HEAD를 브랜치 대신 커밋에 붙이는 것을 의미 커밋에 붙은 라벨(C1, C2 등..)을 이용해서 head 분리 가능 git checkout master^ git checkout 브랜치명^ git checkout HEAD^ 2. 상대 참조(Relative Ref.) Git에서 여기저기 이..

Dev/Git 2019.02.12

[Git] 기본 명령어 (commit, branch, checkout, merge, rebase)

git commit save의 개념이다. Git repository 디렉토리에 있는 모든 파일에 대한 스냅샷을 기록. 디렉토리 전체를 복사하여 백업하는 것과 유사하지만, 커밋할 때마다 디렉토리 전체를 복사하지 않음. 각 커밋은 저장소의 이전 버전과 다음 버전의 변경내역("delta"라고도 함)을 저장함. 그래서 대부분의 커밋이 그 커밋 위의 부모 커밋을 가리킵니다. 저장소를 복제(clone)하기 위해 모든 변경분(delta)를 풀어내야 하는데, 명령행 결과로 아래 문구를 볼 수 있습니다. resolving deltas커밋을 프로젝트의 스냅샷 으로 이해. 커밋은 매우 가볍고 커밋 사이의 전환도 매우 빠르다!!git branch깃의 브랜치는 특정 커밋에 대한 참조(reference)에 해당한다. 브랜치를 많..

Dev/Git 2019.02.11
반응형