저는 대학생활을 할 때부터 GitHub을 사용해왔지만 지금까지 GitHub을 수동적으로 단순히 팀 프로젝트를 할 때 코드를 공유하는 용도와 개인적인 개발 기록공간으로만 사용해왔습니다.
물론 Git의 정확한 의미와 branch, rebase, pull request 등의 구체적인 여러 기능들을 모르고말이죠.. 심지어 Git의 명령어들을 잘 사용하지 못하여 GitHub Desktop이라는 GUI 기반의 프로그램을 사용하였습니다😅
하지만 우테코를 시작하며 Git의 여러 기능들을 직접 사용해 보게 되었고, 이번 기회에 Git을 확실히 파헤쳐보자는 다짐을 하며 이렇게 공부를 하게 되었습니다.
자 그럼 Git이 도대체 무엇인가!?에 관한 내용부터 알아가보도록 하겠습니다.🔥
Git이란건 과연 무엇일까요??
Git을 한 문장으로 설명을 하자면 파일의 변경사항을 추적하고 그 이력을 기록하고 관리하도록 돕는 버전관리 시스템입니다.
Git의 특징은 다음과 같은 내용이 있습니다.
찾다보니 해당 질문은 기업 면접을 볼 때도 종종 나오는 질문이라고 하더군요🧐
Git과 Github는 같은 것을 의미하는 것일까요??
정답을 말해드리자면 Git과 Github는 서로 연관은 있으나 다른 내용입니다.
Github는 Git의 repository를 관리하는 클라우드 기반의 호스팅 서비스입니다.
즉, Git은 local에서만 작업을 할 수 있었다면 Github는 Git의 작업 내용들을 호스팅하여 다른 개발자들과 공유를 할 수 있게 해주는 서비스라고 정리할 수 있습니다.
Github의 특징은 다음과 같습니다.
Git과 Github는 과거의 저를 포함하여 다수의 사람들이 동일한 것이라 알고 있으나 둘은 확실히 다른 서비스입니다.
둘의 가장 큰 차이점은 Git은 local에서 버전 관리를 하는 것이고, Github는 클라우드 기반에서 소스를 저장하고 관리를 하여 버전관리, 소스코드 공유 등의 작업이 가능하다는 것입니다.