Commit : Commit 버튼을 누르면 Local 저장소에 저장된다. 그리고 Push에 1이 추가된다
Push : Push를 하면 원격 저장소에 내가 수정한 퍄일이 올라간다
Pull : Push와 반대로 원격 저장소의 최신 소스를 받을 때 사용한다
Branch
Branch 설명
branch는 나뭇가지 처럼 분기된 저장소(비슷한)를 만드는 것을 말한다
master는 우리가 이때 까지 사용하던 기본 저장소(브런치)를 말한다
현재 버전에서 기능이 많이 변화된다면 브런치를 만들어야 한다.왜냐하면 A기능을 추가한다고 할 때 A기능을 계속 master 저장소에 커밋하게 되면 라이브 되고 있는 소스와 개발소스가 뒤엉켜서 장애가 날 확률이 높아진다. 그래서 A기능이 완성된 후 한번에 master 저장소에 넣어야 안전하다
Branch는 ‘Branch’버튼을 눌러서 생성할 수 있다. 생성되었다면 옆에 BRANCHES 메뉴에 branch 메뉴가 생긴것을 확인할 수 있다
a.txt 파일의 내용이 branch마다 다를 때 branch를 이동할 때마다 a.txt 내용이 바뀐다
Merge
branch 끼리 소스코드 내용을 병합하는 것
내 소스를 원격 저장소에 올릴 때 사용
master와 branch 병합 방법
branch에서 commit 전 반드시 pull한다
pull하고 충돌이 나면 수정하고 수정사항을 올린다
master로 이동하고 branch 오른쪽 마우스클릭하여 ‘Merge work into current branch’ 메뉴를 누른다(가져올 branch로 이동하고 가져올 소스코드가 있는 branch를 선택해 ‘Merge work..’ 버튼을 누르면 된다
master에서 충돌나면 수정하고 아니라면 수정사항을 push해서 원격 저장소에 올린다
충돌해결
Merge를 하면 master, branch의 소스코드가 다른부분에서 충돌이 날 수 있다
소스코드 수정 후 수정파일을 오른쪽 클릭 Resolve conflicts-Mark Resolved 클릭
Discard,Remove,Reset, Revert
Discard : Unstaged files에 있을 때 파일을 원래대로 되돌릴 수 있다
Remove : Unstaged files에 있을 때 파일자체를 삭제하는 것
Reset : 커밋이력에 내용을 아예 지워버리면서 특정 버전으로 되돌리는 것.원격 저장소에 올리기전에만 사용할 수 있다