Top Banner
Source Tree(Git) 사사 사사사사사사 사사사
24

Source tree(git) 사용

Apr 14, 2017

Download

Technology

BoxcarDev
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Source tree(git) 사용

Source Tree(Git) 사용

시스템개발팀 신준상

Page 2: Source tree(git) 사용

목차1. 개요2. Git Tool3. 설치4. 저장소 생성5. Push / Pull 6. Branch7. 시나리오 ( 데모 )8. 참고

Page 3: Source tree(git) 사용

1. 개요• 모바일와캠 형상관리 (SCM) 를 위한 사용방법 및 규칙을 정의• 꼭 필요한 사용법만 기재 ( 나머진 개인적으로 학습 )• 몇 가지의 시나리오를 가지고 데모시연

Page 4: Source tree(git) 사용

2. Git Tool (GUI)• Git 을 다루는 툴은 다양하게 존재• TortoiseGit, Git for Window, GitEye, Git Extentions, … 등 많은 툴이 존재한다 .• Source Tree 선택• 깔끔한 UI• 쉬운 사용방법• 계속적인 관리 ( 업데이트 )

Page 5: Source tree(git) 사용

3. 설치1) 설치 URL

https://www.sourcetreeapp.com/

Download Source Tree Free 버튼을 통해 다운로드 후 설치 ( 생략 )

Page 6: Source tree(git) 사용

3. 설치2) 기본설정도구 > 옵션

Git 탭을 선택 > 파일수정 클릭

리모트 저장소 (Git) 에 올리지 말아야 할 확장자 및 폴더를 설정 ( 모든 플젝에 적용됨 Global)

Page 7: Source tree(git) 사용

4. 저장소 생성1) 로컬 저장소 생성

1_1) 1 번 “복제 / 생성” 버튼을 클릭 1_2) ( 혹은 ) 2 번 오른쪽 마우스 클릭 후 나타나는 팝업 창에서 “새 저장소 생성“ 선택

1

2

Page 8: Source tree(git) 사용

4. 저장소 생성1) 로컬 저장소 생성

1_3) 저장소를 위치를 선택1_4) 좌측 탐색기에 생성될 이름을 설정 (1_3 에서 폴더를 선택하면 자동으로 폴더 명으로 설정됨 )

34

Page 9: Source tree(git) 사용

4. 저장소 생성1) 로컬 저장소 생성

1_5) 좌측 탐색기에 저장소 (Test01) 이 표시1_6) 현재 작업중인 ( 열린 ) 프로젝트를 탭으로 표시* 이후 작업 ( 여기선 .txt 파일 하나 생성 )

1_7) 데모5

6

Page 10: Source tree(git) 사용

4. 저장소 생성2) 프로젝트 설정

2_1) 우측 상단 “설정” 버튼 클릭2_2) 현재 “원격 저장소”가 없기 때문에패스2_3) “ 원격 저장소“ 에 올리지 말아야 할 확장자 및 폴더를 설정

( 현재 프로젝트에만 국한됨 )2_4) “ 커밋”시 사용자 정보에 기록될 정보 ( 이름 , 이메일 )

* 작업을 했다고 가정 (test.txt 파일 생성 )

1

2

3

4

Page 11: Source tree(git) 사용

4. 저장소 생성2) 프로젝트 설정

2_5) 클릭하여 변경 되거나 새로 추가된 파일의 내용을 2_6) 에서 볼 수 있다 .2_6) 체크박스를 통해 스테이지로 올릴수 있다 ( 스테이지에 올려야만 “ 커밋”가능 )2_7) 작업된 내용을 입력2_8) “ 커밋”한다

5

6

7

8

Page 12: Source tree(git) 사용

4. 저장소 생성2) 프로젝트 설정

2_9) 이상없이 “커밋”이 되면 브랜치 영역에 “master” 브랜치가 노출된다

2_10) “ 로그 / 히스토리"에도 “ master” 헤더가보여진다

2_11) 상단 큰 아이콘 메뉴에서 “깃 플로우…” 클릭2_12) 초기화 대화상자가 나온다 “확인“ 클릭2_13) “develop” 이라는 개발 브랜치가 생성된다2_14) “ 로그 / 히스토리“ 에도 “ develop” 헤더가

“master” 헤더와 동일선상에 위치한다2_15) 데모

109

11

12

13

14

Page 13: Source tree(git) 사용

5. Push / Pull1) 리모트 저장소 생성

1_1) GitLab 에 저장소 생성1_2) Project 이름 (Test01)1_3) 포함될 그룹을 설정 없다면 개인 계정선택1_4) 설명 ( 옵션 )1_5) 오픈된 프로젝트라면 선택1_6) 클릭으로 생성1_7) 저장소만 존재하기 때문에 기본 페이지에서는 접속 url 만 보인다 복사

1

2

3

4

5

6

7

Page 14: Source tree(git) 사용

5. Push / Pull2) Push

2_1) 상단 “설정”메뉴 클릭2_2) “ 원격” 탭 선택2_3) “ 추가” 버튼 클릭2_4) 체크를 하면 “ origin” 이라는 원격이름자동 생성2_5) “ 리모트 저장소” url 을 입력2_6) “ 확인“ 버튼 클릭2_7) “ 원격 저장소” 경로가 보여짐2_8) “ 확인“ 버튼 클릭

1

2

3

45

6

7

8

Page 15: Source tree(git) 사용

5. Push / Pull2) Push

2_9) 좌측에 “원격 저장소 브랜치“가 보이게 된다 .2_10) 상단 “푸시“ 메뉴 클릭 하면 대화상자가열림2_11) 우리는 “ develop” 만 체크 ( 우리는 “ develop” 만 사용 하기로함 )2_12) “ 확인” 버튼 클릭

910

11

12

Page 16: Source tree(git) 사용

5. Push / Pull2) Push

2_13) “Push” 후 “로그 / 히스토리”를 보면 “ 원격 저장소 브랜치”의 헤더가 “master”, “develop” 과 같은 선상에 놓여진 것을 확인할 수 있다

2_14) “ 원격 저장소”의 “ Files” 부분을 보면 test.txt 파일이 잘 올라가 있는 것을 확인할 수 있다

2_15) 데모

13

14

Page 17: Source tree(git) 사용

5. Push / Pull (Clone)3) Pull

3_1) 우측 상단 “설정“ 메뉴 클릭3_2) “ 저장소 복제“ 탭 선택 ( 기본 선택이 되어있음 )3_3) “ 원격 저장소” 경로를 입력3_4) 복제할 디렉토리를 선택 ( 대화상자 오픈 )3_5) “ 클론“ 버튼 클릭

23

4

5

1

Page 18: Source tree(git) 사용

5. Push / Pull (Clone)3) Pull

3_6) 상단 “브랜치“ 메뉴를 클릭 ( 대화상자 )3_7) “ 새 브랜치“ 영역에 “ master” 라고 입력3_8) “ 브랜치 생성“ 버튼 클릭3_9) “master” 브랜치가 생성된걸 확인할 수 있다

67

8

9

Page 19: Source tree(git) 사용

5. Push / Pull (Clone)3) Pull

3_10) 초기화를 위한 “깃 플로우…” 버튼을 클릭( 대화상자 )

3_11) “ 확인“ 버튼을 클릭3_12) 데모

10

11

Page 20: Source tree(git) 사용

6. Branch1) Develop Branch 생성

1_1) “ 깃 플로우…” 버튼 클릭 ( 대화상자 )1_2) “ 새 기능 시작“ 버튼 클릭1_3) 본인이 알아볼 수 있는 기능명 ( 짧은 ) 입력1_4) “ 확인“ 버튼 클릭1_5) 좌측에 새 브랜치가 생성된걸 볼 수 있다1_6) “ 로그 / 히스토리” 에서 헤더의 위치를 확인할수 있다1_7) 데모

1

2

3

4

56

Page 21: Source tree(git) 사용

6. Branch2) 기능 마무리

2_1) 작업을 완료 했다는 전제

2_2) “ 깃 플로우…” 버튼 클릭 ( 대화상자 )2_3) “ 기능 마무리“ 버튼 클릭2_4) “ 확인“ 버튼으로 마무리2_5) 데모

2

3

4

Page 22: Source tree(git) 사용

7. 시나리오 ( 데모 )1) 시나리오 1

1_1) “ 가“ 군 혼자 작업1_2) “ 가” 군이 “ A” PC 에서 작업 후 “원격 저장소”에 “ Push”1_2) “ 가” 군이 “ B” PC 에서 “원격 저장소”에서 “ Clone” 하고 난 후 작업

2) 시나리오 22_1) “ 가” 와 “나” 군이 동시에 작업2_2) “ 가” 군이 작업 중 “나“ 군이 “원격 저장소”에 “ Push”2_3) “ 가” 군이 “ Fetch”2_4) “ 원격 저장소”에 변경사항이 있음2_5) 로컬 저장소에 병합2_6) “ 원격 저장소”에 “ Push”

Page 23: Source tree(git) 사용

7. 시나리오 ( 데모 )3) 시나리오 3

3_1) “ 가“ 군 혼자 작업3_2) “ 가” 군이 “ develop” 브랜치에서 “ job01” 브랜치를 생성해서 작업중3_3) “job01” 브랜치에서 작업중 다른 작업 요청3_4) “job01” 브랜치에서 작업을 중지하고 “커밋“3_5) “develop” 브랜치로 체크아웃을 하고 “ job02” 브랜치 생성3_6) “job02” 에서 작업 완료 후 “커밋” , “ 기능마무리“를 통해 “ develop” 브랜치로 병합3_7) “ 리모트 저장소”로 “ Push”3_8) “job01” 브랜치로 체크아웃 “ job01” 브랜치에서 “ develop” 브랜치를 병합3_9) “job01” 작업 완료 후 “커밋“ 3_10) “ 기능마무리”를 통해 “ develop” 브랜치로 병합3_11) “ 리모트 저장소”로 “ Push”

4) 시나리오 4* 2) 와 3) 시나리오의 혼합

Page 24: Source tree(git) 사용

8. 참고• http://gmood.tistory.com/378 ( 형상관리 정의 )