SourceTree 를이용한 Git 사용법 1

Similar documents
리눅스기초

git CLI 로간단하게조작하기! by 윤선지

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

슬라이드 1

github_introduction.key

Studuino소프트웨어 설치

<4D F736F F D D31312D30312D53572D30312DBBE7BFEBC0DABCB3B8EDBCAD5FBFDCBACEB9E8C6F7BFEB2E646F63>

슬라이드 1

Microsoft PowerPoint Android-SDK설치.HelloAndroid(1.0h).pptx

ISP and CodeVisionAVR C Compiler.hwp

슬라이드 1

PowerPoint 프레젠테이션

Install stm32cubemx and st-link utility

PowerPoint Template

게임 기획서 표준양식 연구보고서

PowerPoint Presentation

Microsoft PowerPoint SDK설치.HelloAndroid(1.5h).pptx

슬라이드 1

4S 1차년도 평가 발표자료

메뉴얼41페이지-2

PowerPoint 프레젠테이션

Windows 8에서 BioStar 1 설치하기

Cubase AI installation guide

Microsoft Word - Armjtag_문서1.doc

슬라이드 1

기존에 Windchill Program 이 설치된 Home Directory 를 선택해준다. 프로그램설치후설치내역을확인해보면 Adobe Acrobat 6.0 Support 내역을확인할수 있다.

문서의 제목 나눔고딕B, 54pt

NTD36HD Manual

System Recovery 사용자 매뉴얼

6. 설치가시작되는동안 USB 드라이버가자동으로로드됩니다. USB 드라이버가성공적으로로드되면 Setup is starting( 설치가시작되는중 )... 화면이표시됩니다. 7. 화면지침에따라 Windows 7 설치를완료합니다. 방법 2: 수정된 Windows 7 ISO

CODESYS 런타임 설치과정

JDK이클립스

PowerPoint Presentation

SBR-100S User Manual

PowerPoint 프레젠테이션

슬라이드 1

슬라이드 1

svn 을능숙하게다루던능력자들처음 git 을만나면대게이런표정이죠.

슬라이드 1

server name>/arcgis/rest/services server name>/<web adaptor name>/rest/services ArcGIS 10.1 for Server System requirements - 지

01장

<3833C8A35FB0F8C7D05FC6AEB7BBB5E55F F466C6F77B8A65FC8B0BFEBC7D15FC8BFB0FAC0FBC0CE5FBCD2BDBA5FC7FCBBF35FB0FCB8AE5F F322E687770>

Chapter 1

아래 항목은 최신( ) 이미지를 모두 제대로 설치하였을 때를 가정한다

Google SVN 계정만들기 Site : 1. 사이트접속후프로젝트호스팅선택 2. 오픈소스프로젝트검색선택

PowerPoint Template

Microsoft Word - src.doc

Title Here

Office 365 사용자 가이드

B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위

1

Microsoft PowerPoint - 안드로이드 개발 환경 구축(170411)

OM2M 기반의 OHP-M2M 오픈소스설치가이드 2015 년 8 월 경북대학교통신프로토콜연구실 최예찬, 강형우 요약 사물인터넷 (Internet of Things: IoT) 이이슈가되면서다양한사

gcloud storage 사용자가이드 1 / 17

View Licenses and Services (customer)

Endpoint Protector - Active Directory Deployment Guide

WebPACK 및 ModelSim 사용법.hwp

OnTuneV3_Manager_Install

<3836C8A35FB0F8C7D05FC6AEB7BBB5E55F F466C6F77B8A65FC8B0BFEBC7D15FC8BFB0FAC0FBC0CE5FBCD2BDBA5FC7FCBBF35FB0FCB8AE5F F332E687770>

PowerPoint 프레젠테이션

Microsoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

Xcrypt 내장형 X211SCI 수신기 KBS World 채널 설정법

소프트웨어공학 Tutorial #2: StarUML Eun Man Choi

Data Sync Manager(DSM) Example Guide Data Sync Manager (DSM) Example Guide DSM Copyright 2003 Ari System, Inc. All Rights reserved. Data Sync Manager

Slide 1

GIT/GITHUB 사용 1 Git & GitHub 튜토리얼 출처 : [Studio Rini ] Git 을보통어떻게사용하는지간략한 Flow 를보겠습니다. 1. 새프로젝트를생성, 프로젝트폴더에 g

Tablespace On-Offline 테이블스페이스 온라인/오프라인

*Revision History 날짜 내용 최초작성 Tel Fax [2] page

Microsoft Word - CPL-TR IETF-ID.doc

Network Security - Wired Sniffing 실습 ICNS Lab. Kyung Hee University

VPN.hwp

슬라이드 1

Splentec V-WORM Quick Installation Guide Version: 1.0 Contact Information 올리브텍 주소 : 경기도성남시분당구구미로 11 ( 포인트타운 701호 ) URL: E-M

슬라이드 1

EEAP - Proposal Template

Microsoft Word - installation_ML_Incheon_Student

Convenience Timetable Design

Remote UI Guide

ICAS CADWorx SPLM License 평가판설치가이드

슬라이드 1

<4F B8A620C0CCBFEBC7D120C8B8B7CE20C0DBBCBAC0C720B1E2C3CA2E687770>

C. KHU-EE xmega Board 에서는 Button 을 2 개만사용하기때문에 GPIO_PUSH_BUTTON_2 과 GPIO_PUSH_BUTTON_3 define 을 Comment 처리 한다. D. AT45DBX 도사용하지않기때문에 Comment 처리한다. E.

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

MaxstAR SDK 2.0 for Unity3D Manual Ver

슬라이드 1

PathEye 공식 블로그 다운로드 받으세요!! 지속적으로 업그래이드 됩니다. 여러분의 의견을 주시면 개발에 반영하겠 습니다.

슬라이드 1

을풀면된다. 2. JDK 설치 JDK 는 Sun Developer Network 의 Java( 혹은 에서 Download > JavaSE 에서 JDK 6 Update xx 를선택하면설치파일을

경우 1) 80GB( 원본 ) => 2TB( 복사본 ), 원본 80GB 는 MBR 로디스크초기화하고 NTFS 로포맷한경우 복사본 HDD 도 MBR 로디스크초기화되고 80GB 만큼포맷되고나머지영역 (80GB~ 나머지부분 ) 은할당되지않음 으로나온다. A. Window P

<C0CCC8ADBBE7C0CCB9F6C4B7C6DBBDBA20B8C5B4BABEF328C3D6C1BE295FBCF6C1A42E696E6464>

윈도우시스템프로그래밍

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

tiawPlot ac 사용방법

Microsoft PowerPoint - XUSB_제품메뉴얼_140206

(Microsoft PowerPoint - \270\266\300\314\305\251\267\316\304\250USB_Host_Device_\272\316\306\256\267\316\264\365\275\307\275\300_Philip.ppt)

신한은행 머니멘토 환경설정 매뉴얼

슬라이드 1

디럭스바이블 2005 설치가이드 ( 주 ) 미션소프트 TEL FAX 디럭스바이블 2005 설치가이드 DeluxeBible 2005

Transcription:

SourceTree 를이용한 Git 사용법 1

GIT 설치방법 https://www.git-scm.com/downloads URL 로접속 à 다운로드클릭 à 설치 2 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (1) https://www.sourcetreeapp.com/ URL 로접속 à 다운로드클릭 3 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (2) Download 버튼을클릭하면자동으로아래와같은창으로넘어가면서 Install File Download 가시작 4 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (3) 소스트리를설치하기전.NET Framework 4.5 를설치단계 5 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (4) 다음과같은화면이나타나면.NET Framework 4.5 설치 6 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (5) 다음과같은화면이나타나면.NET Framework 4.5 체크후 Next 클릭이후동의함체크후설치클릭 7 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (6) Install File 을클릭하여실행하면위와같은창이나타남 8 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (7) SourceTree 를어디에 Install 할지 Path 를설정 9 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (8) Install 클릭 10 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (9) Install 진행과정 11 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (10) 붉은색박스체크 12 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (11) 라이선스에동의후계속 13 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (12) 계정이있다면 Use an existing account 버튼을선택하고계정이없을경우 Go to My Altassian 버튼을눌러서계정을만든뒤설치진행 (Atlassian account 계정부분에서설정건너뛰기클릭 ) 14 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (13) SSH 가있는경우 Yes, 없는경우 No 15 System Software & Security Lab@Myongji Univ.

SourceTree 설치방법 (14) Git 을 Gui 로이용하기위한 SourceTree 설치완료 16 System Software & Security Lab@Myongji Univ.

Sublimetext 설치 Sublimetext 설치 17 System Software & Security Lab@Myongji Univ.

저장소만들기 (init) 18

저장소만들기 (init) 바탕화면에 githtml 폴더생성 à Add repository 클릭 à Create New Repository 탭을누르고 Destination Path 에 git 폴더로경로지정 à Create 작업할파일의경로 19 System Software & Security Lab@Myongji Univ.

저장소만들기 (init) 생성된저장소 20 System Software & Security Lab@Myongji Univ.

SourceTree 를활용한 버전만들기 (commit) 21

Commit 프로젝트를진행하다보면하나의기능을완성하거나더이상수정을할 필요가없다고생각할때완성된기존의소스를다른곳에백업한다. 이것을 Git 에서는 commit 이라한다. 22 System Software & Security Lab@Myongji Univ.

Commit Git 리포지토리 ( 자신의프로젝트폴더 ) 에소스파일을작성하고생성 23 System Software & Security Lab@Myongji Univ.

Commit 파일을저장한후 SourceTree 를확인해보면다음과같이새롭게생성하거나수정한파일들이 SourceTree 의 Unstaged files 목록에표시 à 이목록에서 add 하고자하는파일을선택후 Stage Selected 클릭 Git 에최초 commit 되지않은, 현재관리하지않고있는파일의미 24 System Software & Security Lab@Myongji Univ.

Commit Unstaged files 목록에서 add 를하면파일이상단의 Staged files 로이동 (commit 하기전의임시영역에해당파일들이 commit 될준비가되었음을나타냄 ) Staged files 를커밋하기위하여맨하단에커밋메시지로 maincode.java 작성 이라고입력 à commit 버튼클릭 25 System Software & Security Lab@Myongji Univ.

Commit 하나의파일커밋로그생성 ( 커밋된파일을클릭하면파일의내용을확인할수있음초록색영역은추가되거나수정된부분을의미하며빨간색영역은예전버전에서삭제된부분을의미 ) 26 System Software & Security Lab@Myongji Univ.

SourceTree 를활용한 commit 전 수정사항취소하기 (discard) 27

discard 만약소스코드를수정을하고 commit을하기직전의상황에서수정한내용에문제점이발견되고수정한부분을되돌릴려고한다. 직접이부분을사람이되돌리고자하면하나하나원상태와똑같이지우고수정해가며이전의상태로되돌릴수있다. 이때 Git의 discard를통해자동으로수정하기전의 commit한버전으로돌아갈수있다. 28 System Software & Security Lab@Myongji Univ.

discard Sublimetest 파일로아래와같이 html 이라는파일저장 < 수정전 > 29 System Software & Security Lab@Myongji Univ.

discard 다음과같이 commit 30 System Software & Security Lab@Myongji Univ.

discard Html 파일을다음과같이수정 31 System Software & Security Lab@Myongji Univ.

discard 파일이안열릴경우 à 연결프로그램 à Sublime text 2 à 확인 32 System Software & Security Lab@Myongji Univ.

discard 파일의내용이수정되면 SourceTree 에아래와같이표시 à 여기서 commit 을하기전소스코드에문제가발생하여수정하기전으로소스코드를되돌리고싶다면 SourceTree 의상단메뉴에서 Discard 클릭 33 System Software & Security Lab@Myongji Univ.

discard Html 파일선택 à 오른쪽 Discard hunk 클릭 à 다음과같은창이뜨면 OK 34 System Software & Security Lab@Myongji Univ.

discard 이상태에서 Cancel 클릭 35 System Software & Security Lab@Myongji Univ.

discard 완료후 Uncommitted changes 가사라지고작성하던내용을확인해보면수정하기전의코드로돌아가있는것을확인할수있음 36 System Software & Security Lab@Myongji Univ.

discard 결과 37 System Software & Security Lab@Myongji Univ.

SourceTree 를활용한 commit 후 수정사항되돌리기 (reset) 38

reset 프로젝트가진행되던도중문제가발생하여이저의버전으로돌아가야 하는상황이발생된다. 이때돌아가길원하는버전으로 reset 을통해 되돌릴수있다. 39 System Software & Security Lab@Myongji Univ.

reset Abcd.txt 파일을만들고저장 à SourceTree 에서 commit ( 커밋메시지로 abcd 문구추가 ) 40 System Software & Security Lab@Myongji Univ.

reset 되돌아갈커밋로그를선택하고마우스오른쪽버튼을클릭하고 Reset current branch to this commit 클릭 41 System Software & Security Lab@Myongji Univ.

reset Reset to Commit 창은아래와같음 à 원하는모드선택후 ok 1) soft: index에올라온수정사항보존, working tree에올라온수정사항보존 2) Mixed: index에올라온수정사항취소, working tree에올라온수정사항보존 3) Hard: index에올라온수정사항취소, working tree에올라온수정사항보존 42 System Software & Security Lab@Myongji Univ.

reset Hard mode 를선택할경우, Reset 한버전이후의버전이모두삭제되며커밋로그도 해당버전의로그로수정됨 43 System Software & Security Lab@Myongji Univ.

reset Mixed mode 를선택할경우, Reset 한버전이후의버전이모두삭제되었으나 working tree 의 소스코드는유지되어 Uncommitted changes 항목이표시됨 44 System Software & Security Lab@Myongji Univ.

SourceTree 를활용한 브랜치만들기 (branch) 45

branch 프로젝트에새로운기능을추가하고자한다. 동시에기존의프로젝트에서발생하는버그와같은수정사항을고쳐야하는상황이다. 그렇다면다른방향의두가지의작업을함께진행하여야하는데만약새로운기능을추가하는작업이취소되거나수정되어기능을추가하기전의상태로돌아가야하는상황이발생할수있다. 하지만이때 Git을통해이전의상황으로돌아갈경우동시에작업하던프로젝트의수정작업역시사라지고이전상태로돌아가는문제가발생한다. 이때 Git의 branch 개념이필요하다. 46 System Software & Security Lab@Myongji Univ.

branch Sublime text 에다음과같이내용을입력 à Hello, Hi 라고저장 47 System Software & Security Lab@Myongji Univ.

branch 커밋메시지를아래와같이입력하고 commit 48 System Software & Security Lab@Myongji Univ.

branch 아래빨간박스의 (Unstaged files) 에있는파일을체크 (Stage Selected) 49 System Software & Security Lab@Myongji Univ.

branch 커밋메시지는아래와같이입력 à commit 50 System Software & Security Lab@Myongji Univ.

branch 상단메뉴의 Branch 클릭 51 System Software & Security Lab@Myongji Univ.

branch Branch 의이름을입력하고 Create Branch 클릭 52 System Software & Security Lab@Myongji Univ.

branch 다음과같이하나의리포지토리에두개의브랜치 (master, AddBranch) 가생성 AddBranch 의브랜치 53 System Software & Security Lab@Myongji Univ.

branch Master 브랜치 54 System Software & Security Lab@Myongji Univ.

branch 먼저 SourceTree 에서 AddBranch 의브랜치를선택한후내용을수정하고 commit <h2> Easy git<h2> 문구추가 55 System Software & Security Lab@Myongji Univ.

branch 다음과같이 commit 56 System Software & Security Lab@Myongji Univ.

branch AddBranch 브랜치에새로운커밋로그생성 57 System Software & Security Lab@Myongji Univ.

branch 다음으로 master 브랜치를선택 Master 브랜치선택후사라진 <h2> 구문 58 System Software & Security Lab@Myongji Univ.

branch Master 브랜치선택후다음과같이문구추가 59 System Software & Security Lab@Myongji Univ.

branch Master 브랜치에새로운커밋로그생성함 (2 개의다른브랜치에각각의커밋로그가생성 ) 60 System Software & Security Lab@Myongji Univ.

SourceTree 를활용한 브랜치합치기 (merge) 61

merge 두개의작업을하나의버전으로만들어서비스를제공하는것이다. 62 System Software & Security Lab@Myongji Univ.

Merge 충돌 Master 브랜치의상태 63 System Software & Security Lab@Myongji Univ.

Merge 충돌 AddBranch 브랜치의상태 64 System Software & Security Lab@Myongji Univ.

Merge 충돌 가져올 branch 를마우스오른쪽클릭을하고 Merge AddBranch into current branch 클릭 65 System Software & Security Lab@Myongji Univ.

Merge 충돌 Confirm Merge 팝업이뜨면 OK 를클릭 66 System Software & Security Lab@Myongji Univ.

Merge 충돌 여기서 master branch 에 AddBranch 를 merge 할경우아래와같이목록에 Uncomitted changes 가됨 충돌된결과 67 System Software & Security Lab@Myongji Univ.

Merge 충돌 충돌의원인은두개의 branch 의내용을수정할때, 동일한위치의코드를추가하거나 수정하였기때문이다. Master branch AddBranch branch 68 System Software & Security Lab@Myongji Univ.

Merge 충돌 충돌이발생한후 master branch 의내용은아래와같이두개의 branch 의내용을모두 포함하면서사용자에게코드의수정을요구한다. Merge Conflict 가발생 69 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 이전의 merge 의결과로나온내용을다음과같이수정 70 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 SourceTree 에서 Resolve Conflicts 항목에마우스오른쪽클릭을하고아래그림과같이 Mark Resolved 를클릭 71 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 OK 클릭 72 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 결과아래와같이화면이나타남 73 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 이부분을커밋을해주게되면자동으로커밋메시지가생성 커밋을해주면 merge 됨 74 System Software & Security Lab@Myongji Univ.

Merge 충돌해결방법 충돌을해결한 master branch 75 System Software & Security Lab@Myongji Univ.

SourceTree,GitHub 를활용한 원격저장소만들기 76

원격저장소만들기 https://github.com/ 에접속하여회원가입을하고로그인 New repository 클릭 77 System Software & Security Lab@Myongji Univ.

원격저장소만들기 Repository name 란에저장소의이름을쓰고하단의 Create repository 클릭 저장소이름 78 System Software & Security Lab@Myongji Univ.

원격저장소만들기 생성된저장소에자신의컴퓨터에저장되어있는장소를복사하기위해상단의 HTTPS 항목의주소값을복사 아래 or create a new repository on the command line 이하의항목은 SourceTree와같은유저인터페이스기반이아닌텍스트기반인터페이스에서원격저장소를추가하기위해사용됨 79 System Software & Security Lab@Myongji Univ.

원격저장소만들기 SourceTree 상단메뉴의 Repository à Add Remote 클릭 80 System Software & Security Lab@Myongji Univ.

원격저장소만들기 아래의그림과같이해당로컬저장소의원격저장소를관리하는창이나오면 Add 클릭 81 System Software & Security Lab@Myongji Univ.

원격저장소만들기 앞서복사해두었던 GitHub 의원격저장소 HTTPS 항목의값을 URL / Path 란에입력 원격저장소가로컬저장소의첫번째원격저장소일경우 Default remote 체크하여기본원격저장소로 지정하고 OK 클릭 82 System Software & Security Lab@Myongji Univ.

원격저장소만들기 아래와같이원격저장소목록에연결한 origin 생성이됨 à OK 클릭 83 System Software & Security Lab@Myongji Univ.

원격저장소만들기 SourceTree 의메인화면 Remotes 항목에원격저장소 origin 이표시됨 84 System Software & Security Lab@Myongji Univ.

SourceTree,GitHub 를활용한 Push 85

push SourceTree 에서해당하는로컬저장소를선택한뒤상단메뉴의 Push 클릭 86 System Software & Security Lab@Myongji Univ.

push 다음과같이선택하고올리고자하는 branch 를선택 à Push 클릭 àusername 과 Password 를입력하라는 창이나오면자신의 GitHub 계정입력 87 System Software & Security Lab@Myongji Univ.

push Push 가완료되면아래와같이원격저장소 origin 에 Push 과정에서선택한 master 브랜치가등록됨 또한사이트에접속하여해당원격저장소를확인해보면로컬저장소의프로젝트가동기화되어있음 원격저장소 origin 에등록된 master 브랜치 88 System Software & Security Lab@Myongji Univ.

push Push 가완료되면아래와같이원격저장소 origin 에 Push 과정에서선택한 master 브랜치가등록됨 또한사이트에접속하여해당원격저장소를확인해보면로컬저장소의프로젝트가동기화되어있음 89 System Software & Security Lab@Myongji Univ.

SourceTree,GitHub 를활용한 clone 90

clone 백업해둔프로젝트를내컴퓨터로받아오거나협업을위해새로운개발자가프로젝트를로컬저장소로 받아와야하는경우가있다. 이때 clone 을통해로컬저장소에원격저장소에있는프로젝트를가져올수 있다. 91 System Software & Security Lab@Myongji Univ.

clone GitHub 에있는가져올원격저장소에접근하여 HTTPS 값을복사 92 System Software & Security Lab@Myongji Univ.

clone SourceTree 에서왼쪽하단의 Add Repository 클릭 ( 빨간색줄 ) 93 System Software & Security Lab@Myongji Univ.

clone Clone Repository 탭에서 Source Path/URL 에복사해둔 HTTPS 값을붙여넣고 Destination Path 에받아온 프로젝트를저장해둘경로를지정 à Bookmarks 에 SourceTree 에표시할저장소의이름을지정해주고 Clone 클릭 깃 깃 94 System Software & Security Lab@Myongji Univ.

clone 아래와같이 SourceTree 에원격저장소에존재하던프로젝트가생성되었으며지정해둔프로젝트생성 경로에해당하는프로젝트파일이생성됨 95 System Software & Security Lab@Myongji Univ.

clone 설정한경로에 GitHub 의원격저장소에존재하던프로젝트가저장됨 96 System Software & Security Lab@Myongji Univ.