Git/Git 기초
-
Git - remote & push & pull & cloneGit/Git 기초 2022. 1. 11. 17:15
remote 원격 저장소 설정 GitHub에 repository를 생성한 후 생성한 repository의 URL을 확인한다. git remote add origin {remote repository URL 주소} 개인 PC에 존재하는 로컬 저장소와 원격 저장소를 연결하기 위한 명령어는 위 코드와 같다. 위 명령어를 사용해서 로컬 저장소와 GitHub의 repository를 연결한다. "git remote -v" 명령어와 "git ls-remote" 명령어를 사용해서 원격 저장소와 연결이 잘 되었는지 확인이 가능하다. push 원격 저장소에 업로드 git push origin master 로컬 저장소의 파일들을 원격 저장소에 업로드하기 위한 명령어는 위 코드와 같다. origin은 기본적으로 설정된 원격 ..
-
Git - rebaseGit/Git 기초 2022. 1. 6. 00:55
rebase 커밋 이력 통합 위 사진은 과거의 커밋된 내역을 나열한 사진이다. 커밋 이력 중 "commit의 설명을 추가"에 대한 커밋과 "pull의 설명을 추가"에 대한 커밋을 하나의 커밋으로 통합하고자 한다. git rebase -i HEAD~~ 과거의 커밋 내역을 통합하고자 할 때는 위 명령어를 사용하면 된다. "git rebase -i HEAD~2" 명령어를 사용하면 가장 최근 2개의 커밋 이력에 대한 에디터가 열린다. "pull의 설명을 추가"에 대한 커밋 이력의 "pick" 문자를 "squash"를 의미하는 "s"로 변경한다. 변경이 끝났으면 ":wq"를 입력해서 저장을 한 후 에디터를 종료한다. 에디터가 종료되면 위 사진과 같은 화면이 나올 것이다. 기존의 커밋 메시지를 대체할 새로운 커밋 ..
-
Git - mergeGit/Git 기초 2022. 1. 4. 23:40
병합(Merge) 병합이란? 여러 개의 브랜치를 하나로 모으는 것을 의미한다. Git에서는 merge 명령어를 사용해서 브랜치를 합치는 작업을 수행한다. 이러한 merge를 하는 방식에는 두 가지가 종류가 존재하는데, "fast-forward merge"와 "3-way merge" 방식이 존재한다. Fast-Forward Merge 예를 들어, 아래 사진과 같이 "master" 브래치에서 분기하는 "bugfix"라는 브랜치가 있다고 가장한다. 이 "bugfix" 브랜치를 "master" 브랜치로 병합할 때, "master" 브랜치의 상태가 이전부터 변경되어 있지 않으면 매우 쉽게 병합할 수 있다. "bugfix" 브랜치의 이력은 "master" 브랜치의 이력을 모두 포함하고 있기 때문에, "master"..
-
Git - branchGit/Git 기초 2022. 1. 4. 22:24
브랜치(Branch) 브랜치란? 소프트웨어를 개발할 때 개발자들은 동일한 소스코드를 함께 공유하고 다루게 된다. 동일한 소스코드 위에서 어떤 개발자는 버그를 수정하기도 하고 또 다른 개발자는 새로운 기능을 만들어 내기도 한다. 이와 같이 여러 사람이 동일한 소스코드를 기반으로 서로 다른 작업을 할 때에는 각각 서로 다른 버전의 보드가 만들어질 수밖에 없다. 이러한 경우에, 여러 개발자들이 동시에 다양한 작업을 할 수 있게 만들어 주는 기능이 바로 브랜치(Branch)이다. 각자의 독립적인 작업 영역 안에서 마음대로 소스코드를 변경할 수 있다. 이렇게 분리된 작업 영역에서 변경된 내용은 나중에 원래의 버전과 비교해서 하나의 새로운 버전으로 만들어 낼 수 있다. 브랜치란 독립적으로 어떤 작업을 진행하기 위한..
-
Git - Git 상태 복구 (reset & reflog & amend)Git/Git 기초 2022. 1. 4. 18:07
Git 상태 복구 상태 복구 git reset --[옵션] 커밋ID 작업을 진행하다가 실수로 인해 중요한 파일을 삭제했거나 제대로 병합이 안될 경우, 잘 작동이 되던 이전 버전으로 돌아갈 필요가 있다. 이때, 사용되는 명령어가 "git reset"이라는 명령어이다. 이러한 "git reset" 명령어는 특정 commit으로 되돌아갈 수 있는데, 되돌린 버전 이후의 버전들은 히스토리에서 삭제된다는 특징이 있다. "git reset" 명령어는 다음과 같이 총 3가지의 옵션이 있다. 옵션 설명 git reset --soft Repository의 내용을 지정한 버전으로 초기화 git reset --mixed Staging Area, Repository의 내용을 지정한 버전으로 초기화 git reset --har..
-
Git - Git 기본기 (init & add & commit)Git/Git 기초 2022. 1. 3. 20:04
Git 기본 명령어 Git 저장소 생성 git init 로컬 저장소로 사용할 폴더를 생성한 후 해당 폴더에서 "git init" 명령어를 실행하면 새로운 저장소가 생성된다. 위 명령어를 실행하면 저장소 구성을 위한 .git 폴더가 생성되며, 이 폴더에는 프로젝트 관리를 위한 파일들과 해당 프로젝트에만 적용할 config 파일 등이 들어있다. 파일 상태 확인 git status "git status" 명령어를 사용해 현재 저장소 내 파일들의 상태를 확인해 볼 수 있다. "git status" 명령어를 통해 현재 저장소에 "test01.txt" 파일이 추가되었음을 확인할 수 있다. 인덱스에 파일 추가 Git은 다음과 같이 크게 3가지 영역으로 구성되어 있다. 작업 폴더(Working Directory) ->..