STUDY
-
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 - 5.3 StashSTUDY/Git & Github 2021. 1. 7. 13:13
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이번에는 Branch의 마지막 내용인 stash에 대해 알아보도록 하겠습니다. 역시나 이번에도 실습을 위해, 새로운 디렉토리를 생성하고 git저장소로 초기화시켜줍니다. f1.txt 파일을 만들어주고, 내용은 "a"로 해준 후 commit을 해줍니다. 이후에, exp branch를 하나 생성한 후 f1.txt의 내용을 "ab"로 조금 수정해줍니다. 이때! 만약, exp에서 f1.txt를 수정하다가, master branch에서 확인할 내용이 있어 수정한 내용을 commit하지 않고, 잠시 branch를 master로 변경하면 어떻게 될까요? commit이나 merge를 하지 않았음에도 exp에서의 수정 내용이, master bra..
-
Git - 5.1 Branch 충돌 해결STUDY/Git & Github 2021. 1. 6. 15:58
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이전 글에 이어 이번에는 Branch 충돌 해결에 대해 알아보도록 하겠습니다. 편의를 위해 새로운 git 저장소를 만들어 실습을 진행했습니다. ㅎㅎ 우선 master branch에 master.txt 내용은 간단하게 "a"라고 적어주고, add와 commit을 해줍니다. 그 다음, 새로운 branch exp를 만들어, exp.txt을 만들고, 내용은 역시 "a"라고 적어준 후, add와 commit을 해줍니다. 그리고 다시 master branch로 돌아와 exp를 merge 해줍니다. 결과는 아래와 같습니다. Git 각각의 branch에서 새로운, 이름이 다른 파일들도 자동으로 merge 시켜줍니다. 그렇다면, 이름이 동일하고..
-
Git - 5. BranchSTUDY/Git & Github 2021. 1. 6. 14:40
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. Git에 대해 공부하다 보면, Branch에 대해 한번쯤은 들어본 적이 있을 것 입니다. Branch는 Git을 강력한 버전 관리 도구로 만들어주는 동시에, 꽤나 우리를 골치 아프게 하는 친구입니다. 하지만 Git을 사용하기 위해선 반드시 알아야 하는 것이기도 하죠. 그래서 이번에는 Branch에 대해 알아보도록 하겠습니다. Branch 아래의 그림은 Branch를 설명하는 그림입니다. 쉽게 말하면, 다들 한번쯤 레포트를 작성하면서, final_report.docx, final_report_2.docx, final_fianl_report.docx.... 이런 식으로 수정한 과제를 이름을 다르게 해서 저장해본 적이 있으실 겁니다...
-
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..
-
Git - 3. 변경사항 확인과 과거의 버전으로 돌아가기(reset), 매뉴얼 보는 법STUDY/Git & Github 2020. 12. 30. 13:26
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 이번 포스트에서는, 현재의 버전과 이전 버전 간의 차이점, 변경사항을 확인하는 방법과, 과거의 버전으로 돌아가는 방법에 대하여 간략하게 알아보고자 합니다. #주의할 점은, 강의에서 말하는 것 처럼 과거의 버전으로 돌아가는 git rest 명령어는 위험한 작업이고, 저를 포함한 이 글을 보는 초보자 분들은 조금 더 Git에 대해 깊게 공부한 이후에 다시 한번 공부하시는 것을 추천합니다. 1. 변경사항 확인 1 - 1) git log -p 앞선 포스트에서 file1.txt을 git add와 git commit 명령어를 통해 버전을 생성하고, 이 파일을 수정하여 새로운 버전을 생성하는 연습까지 해보았습니다. 이번에는 이 두개의 버전의..
-
Git - 2. Git을 이용한 파일 관리와 버전 만들기 (git add, commit, status)STUDY/Git & Github 2020. 12. 30. 10:55
#이 글은 "생활코딩" '프로젝트 관리' 강의를 기반으로 정리한 글 입니다. 1. Git을 이용한 파일 관리 앞선 글에서, Git의 저장소를 생성했습니다. 하지만 이 저장소가 자동으로 우리가 만든 파일을 관리해주는 것은 아닙니다.파일을 관리하기 위해선 별도로 해당 파일을 Git 저장소의 관리 대상으로 지정해야합니다. 1) 연습을 위해 Git 디렉토리에, vi 편집기를 사용하여 파일을 하나 생성합니다. : vi file1.txt *vi 편집기 간단 사용법 입력 : a 혹은 i 저장 : esc키를 누른 후 :wq 치고 Enter 2) 이제 만든 file1.txt 파일을 git이 추적하도록 명령을 해줍니다. : git add file1.txt git add git add 명령어는 작업 디렉토리( 즉, Git ..