Git Git Git 썸네일형 리스트형 Git merge 시 conflict(충돌) 발생 원인 및 해결 방법 브랜치를 나누어 작업 하다보면 merge 즉 합치는 과정에서 conflict 에러가 발생 할 수 가 있다. 해당 원인은 깃이 파일들을 관리하다가 a 브랜치의 내용과 b 브랜치의 내용이 겹치는 부분이 있어 선택 할 수 없을 때 에러메세지와 함께 로컬 리포지토리에도 구분지어서 파일을 알아볼 수 있게 나오는데 이런 식으로 나오게 된다. > 순으로 나와 있으며 겹치는 부분의 이름을 바꾸어 주거나 아예 구간을 지우고 새로 다시 써준 뒤에 git add . git commit 해주면 되겠다. 만약 conflict가 너무 많이 발생해서 다시 작업을 하려고 취소, 즉 conflict 발생하기 전으로 돌아가고 싶을 때는 git merge --absort 를 실행해주면 되겠다. 더보기 브랜치 다뤄보기 git branch // 브랜치 목록 보기 git branch -d '브랜치명' // -d 브랜치 삭제 옵션 이번 건 팁 정도로 알아두고 보면 되겠다. git checkout -b '브랜치명' // 브랜치를 만듬과 동시에 이동 더보기 git branch 브랜치란? 깃의 로고를 잘 살펴보면 요로케 나무가지처럼 분리되어 나뉘어져 있는 것을 볼 수 있다. 저것을 코드관리흐름이라고 생각하면 브랜치가 어떤 것인지 바로 알 수 있다. 하나의 프로젝트를 진행하는 동안 하나의 코드 흐름으로 작업이 진행되는 경우는 많지 않다. 가령 앞단과 뒷단을 담당하는 사람이 나뉘어져 있고 프리미엄 버전과 일반 버전을 맡은 사람이 있고 같은 프론트라도 다른 카테고리, 다른 내용의 영역을 맡는 경우도 있다. 이렇게 여러 가지로 뻗는 코드흐름을 브랜치라고 한다. 직접 브랜치를 만들어보고 사용해보자 git branch 브랜치명 // 브랜치 생성 git checkout 브랜치명 // 브랜치 변경 정상적으로 브랜치가 변경이 된 것을 볼 수 있고 이 브랜치에서 작업하는 것들은 기존의 main 브랜치와는 .. 더보기 이전 커밋으로 git reset 하기 작업을 하다가 어느 시점(커밋) 부터의 작업이 통째로 다른 방향으로 흘러 갔거나 본인이 작업물이 맘에 안들어서 특정 시점으로 돌아가고 싶을 때 사용 할 수 있는 명령어가 있다. git reset --hard 커밋아이디 우선 깃에서 HEAD 라는 것을 볼 수 있는데 이 헤드가 가리키는 컷이 가장 최근 커밋이다. 이게 지금 최신 상태의 calculator 파일의 모습이다. 이전 단계의 커밋인 9bae~~~로 한 번 리셋하고 내용이 바뀌었는지 확인 해보겠다. 이전 단계에 있던 sayHello 함수가 없어지고 헤드가 가리키는 것도 달라진 것을 볼 수 있다. 더보기 GIT 긴 커맨드에 alias 설정하기 깃으로 여러 옵션들이 딸린 명령어를 입력 할 경우 특히 그 명령어가 본인이 자주 쓰는 명령어일 경우 매번 그 긴 명령어를 치기 귀찮을 것이다. alias 명령어를 통해 문구를 설정해줄 수 있는데 git config alias.실행시킬 명령어 '실행될 명령어문구' 잘 작동한다. 더보기 최신 커밋 수정하기 작업을 하다가 가장 최근에 남긴 커밋버전에 뒤늦게 어떤 실수가 있거나 추가 삭제 할 게 빠졌을 때 쓸 수 있는 명령어가 있다. git commit --amend 가장 최신 커밋에 접근 할 수 있는데 이런 식으로 마저 수정 할 부분을 수정하고 add 한 뒤에 명령어를 입력해주면 이런식으로 텍스트 에디터 창이 뜬다. 커밋메세지를 변경할 수도 있으며 작성하고 아래의 Exit 해주고 저장하고 로그를 찍어보면 바뀐 것을 확인 할 수 있다. 더보기 Git log 커밋 히스토리 보기 개발을 하다 보면 많은 작업들이 있고 그때 마다 필요에 따라 커밋을 남기는데 언제 어떤 내용들이 커밋되었는지 알 수 있는 명령어가 git log 이다. 이런 식으로 커밋 내역들이 나오고 주황색으로 밑줄 친 내용이 커밋 해시, 혹은 커밋 아이디이다. 나중에 특정 버전을 찾거나 돌아갈 때 필요한 구분값이 되겠다. 이렇게 보면 로그가 조금만 많이 찍혀도 가독성이 많이 떨어지게 된다. 그래서 해시 값과 커밋 메시지 만 이쁘게 한줄에 출력해주는 옵션이 있다. git log --pretty=oneline + 보너스 위의 커밋 해시와 메시지를 보고 커밋 당시에 어떤 내용들이 바뀌었는지 본인이 확인하고 싶을 때 git show 커밋 아이디 // 대략 앞에서부터 4개~6개 정도만 써줘도 된다 하게 되면 커밋 전 후 변경.. 더보기 Git Pull 원격 레포지토리 내용을 로컬 레포지토리에 반영하기 이전에 git push 로컬 레포에서 리모트 레포로 바뀐 내용을 업데이트 시켜주었으니 반대로 리모트 레포에서 바뀐 내용(최신버전 ex: 협업시 다른 사람이 업데이트 할 시)을 로컬 레포에 반영시켜주는 것을 해보자. 먼저 이번에 쓸 명령어는 'git pull' 로 연습을 위해 깃허브에서 직접 파일 하나를 수정하고 로컬에서 git pull 해보자 저 버튼을 누르고 직접 깃허브에서 파일을 수정 하고 커밋 한 뒤에 커밋이 된 것을 확인하고 git pull 해보자. '직접 수정 해보깅' 텍스트를 추가로 넣어주겠다. 잘 된다 ** 로컬 -> 리뫁 === 'push' ** 리뫁 -> 로컬 === 'pull' 더보기 이전 1 2 3 다음