초심자를 위한 깃 사용 안내서

juny_0429·2023년 3월 30일
1

(Github, Intellij 기준으로 설명합니다.)



 초심자를 위한 정말 간단한 정보와 사용법을 알려드립니다!!

처음 git을 사용할 때 너무 헷갈리고 코드가 날아갈까봐 무서워서 못썼던 경험을 바탕으로 작성합니다.

이곳에서 기초를 익히고 다른 게시물들을 검색해서 보시면 다양한 git 사용법을 보실 수 있습니다.

git이 뭔가요?

여럼 명이서 하나의 프로젝트를 할 때, 소스 코드와 같은 파일의 변경 내역을 추적하고

여러 사람이 협업하여 작업할 때 버전 관리를 용이하게 해줍니다.

하나의 중앙 서버에만 의존하지 않고 로컬 저장소와 원격 저장소를 모두 사용할 수 있습니다.

꼭 알아야 할 관련 용어

  • Branch : 가지, 분기점이라고 합니다. 현재 상태를 복사(중요!!)하여 새로운 분기점을 만듭니다.(나 지금 있는 코드랑 똑같은 복사본 만들래)
  • Commit : 내가 작성한 코드를 로컬 컴퓨터에 저장합니다.
    (내가 지금 작성한 코드를 내컴퓨터[Local]에 저장할래, 변화한 부분을 내 컴퓨터 저장소에만 저장합니다!)
  • Push : 로컬 컴퓨터에서 서버로 변경사항을 올립니다.
    (내 컴퓨터[Local]에 저장된 코드를 인터넷 저장소에 저장할래)
  • Merge : 현재 Branch를 원하는 branch와 병합하는 과정
    (선택한 브런치를 지금 선택되어 있는 브런치로 가져와서 합칠래)
  • Pull : 원격저장소에 있는 프로젝트의 변경사항을 그대로 로컬저장소에 가져와 자동으로 병합
    (fetch + merge를 모두 할래)
  • Fetch : 원격 저장소에 있는 프로젝트의 변경사항을 가져온다.
    (다른 사람들이 올린 수정사항 등을 확인하고 가져오기만 할래, 코드 병합 X)
  • Check Out : 작업하기 원하는 브랜치로 이동
    (나 이 브랜치 사용할래)

  • Update Project(인텔리제이에만 있는 기능) : 현재 작업 중인 프로젝트의 Git 저장소에서 최신 변경 사항을 가져와 프로젝트를 업데이트하는 작업입니다. (pull과 비슷한 기능입니다.)

→ pull 과 update는 무슨 차이가 있나요?
pull은 git 저장소에 최신 변경 사항을 가져오지만 update는 인텔리제이에 모든 변경사항을 가져옵니다.

그림으로 보는 깃

구글에서 git을 검색하시면 많이 보이는
workspace, index, local, remote

처음에는 이게 뭐야? 하실겁니다.

처음 git을 사용한다면 아래처럼 생각하는게 좋습니다.

저장소 이름쉽게 보기
workspace현재 작업중인 저장소
index임시 저장소
local내 컴퓨터 저장소
remote원격 저장소



꼭! 체크하자!

git을 사용하면서 꼭 하셔야 하는 것이 있습니다.

그건 바로 확인 작업실행 시켜보는 것입니다.

내가 작성한 코드가 잘 올라갔는지 
원래 있던 코드들과 에러는 없는지 꼭! 확인하고 올리셔야하며
특히 메인이나 기타 브런치에서 다른 브런치를 병합(Merge) 하는 경우 
병합 후 에러는 없는지 내가 작성한 부분은 잘 돌아가는지 
꼭! 확인 후 Push 하셔야 합니다.

자주 발생하는 상황들

FaQ


Q. 내 브런치에는 있는데 git 사이트를 들어가니까 내가 작성한 코드가 반영이 되지 않았어요.

A. 보통은 push를 하지 않았거나 반영이 되지 않아서 그럽니다. push를 다시 해보고 확인해주세요.


Q. 내 브런치에서 commit과 push는 어느때마다 해줘야 하는 건가요?

A. 처음에는 변경되는 페이지나 코드를 기준으로 자주 commit 해주는 것이 좋습니다. 그래야만 나중에 문제가 생겨도 돌아가기 수월합니다.


Q. 브런치는 개인당 한개만 만들어야 하나요?

A. 아닙니다. 여러 개 만들어서 사용해도 상관없습니다.

하지만 처음 써보신다면 어느 브런치에 어느 작업을 한지 잘 표시해두고 관리하셔야 합니다.

저 같은 경우에는 백업용으로 한개씩 만들어 두고 나중에 삭제하기도 했습니다.

(브런치를 ‘현재 로컬 저장소의 코드 복사본을 만든다’ 라고 생각하시면 이해가 쉬울겁니다.)

나중에가면 **Develop Branch, Feature branch** 등 기능별로 나눠서 브런치를 만드는데 이건 기본을 익힌다음 찾아보시면 좋아요!!!


Q. 나는 기본을 익혀서 할줄 아는데 같이 하는 팀원들이 git 사용을 힘들어 합니다. 좀더 쉽게 합치는법이 있나요?

A. 있습니다. 한사람이 모든 사람들 브런치를 모아서 main에 올리는 방법도 있습니다.

기준이 되는 사람이 자신의 브런치를 선택한다음 한사람씩 자신의 브런치로 병합(merge)하면 됩니다.

예시)

기준 브런치 ← 팀원1 브런치(merge)

확인

기준 브런치 ← 팀원2 브런치(merge)

확인

….

최종 확인 후 기준 브런치 → main(psuh)

main 확인 후 팀원1, 팀원2 … main을 받아서 최신화


Q. 브런치를 새로 만들었는데 다른 팀원 컴퓨터에서는 브런치가 안보여요.

A. 먼저 내가 가진 브런치를 push 했나 확인해봐야 합니다.
그래도 보이지 않는다면 팀원 컴퓨터에서 fetch를 하여 변경점을 모두 내려 받으면 보일 겁니다.



해당 게시물에 틀린 부분이나 아쉬운 부분을 알려주신다면 바로 수정 하도록 하겠습니다!

0개의 댓글