GIT7 GIT 8 - rebase GIT 8 - rebase rebase 란 공통의 조상을 base라 말한다. 여기서는 보시다시피 c를 지칭한다. 그래서 master를 topic으로 rebase 하겠다는 말은 버전 m1의 부모 c를 t2로 하겠다는 말이다. 즉 base를 다시 설정한다는 의미이다. 결국에는 로그가 선형적으로 보이게 해주는것이다. 브런치 버전 정보와 현재 topic 브런치 파일들과 master 브런치의 파일들은 이렇게 설정하였다. 여기서 master와 topic 브런치의 공통 조상은 init이다. master의 조상 init -> topic 버전의 t3 바꾸기 위함이다. 이것이 rebase다 (공통 부모를 재설정) . init -> t1 -> t2 -> t3 -> m1 -> m2 처럼 커밋들의 관계를 바꾸는 것이다. mas.. 2021. 2. 18. GIT 6 - Merge & Conflict GIT 6 - Merge & Conflict master의 브런치 버전 상태와 동시에 apple 브런치의 버전을 갖으면서 새로운 버전을 만드려면 어떻게 해야할까? 이럴때 사용하는 것이 merge이다. 그리고 이 버전들의 공통 조상을 base라 한다. 병합할 브런치들을 미리 만들었다. master 브런치에서 o2 브런치를 병합하고 싶다면, 현재 HEAD -> o2상태인데 , 우선적으로 master 브런치 상태로 이동해야한다. (git checkout merge ). git merge o2로 병합한다. 그림과 같이 병합되어진다. 파일명이 같은 파일을 병합 현재 파일 상태이며, master 브런치에서는 위쪽을 수정할것이고 , 새로운 브런치 o2를 만들고 아랫쪽을 수정해서 병합할것이다. o2의 내용을 maste.. 2021. 2. 17. GIT 5 - branch GIT 5 - branch 현재 버전들의 상태이다. 회사들 마다 서로 다른 메뉴얼들을 제공해주고 싶다면? 브런치라는 개념을 사용하면 쉽다. git branch [브런치 이름] 을 사용하면, 브런치가 새로 만들어진다. git branch apple 한 결과 git branch 로 브런치 목록들을 볼 수 있고, * master 가 우리가 현재 있는 브런치인 곳이다. 밑의 사진처럼 git log --all --graph --oneline 을 통해 브런치들의 버전 정보들을 깔끔하게 더 볼 수 있다. 현재 우리는 master 브런치에 있고, work 3 버전에서 apple 브런치가 추가된것을 볼 수 있다. 수정을 더해서 ,최종적으로 이렇게 만들었다. 여기서 apple 브런치로 이동하고 싶다면 어떻게 될까? git.. 2021. 2. 17. GIT 4 - reset & revert GIT 4 - reset & revert reset 현재 버전들을 보면 여기서 최신 버전 Message 3를 삭제하고 , 버전 Message2로 이동하고 싶다면? git reset을 사용하면 된다. 즉 git reset --hard 버전 커밋 ID를 사용하면 된다. 여기서 주의해야할점 git reset --hard 2번째 버전으로 했다는 것은, 버전 Message 2를 리셋한다는 개념이 아니라, 버전 Message 2가 되겠다라는 개념이다. revert 현재 버전 기록들 상태이다. 여기서 R4 버전을 삭제하지 않고, R3 버전으로 가고 싶다면? revert를 사용해야한다. 주의할 점은 reset 같은 경우는 가고자 하는 버전을 적어주었지만, revert는 가고자 하는 버전이 아니라, 전 버전을 적어주어야.. 2021. 2. 17. 이전 1 2 다음