겉핥기로 시작하는 Git
초심을 되찾고자 기술 블로그로 돌아가기로 했습니다! 1년 반 정도 IT 도서 서평만 올렸는데 학부 시절 누가 제가 알려줬으면 했던 기술들을 연재해보려고 합니다. 해당 프로젝트의 첫 아이템인 Git
입니다.
이미 많은 양질의 Git
, Github
관련 글들이 인터넷에 존재하지만 제가 겪었던 시행착오를 나누면서 제 블로그를 보시는 분들에게 도움이 되었으면 합니다.
대학시절 팀 프로젝트, 동아리 등의 활동을 하면서 제일 먼저 세팅하고 필요성을 역설한 개발도구가 Git
이었습니다. 하지만 많은 경우 시작하는 시점에선 Git
의 필요성조차 느끼지 못하는 친구들이 많았습니다. 그래도 강제로 가르쳐서 commit
, pull
, push
만 사용 할 수 있게 만들어 프로젝트를 진행하면 Git
의 필요성을 본인들이 간증하는 모습을 볼 수 있었습니다. 프로젝트가 꼬여서 다시 할 뻔 한걸 살렸거든요
Git
은 프로그래밍 커뮤니티에 한 번쯤은 본적 있을 위 짤방에 등장할 정도로 약간은 고인물의 테크닉으로 인식되는 경우가 있는것 같습니다. 들어만 봤지 그게 뭔지는 모르겠고, 터미널에서 뭔가 막 해서 어려워 보인다 등의 이야기를 많이 들었습니다. 하지만 단언컨데 위 기술들 중 가장 진입장벽이 낮고 쉽게 기본기를 익혀 사용할 수 도구입니다.
Git
은 버전 관리 도구
입니다. 올바른 설명이 아닐 수도 있지만 게임에 비유해 보겠습니다. 보스를 잡으러 가면서 여러 세이브 포인트를 만드는 과정입니다. 스테이지를 클리어 할 때마다 저장하고 다음 단계로 넘어가듯 기능을 하나씩 구현 할때마다 저장을 하고 필요할 경우 해당 세이브 포인트로 돌아가 해당 지점부터 게임을 다시 진행할 수 있습니다. Git
은 해당 과정을 코드로 가능하게 해줍니다.
뒤에 자세히 설명하겠지만 add
는 이번에 세이브할 내용들을 고르는 역할을 합니다. 내가 원하는 능력치만 이번에 세이브 할 수 있어요. commit
은 세이브입니다. 다른 컴퓨터에서 내 캐릭터로 계속 게임을 하고 싶으면 클라우드 저장소에 올려야 겠죠? push
로 클라우드에 올리고 pull
로 내가 올린 세이브 파일을 가지고 옵니다. 이게 기본적인 Git
의 진행과정입니다. Git
없이 코드를 작성하고 개발을 하는 것은 세이브없이 게임을 하는 느낌이라고 생각하면 좋을 것 같습니다.
다음 글은 Git
이 어떻게 코드와 파일들을 관리하는지 살펴 보겠습니다. 설치 법에 대한 자세한 내용은 다루지 않을 생각입니다. 자세히 다루고 있는 블로그도 많으니 설치는 그 글들 따라해주세요. 버전 업에 따라서 블로그 글도 업데이트를 해줘야 하는데 그럴 자신이 없어서… 사실 계속 Next만 눌러도 괜찮아요. Vim
이 뭔지 모르겠거나 Vim
은 못 쓰겠다 하시는 분들만 중간에 vim
, vscode
등 선택하는 곳에서 해당 에디터만 바꿔주시면 됩니다.