공부를 시작하며..
나는 지금까지 Git과 GitHub을 간단한 프로젝트 파일 저장용도로만 사용해 왔다.
옛날부터 Git과 GitHub이 버전 관리와 이슈 트래킹과 같은 기능을 제공한다는 것은 알고 있었지만, 주변 사람 중에서 이를 열심히 활용하는 사람을 찾기 어려워서 그 중요성을 완전히 깨닫지 못했었다. 그래서 "나중에 제대로 공부해 봐야지"라고만 생각하며 미루고 있었다.
그런데 최근 해커톤 프로젝트를 진행하면서 주변을 둘러보니, 나처럼 Git을 단순한 저장소로만 사용하는 팀이 거의 없다는 것을 보게되었고, 더 어리고 경험이 적은 친구들조차 Git과 GitHub을 체계적으로 활용하는 모습을 보고, 나도 더 이상 미루면 안 된다고 판단했다.
그래서 지금부터 바로 git과 github에 대한 기본적인 부분을 공부해보려 한다.
git을 배우면
- 장애복구를 빠르게 가능
- 실행 취소, 재실행이 가능
- 버전간 코드 비교가 손쉬움
- 협업이 쉬워짐
버전관리의 중요성
원래 잘 되던 기능이 작업 후 안된다?
어떤 작업을 했는지 찾아서 다시 고쳐야하는데 큰 파일에서는 이게 만만치 않은 작업이 된다.
이때 버전관리를 하던 프로젝트인지 아닌지에서 차이가 크게 난다.
버전 관리 방법
일반적으로 과제를 저장할 때 과제최종, 과제진짜최종, 과제진짜진짜최종 처럼 파일 명을 저장하는 방법도 하나의 버전관리라고 볼 수 있다.
혹은 프로그램 자체적으로 해주는 버전관리 기능이 있기도 하다.
예) 위키백과 등
이렇게 다양한 버전 관리 시스템 중 git은 에디터 자유도가 높고 오프라인 사용이 가능하다는 장점을 가지고 있다.
언제 소스코드를 저장해야할까?
저장하는 방법에는 자동으로 한 시간마다 혹은 작업이 끝났을 때 하는 방법과 사용자가 수동으로 저장하는 방법 등 여러 방법이 있다.
하지만 소스코드는 작업자가 의도를 가지고 저장해야 한다. 자동저장은 노노
이렇게 의도를 가지고 하는 저장을 commit이라고 부른다.
커밋은 그 시점을 캡쳐하는 것과 동일하다!
사진마다 뭘 했는지 메모를 하듯 커밋도 설명이 담긴 메세지가 있음.
얼마나 자주 커밋을 만들어야 할까?
이건 회사나 팀마다 다른데 커밋의 크기가 작을수록 좋다고 한다. 커밋이 너무 크다고 판단되는 기준은 이 (커밋) PR이 n분 이내에 리뷰가 불가능 하다면 너무 크다고 생각하면 된다.
뭐 말했듯이 크기는 다 다르지만 논리적 변경이 있을 때마다 하는건 고정으로 알아두자.
'깃 & 깃헙' 카테고리의 다른 글
[Git & GitHub] branch / merge / 충돌 / rebase / reset / revert (1) | 2023.09.09 |
---|---|
[Git & GitHub] Staging Area / gitignore / commit (0) | 2023.09.07 |
[Git & GitHub] repository / clone / checkout (0) | 2023.09.05 |
git을 이용해 github에 파일 올리기 (0) | 2023.07.31 |