버전 관리 시스템, Git 설치 (Chapter)
Git(Chapter)
Simple Git Workflow(Solo 실습)
버전 관리 시스템, Git 설치 (Chapter)
버전 관리 시스템
- Git : 버전 관리를 할 수 있음.
Git이란 개발자의 코드를 효율적으로 관리하기 위해서 개발된 '분산형 버전 관리 시스템', 날짜별로 변경사항 확인 가능, 이전의 기록들에 대한 추적이 가능하므로 버전 관리와 협업에 유용. 소스코드가 변경된 이력을 쉽게 확인할 수 있음. 특정 시점의 버전과 비교하거나 되돌아갈 수 있음.
- Github : 내 컴퓨터에서 Git으로 관리하는 프로젝트를 올려둘 수 있는 사이트
Git Repository를 관리 할 수 있는 클라우드 기반 서비스. Git으로 버전을 관리하는 폴더에 대해서 Github을 통해 여러 사람들이 공유하고 접근할 수 있음. 내 컴퓨터에서 Git으로 관리하는 프로젝트를 올려둘 수 있는 사이트.
Git(Chapter)
혼자 작업 workflow(오늘 실습해 볼 것이다.)
: open source project에 contribute하는 것을 전제로 설명
- Remote에 있는 다른 Repository에서 fork해서 본인의 Remote Repository에 가져옴.
- 본인의 컴퓨터에서 작업하기 위해 Local Repository로 Clone함.
- 수정 및 업데이트 작업을 하고 Add를 통해 Staging Area에 넣어줌.
- Staging Area에 들어온 파일을 Commit(-m)하여 Local Repository로 옮김.
- Push origin master하여 Remote Repository에 commit 기록을 업로드함.(git log 확인 가능)
- Pull Request를 통해 변경사항을 알린다.
함께 작업 workflow(내일 업로드 예정)
- 나의 작업 Directory를 init을 통해 Git의 관리 아래(Local Repository) 들어가게 만듦.
- Git Directory(Local Repository)를 remote add(origin 본인의repository주소)를 통해 본인의 Remote Repository와 연결해줌.
- remote add를 활용해서 다른 사람의 Repository와 연결 가능.
- remote add 상대의repository이름 상대의repository주소로 상대방의 Repository와 연결.
- remote -v로 연결 확인.
- pull 상대의repository이름 master로 상대의 Remote Repository에 있는 작업내용을 받아올 수 있음.
(자동 병합 merge됨 )
- 이때 충돌이 발생할 수 있음. 해결.
Simple Git Workflow(Solo 실습)
- Remote에 있는 다른 Repository에서 fork해서 본인의 Remote Repository에 가져옴.
- 본인의 컴퓨터에서 작업하기 위해 Local Repository로 Clone함.
- 수정 및 업데이트 작업을 하고 Add를 통해 Staging Area에 넣어줌.
- Staging Area에 들어온 파일을 Commit(-m)하여 Local Repository로 옮김.
- Push origin master하여 Remote Repository에 commit 기록을 업로드함.(git log 확인 가능)
- Pull Request를 통해 변경사항을 알린다.
Git workflow를 실습하기 위하여 코드스테이츠에서 제공해 준 Git workflow 실습 레파지토리를 fork하자.
나의 remote repository에 fork되었음을 확인하고 local repository가 들어올 작업 directory를 만들어 보자.
CLI는 내가 원하지않는 결과를 가지고 온다. ㅎㅎ 그래도 금방 해결할 수 있다. 원하는 이름으로 만들기 위해 mv명령어를 썼다.
작업 디렉토리가 잘 만들어졌음을 알 수 있다. git clone을 통해 remote repository를 local repository로 옮겨오자.
잘 옮겨졌다. 안의 내용을 한번 보고 git status를 한번 쳐보자.
변경 사항이 없으니 커밋할 사항이 없다고 나온다. 이대로 끝나면 아쉬우니 nano README.md로 nano를 작동시켜 텍스트를 변경 후 저장해보았다. 그리고 다시 git status를 입력해보자.
README.md가 수정되었음을 알려주고 commit할거면 git add를 변경 사항을 버리려면 git checkout을 하란다. 일단 git add하고 의도적으로 git status에 새로운 화면을 띄워보고 싶었다. 새로운 파일을 만들어보자! 그리고 git status 해보자.
여기서 잠깐 git commit -m에서 -m은 커밋 메세지를 남기기위한 옵션이다. 이를 통해 무엇이 변경되었는지 텍스트로 인지할 수 있도록 해준다. 좋은 커밋 메세지가 무엇인지 알려주는 웹사이트를 코드스테이츠에서 공유해 주었기에 읽고 작성을 해보았다.
아래 링크를 참고하기 바란다.
혼자서 뚜구닥뚜구닥 simple git workflow를 익혀보았다. 대충의 흐름을 맛 볼 수 있었다.
내일은 pair와 함께 Git을 통해 코드를 공유한다.
앞으로 개발자가 된다면 뗄레야 뗄수없는 git을 코드스테이츠 덕분에 잘 배우고있다.
리눅스도 맨처음에는 엄청 낯설었는데 terminal이 그래도 조금은 익숙해진것같다.
아 물론 폴더 삭제할때 -rf하는것도 까먹고, 파일만들려고 하다가 폴더를 만든다 할지라도... 처음보다는 나으니까 ^0^
'코드스테이츠' 카테고리의 다른 글
2021년 4월 19일 코드스테이츠 DAY-15(배열, 객체) (0) | 2021.04.19 |
---|---|
2021년 4월 16일 코드스테이츠 DAY-12(Git 기초) (0) | 2021.04.16 |
2021년 4월 14일 코드스테이츠 DAY-10(Linux 기초) (0) | 2021.04.14 |
2021년 4월 13일 코드스테이츠 DAY-9(계산기)(calculator)#2 (0) | 2021.04.14 |
2021년 4월 12일 코드스테이츠 DAY-8(CSS + 계산기)#1 (0) | 2021.04.12 |