1.About GIT 박재석대표 / 투씨드
1. About GIT History 2005 년리누스토발즈에의해 Linux 커널프로젝트지원을위해제작된버전관리도구 12 년간지속적인발전및꾸준한성장세
1. About GIT Concept 분산형버전관리시스템 Reverse Delta 방식이아닌변경에대한 Snapshot 방식
1. About GIT Architecture
1. About GIT VCS vs DVCS VCS 우리가일했던 Perforce 가이렇게 commit 을할때마다 Repository 에저장되는구조였다면 Git 은 local repository 에 commit 해두고 Remote Reposotory 에 push 하는구조입니다. 이런구조를 D-VCS 라고합니다.
1. About GIT 장단점 [ 단점 ] 대용량소스 (100GB 이상 ) 관리시속도저하가능 기존방식에익숙한사용자는개념접근에시간이필요 이력관리가원활하지못한경우, 불필요한정보가누적 [ 장점 ] 기존대비 4X ~ 300X 빠른속도 다양한방식의명령어지원및 UNIX Command 지원 강력한 Branch 를통한비선형적개발환경지원 Network 가없어도, 중앙서버가없어도언제어디서든작업에대한버전관리 서버장애발생시빠른복원
1. About GIT Strategy 분산환경하에서의대표적인 3 가지 Workflow 기준모델을제시합니다. 중앙집중식 Workflow Integration-Manager Workflow Dictator and Lieutenants Workflow Integration Dictator Shared Repository Blessed Repository Blessed Repository 개발자 개발자 Dev private Dev public Dev public Lieutenant 개발자 Dev private Dev public Dev public Lieutenant
2. Git command
2. Git command Command Git 명령어는가급적검색을통해 Option을파악 명령어실행시나타나는 Output message를활용 모든파일의인위적인변경후에는반드시 add!! 초기화명령은 init 과 Clone 기본생성 Branch는 master 원격저장소는 Origin이라명시 빈 Dir은관리하지않음 Branch를적극활용
2. Git command Branch & Merge 서버 Branch 는물론이와별개로개인 Branch 를관리 Fast-forward merge: 분기된 master 에서변경이없이 Branch 에서만작업후 Merge 실행시 Master 1 2 3 Branch 2 3 3-Way merge: 분기된 Branch 와원본 Branch 모두변경이있을경우 Master 1 A M Branch 2 3 Conflict / Merge
2. Git command Rebase Rebase 는 merge 가아니라말그대로 Base 를변경해주는명령 Master 1 A 2 3 Branch 2 3 Conflict / Rebase Merge Master 1 2 3 Branch
2. Git command Repo Repo 는대량의 Git project 를한번에다운 / 업로드처리하기위해사용하는 Utility Git Project A Repo command Git Project B Git Project C manifest.xml 개발자
2. Git command The Others Git 은굉장히많은명령어를통해버전관리작업을지원 Git의 Commit을삭제해주는 git reset 다른 Branch에서특정 Commit을갖고오는 git cherry-pick Commit 전의현재상태를보여주는 git status 및이력을보여주는 git log 특정 Commit을식별하기위한 git tag 이밖에도많은명령과다양한 Option이존재 필요한작업동작에대해서검색을통해명령어및옵션을찾아보는것을적극권장!!
3. Atlassian Bitbucket
3. Atlassian Bitbucket About Bitbucket Git 기반의소스관리 강력한권한통제 가장범용적인 Git 기반의개발소스관리환경을기반으로강력한확장성을제공하는협업형 Git 솔루션 Bitbucket 의강력한 Branch 권한및프로젝트권한관리기능으로보다강력한권한통제 D V C S P r i v i l e g e [ 제품소개및다운로드 ] https://ko.atlassian.com/software/bitbucket Atlassian 제품통합 편리한 Code 검색 Jira 및 Bamboo 와강력한연계를통해 Source code 의통합이력관리및자동화빌드 / 배포를보다원활하게구성 시맨틱검색을기본포함하여편리한코드검색환경제공 I n t e g r a t i o n s S e a r c h i n g
3. Atlassian Bitbucket About Bitbucket Bitbucket Cloud 이외에 On-Promise 형태는다음과같이 2 가지제품으로구성
3. Atlassian Bitbucket About Bitbucket 다양한 Project 및 Project 별 Repository 구성을보다편리하게구성
3. Atlassian Bitbucket Code Review Pull request 기반의 Code review 환경제공
3. Atlassian Bitbucket Bitbucket with Jira Software Process 와융합한버전관리를통해명확한개발흐름의통제 적용효과 : Release 14% 증가및 Issue closing 23% 증가
3. Atlassian Bitbucket Bitbucket with Jira Software & Bamboo Process 로부터버전관리및자동화빌드및배포까지전체의업무흐름을통합
4. Using Git
4. Using Git Git 을잘사용하려면 Git 의장점인 Branch 를적극활용 Client 3 Pull 5 Push Master (Dev own) 1 Create Branch M Branch 1 2 Commit 4 Merg e Git 은사용자가잘사용해야문제없이버전을관리할수있음을유의 명령어와 UI 도구를병행사용
4. Using Git Atlassian Sourcetree 무료로사용이가능한 Git Client UI 도구 작업 Dir 에대한현황 (Branch 포함 ) 및상세내역에대해조회가간편 Bitbucket 을사용시 Bitbucket 에서바로호출하여 Clone 등의명령을편리하게활용
4. Using Git Git 에대해보다자세한내용은 Twoseed 에서제공하는공개자료페이지를참고하세요. URL: http://wiki.twoseed.co.kr
감사합니다.