티스토리 뷰
Sourcetree 툴 사용
1.설치
홈페이지에서 다운받기 > 설치하기 > Bitbucket 클릭 > 브라우저 창이 뜸 > 깃허브에서 쓰는 계정(구글)으로 로그인 > Grant access > Authentication Successful > 소스트리에 가보면 등록 완료!라고 되어 있음. > 다음 > Git(체크) Mercurial(체크해제) > 다운로드 중... > 다음 > Preferences 로그인한 정보가 그대로 뜸. > 다음 > SSH 키 있나요? "아니요" 클릭 > 설치 완료
2.Sourcetree
2-1.깃허브 계정과 연동(원격만 연결)
Remote 클릭 > 계정 추가 > 호스팅 서비스 : GitHub, 인증 : OAuth > OAuth 토큰 새로고침 클릭 > (브라우저에 로그인 되어 있다면 자동으로) 인증 성공! > 계정 생성 > 새로고침하면 폴더 목록이 나옴.
2-2.로컬과 연동
Add :로컬저장소를 탐색으로 찾는 것, 이미 init이 되어 있는 폴더를 추가하는 것
Create :새롭게 폴더를 만들고 init까지 해주는 것
git init 되어 있는 폴더가 있기 때문에 Add 클릭 > 탐색 클릭 > 폴더 선택 > 'Git저장소입니다'라는 문구 뜸 > 자동으로 이름이 뜸 > Local Folder : [루트] > 추가 클릭 > 로컬과 연결되어 로컬의 상태가 툴에 다 뜬다.
master : 로컬 브랜치를 의미
origin/master : 원격저장소가 위치하는 곳. push, pull 사용으로 바뀜.
origin/HEAD : 현재 커밋 상태를 표시
markdown 파일 > 텍스트 파일로 열리게 설정하기.
'# ' markdown의 형식임. 주제처럼 나옴(h태그처럼). 띄어쓰기를 안하면 인식이 안됨.
push할 때!
manager-core 선택
Always use this from now on(체크)
--------------------------------------------
브랜치
한 개의 처리 경로를 여러 개의 처리 경로로 나눌 때 사용한다.
보통 동시에 버전 관리를 해야할 때 사용하며,
기본 브랜치는 master이고, 각각의 브랜치는 현재 버전에 대한 커밋을 가리키고 있다(HEAD).
1. 커밋3 상태에서 d 브랜치 생성
2. d 브랜치에서 커밋4 진행
3. master 브랜치에서 커밋5 진행
4. [HEAD] 포인터의 역할
브랜치 혹은 커밋을 가리키는 포인터이며, [HEAD]를 통해 현재 커밋 상태를 표시해준다.
또한 최신 커밋이 아닌 과거 커밋으로도 이동할 수 있다.
마스터 브랜치에서는 코딩하지 않는다!!
마스터 브랜치의 역할 : 원격저장소에 있는 것을 받기 위한 목적. pull받고, 최종 push만 하기.(push, pull 전용)
로컬 브랜치는 내가 내 버전을 관리, 내가 정확하게 뭘 작업할 지에 대해서 분리시키는 것.
마스터 브랜치에서는 작업하지 않는다! 내 업무에 맞는 브랜치를 생성해서 거기에서 작업한다.
작업 이후 push할 때, master와 병합하고 push하기.
병합할 때는 현재 위치에서 생각하기!
**작업 순서
1.마스터에서 작업하지 않는다.
2.작업할 브랜치 생성한다.(브랜치 생성 시점 확인, 브랜치 이름은 파일경로)
3.마스터로 이동해서 작업한 거 병합하기.
4.마스터로 push한다.
**브랜치를 삭제할 때
다른 브랜치로 이동한 다음에, 삭제할 브랜치 우클릭해서 삭제 진행
브랜치에 새로운 내용이 생김! >> master에서 병합
master에 새로운 내용이 생김! >> 브랜치에서 병합
브랜치에 새로운 내용이 생기면, 그 내용이 없는 브랜치에서 병합 진행
PR : pull requests
---------------------------------------------------
깃 작업 순서
1. 내 업무에 맞는 브랜치 생성
2. 업무 진행
3. PULL 요청이 오면 master 브랜치로 이동 후 pull 받기
4. 내 브랜치로 이동 후 업무 이어서 진행
5. 업무 종료
6. master 브랜치로 이동
7. 내 브랜치와 병합
8. push
9. 새로운 업무 담당 시 새로운 브랜치 생성
10. 무한 반복
'2022 > git' 카테고리의 다른 글
day02[gitignore,PR] (0) | 2022.09.23 |
---|---|
day01[Git, GitHub, install, GitBash] (1) | 2022.09.21 |