현재 스벅 예제를 git을 통해 버전관리를 하고 있음.
현재 git init으로 버전관리 하겠다고 선언하고 master 이라는 브랜치로 버전관리 되고 있음
이 master는 하나의 줄기라고 보면 됨.
브랜치는 이 큰 줄기에서 개발하려는 페이지를 가지로 분리해서 개발하는 것.
각각의 가지에서 문제가 없다면 실제 사이트에서 사용할 수 있게 하는 것.
분리하는 이유는 해당 기능을 여러 사람이 나눠 개발할 수 있음.
속도와 적용되는 시점이 다르기 때문에 master를 제외한 다른 이름으로 가지를 만들어 별도로 개발 후 나중에 합칠 수 있게 관리.
우리는 로그인 페이지를 만들 건데 마스터 브랜치에 바로 연결하는 것이 아니고 별도의 브랜치를 만들어 기능 개발 후 문제 없으면 마스터에 합쳐줄 수 있고 이걸 merge 병합이라고 함.
우선 터미널을 열어줌.
현재는 master (main)
git branch 엔터
그럼 현제 master (main) 밖에 없음.
git branch -a 를 입력하고 엔터
그러면 목록에 하나 더 추가됨
빨간 글씨로 remotes/origin/master(main)
이라고 되어 있는데
github 원격 저장소에 origin이라는 별칭을 가지고 있는 master(main)브랜치가 있다는 것.
이제 로그인 페이지를 개발할 거니까
git branch signin 엔터
그럼 signin 이라는 브랜치가 만들어진 것
다시 git branch 엔터
하면 브랜치 목록이 보이고
초록색 글씨인 master(main)
하얀색 글씨인 signin
두가지가 보임
이는 현재 마스터브랜치가 선택되어 있다는 것.
signin에 접속하려면
git checkout signin 엔터
쳐주면 Switched to branch 'signin'
이라고 뜨며 브랜치가 signin으로 바뀜
현재 개발환경이 signin이라는 브랜치에서 동작하는 것
이 둘의 차이점을 보려면
프로젝트 구조에서 새 폴더 signin과 html 파일을 만들어서 변경사항을 만들어주고 이걸 최초로 버전을 만들어줌
git status 엔터
그러면 signin 이 빨간 글씨가 보이고 이 내용을 추적하기 위해
git add . 엔터
그러면 초록색으로 글씨가 변한 것을 볼 수 있음
이걸 새로운 버전으로 등록하기 위해
git commit -m '로그인 페이지 시작하기' 엔터
하면 로그인 페이지 시작하기라는 새 버전이 만들어지고 최신 버전이 됨.
여기서 다시 master로 돌아가면
git checkout master 엔터
해서 master 브랜치로 돌아가면
signin 이라는 새 폴더와 html 파일이 사라진 것을 볼 수 있음
이는 현재 master 에서는 작업하지 않고 signin 에서 작업을 한 것
이때 여기서 작업한 것이 다른 브랜치에는 영향을 끼치지 않는 것.
다시 git checkout signin 엔터 하면 다시 폴더와 피일이 보이는 것을 볼 수 있음.
복습왕 리리!~!~