카테고리 없음

Git 사용법 상세 튜토리얼: 초보자를 위한 완벽 가이드

네 생각은 뭐니? 2025. 6. 26. 19:58
반응형

Git 사용법 상세 튜토리얼: 초보자를 위한 완벽 가이드

 

Git은 현대 소프트웨어 개발에서 필수적인 도구입니다. 이 글에서는 Git이 무엇인지, 왜 필요한지, 그리고 기본적인 사용법을 자세히 알아보겠습니다. Git을 통해 여러분의 프로젝트 관리 능력을 한 단계 업그레이드해보세요!

Git을 사용하는 이유

Git은 여러분의 작업 흐름을 혁신적으로 관리해주는 도구입니다. 마치 시간 여행이 가능한 것처럼, 작업 중 실수를 저지르거나 이전 버전과 현재 버전 간에 혼란이 있을 때 언제든지 폴더 상태를 되돌릴 수 있게 해줍니다. 단순히 Ctrl+Z 수준을 넘어, 모든 파일의 저장 상태를 이전 시점으로, 또는 아예 맨 처음으로 되돌릴 수 있습니다.

이전처럼 폴더를 압축하여 시점별로 저장할 필요가 없어지며, 주 작업 공간에서 위험한 실험적 시도를 해보거나, 여러 고객에게 맞는 다른 버전의 소프트웨어를 만들 때 매우 유용합니다. Git이 없을 때는 폴더를 통째로 복사해서 작업해야 하지만, Git은 폴더 안에 여러 독립적인 작업 환경(브랜치)을 생성하여 자유자재로 이 작업 환경들을 넘나들며 작업할 수 있도록 돕습니다. 특정 브랜치에서 진행한 실험적 기능이 마음에 들면 현재 작업 중인 브랜치로 가져올 수도 있습니다.


Git 사용 준비물

Git을 효과적으로 사용하기 위해 다음 도구들을 준비하는 것이 좋습니다.

  1. Git 설치: git-scm.com 사이트에 접속하여 최신 버전의 설치 파일을 다운로드하고 설치합니다.
  2. IDE (통합 개발 환경): 코딩할 때 사용하는 프로그램입니다. 인텔리제이, 아톰, 안드로이드 스튜디오 등 다양하지만, 이 가이드에서는 Visual Studio Code를 사용합니다. 구글에서 "vs code"를 검색하여 다운로드할 수 있습니다.
  3. SourceTree: Git을 마우스로 다룰 수 있게 해주는 GUI(그래픽 사용자 인터페이스) 소프트웨어입니다. SourceTree 앱 사이트로 가서 다운로드하고 설치합니다.

Git 저장소 만들기

Git을 사용하기 위한 첫 단계는 '저장소(Repository)'를 만드는 것입니다.

  1. 원하는 위치에 프로젝트 폴더를 만들고 VS Code로 엽니다.
  2. 터미널에서 git init을 입력하여 Git 저장소를 만듭니다.
  3. git config --global user.name "내 이름"과 git config --global user.email "내 메일주소" 명령어를 사용하여 여러분의 이름과 이메일을 등록합니다.
  4. SourceTree를 통해서도 Git 저장소를 쉽게 만들 수 있습니다.

현재 시점을 저장하기 (Commit)

작업 내용을 Git에 기록하는 과정을 '커밋(Commit)'이라고 합니다.

  1. git status 명령어를 사용하여 Git이 관리하는 파일들의 상태를 확인합니다.
  2. git add -A 명령어를 입력하여 변경된 모든 파일을 Git의 타임캡슐에 담습니다.
  3. git commit -m "메시지" 명령어를 사용하여 타임캡슐을 묻고, 어떤 변경 사항인지 설명하는 메시지를 남깁니다.
  4. SourceTree에서는 시각적으로 파일을 담고 커밋할 수 있어 편리합니다.

과거로 돌아가기 (Reset & Revert)

실수를 했을 때 과거로 돌아가는 방법은 두 가지가 있습니다.

  • Reset: git reset --hard [커밋ID] 명령어를 사용하여 특정 시점으로 되돌아갑니다. 이 방법은 그 이후의 행적을 완전히 삭제하므로 주의해야 합니다.
  • Revert: git revert [커밋ID] 명령어를 사용하여 특정 시점의 변경을 취소합니다. 이 방법은 취소 내역이 새로운 커밋으로 기록되어 히스토리를 보존하는 장점이 있습니다. SourceTree에서도 Reset과 Revert 기능을 쉽게 사용할 수 있습니다.

독립적인 작업 흐름 만들기 (Branch)

Git의 '브랜치(Branch)'는 여러 독립적인 작업 흐름을 만들어 동시에 여러 작업을 진행할 수 있게 합니다.

  1. git branch [브랜치 이름] 명령어를 사용하여 새로운 브랜치를 만듭니다.
  2. git checkout [브랜치 이름] 명령어를 사용하여 다른 브랜치로 이동합니다.
  3. SourceTree에서는 브랜치 보기를 통해 브랜치를 쉽게 생성하고 이동할 수 있습니다.

브랜치 통합하기 (Merge & Rebase)

다른 브랜치에서 작업한 내용을 현재 브랜치로 가져오는 두 가지 주요 방법입니다.

  • Merge(병합): git merge [브랜치 이름] 명령어를 사용하여 현재 브랜치에 다른 브랜치의 변경 사항을 병합합니다. 병합 시 **충돌(Conflict)**이 발생할 수 있으며, 이때 수동으로 충돌을 해결해야 합니다. SourceTree에서는 병합 과정을 시각적으로 확인하고 처리할 수 있습니다.
  • Rebase(리베이스): git rebase [브랜치 이름] 명령어를 사용하여 변경 내용을 한 줄로 깔끔하게 정리하며 병합합니다. Rebase는 병합과 달리 히스토리를 단순화하여 깔끔하게 보존하는 장점이 있습니다. SourceTree에서도 Rebase 기능을 사용할 수 있습니다.

브랜치 삭제

다 사용한 브랜치는 삭제하여 관리할 수 있습니다.

  • git branch -d [브랜치 이름] 명령어를 사용하여 브랜치를 삭제할 수 있습니다.
  • SourceTree에서는 우클릭하여 브랜치를 삭제할 수 있습니다.

협업하기, Git Hub

GitHub는 Git 저장소를 호스팅하고 공유하는 웹 기반 플랫폼이에요. 개발자들이 코드를 함께 작업하고 버전을 관리하며 프로젝트를 협업할 수 있도록 돕는 서비스입니다. 전 세계 개발자들이 오픈 소스 프로젝트에 참여하거나 자신의 코드를 공개하고 관리하는 데 주로 사용됩니다. 협업하는 깃, 깃허브입니다.

여러 사람이 모듈별로 나누어 실시간으로 작업하는 소프트웨어 개발의 특성상 로컬 저장소라던지 메일이나 클라우드를 통해 관리하려면 어렵고 불편하조. 따라서 작업 중 실시간으로 작업내역을 공유할 수 있는 원격저장소가 필요합니다. 이 때 필요한 것이 협업을 위한 저장소, Github라 부르기도 하조!

이 튜토리얼을 통해 Git의 기본적인 개념과 사용법을 익히셨기를 바랍니다. Git은 처음에는 복잡하게 느껴질 수 있지만, 꾸준히 사용하다 보면 여러분의 개발 워크플로우를 혁신적으로 개선해 줄 강력한 도구가 될 것입니다. git-hub하라!!!