생활코딩 지옥에서 온 Git - Git을 이용한 프로젝트의 흐름(Git Flow) 2 > Git

Git

분산버전관리 시스템 깃(Git) 강좌 공유

생활코딩 | 지옥에서 온 Git - Git을 이용한 프로젝트의 흐름(Git Flow) 2

본문

※ 영상을 선명하게 보기 안내
  1. 유튜브 영상에서 오른쪽하단에 톱니바퀴를 클릭합니다.
  2. 팝업목록에서 "품질" 선택하세요.
  3. 원하는 해상도를 선택해주세요.
※ 모바일에서 Wifi가 아니라면 데이타가 소진될 수 있으니 주의바랍니다.
생활코딩님의 Git강의 청각장애인을 위한 자막
15610165190519.jpg

 



자 저는 중간에 협업을 하는 과정까지 포함 을 킬 거기 때문에 새로운
저장소를 만들겠습니다
기 풀러 라는 이름의 저장소를 새로 생성 했구요
이 저장소를 저의 지역 저장소가 연결을 시키겠습니다
요렇게 카피해서
자 킷 이 있
현재 디렉토리를 그리고 remote remote lets 해서 제가
생성한
더 장소를 이렇게 애들을 시키겠습니다
뭐 엄 죄 중 길을 리모트
에트
그리고 출소
우리 진이 빠졌네요 으
짝 됐구요 to let
- v 하니까 이렇게 연결이 됐죠
그 다음에 저는 첫 번째 커밋을 생성을 일단 하겠습니다
마스터 스타 4부 1.2 x 트 fem 텍스트가 변경되는 모습이
프로젝트가 변경되는 모습 이라고 생각하시면 되겠습니다
자 그리고 저는 마스터 브랜치에 첫 번째 커밋이 란 뜻에서 내용을 이렇게
적었고 요
그리고 이것을 키 adf ex 특히 커밍 - am
m 만 해도 되지만 그냥 am 그리고 마스터
브랜치에 첫 번째 커밋이 란 뜻입니다
아시죠 우리 수업에서는 실제 구체적인 코드가 아니라 그냥 파일이 바뀌어
나가는 순서만 보여드린 거라는 거 그것도 참고해주시구요
자 지금부터 시작하겠습니다 저희는 그림을 보시면 아시겠지만
자기 플러 에서는 보시는 것처럼 음 마스터와 브랜 츤 두 개의 큰 축을
가지고 있습니다
그래서 마스터 브랜치는
사용자에게 노출되는 버전들이 마스터 브랜치에 만 있고 그리고
무 적인 구현과 관련된 것은 디벨로퍼 브랜치 에서 이루어진다 라고
생각하시고 이 얘기를 들으면 조금 더 이해하기가 좋으실 것 같습니다
자 우선 저는 디벨로퍼 브랜치를 만들건데 그것은 마스터 브랜치 에서 파생
시킬 겁니다
키 체크아웃 - p2 레벨로 제 별로 개발하다 는 뜻이죠
자 그렇게 되면 어떤 상태의 냐 면 깃
데코
lat 모든 브랜치에 대해서
음 그래프로 표현을 해주고
4
하 1 원 라인 씩 출력되게 이렇게 했습니다
자 마스터 브랜치가 있고 마스터 원이라는 컴이 슨 마스터 브랜치 와
디벨로퍼 렌치 모두 체크 아웃 된 상태 따라 는 뜻이죠
저희 상태에서는 개발을 진행해 나가겠습니다 여기에 해당 되는 거죠 일상
적게 말이죠 자 그래서 fem 텍스트에서 저는 딥 lof
그리고 두번째 거미 쉬니까 이렇게 하고 킷 커밋 - am
이렇게 멜로 투구 라고 해서 이렇게 커밋을 했습니다
그러면 이렇게 되죠 마스터 브랜치는 여기에 머물러 있는 상태고 이제
우리의 디벨로퍼 브랜치는 새로운 커밋이 만들어진 상태입니다
이렇게 우리가 작업을 하다가 어떤 기능을 추가해야 되는 새로운 업무가
생겼다 라고 하면
그러면 여기 있는 그림에서 누구의 해당 되냐면 바로 여기 있는 요
거라든지 이거 라든지 이런 것들 해당됩니다
이 그림을 봤을 때는 현재 이 사람은 이 작업을 하는 도중에 두 개의
새로운 기능을 추가 해야 되는 상황에 있다라는 것을 알 수가 있는 것이죠
우리는 그 중에서 1
하나만 하겠습니다 자키 체크업
그리고 - p 우리가 하려고 하는 건 기능 추가 니까 피쳐 초
그리고 뒤에다가 여러분이 추가하고자 하는 기능의 이름을 적습니다 예를
들면 로그인 기능을 적는다
그럼 로그인 뭐 이렇게 하면 될 거고 그리고
도움말 기능을 추가한다 그럼 헬프 이런식이 되겠죠 하지만 우리 수업은
그냥 피쳐 썸 이라고 하겠습니다
예 그렇게 되면 우리가 새로운 브랜치 를 생성한 것이고 바로 이 피쳐
브랜치 스 에 해당되는 브랜치 하나를 생성한 겁니다
그럼 여기에서 이제 그 브랜치 작업을 해야 되는데 로그를 먼저 봅시다 자
우리는
어디 벨 o2 라고 하는 버전 에서 파생된 피처 썸 이라고 하는 브랜치를
생성을 한 것이죠 자 fan 점 텍스트의
어 저는 피쳐 초
썸 쓰리 라고 하는 내용을 추가했다 소스 코드의
그 다음에 킷 커밋 - am
비춰 썸
그리고 참 이렇게 되면 현재 어떤 상태가 되나요
보시는 것처럼 p 초 썸 이라고 하는 이 브랜치는
새로운 버전의 갖게 되는 것이죠 이 상태입니다
그렇게 해서 우리가 쭉 작업을 진행하면서 이제 새로운 기능을 구현 을
하다가 그 구현이 1 단락의 됐으면
완전하지 않더라도 완전 알 수 없잖아요
계속 바꿔야 되니까 일단락 이 되면 그 작업을 이제 어디에다가 병합을
하냐면
d 벨로 베 병합을 하는 겁니다 자 그럼 해볼게요
기 체크아웃 마스터가 아니라 d 벨로 b 줘
자 그리고 귓 뭐지 이
그 다음에 위쳐 썸 하면은
p 초 섬에서 작업대 떤 내용이 d 벨로 베 병합이 됩니다
자의 상태죠 보면 일어 초
즉 비춰 쓰리 라고 하는 피처 썸 에서 추가된 버전 2
이제 td 벨로 베 병합된 상태입니다
자 이렇게 병합을 하고 나면 뭐 이거는 여러분 선택 사항이지만 좀 해
스토리로 깔끔하게 정리하고 싶다면 피처 썸 이라고 하는 건 이제 없어져도
되거든요 그래서 깃 어 브랜치 - dia 쳤어 미 라고 하면 비쳐 썸
프렌치를
삭제 한다 라는 뜻입니다 없어졌죠
자 그렇게 되면 우리가 여기까지 온 상태구요
그렇게 해서 새로운 기능을 추가했고 그 기능을
우리가 이제 사용자에게 제공해야 된다 또는 실제 서버에 업로드 해야 된다
라고 한다면 이제 릴리즈 브랜치 를 사용할 때가 된 겁니다 들리죠
자 ton 치마 2d 체크업
- p * 릴리즈
그리고 여러분이 밀리지 하고자 하는 것에 버저
것이 어
1.02 면 1.0 이라고 쓰는 거죠
그리고 이 릴리즈 하고자 하는 것에서
이 발생한 사용자에게 릴리즈 되어야 될 내용에서 발생한 수 정상 또는
문서에 갱신
이러한 작업들이 있다면 여러분이 릴리즈 상태에서 작업을 하는 겁니다
자 이런식으로 파일의 코드를 바꿨다고 치고
키코 및 - 2am
자 이런식으로 하면 현재 이런 상태가 되죠
즉 릴리즈가 이렇게 추가된 상태입니다
자 그렇게 해서 우리가 릴리즈를 위한 준비가 모두 끝나면
이제 2일 이즈 브랜치 의 현재 버전을
마스터와 d 벨로 베 모드
뭐 지금 시키는 거죠
자 일단은 킷 lee 아니죠
뒷 체크아웃 마스터라고 하고 킷 뭐지 를 릴리즈
1.0 하면은 보시는 것처럼 요기가 된 것이죠
그리고 그 2 마스터 브랜치 에서 특정 버전이 릴리즈 브랜치 라는 것을
좀더 명시적으로 알려줄 수 있는 기록할 수 있는 방법이 바로 태그를 생성
하는 거거든요
키테 그 - a 그리고 우리가 하려고 하는 것 1.0 버전 이름이죠
그 다음에 - mn 우리가 저 1.02
어떤 버전 인가를 알려줄 때 특정한 커멘트 를 쓸 수가 있습니다 2 -
a 옵션 쓰게 되면
여기에다가 어 1st
l 이제 이런 식으로 설명을 쓰는 거죠 그리고
마스터라고 쓰게 되면 마스터 브랜치에
어현연 재 헤드의 해당되는
이 버전에 대한 이 버전을 가리키는 태그가 생성이 되는 겁니다
그렇다 그리고 확인해 보면
보시는 것처럼 마스터 브랜치는
여기 있는 요 컴이 3 가리키면서 동시에 1.0 이라고 하는 태그 역시도
이 커밋을 가리키지 줘
여기 있는 마스터 나 릴리즈 1.0 이나 디벨로퍼 꽈 같은 프랜치 는
우리가 버전 을 생성할 때마다 그 생성된 최신버전을 가리키는
어 일종의 포인터 같은 역할을 하지만 p 값은 마 이제 모르셔도 됩니다
여기 있는 태그 1.0 이라는 것은
저걸 지 오기 전까지는 언제나
바로 여기 있는 이 커밋을 가리키기 때문에 특정 커밋이 어떠한 의미가
있는가 라는 것을 이렇게 기념할 수 있는 그런 컴이 태그입니다
자 이렇게 해서 우리가 그 밀리지 에서 변경된 사항 까지를 마스터 에다가
반영하고 태그로 기록까지 했으면 이제 그것을 사용자에게 다운로드를 받을
수 있도록 하거나 아니면 실제 서버에 다가 올려서 서비스를 하거나 하면
되겠죠
동시에 요 릴리즈 에서 있었던 변경사항 등은 당연히 d 벨로 법적으로
동기화할 필요가 있기 때문에 우리는 기 체크아웃
팁 엘록
업을 하고 op.8 뭐 직 글이 있고 레이즈
1.0 이렇게 해서 병합하는 작업까지 를 같이 해줍니다
그럼 보시는 것처럼 마스터 브랜치 와 led 벨로 브랜치는
어 이 공통의 다 똑같은 커밋을 가리키게 되니까 두 개는 서로 같은 소스
코드의 상태에 있게 되는 것이죠 자 그렇게 우리가 작업을 쭉 진행하다가
긴급하게 수정해야 될 상황이 생기면 2기 플러 모델에서는 핫픽스 라는
것을 이용합니다 핫픽스는 뭐 빨리 고친다 뭐 이런 뜻 아닐까요
예 자 그래서 어 현재 상태에서 핫픽스를 해야되는
긴급하게 수정해야 될 상황이 발생하면
자 우선 키 체크 아웃
핫픽스 라고 하고 긴급하게 체크 수정해야 될 그 이름을 짓거나 아니면
그것이 뭐 l 베
이슈 트래커 나 이런데 들어가 있다면 그 이슈 에 번호를 접거나 이렇게
아프겠죠
자 그렇게 한 다음에
- 피를 뺀 네요
이렇게 하면 우리가 바로 여기 있는 요 브랜치를 생성을 한 겁니다
그래서 여기에서 제가 핫 섹스 오라고 내용을 추가를 하고 키커 및 -
am to fix 오라고 하고 작업을 끝내면
어 긴급하게 수정할 사항을 지금 수정해 끝났으니까 이것은 1리 주와
마찬가지로 d 벨로 브로드 가고
마스터로 가는 겁니다 해볼게요 d 체크아웃 마스터 마스터 부터
킷 뭐지 2
핫픽스 섬을 하고 그리고 키 태그
- a 0점
2.1 그리고 뭐랄까요
- m
핫픽스 썸 이라는 메세지를 적고
그리고 마스터 브랜치에 내용을 태그로 만든다 라고 이렇게 합니다
자 그럼 어떤 상태가 되냐면 보시는 것처럼 이 마스터 브랜치 와 태그
1.1 과 핫픽스 솜이 같은 커밋을 가리키는 것이죠
그리고 핫픽스 에서 변경된 내용은 당연히 d 벨로 법적으로도 변경을 해야
되기 때문에
기체 카우 띠별로 이라고 하고 킷 뭐지
핫픽스 썸 이라고 하면 어떤 상태가 되나요
이런 상태가 되죠
자 제가 수업을 만들고 나서 보니까 제가 원격 저장소를 쓰지 않았네요
예 그래서 다시 만들까 하다가 생각해보니 그 원격 저장소가 돌아가면
수업이 좀 더 복잡해질 것 같아서 그냥 원격 저장소에 대한 얘기는
원론적인 얘기만 말씀드리고 끝내면 될 것 같아요
자 여기 있는 요걸 하는 과정에서 언제 프로라고 언제 부셔야 될 것이냐
라는 거에 가장 큰 대원 측은 자주 한답니다
여러분이 자주 할수록 다른 사람과의 충돌이 적어 지거든요
그리고 여기서 쭉 내려가다가 예
여러분이 새로운 브랜치 를 만들 기 직전에 당연히 풀어 해서 다른 사람이
디벨로퍼 쪽에 변경한 것이 없는지를 직전에 확인하셔야 될 거구요
그리고 이렇게 피처 브랜치 에서 작업을 쭉 해 나가면서
여러분이 작업한 피처 브랜치 의 내용을 d 벨로 급으로
뭐 징을 해버리면 그러면 나중에 피쳐 에 내용이 필요 없어지면 개를 d
벨로 베 서 제거하는 것이 굉장히 어렵기 때문에 그냥 비쳐 브랜치는
독립된 곳에서 역사를 써나가는 게 좋습니다
그렇게 하죠 예 그런데 이제 그걸 하는 과정에서 피쳐 브랜치에 있는
내용과
디벨로퍼 cm 에 있는 내용이 같은 곳이 수정되고 있었다고 한다면 나중에
여러분이 이 피처 브랜치에 내용을 디벨로퍼 펜치로 병합해 쓸 때 심각한
문제가 생길 수가 있습니다
그렇기 때문에 그러한 문제를 여러분이 낮추기 위해서는
et 밸러 png 에서 변경된 사항을
계속해서 피처 브랜치 로 가져와서
예 비쳐 브랜치는
음 디벨로퍼 팬츠에 내용을 가지고 있어야 되고
디벨로퍼 브랜치는 피쳐 브랜치에 내용을 가지고 있지 않은 상태가 유지
되다가
피쳐 브랜치에 내용이 끝나면 그 때 여러분은 디벨로퍼 렌치로 이동해서
비쳐 브랜치에 내용을 뭐 얻지 않은 걸 통해서 이 두개를 동기화를
시키시면
어 별 문제가 없을 겁니다 예 그리고 나머지 것들은 여러분이
리즈 브랜치를 생성한 후에 릴리즈 브랜치에 서예 변경 사항은 여기에
그림에도 적혀있는 것처럼 기다리지 마시고 바로바로 디벨로퍼 쪽에 반영을
시켜서
예 ed 벨로 브랜치 를 사용하고 있는 다름 개발자들이 나중에 충돌이
크게 발생하는 문제를 여러분이 낮추 신는게
예 좋겠죠
하 px 도 마찬가지 핫픽스 도 여러분이
아펙스 를 만들고 그리고 바로 d 벨로 브로
어 머 징을 한 다음에 그리고 그것을 푸쉬 에서 다른 사람이 이동기 할
수 있도록 해줘야 될 거구요
마스터 브랜치 도 마찬가지입니다 특히나 이제 마스터 브랜치는 사용자에게
최종적으로 노출되는 버전을
뭐 하는 것이 마스터플랜 치기 때문에 어떻게 마스터 브랜치는
어 그것을 하는 역할을 가지고 있는 권한을 가지고 있는 사람만이 엄격하게
통제하는 형태로 진행되는 것이 협업을 맥락에서는 사고를 줄일 수 있는 이
좋은 방법 중에 하나겠죠
자 이렇게 해서 2d 플로어를 사용하는 방법에 대해서 지금까지 해봤습니다

댓글 0개

등록된 댓글이 없습니다.

본 사이트의 컨텐츠는 명시적으로 공유기능을 제공하고 있는 공개된 자료를 수집하여 게시하고 있습니다.

저작권, 강의등록, 광고, 제휴등은 "관리자에게 문의"로 메세지 주시면 확인후 답변드립니다.

Menu