깃 : 컴퓨터 파일의 변경사항을 추적하고 여러 명의 사용자들 간에 해당 파일들의 작업을 조율하기 위한 스냅샷 스트림 기반의 분산버전 관리 시스템
https://ko.wikipedia.org/wiki/%EA%B9%83_(%EC%86%8C%ED%94%84%ED%8A%B8%EC%9B%A8%EC%96%B4)
https://git-scm.com/book/en/v2/Getting-Started-What-is-Git%3F#:~:text=more%20like%20a-,stream%20of%20snapshots,-.
위의 사진은 프로그램이 데이터를 어떻게 생각하고 관리하는지 간단하게 나타낸 그림입니다. 위는 일반적인 프로그램, 아래는 깃의 작동 방식입니다.
대부분의 프로그램들은 파일을 기반으로 변경사항을 저장합니다.
반면에 깃은 데이터를 스냅샷처럼 모든 파일들이 어떻게 보이는지 사진을 찍고 해당 스냅샷에 대한 참조를 저장합니다. 변경되지 않은 파일은 이전 스냅샷에 대한 링크만 저장합니다.
위 사진을 비교해보시면 각각의 스냅샷들이 별도로 관리되고 있는 것들을 확인해보실 수 있습니다.
깃의 대부분의 작업은 로컬, 각자의 컴퓨터에서 동작하게 됩니다.
이의 장점은 모든 변경사항들이 내 로컬 안에 있기에 모든 프로젝트의 기록을 어떤 서버와의 연동 없이 아주 빠르게 즉시 볼 수 있다는 점입니다.
깃 저장소 호스팅을 지원하는 웹 서비스.
https://ko.wikipedia.org/wiki/%EA%B9%83%ED%97%88%EB%B8%8C
깃과 깃허브의 가장 큰 차이점은 깃이 소프트웨어이며, 깃허브가 서비스라는 점입니다.
https://f-lab.kr/insight/git-vs-github
깃과 깃허브가 너무 유기적으로 잘 동작해서 차이를 전혀 못느끼고 사용했던 것 같습니다.
깃을 통한 로컬에서의 버전관리, 편리하게 협업할 수 있게 지원해주는 깃허브는 웹 서비스!
긴 글 읽어주셔서 감사합니다!!