| Git과 Github
(여태까지 git과 github를 같은 도구인줄로만 알고 있었는데.. 그게 아니었다...)
Git은 버전 관리 시스템으로써 로컬 파일의 변경사항을 기록하고, 그 파일에 대한 여러 사용자 간의 작업을 조율하기 위해 사용한다. ==> 코드 관리 측면에서 보나 협업 측면에서 보나 꼭 필요한 도구
Github는 Git을 기반으로 하는 서비스 중 하나로써 Git 저장소 호스팅을 지원하는 웹 서비스
사용자 설정 명령어
git config --global user.email
git config --global user.name
Git 초기화
git init
.gitignore
git에 등록되지 않길 원하는 파일, 폴더들의 목록을 저장
.gitignore에 등록된 파일들은 자동으로 commit에서 제외된다.
Git의 기본 동작 원리
Working Directory : 작업하는 파일이 있는 디렉토리
Staging Area : Git에 등록할 파일들이 올라가는 영역
Repository : 파일이나 폴더를 저장하는 곳
① Local Repository : 개인 전용 저장 공간
② Remote Repository : 깃허브에서 관리되며 여러 사람이 공유
Clone : 로컬에서 작업하기 위해 Remote Repository를 복제하여 내 PC에 Local Repository로 저장
Add : 변경된 파일 중 Repository에 올릴 파일 등록
Commit : 등록된 파일들을 한 덩어리로 만들고 메시지 추가하여 Local Repository에 올림
Push : commit되어 Local Repository에서 변경된 파일들을 Remote Repository로 전달
Pull : Remote Repository의 변경사항을 Local Repository로 가져오기
Fetch : Remote의 소스를 Local로 받아와 합치기
Merge : Fetch한 로컬의 소스를 내 작업 소스에 합치기
Branch : 기존 버전에서 복사하여 새로운 가지를 만들어 다른 방향으로 작업하는 것
Conflict : branch를 merge할 때 Conflict 발생 가능 -> 충돌이 일어난 소스 중 어느 소스를 사용할지 선택