깃, 깃허브 기본

오다현·2025년 5월 7일
9

프론트엔드

목록 보기
3/3
post-thumbnail

깃, 깃허브는 우리가 협업할 때 필요한 협업 도구입니다
(어디가서 모른다고 하면 협업 경험 없다고 생각할 수도 있음)

보통 개인 깃허브에만 커밋메세지 넣어서 올려보신분들이 많으실텐데,
그 이상 많은 기능들이 있습니다.

깃 vs 깃허브

우선 깃과 깃허브를 같은 것으로 생각하는 분들이 많으신데

버전관리 도구

소스코드의 버전을 관리해주고 버전에 따른 히스토리를 만들어가면서 문제가 생기면 롤백하고 다시 릴리즈합니다

쉽게말해 업데이트 한 어플에 오류가 생겼을때 이 깃을 통해 현재 코드를 이전버전(업데이트 전 버전)으로 되돌리고 오류를 고친 후에 재배포합니다
이렇게 버전관리를 하는 것입니다

깃허브

는 깃을 기반으로 한 온라인 플랫폼 으로

웹 호스팅 서비스까지 가능해 웹상에서 자신의 코드를 업로드하고 공유할 수 있습니다
또한 상대방의 작업물을 받아오는 것도 가능해 협업이 가능합니다

깃허브가 없던 시절엔

사진과 같이 코드를 sns나 메일을 통해 파일별로 복사해서 전달했지만
이제는 깃허브를 활용해 업로드해서 팀원들에게 쉽게 공유하고 협업할 수 있습니다

깃에 대하여

버전관리가 필요한 이유

앞에서 깃은 소스코드의 버전을 관리해준다고 했는데
깃을 통해

  • 변경이력 추적 및 롤백 가능
  • 충돌관리를 하여 협업 효율성 향상
  • 릴리즈 관리 및 버전 태깅
  • 안전한 백업

등을 할 수 있습니다

버전관리할 때는 여러명이 동시에 코드를 작업하므로
브랜치 를 나눠서 관리합니다

먼저 New를 클릭하여

레포지토리를 만들어 파일을 관리할 저장장소 즉, 브랜치를 생성합니다


브랜치는 하나가 아닌 여러개를 만드는데

브랜치 만드는방법은

git branch -M  main

-M은 브랜치가 비어있으면 최종으로 쓰겠다, 안비어있으면 여기에 앞으로 코드 올릴게요 라는 뜻

사진에 있는 feature 브랜치는 개개인이 작업하는 브랜치이며
보통 main - 최종 배포용, develop - 테스트 완료 코드, feature - 개인 작업용 등으로 브랜치를 나눠서 전략적으로 코드를 관리합니다

내 코드를 feature에 올리게되면 PR 을 보내는 것이 가능한데
보내면 팀원이 내 코드를 검토하고 문제가 없으면 merge를 하여 develop에 올립니다
즉, pr을 한다는 것은
내 코드 확인해서 테스트완료브랜치로 올려주세요 ~ 라는 것입니다

main에는 프로젝트 가장 마지막 배포 전 !!에만 올립니다

merge 는 소스코드를 통합하는 것을 말합니다
이 merge가 잘 안되었을경우 코드를 주고 받을때 충돌이 날 수 있으며 이전 작업자와 연락하여 해결해야하는 번거로움이 생깁니다

commit

git commit -m "feat: 장바구니 기능 추가"

feature브랜치에 올릴때 위와같이 커밋메세지를 작성해야 올릴 수 있는데
이 커밋은 자신이 한 작업에 대해 팀원들에게 알려주는 것입니다

커밋 메세지를 명확하게 작성하는 것도 중요한데
보통은 feat: 장바구니 기능 추가, fix: 반응형 태블릿부분 수정 등으로 구분합니다
feat은 기능을 추가한 커밋 fix는 수정한 커밋에 사용합니다

또한 코드 올릴 때 api키 같은 깃허브에 올리지 않아야할 파일들은 .gitignore 을 사용합니다

깃허브에 대하여

깃허브 올리기

브랜치 새로 만들었을때 깃허브와 vscode 최초 연결

git init 

: Git에서 관리 시작할게요

git remote add origin 깃허브주소

: 내로컬 repository와 깃허브 연결
clone시 remote 안해도 자동연결됨

git checkout -b 브랜치명

: 새브랜치 생성

올려야할 브랜치에 코드 넣기

git status

: on branch ~ 가 내 위치가 맞으면 ok (틀리면 git checkout 이동하려는 브랜치명)

git add .

또는 git add 파일명 : 올릴 파일 선택

git commit -m ""

: 커밋메세지

git push origin 브랜치명 

: 올려야할 브랜치에 코드 넣기, git push만으로도 가능하지만 브랜치명을 명확하게 말해줌으로써 다른브랜치와 충돌 실수방지 가능

깃허브 받아오기

(1회용)

git clone 깃허브주소 

: 처음에 프로젝트 통째로 복제할 때 사용
팀원이 만든 저장소를 내 컴퓨터에 처음 가져올 때나 다른 사람 프로젝트를 공부하거나 복제할 때 사용

(자주 작업)

git pull origin 브랜치명

: 다른 사람이 올린 코드를 받아올 때나 매일 작업 전 최신 코드 반영할때 사용
origin 쓰는 이유는 올릴 브랜치를 알려주기위해서

profile
프론트엔드 개발자 지망생

1개의 댓글

comment-user-thumbnail
2025년 5월 7일

오옹 덕분에 좋은 정보 보고 갑니당

답글 달기