1주차 강의 정리(이경훈) - aksrud/3kingOfGod GitHub Wiki

깃이란?

Git은 분산 버전 관리 시스템으로, 변경 사항을 추적하고 여러 개발자가 동시에 작업할 수 있도록 도와준다. 또한, 브랜치를 사용하여 독립적인 작업을 수행하고, 원격 저장소와 동기화하여 협업을 원활하게 진행할 수 있다.

깃허브란?

깃허브란 깃을 사용하는 프로젝트를 원격으로 저장할 수 있는 플랫폼으로 이것을 통해 오픈소스, 클라우드 저장, 협업을 쉽게 할수있다.

스테이지

깃에서 변경되는 사항을 추적하려면 우선 스테이지 영역에 파일을 올려야 하는데 스테이지 영역에 올라간 파일들은 깃에 의해 변경사항이 추적된다.

커밋(commit)

커밋이란 스테이징 영역에 변경 사항이 추적 된 파일들을 한 번에 묶어 그 상태를 저장하는 것으로 커밋을 하면 한 사람의 이름과 커밋을 한 시간이 기록된다.

브랜치(branch)

브랜치란 프로젝트의 어떤 시점에서 분리되어 원래 작업 하던 것 과는 별개의 독립적인 작업을 할 수 있게 해준다.

병합(merge)

병합이란 서로 다른 브랜치의 내용을 합치는 것이다 머지할때는 충돌이 날 수 있기 때문에 조심하거나 수정을 해야한다.

리셋 & 리버트

리셋(reset)

리셋은 기존의 커밋을 취소하고 내가 원하는 과거 시점의 커밋으로 돌아가는 것으로 내가 이동한 시점 이후 커밋은 삭제되기 때문에 협업 할 때는 충돌이 나기 때문에 안하는 것이 좋다.

리버트(revert)

리버트는 특정 시점으로 돌아가지만 커밋을 삭제하는 것이 아니라 커밋의 변경 내용을 삭제한 커밋을 새로 만들어 과거 시점으로 돌아가는 것으로 전에 했던 커밋을 지우지 않고 안전하게 과거 커밋으로 돌아갈 수 있다.

브랜치 전략 GitFlow

main(or master)

실제 서비스 중인 코드가 있는 브랜치로 여기에 있는 코드는 항상 배포 가능한 상태이다.

develop

다음 릴리스를 위한 개발이 이루어지는 브랜치. 기능 개발이 끝난 뒤 이 브랜치에 합쳐짐. 테스트까지 끝나면 main으로 머지해서 배포함.

feature/(기능이름)

새로운 기능을 개발할 때 develop 브랜치에서 따옴. 기능 개발이 끝나면 다시 develop에 머지.

release/(버전명)

배포 준비를 위한 브랜치. 버그 수정이나 문서 정리 등을 한 후 main과 develop에 머지.

hotfix/(버그이름)

운영 중 급한 버그 수정용 브랜치.

main에서 따와서 수정 후, main과 develop에 머지.

A. 기초 git&github 사용 실습

1. Git와 Github 기초

2. Commit 생성

3. 브랜치와 병합

4. 충돌과 충돌해결

5. 리셋,리버트,스태시

6. 로컬저장소와 원격저장소 Pull,Push

B. gitflow 브랜치 전략

1. gitflow 브랜치전략1(tag v1.0-1.3)

2. gitflow 브랜치전략2(tag v1.3-1.5)

3. gitflow 브랜치전략3(tag v1.5-2.0)