[Git] PR Merge의 방법들과 각 방법의 특징
·
Etc./Git ∙ GitHub
GitHub에서는 두 개의 브랜치를 머지(merge)하는 세 가지의 방법이 있다. 각 방법이 무엇인지, 그 특징은 무엇인지 알아보자. 1. Create a merge commit 두 브랜치의 변경 사항을 모두 유지하면서 병합 각 브랜치의 변경 사항이 과거의 커밋으로 보존되고, 새로운 커밋이 추가되어 최종 병합이 완료 장점 브랜치의 히스토리 모두 유지하면서 변경 사항을 병합할 수 있음 프로젝트의 진행 상황을 명황하게 이해하고 추적 가능 모든 커밋들의 커밋 아이디가 바뀌는 경우가 없기 때문에 squash와 rebase 방식에 비해서 비교적 사용이 쉬움 단점 커밋 히스토리가 복잡해질 수 있음 팀이 커질수록 이 복잡성을 빠르게 증가하게 됨 2. Squash and Merge 브랜치에서의 모든 변경 사항을 하나의..
[Git] git add -A 커맨드와 git add . 커맨드의 차이 (+ git add -u)
·
Etc./Git ∙ GitHub
우선 git add라는 커맨드는 working directory에 있는 새로운 파일, 혹은 수정된 파일을 staging area에 올리는 작업을 하는 커맨드이다. 공부를 하던 중 한 예시에서 -A 옵션이 달린 커맨드가 쓰였는데 git add . 과 헷갈려서 검색해 본 내용을 정리해서 기록으로 남긴다. 우선 두 커맨드는 staging area에 올라갈 대상 파일의 범위에 차이가 있다. git add -A: 레포지토리 전체에 있는 모든 파일을 staging area에 더함 git add . : 현재 디렉토리와 하위 디렉토리에 있는 모든 파일을 staging area에 더함 그래서 루트 레포지토리에서 실행된 커맨드가 아니라면 둘의 결과는 다르다. 좀 더 찾아보니 git add -u라는 커맨드도 있다. git ..