깃(Git)? 깃허브(GitHub)?
Git?
- Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
즉, 프로젝트를 빠르고 효율적으로 처리하기 위해 만든 버전 관리 시스템
버전 관리가 필요한 이유
발표자료 초안, 발표자료 최종, 발표자료 진짜 마지막 ······
발표 자료를 만들면서 위와 같이 많은 종류의 파일들을 만들어본 경험이 있을 텐데 이렇게 저장하고 백업하면서 파일이 점점 많아지면 최근에 작성한 파일이 무엇인지 바로 찾기 어렵고 효율적으로 관리하기가 힘들다.
이렇게 개인이 만든 파일만으로도 벅찬데 팀 프로젝트에서 만든 자료들을 하나로 합친다고 생각하면 매우 복잡하고 힘이 들 것이다.
발표자료를 예로 들었지만 팀으로 진행되는 개발의 경우도 똑같다고 볼 수 있다. 서로 맡은 부분을 개발하고 코드를 합쳐서 관리하며 이슈를 해결해야 한다. 이럴 때 버전을 관리하고 백업할 수 있는 Git을 사용한다.
GitHub?
일반적으로 GIt은 로컬에서 버전을 관리해준다. 그래서 협업을 하기 위해 따로 저장소가 필요한데 이 원격 저장소가 GitHub이다.
정리
정리하면 GIt은 내 컴퓨터에서 버전을 관리해주는 프로그램이다. 혼자 개발을 한다면 Git만 사용해서 버전을 관리할 수 있지만 협업을 위해서는 로컬에서 개발한 코드를 GitHub 같은 클라우드 서버를 사용해서 코드를 업로드하면서 버전을 관리해야 한다.
지금까지 로컬에서 pull과 push밖에 사용하지 않았지만 코드스테이츠 백엔드 부트캠프에 참여하는 좋은 기회를 얻어서 Git에 대해 학습했고 앞으로도 학습하는 내용들을 블로그에 정리할 계획이다.