개발자가 되고 싶다면 당연히 원하는 분야의 프로그래밍언어을 능숙히 다루어야한다.
프로그래밍 언어 외에 개발자의 기본 소양이라고 할 수 있는 것이 있다.
바로 Git 이다.
사실 개발을 계속 공부하면서 git에 대한 이해도 없이 github에 프로젝트를 push, commit 등을 진행해왔다.
현재는 혼자 개발 공부를 하고 있기때문에 별 문제없이 프로젝트를 하고 github를 관리할 수 있어도,
추후에 개발자로 취직을 하게된다면 분명히 알아야 할 개념이다.
나는 현재하고있는 JavaScript와 공부를 병행하여 진행하려고한다.
공부에 참고할 책과 강의이다.
책 - 얄코의 TOO MUCH 친절한 깃& 깃허브
강의 - 제대로 파는 Git & GitHub -by 얄코 / 인프런 / 얄팍한 코딩사전
처음 공부한 내용인 만큼 근본적인 Git에 대하여 알아보자
Git이 무엇일까?
Git
VSC(Version Control System) 프로그램의 한 종류로 프로그램의 버전을 관리하는 툴
git은 버전을 관리하는 툴이다.
그렇다면 우리는 왜 버전을 관리해야할까?
이유는 크게 3가지로 나눌 수 있다.
1. 시간
우리가 프로그램을 개발하면 초기 버전에만 머물러 있지 않는다.
v2, v3 등 이전 버전에서 개선한 버전이 계속 나올 것이다.
만약에 가장 최신 버전으로 업데이트를 한 후 그 버전의 심각한 오류를 발견했다면 우리는 어떻게 할까?
전 버전의 코드가 있다면 전 버전의 코드와 비교하여 오류 부분을 확인 할 것이고, 전 버전의 코드가 없다면 현 프로젝트 코드에서 오류를 해결해야 할 것이다.
또한 오류발생에 대비하여 모든 버전의 프로그램을 가지고 있다면 그것들이 차지하는 용량도 어마어마 할 것이다.
이 얼마나 비효율적인 방법인가..
Git은 이러한 프로그램 버전 관리를 효율적이고 쉽게 하도록 도와준다.
2. 차원
프로그램을 개발하는 과정에서 우리는 더 나은 프로그램을 만들기 위해서 지속적으로 코드를 수정하고 신기술을 테스트 해보기도 할 것이다.
이러한 테스트를 위해서 프로그램의 메인 파일을 사용할 수는 없다.
아마 메인 프로그램의 코드를 카피해서 테스트 환경을 구축해야 할 것이다.
메인 프로그램의 용량이 엄청나다면 테스트 환경을 구성하는 것 조차 어려울 것이다.
또한 테스트가 잘되서 메인프로젝트에 투입하는 상황을 가정 해보자
내가 테스트했던 카피 코드에서 테스트한 부분만 메인프로젝트에 수정하고 추가해야하는 번거로움이 생길 것이다.
Git은 프로젝트 내용을 여러 모드로 자유롭게 전환하고 변경사항을 쉽게 이동할 수 있다.
3. 협업
프로그램은 한사람의 역량으로 개발하고 유지보수하는데 한계가 있다.
대부분의 프로그램은 여러사람의 노력으로 탄생한다.
Git은 하나의 프로그램을 여러사람들이 개발 할 수 있도록 협업환경을 구축해준다.
이 3가지 이유만으로도 우리가 Git을 공부해야하는 이유는 충분하다.
아직까지는 직접적으로 느껴지는 부분이 없으니 계속 공부해서 Git의 위대함을 느껴보자.
'Git Study' 카테고리의 다른 글
Git - #6. Reset, Revert (0) | 2023.09.07 |
---|---|
Git - #5. 버전 만들기 (Commit) (0) | 2023.08.30 |
Git - #4. gitignore (0) | 2023.08.29 |
Git - #3. 프로젝트 깃 설정 (0) | 2023.08.29 |
Git - #2. Git 환경 구축 (Window) (0) | 2023.08.25 |