Git의 원리
-
Git - 6.2 Git의 원리(part.2) Merge & Conflict, 3-way MergeSTUDY/Git & Github 2021. 1. 8. 15:18
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이번글은 Git의 원리 마지막 글로, Merge와 Conflict 그리고 3-way Merge에 대해 알아보도록 하겠습니다. Merge & Conflict Merge 시, confilct가 발생하는 상황을 만들고, 이를 어떻게 해결하는가를 같이 한번 알아보도록 하겠습니다. 역시 이번에도 연습을 위해, 새로운 디렉토리를 하나 생성해주시고, git init을 해줍니다. 그리고 역시나 동일하게 f1.txt를 생성합니다. 이번에는 아주 간단한 함수를 하나 만들어줍니다. 그리고 git add f1.txt , git commit -m "1"로 새로운 버전을 하나 생성합니다. /* f1.txt */ function () { return 'c..
-
Git - 6.1 Git의 원리(part.2) Branch, Reset, Checkout의 원리STUDY/Git & Github 2021. 1. 7. 15:56
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이번에는 git의 branch, reset, checkout의 원리에 대해 알아보겠습니다. git branch의 원리 새로운 파일을 생성한 후, git init을 하면 아래와 같은 폴더들이 생성됩니다. 이중에서 오늘은 ./HEAD 폴더에 대해 살펴보겠습니다. HEAD 는 아래와 같이 refs/heads/master 를 가리키고 있고, 초기에 아무것도 하지 않은 경우에는 아래와 같이 비어있습니다. 이제 f1.txt 파일을 생성하고, commit 한 이후에는 어떤 변화가 생기는지 확인해보도록 하겠습니다. f1.txt를 commit 한 후에, HEAD 를 보면 가장 최근에 생성한 commit을 가리키고 있습니다. (왼쪽 사진) f1...
-
Git - 4.2 Git의 원리(commit의 원리, status의 원리)STUDY/Git & Github 2021. 1. 5. 13:25
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 지난 포스트에 이어 Git의 원리, 그중에서도 저번에 다루지 못한 commit과 status의 원리에 대해 알아보도록 하겠습니다. git commit의 원리 지난 번에 git add의 원리에 대해 설명하면서, 세개의 파일 f1, f2, f3.txt 파일은 add만 한 상태로 포스트를 마무리 했었습니다. 오늘은 그 파일들을 commit 해보면서 commit의 원리에 대해 알아보도록 하겠습니다. 우선 git status 를 통해, 현재 상태를 먼저 보도록 하겠습니다. 아래의 사진과 같이 세개의 파일 f1, f2, f3.txt 이 stage area에 올라가 있는것을 확인할 수 있습니다. 이제 이 파일들을 commit 해보면서 .gi..
-
Git - 4.1 Git의 원리(add의 원리, object 파일명의 원리)STUDY/Git & Github 2021. 1. 4. 15:21
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이전까지의 글에서 Git의 기본적인 명령어에 대하여 알아보았습니다. 이번에는 앞서 살펴본 Git의 명령어들이 어떻게 동작하는 지에 대해 살펴보겠습니다. 강의에서 말하듯, 원리를 아는 것이 Git을 이해하는 데 큰 도움이 된다고 생각합니다. 본격적으로 Git의 원리에 대해 알아보기 이전에 Git 내부를 분석하는데 도움을 주는 도구, "Gistory"를 설치해줍니다. 1. 파이썬 설치(파이썬 설치에 대한 내용은 따로 설명하지 않겠습니다.) 2. pip로 설치 - Mac / Linux: sudo pip3 install gistory Gistory 사용법 1. .git 디렉토리로 이동 2. $gistory 3. 브라우저에서 "local..