Git (1)

깨진알·2023년 11월 29일

Git

목록 보기
1/13

Git의 역사

리누스 토발즈는 리눅스를 만든 이후에 BitKeeper라고 하는 툴(Tool)로 리눅스의 각 버전들(ver1, ver2, ver3, ...)을 관리하고 있었다.

그런데 리눅스 커뮤니티의 개발자 한 명이 BitKeeper의 내부 동작 원리를 분석하려고 했던 일을 계기로 리눅스 커뮤니티와 BitKeeper 측의 사이가 틀어지게 되었다. 이 떄문에 리눅스 커뮤니티 측에 대해서 BitKeeper는 유로화되었고, 리누스 토발즈는 본인이 직접 버전 관리 프로그램을 만들어버렸다. 그것이 버전 관리 프로그램인 Git이다.

Git은 아래와 같은 목표를 갖고 설계 및 제작되었다.

  • 빠른 속도
  • 단순한 디자인
  • 비선형적 개발 지원 (수천 개의 브랜치를 병행할 수 있음)
  • 완전 분산형 시스템
  • 리눅스와 같은 거대한 프로젝트도 속도 저하의 문제없이 관리할 수 있는 시스템

Git은 버전 관리(Version Control), 협업(Cooperation)에 필요한 여러 요소들이 고려되었기 때문에, 사용성이 굉장히 좋은 프로그램이 될 수 있었다.

그럼 왜 Git이라는 이름이 붙었을까?
"깃은 당신의 마음에 따라 그 어떤 것으로도 해석될 수 있다."

  • 유닉스 커맨드에서 사용되는 명령어 이름을 제외한 랜덤한 알파벳 3글자의 조합
  • 멍청하고 단순함 (이런 특성을 지닌 아무 단어로 해석되어도 좋다는 의미)
  • Global Information Tracker의 약자
  • Goddamn Idiotic Truckload of Sh*t이라는 욕성의 약자

이렇게 Git이라는 이름은 처음 만들어질 때부터 다양한 의미로 해석될 가능성을 갖고 탄생했다.


Github는 그럼 무엇인가? Git이 버전을 관리하는 프로그램이라면, Github는 원격 저장소를 제공해주는 서비스이다.

Git과 Github에 대해서는 뒤에서 더 자세히 설명하도록 하겠다.

profile
프론트엔드 지식으로 가득찰 때까지

0개의 댓글