Git 기본 이론
Git은 로컬 컴퓨터에 설치되어 폴더(프로젝트)를 하나의 묶음으로 취급하면서 파일들의 변경사항을 추적(버전 관리)하는 시스템이다. Git을 사용하면, 자신의 컴퓨터에서 개발을 진행하면서 동시에 버전 관리를 할 수 있고, 원격 저장소(ex: GitHub)와도 소통할 수 있다. GitHub는 중앙 서버 역할을 하여 프로젝트의 백업, 복구, 협업을 지원하는 플랫폼이다.
따라서 우리는 Git을 통해 협업 할 수 있게 되었다.
CLI(Command Line Interface)
사용자가 셸(shell)이나 터미널을 통해 텍스트 기반 명령어를 입력하여 컴퓨터에게 명령을 내리는 인터페이스이다. 예를 들어, Linux의 Bash 또는 Windows의 Command Prompt가 여기에 해당한다.
GUI(Graphic User Interface)
그래픽 요소를 사용하여 사용자가 마우스 클릭 등을 통해 명령을 내릴 수 있도록 만든 인터페이스이다. GUI는 아이콘, 창, 버튼 등을 사용하여 사용자와 컴퓨터 사이의 상호작용을 용이하게 한다.
기본 터미널 명령어
ls
현재 디렉토리의 파일 리스트 조회mkdir
새 디렉토리(폴더) 생성cd [디렉토리명]
지정된 디렉토리로 이동cd ..
상위 디렉토리로 이동기본 Git 명령어
git init
새로운 Git 저장소를 시작하며, 이 명령은 해당 디렉토리에서 Git의 버전 관리를 시작하게 한다.git status
현재 작업 디렉토리의 상태를 확인, 변경된 파일, 추가된 파일 등의 상태를 보여준다.git add [파일명]
특정 파일이나 디렉토리를 스테이징 영역에 추가하여 다음 커밋에 포함시킬 준비를 한다.git commit -m "[커밋 메시지]"
스테이징 영역에 추가된 변경 사항들을 저장소에 커밋한다. 커밋 메시지는 변경 내용을 요약하는 짧은 설명이다.git log
저장소의 커밋 로그를 보여주며, 각 커밋의 세부 사항(작성자, 날짜, 메시지)을 확인할 수 있다.
Git History
GUI 이야기를 덧붙이자면, Git Client라는 GUI 기반 도구를 사용하여 Git을 더 편리하게 사용할 수 있다. CLI는 복잡한 프로젝트에서 여러 브랜치와 협업 상황을 관리하기에는 한계가 있을 수 있다. GUI 클라이언트를 사용하면 브랜치, 커밋, 협업의 흐름을 시각적으로 나타내어 이해를 도와준다. 프로젝트의 구조를 한눈에 파악하기 쉽고, 복잡한 브랜칭 전략도 쉽게 관리할 수 있다. 이렇게 편리한 툴이 있다면 사용하는게 인지상정! 개인적으로 fork라는 Git client를 사용해왔다. 무료 버전으로 손쉽게 사용이 가능하다.