SlideShare a Scribd company logo
1 of 12
Github Repository 관리 방안
2015.07.30
1.1 Branch 구성
master
dev
add1 add2
master : Real Server Github Branch
dev : Dev Server Github Branch
add 1 / add2 : 기능 추가 시 마다 생성 Branch
1.2 Branch Work Flow
master
dev
add1 add3
개발자 1
master
dev
add2 add4
개발자 2
2nd1st open
new branch new branch
1.3 Branch Merge 방안
master
dev
add1 add2
1. master branch에서 개발은 진행 하지 않는다.
2. master branch merge는 dev branch만 진행
3. 각 기능 개발시 추가 branch를 이용하여 개발 한 후
개발 종료 시 dev bracnh와 병합 한 후 테스트 종료 시
master branch <-> dev branch 병합
git history
2. JenKins
Dev System AWS System
- 개발 환경에 따라 build 할 Branch를 구분 한다 .
- Dev Server : dev branch / Real Server : master branch
3. GitHub Workflow
로컬 repository
원격 repository
GitHub
개발자 1
로컬 repository
개발자 2
commit
commit
- SVN , CVS와 가장 다른 점은 Local Repository가 존재 한다는 점
- 최종 remote Repository에 올릴 시 commit이 아닌 push
SVN / CVS 구조
4. GitHub 충돌 관리 ( 1 )
< Synchronize 시 충돌 상황 >
: svn의 경우 mark as merge를 이용하여 바로 수정 하면 되지만
git의 경우 local repository가 존재한다는 것을 기억해야 한다.
4.1 GitHub 충돌 관리 ( 2 )
1. git의 경우 원격 저장소가 존재하므로 나의 로컬 저장소에 먼저 commit 한다.
( commit and push 하면 안됨 )
4.2 GitHub 충돌 관리 ( 3 )
2. 원격 저장소의 소스를 pull
4.3 GitHub 충돌 관리 ( 4 )
3. pull 이 후 충돌 내역이 local file에 기입 된다 .
4.4 GitHub 충돌 관리 ( 5 )
4. 충돌 내역 수정 후 Mark as Merged
4.5 GitHub 충돌 관리 ( 6 )
5. 원격 저장소에 최종 push
: 그림과 같이 오류 없이 push 가능

More Related Content

What's hot

Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성 Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성 rockplace
 
Svn 버전관리 프로그램_매뉴얼
Svn 버전관리 프로그램_매뉴얼Svn 버전관리 프로그램_매뉴얼
Svn 버전관리 프로그램_매뉴얼jeongseokoh
 
젠킨스 설치 및 설정
젠킨스 설치 및 설정젠킨스 설치 및 설정
젠킨스 설치 및 설정중선 곽
 
CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드jSoboro
 
네이버 SVN 설치
네이버 SVN 설치네이버 SVN 설치
네이버 SVN 설치Hyunmin Park
 
Azure에서 Open Source 파헤치기
Azure에서 Open Source 파헤치기 Azure에서 Open Source 파헤치기
Azure에서 Open Source 파헤치기 OSS On Azure
 
Svn 사용하기
Svn 사용하기Svn 사용하기
Svn 사용하기Jung-Ho Kim
 
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build Lifecycle
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build LifecycleBackend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build Lifecycle
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build LifecycleKyunghun Jeon
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Park JoongSoo
 
How to use SVN in project
How to use SVN in projectHow to use SVN in project
How to use SVN in projectKang-jin Cho
 
Spring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodeSpring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodedpTablo
 
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법MinGeun Park
 
Gradle 사용하기
Gradle 사용하기Gradle 사용하기
Gradle 사용하기jiseob kim
 
오래된 프로젝트에 Jenkins 적용해보기
오래된 프로젝트에 Jenkins 적용해보기오래된 프로젝트에 Jenkins 적용해보기
오래된 프로젝트에 Jenkins 적용해보기용호 최
 
Basic study 1회차
Basic study 1회차Basic study 1회차
Basic study 1회차Seonmun Choi
 
자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅Yoonsung Jung
 
Jenkins를 활용한 javascript 개발
Jenkins를 활용한 javascript 개발Jenkins를 활용한 javascript 개발
Jenkins를 활용한 javascript 개발지수 윤
 

What's hot (20)

Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성 Jenkins를 활용한 Openshift CI/CD 구성
Jenkins를 활용한 Openshift CI/CD 구성
 
Svn
SvnSvn
Svn
 
Svn 버전관리 프로그램_매뉴얼
Svn 버전관리 프로그램_매뉴얼Svn 버전관리 프로그램_매뉴얼
Svn 버전관리 프로그램_매뉴얼
 
Svn
SvnSvn
Svn
 
젠킨스 설치 및 설정
젠킨스 설치 및 설정젠킨스 설치 및 설정
젠킨스 설치 및 설정
 
CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드CLT 소스품질 Jenkins 사용가이드
CLT 소스품질 Jenkins 사용가이드
 
네이버 SVN 설치
네이버 SVN 설치네이버 SVN 설치
네이버 SVN 설치
 
Azure에서 Open Source 파헤치기
Azure에서 Open Source 파헤치기 Azure에서 Open Source 파헤치기
Azure에서 Open Source 파헤치기
 
Svn 사용하기
Svn 사용하기Svn 사용하기
Svn 사용하기
 
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build Lifecycle
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build LifecycleBackend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build Lifecycle
Backend Master | 3.1.4 Build - Java build tool - Maven/Gradle Build Lifecycle
 
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
Jenkins와 Gitlab으로 쉽고 빠르게 구축하는 협업시스템
 
How to use SVN in project
How to use SVN in projectHow to use SVN in project
How to use SVN in project
 
Libstreaming
LibstreamingLibstreaming
Libstreaming
 
Spring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCodeSpring Boot + React + Gradle in VSCode
Spring Boot + React + Gradle in VSCode
 
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법
[NHN_NEXT] 게임 휴먼 프로젝트 CI + GitHub 세팅 방법
 
Gradle 사용하기
Gradle 사용하기Gradle 사용하기
Gradle 사용하기
 
오래된 프로젝트에 Jenkins 적용해보기
오래된 프로젝트에 Jenkins 적용해보기오래된 프로젝트에 Jenkins 적용해보기
오래된 프로젝트에 Jenkins 적용해보기
 
Basic study 1회차
Basic study 1회차Basic study 1회차
Basic study 1회차
 
자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅자바 웹프로젝트 개발환경 셋팅
자바 웹프로젝트 개발환경 셋팅
 
Jenkins를 활용한 javascript 개발
Jenkins를 활용한 javascript 개발Jenkins를 활용한 javascript 개발
Jenkins를 활용한 javascript 개발
 

Similar to Git hub repository 관리 방안

[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함
[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함
[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함Ji-Woong Choi
 
svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드Insub Lee
 
git, 이해부터 활용까지
git, 이해부터 활용까지git, 이해부터 활용까지
git, 이해부터 활용까지jylee1229
 
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발Jinuk Kim
 
Git 사용 가이드
Git 사용 가이드Git 사용 가이드
Git 사용 가이드도형 임
 
Git: A Motivating Introduction
Git: A Motivating IntroductionGit: A Motivating Introduction
Git: A Motivating IntroductionJongwook Choi
 
Git & Github Seminar-2
Git & Github Seminar-2Git & Github Seminar-2
Git & Github Seminar-2sangyun han
 
About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)Jaeseok Park
 
140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴은아 정
 
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - TwoseedGit의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - TwoseedAtlassian 대한민국
 
[기초] GIT 교육 자료
[기초] GIT 교육 자료[기초] GIT 교육 자료
[기초] GIT 교육 자료JUNPIL PARK
 
[VCS] Git&GitLab_Designer
[VCS] Git&GitLab_Designer[VCS] Git&GitLab_Designer
[VCS] Git&GitLab_DesignerLee Beomho
 
필요해서 하는 개발 자동화
필요해서 하는 개발 자동화필요해서 하는 개발 자동화
필요해서 하는 개발 자동화none
 

Similar to Git hub repository 관리 방안 (20)

Git workflow
Git workflowGit workflow
Git workflow
 
[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함
[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함
[오픈소스컨설팅]Subversion vs git - 참을 수 없는 간단함
 
svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드svn 능력자를 위한 git 개념 가이드
svn 능력자를 위한 git 개념 가이드
 
git, 이해부터 활용까지
git, 이해부터 활용까지git, 이해부터 활용까지
git, 이해부터 활용까지
 
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발
NDC13: DVCS와 코드리뷰 그리고 자동화를 통한 쾌속 개발
 
Git 사용 가이드
Git 사용 가이드Git 사용 가이드
Git 사용 가이드
 
Git: A Motivating Introduction
Git: A Motivating IntroductionGit: A Motivating Introduction
Git: A Motivating Introduction
 
Git & Github Seminar-2
Git & Github Seminar-2Git & Github Seminar-2
Git & Github Seminar-2
 
git-workflow
git-workflowgit-workflow
git-workflow
 
Git 기본
Git 기본Git 기본
Git 기본
 
About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)About Git_2017.08.31 aug 투씨드 (박재석)
About Git_2017.08.31 aug 투씨드 (박재석)
 
Git
GitGit
Git
 
2015 oce specification
2015 oce specification2015 oce specification
2015 oce specification
 
11. git basic
11. git basic11. git basic
11. git basic
 
140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴140109 팀프로젝트 협업툴
140109 팀프로젝트 협업툴
 
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - TwoseedGit의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
Git의 기초 및 Bitbucket을 이용한 Git 코드 협업 - Twoseed
 
[기초] GIT 교육 자료
[기초] GIT 교육 자료[기초] GIT 교육 자료
[기초] GIT 교육 자료
 
[VCS] Git&GitLab_Designer
[VCS] Git&GitLab_Designer[VCS] Git&GitLab_Designer
[VCS] Git&GitLab_Designer
 
Git
Git Git
Git
 
필요해서 하는 개발 자동화
필요해서 하는 개발 자동화필요해서 하는 개발 자동화
필요해서 하는 개발 자동화
 

More from Jong Woo Rhee

More from Jong Woo Rhee (10)

Jpa 필드 와 컬럼 매핑 레퍼런스
Jpa 필드 와 컬럼 매핑 레퍼런스Jpa 필드 와 컬럼 매핑 레퍼런스
Jpa 필드 와 컬럼 매핑 레퍼런스
 
Connection pool
Connection poolConnection pool
Connection pool
 
RabbitMQ
RabbitMQRabbitMQ
RabbitMQ
 
Postgresql stored procedure
Postgresql stored procedurePostgresql stored procedure
Postgresql stored procedure
 
Ionic project guide
Ionic project guideIonic project guide
Ionic project guide
 
Ionics구조
Ionics구조Ionics구조
Ionics구조
 
Java8 람다
Java8 람다Java8 람다
Java8 람다
 
Hibernate 기초
Hibernate 기초Hibernate 기초
Hibernate 기초
 
Glances
GlancesGlances
Glances
 
Jmeter
JmeterJmeter
Jmeter
 

Git hub repository 관리 방안

  • 1. Github Repository 관리 방안 2015.07.30
  • 2. 1.1 Branch 구성 master dev add1 add2 master : Real Server Github Branch dev : Dev Server Github Branch add 1 / add2 : 기능 추가 시 마다 생성 Branch
  • 3. 1.2 Branch Work Flow master dev add1 add3 개발자 1 master dev add2 add4 개발자 2 2nd1st open new branch new branch
  • 4. 1.3 Branch Merge 방안 master dev add1 add2 1. master branch에서 개발은 진행 하지 않는다. 2. master branch merge는 dev branch만 진행 3. 각 기능 개발시 추가 branch를 이용하여 개발 한 후 개발 종료 시 dev bracnh와 병합 한 후 테스트 종료 시 master branch <-> dev branch 병합 git history
  • 5. 2. JenKins Dev System AWS System - 개발 환경에 따라 build 할 Branch를 구분 한다 . - Dev Server : dev branch / Real Server : master branch
  • 6. 3. GitHub Workflow 로컬 repository 원격 repository GitHub 개발자 1 로컬 repository 개발자 2 commit commit - SVN , CVS와 가장 다른 점은 Local Repository가 존재 한다는 점 - 최종 remote Repository에 올릴 시 commit이 아닌 push SVN / CVS 구조
  • 7. 4. GitHub 충돌 관리 ( 1 ) < Synchronize 시 충돌 상황 > : svn의 경우 mark as merge를 이용하여 바로 수정 하면 되지만 git의 경우 local repository가 존재한다는 것을 기억해야 한다.
  • 8. 4.1 GitHub 충돌 관리 ( 2 ) 1. git의 경우 원격 저장소가 존재하므로 나의 로컬 저장소에 먼저 commit 한다. ( commit and push 하면 안됨 )
  • 9. 4.2 GitHub 충돌 관리 ( 3 ) 2. 원격 저장소의 소스를 pull
  • 10. 4.3 GitHub 충돌 관리 ( 4 ) 3. pull 이 후 충돌 내역이 local file에 기입 된다 .
  • 11. 4.4 GitHub 충돌 관리 ( 5 ) 4. 충돌 내역 수정 후 Mark as Merged
  • 12. 4.5 GitHub 충돌 관리 ( 6 ) 5. 원격 저장소에 최종 push : 그림과 같이 오류 없이 push 가능