728x90
반응형
https://www.youtube.com/watch?v=TTLHd3IyErM - 드림코딩 Front-end 로드맵 영상
Tools
1. Version Control System
🔎 Git
Git은 소프트웨어를 개발하는 기업의 핵심 자산인 소스코드를 효과적으로 관리할 수 있게 해주는 무료, 공개 소프트웨어
https://phoenixnap.com/kb/how-git-works
장점
- 소스코드를 주고 받을 필요 없이, 같은 파일을 여러 명이 동시에 작업하는 병렬 개발이 가능하다.
- 즉 브랜치를 통해 개발한 뒤, 본 프로그램에 합치는 방식(Merge)으로 개발을 진행할 수 있다.
- 분산 버전관리이기 때문에 인터넷이 연결되지 않은 곳에서도 개발을 진행할 수 있으며, 중앙 저장소가 날아가버려도 다시 원상복구할 수 있다.
- 팀 프로젝트가 아닌, 개인 프로젝트일지라도 Git을 통해 버전관리를 하면 체계적인 개발이 가능해지고, 프로그램이나 패치를 배포하는 과정도 간단해진다. (pull을 통한 업데이트, patch를 통한 파일 배포)
관련용어
- Repositiry : 저장소를 의미하며, 저장소는 히스토리, 태그, 소스의 가지치기 혹은 branch에 따라 버전을 저장한다. 저장소를 통해 작업자가 변경한 모든 히스토리를 확인 할 수 있다.
- Working Tree : 저장소를 어느 한 시점을 바라보는 작업자의 현재 시점.
- Staging Area : 저장소에 커밋하기 전에 커밋을 준비하는 위치.
- Commit : 현재 변경된 작업 상태를 점검을 마치면 확정하고 저장소에 저장하는 작업.
- Head : 현재 작업중인 Branch를 가리킨다.
- Branch : 가지 또는 분기점을 의미하며, 작업을 할 때에 현재 상태를 복사하여 Branch에서 작업을 한 후에 완전하다 싶을 때 Merge를 하여 작업을 한다.
- Merge : 다른 Branch의 내용을 현재 Branch로 가져와 합치는 작업을 의미한다.
.
🔎 Github
Git 호스팅 서비스의 선두주자로 오픈소스의 본고장이라 가장 많은 사람들이 이용한다. Epic Games의 Unreal Engine 4 저장소도 있다.
장점
- 가장 많은 Integration을 지원
- 가장 많은 오픈소스 저장소 보유
- 가장 안정적인 서버 상태를 제공하며, Github Status에서 실시간으로 확인 가능
단점
- 무료 플랜의 경우 Repo를 무조건 공개해야 한다
- 용량이 제한적이고 LFS는 트래픽 제한도 있다
.
🔎 Bitbucket
Git을 사용하는 사람들에게 가장 익숙할 GUI 툴인 Sourcetree를 만든 Atlassian에서 제공하는 서비스. Unity Technologies의 일부 오픈소스는 Bitbucket의 저장소를 사용한다.
장점
- JIRA, Hipchat과 연동이 편하다.
- Private Repo를 무료로 제공한다.
단점
- Github과 마찬가지로 용량 제한이 짜다.
- 저장소에 참여 가능한 인원을 기준으로 가격 정책을 적용했다. (가격 부담이 크다.)
.
🔎 Gitlab
설치형 Github를 목표로 나온 서비스. 본질은 설치형 제공이지만, Gitlab.com에서 호스팅 서비스 또한 제공한다.
장점
- 가격정책이 가장 합리적이다.
- Private Repo 무료, 인원 제한이 없다.
- Disk space per Repo가 10GB
- CI가 잘 만들어져 있고 UI도 가장 좋다.
단점
- 서버 상태가 가끔 불안정 하며 503에러가 자주 보인다.
.
참조
https://goddaehee.tistory.com/91
https://xzio.tistory.com/400
728x90
반응형