[Java] 소스코드관리
programming/java

[Java] 소스코드관리



23. 소스코드관리(git)


가. 소스 코드 관리(Source Code Management, SCM) : 소프트웨어 변경 사항 및 버전을 관리하는 것


1) 소스 코드 관리툴 - 소프트웨어의 버전을 관리하고 실수로부터 안전하게 프로젝트를 보호하고 효과적인 협업을 위한 툴


2) 소스 코드 관리툴의 종류

- CVS(Concurrent Versions System)

- SVN(Subversion) : CVS의 단점을 보완한 툴, 구글, 네이버(2016년 12월 종료) 등에서 지원, 자체 서버 구축도 가능

- Git : 분산 버전 관리 시스템, SVN보다 빠른 속도, 최근 많이 사용되고 있음

깃허브(GitHub) : Git을 사용하는 프로젝트를 지원하는 웹서비스(http://github.com), 깃허브에서는 공개 프로젝트는 무료이고 비공개 프로젝트는 유료 서비스를 가입해야 함, Git을 지원하는 BitBucket에서는 무료로 비공개 프로젝트 생성이 가능함(5명까지 가능하며 초대를 통해 최대 8명까지 가능)


나. BitBucket 사용 방법


1) http://bitbucket.org 회원가입, 이메일 인증 필요

가) Get started for free 클릭

나) 이메일주소 입력

다) full name과 password 입력

라) 온라인 저장소 만들기


좌측의 + 아이콘을 클릭, Repository(저장소) 생성

This is a private repository (비공개 프로젝트로 설정)


다. 이클립스에서의 설정


1) Git로 Perspective 변경

Clone a Git repository - 저장소 복제

Clone URI

GitHub - 공식사이트 사용


2) 로컬저장소로 사용할 디렉토리 지정

- workspace와 다른 별도의 디렉토리가 좋음


3) Git 프로젝트를 import하는 방법

Clone a Git repository - 저장소 복제

Clone URI

GitHub - 공식사이트 사용


4) 프로젝트 공유 : 프로젝트 - 우클릭 - Team - share project


5) 로컬 저장소 선택

image

저장소만 연결된 상태이며 파일이 동기화된 것은 아님


6) 소스 관리 방법

commit - 로컬 저장소에 저장

push - 로컬 저장소의 파일을 온라인 저장소(서버)에 업로드

pull - 온라인 저장소(서버)의 최신 파일을 다운로드


Unstaged Changes에 있는 파일을 Staged Changes로 이동시킨 후

Commit and Push : 로컬 저장소에 올리고 서버에도 올림

Commit : 로컬 저장소에 올림


image


저장소만 연결된 상태이며 파일이 동기화된 것은 아님


라. 실습 


1) commit and push 테스트

2) pull 테스트

3) team 작업 테스트

share - read, write, admin 권한 부여


- 멤버에게 읽기 권한, 쓰기 권한, 관리자 권한 부여 가능


4) 프로젝트를 살제하고 git에서 다운로드 테스트

프로젝트를 삭제할 경우 로컬 저장소도 지우고 새로 만들어야 함


5) git 연결 해제 연습