PowerPoint 프레젠테이션

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

리눅스기초

슬라이드 1

슬라이드 1

github_introduction.key

PowerPoint 프레젠테이션

PowerPoint Presentation

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

SourceTree 를이용한 Git 사용법 1

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

슬라이드 1

슬라이드 1

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

Software Verification Team 오준 임국현 주영진 김슬기

소프트웨어설치 1. 소프트웨어설치및제거 ( 소스코드 ) 소스코드컴파일을이용한 S/W 설치 1. 소스코드다운로드 - 예 ) httpd tar.gz - 압축해제 : #tar xzvf httpd tar.gz - INSTALL 또는 README파일참조

Windows 8에서 BioStar 1 설치하기

슬라이드 1

Microsoft PowerPoint - 08_(Linux)_(Fundamental)_Version_Control_Systems

리눅스설치가이드 3. 3Rabbitz Book 을리눅스에서설치하기위한절차는다음과같습니다. 설치에대한예시는우분투서버 기준으로진행됩니다. 1. Java Development Kit (JDK) 또는 Java Runtime Environment (JRE) 를설치합니다. 2.

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

PowerPoint 프레젠테이션

슬라이드 1

The Pocket Guide to TCP/IP Sockets: C Version

<3833C8A35FB0F8C7D05FC6AEB7BBB5E55F F466C6F77B8A65FC8B0BFEBC7D15FC8BFB0FAC0FBC0CE5FBCD2BDBA5FC7FCBBF35FB0FCB8AE5F F322E687770>

<3836C8A35FB0F8C7D05FC6AEB7BBB5E55F F466C6F77B8A65FC8B0BFEBC7D15FC8BFB0FAC0FBC0CE5FBCD2BDBA5FC7FCBBF35FB0FCB8AE5F F332E687770>

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

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

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

PowerPoint 프레젠테이션

PowerPoint 프레젠테이션

[ 마이크로프로세서 1] 2 주차 3 차시. 포인터와구조체 2 주차 3 차시포인터와구조체 학습목표 1. C 언어에서가장어려운포인터와구조체를설명할수있다. 2. Call By Value 와 Call By Reference 를구분할수있다. 학습내용 1 : 함수 (Functi

vi 사용법

Microsoft PowerPoint - chap01-C언어개요.pptx

2 PX-8000과 RM-8000/LM-8000등의 관련 제품은 시스템의 간편한 설치와 쉬운 운영에 대한 고급 기술을 제공합니다. 또한 뛰어난 확장성으로 사용자가 요구하는 시스템을 손쉽게 구현할 수 있습니다. 메인컨트롤러인 PX-8000의 BGM입력소스를 8개의 로컬지

<31332DB9E9C6AEB7A2C7D8C5B72D3131C0E528BACEB7CF292E687770>

사용자계정관리 1. 사용자계정관리 사용자 (user), 그룹 (group) u 다중사용자시스템 (Multi-User System) - 1 대의시스템을동시에여러사람이접속하여쓸수있게하는시스템 u 사용자 (user) - 시스템관리자 : root (=Super user) -

PowerPoint Presentation

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

[Brochure] KOR_TunA

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

Chapter 1

<4D F736F F F696E74202D C61645FB3EDB8AEC7D5BCBA20B9D720C5F8BBE7BFEBB9FD2E BC8A3C8AF20B8F0B5E55D>

Master Node 구축 Guide 가입후마스터노드구축에필요한서버를임대하여야합니다. 2. 원하시는서버가설치된국가선택후하단의이미지와같이 Server Type을 Ubuntu x 버전으로선택하시고마스터노드구

본교재는수업용으로제작된게시물입니다. 영리목적으로사용할경우저작권법제 30 조항에의거법적처벌을받을수있습니다. [ 실습 ] 스위치장비초기화 1. NVRAM 에저장되어있는 'startup-config' 파일이있다면, 삭제를실시한다. SWx>enable SWx#erase sta

PowerPoint 프레젠테이션

1) 인증서만들기 ssl]# cat > // 설명 : 발급받은인증서 / 개인키파일을한파일로저장합니다. ( 저장방법 : cat [ 개인키

워드표준 가이드

슬라이드 1

Snort Install Manual Ad2m VMware libnet tar.gz DebianOS libpcap tar.gz Putty snort tar.gz WinSCP snort rules 1. 첫번째로네트워크설정 1) ifconf

PowerPoint 프레젠테이션

/chroot/lib/ /chroot/etc/

VPN.hwp

ISP and CodeVisionAVR C Compiler.hwp

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

메일서버등록제(SPF) 인증기능적용안내서 (HP-UX - postfix) OS Mail Server SPF 적용모듈 (Perl 기반) 작성기준 HP-UX 11.11i postfix spf-filter 년 6 월

Microsoft PowerPoint - chap02-C프로그램시작하기.pptx

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

A Hierarchical Approach to Interactive Motion Editing for Human-like Figures

Angry MOMO Presentation

Tizen

System Recovery 사용자 매뉴얼

윈도우시스템프로그래밍

vRealize Automation용 VMware Remote Console - VMware

Web Scraper in 30 Minutes 강철

지난시간에... 우리는 kernel compile을위하여 cross compile 환경을구축했음. UBUNTU 12.04에서 arm-2009q3를사용하여 간단한 c source를빌드함. 한번은 intel CPU를위한 gcc로, 한번은 ARM CPU를위한 gcc로. AR

PowerPoint 프레젠테이션

Windows 10 General Announcement v1.0-KO

슬라이드 1

Microsoft PowerPoint - 10Àå.ppt

이도경, 최덕재 Dokyeong Lee, Deokjai Choi 1. 서론

PowerPoint Template

2009년 상반기 사업계획

Microsoft PowerPoint - [2009] 02.pptx

슬라이드 1

The Pocket Guide to TCP/IP Sockets: C Version

1. 안드로이드개발환경설정 안드로이드개발을위해선툴체인을비롯한다양한소프트웨어패키지가필요합니다 툴체인 (Cross-Compiler) 설치 안드로이드 2.2 프로요부터는소스에기본툴체인이 prebuilt 라는이름으로포함되어있지만, 리눅스 나부트로더 (U-boot)

다. 최신 버전의 rpm 패키지 버전을 다운로드해 다음과 같이 설 치한다. 단 debuginfo의 rpm 패키지는 설치할 필요가 없다. 하기 위한 옵션이고, init는 저장소를 초기화하기 위한 cvs 명령 어이다. - 새로 설치한 경우 : rpm -ivh cvs* -

목차 데모 홖경 및 개요... 3 테스트 서버 설정... 4 DC (Domain Controller) 서버 설정... 4 RDSH (Remote Desktop Session Host) 서버 설정... 9 W7CLIENT (Windows 7 Client) 클라이얶트 설정


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

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

SBR-100S User Manual

6주차.key

메일서버등록제(SPF) 인증기능적용안내서 (AIX - sendmail) OS Mail Server SPF 적용모듈 (Perl 기반) 작성기준 AIX 5.3 sendmail spf-filter 년 6 월

BMP 파일 처리

3. 1 포인터란 3. 2 포인터변수의선언과사용 3. 3 다차원포인터변수의선언과사용 3. 4 주소의가감산 3. 5 함수포인터

PowerPoint 프레젠테이션

Lab 3. 실습문제 (Single linked list)_해답.hwp

PA for SWE2007

Cloud Friendly System Architecture

메일서버등록제(SPF) 인증기능적용안내서 (HP-UX - qmail) OS Mail Server SPF 적용모듈 (Perl 기반) 작성기준 HP-UX 11.11i qmail 1.03 spf-filter 년 6 월

슬라이드 1

커알못의 커널 탐방기 이 세상의 모든 커알못을 위해서

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

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

Microsoft PowerPoint - chap06-2pointer.ppt

Microsoft Word - CPL-TR OM2M.doc

Microsoft Outlook G Suite 가이드

슬라이드 1

Transcription:

오픈소스소프트웨어개발입문 (CP33992) 소스코드버전관리 부산대학교공과대학정보컴퓨터공학부

학습목표 소스코드에대한버전관리의개념과필요성을설명할수있다. git 을활용한버전관리방법을알수있다. 2

버전관리도구 버전관리도구 소프트웨어개발시팀단위로개발중인소스코드등디지털문서의관리에사용 파일의변화를시간에따라기록하여과거특정시점의버전을다시불러올수있는도구 특징및주요기능 소프트웨어개발시팀단위로개발중인소스코드등의디지털문서관리에사용 버전관리수행 배포기능을통해변경사항배포 3

버전관리도구 버전관리도구 CVS(Concurrent Versions System) SVN(Subversion) Git Linux 소스코드를관리할목적으로개발됨 왜 Git을사용하나? 소스코드가변경된이력을쉽게확인할수있음 특정시점에저장된버전과비교하거나특정시점으로되돌아갈수있음 내가올리려는파일이누군가편집한내용과충돌한다면, 서버에업로드할때경고메시지가발생함 실제내용일부문구가서로다르면다른파일로인식함 매번백업용파일복사본을만들필요가없으니까엄청편함 4

Git 을이용한실습 5

Git 의구조 분산버전관리시스템 Git Git 저장소란? ( 저장소 ) 파일이나폴더를저장해두는곳 + ( 이력관리 ) 파일이변경이력별로구분되어저장됨 여러저장소를갖고각각작업할수있는시스템 서버문제발생시클라이언트의복제된저장소를서버로업로드해복구가능 원격저장소와로컬저장소 원격저장소 (Remote Repository): 파일이원격저장소전용서버에서관리되며여러사람이함께공유하기위한저장소 로컬저장소 (Local Repository): 내 PC에파일이저장되는개인전용저장소 Push Local Repository Git client Remote Repository Git server 6 Pull

원격저장소에푸시 (Push) 하기 Git 저장소공유 Push (Upload): 내 PC의로컬저장소에서변경된이력을원격저장소에공유하기위해, 로컬저장소의변경이력을원격저장소에업로드하는것 원격저장소복제 (Clone) 하기 Clone (Download): 누군가의변경이력이적용된원격저장소가있으면, 그걸웹에서통째로복제해와내 PC에서직접작업할수있도록원격저장소를통째로다운로드하는것 원격저장소풀 (Pull) 해오기 Pull (Download): 다른사람이원격저장소에올려놓은 (Push) 변경내용을내로컬저장소에도적용 (Pull) 하기위해원격저장소에서최신변경이력을다운로드하여내로컬저장소에그내용을적용하는것 7

Git 파일의상태 Modified: 수정한파일을아직로컬 DB에커밋하지않은것을의미 Staged: 현재수정한파일을곧커밋할것이라고표시한상태를의미 작업트리안에있는커밋이필요없는파일들을커밋에포함하지않을수있게함 Committed: 데이터가로컬 DB 에안전하게저장됐다는것을의미 파일및폴더의추가 / 변경사항을저장소에기록 Git 으로하는일 1. 워킹디렉토리에서파일을수정함 2. Staging Area(index) 에파일을 Stage 해서커밋할스냅샷을만듦 3. Staging Area 에있는파일들을커밋해서 Git 디렉토리에영구적인스냅샷으로저장함 8

주요명령어 git init: 깃저장소를초기화한다. git config: configure 의준말, 처음에깃을설정할때가장유용 git help: 21개의가장많이사용하는깃명령어들이나타남 git status: 저장소상태를체크 git add: 깃의저장소 스냅샷 에추가된파일을저장 git commit: 깃의가장중요한명령어. 보통 git commit -m Message hear. 형식으로사용함. -m 은명령어의그다음부분을메시지로읽어야한다는것을말함 git branch: 새로운 branch를만들고, 자신만의변경사항과파일추가등의커밋타임라인을만듦. 9

주요명령어 git checkout: 글자그대로, 현재위치하고있지않은저장소 (branch) 를 체크아웃 할수있음. git merge: branch에서작업을끝내고, 모든협업자가볼수있는 master branch로병합 git push: 로컬컴퓨터에서작업하고이명령어로깃허브에변경사항을 push 함 git pull: 로컬컴퓨터에서작업할때깃허브로부터변경사항을다운로드함 ( pull ) 10

1. Git 서버계정관리 1) Git 서버접속 (http://164.125.37.75/open/) 학번 학번 11

1.2 계정정보변경 1. Git 서버계정관리 12

2.1 Git client 설치 2. Git client 설치및설정 1) Search 아이콘클릭 2) terminal 입력후 terminal 아이콘선택 3) sudo apt-get install git 입력 13

2. Git client 설치및설정 2.2 계정설정 계정이름설정 : git config --global user.name 사용자이름 계정이메일설정 : git config --global user.email 이메일 user.name과 user.email 설정값확인 : git config --global --list 14

2.3 Local 저장소생성 2. Git client 설치및설정 1. 디렉토리생성 : mkdir 학번 2. 생성디렉토리로이동 : cd 학번 3. Git 저장소생성 : git init 15

3. Git 실습 3.1 실습소스파일생성 $ vi hello.c #include <stdio.h> int main() { printf( hello, Open Source Programming\n ); return 0; } 16

3. Git 실습 3.2 Local 저장소에소스파일 Upload 및상태확인하기 1. git add hello.c and git status 2. git commit m First commit 3. git status 17

3. Git 실습 3.3 Git 서버에소스파일 upload 1. git remote add [ 단축이름 ] [url] git remote add origin http://164.125.37.75/open/ 학번.git 2. git push [ 리모트저장소단축이름 ] [branch 이름 ] git push origin master 18

3. Git 실습 3.4 Git 서버에업로드된소스파일확인 1. Git 서버접속 : http://164.125.37.75/open 2. 학번과비밀번호입력 3. 원격 (Server) 저장소에 hello.c 파일의업로드확인 학번 비밀번호 hello.c 19

3. Git 실습 3.5 Git 서버에서 hello.c 파일 download 1. git pull origin master 2. 학번과비밀번호입력 20

Branch Branch 란? 여러사람이동일한소스코드를기반으로서로다른작업을할때독립적으로어떤작업을진행하기위한개념 각자독립적인작업영역 ( 저장소 ) 안에서마음대로소스코드를변경함 예 ) 릴리스버전이력, 기능추가이력, 버그추가이력 다른 branch와병합 (Merge) 함으로써, 작업한내용을다시새로운하나의 branch로만듦 master branch? 저장소를처음만들때생성되는 branch 언제든지배포할수있는안정정인상태의버전을저장하기위한통합 branch(integration branch) 로사용됨 안정정인상태 란? 그어플리케이션의모든기능이정상적으로동작하는상태 Topic branch (Feature Branch) 기능추가나버그수정과같은단위작업을위한 branch 21

Branch 사용하기 'issue1' 이라는이름으로새로운 branch 를작성 1. branch 생성 : git branch <branchname> git branch issue1 2. 생성된 branch 확인 : git branch git branch issue1 * master 현재선택된 branch를지시함 3. branch 전환 : git checkout <branch> git checkout issue1 Switched to branch issue1 'issue1' branch를체크아웃한상태에서커밋을수행하면, 'issue1' branch에그이력이기록됨. 즉, git add myfile.txt git commit m branch 전환 22

Branch 사용하기 branch 병합 (faster-forward 병합 ) 'issue1' branch의변경사항을 'master' branch에병합 1. branch 전환 : git checkout <branch> git checkout master Switched to branch master checkout 명령어를이용하여현재사용중인 branch를 'master' 로전환 2. branch 병합 : git merge <branchname> git merge issue1 23

Branch 사용하기 branch 삭제 branch를삭제하려면 branch 명령에 -d 옵션을지정 1. branch 삭제 : git branch d <branchname> git branch d issue1 2. 생성된 branch 확인 : git branch * master 현재선택된 branch를지시함 24

Pull ( 가져와병합하기 ) pull, 원격저장소의데이터를로컬저장소에가져와병합하기 로컬저장소의모든변경사항이반영되어있는상태에서새로운변경사항이있는원격저장소의커밋 Y 를로컬로가져오는경우 fast-forward 병합 ' 이이루어짐 로컬저장소의 'master' branch 에서도변경사항이생긴경우, 양쪽의변경을 통합할필요가있음 충돌부분을수동으로해결한다음직접 commit 함 25

실습 다음의코드를작성하여자신의 Git Repository 에업로드 #include <stdio.h> int main() { printf( STUDENT ID CARD\n ); printf( major: computer science engineering\n ); printf( name: 이름 \n ); printf( student ID: 학번 \n ); return 0; } 26

과제물 프로그램코딩실습 0~19사이의정수를출력하되 2의배수나 3의배수인정수를출력에서제외하는코드작성 multiplemain.c: main() 함수포함 multiplesub.c: 2의배수나 3의배수인정수를제외하고출력하는프로그램 multiple.h: 함수원형 makefile 작성 Git 서버에작성한코드를업로드 27