728x90
728x90
Git 상태 및 로그 확인: 개발 과정 이해하기
Git은 버전 관리 시스템으로, 소프트웨어 개발 과정에서 코드의 변화를 추적하고 관리하는 데 필수적인 도구입니다. 프로젝트의 역사를 기록하고, 협업 시 발생할 수 있는 충돌을 해결하며, 필요한 시점으로 코드를 되돌릴 수 있도록 돕습니다. Git을 효과적으로 활용하기 위해서는 상태 확인(status)과 로그 확인(log) 명령어를 숙달하는 것이 중요합니다.
Git 상태 확인 (status)
git status 명령어는 현재 작업 디렉토리의 상태를 보여줍니다. 어떤 파일이 변경되었는지, 새로 추가되었는지, 또는 삭제되었는지 등을 한눈에 파악할 수 있습니다.
- 주요 상태:
- Untracked: 아직 Git에 추가되지 않은 파일
- Modified: 변경된 파일 (아직 스테이지에 올리지 않은 상태)
- Staged: 스테이지에 올라간 파일 (준비된 상태)
- Unstaged: 스테이지에서 내려온 파일 (변경 사항이 취소된 상태)
- 명령어 사용 예시:
git status
On branch main Changes to be committed: (use "git reset HEAD <file>..." to unstage) new file: README.md modified: index.js Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: package.json
- 활용 방법:
- 커밋하기 전에 변경 사항을 확인하고, 실수로 수정된 파일이 있는지 검토
- 어떤 파일이 스테이지에 올라가 있고, 어떤 파일이 아직 올라가지 않았는지 파악
- 브랜치를 전환하거나 병합하기 전에 충돌 가능성을 미리 확인
728x90
Git 로그 확인 (log)
git log 명령어는 프로젝트의 커밋 기록을 보여줍니다. 각 커밋에는 해당 커밋의 메시지, 작성자, 날짜, 변경된 파일 목록 등이 포함되어 있습니다.
- 주요 옵션:
- -p: 각 커밋의 변경 내용을 상세히 보여줌
- --stat: 각 커밋에서 변경된 파일 목록과 통계 정보를 보여줌
- --oneline: 각 커밋을 한 줄로 간략하게 보여줌
- --graph: 커밋 그래프를 시각적으로 보여줌
- --since, --until: 특정 기간 동안의 커밋만 보여줌
- --author: 특정 작성자의 커밋만 보여줌
- 명령어 사용 예시:
git log -p --stat git log --oneline --graph git log --since="2 weeks ago"
- 활용 방법:
- 프로젝트의 개발 과정을 추적하고, 특정 기능이 언제 추가되었는지 확인
- 버그가 발생했을 때, 해당 버그가 발생한 커밋을 찾아 원인을 분석
- 특정 파일의 변경 이력을 추적
- 이전 버전으로 되돌리고 싶을 때, 되돌릴 커밋을 선택
Git 상태 및 로그 확인 활용 시나리오
- 새로운 기능 추가:
- 기능 개발 중간에 git status를 통해 변경 사항을 확인하고, git add로 스테이지에 올림
- 기능 개발 완료 후 git commit으로 커밋하고, git log로 커밋 기록 확인
- 버그 수정:
- 버그가 발생한 부분을 수정하고 git status로 확인
- git commit으로 수정 사항을 커밋하고, git log로 버그 수정 이력 확인
- 협업:
- 다른 개발자의 변경 사항을 git pull로 받아오고, git status로 충돌 여부 확인
- 충돌이 발생하면 git merge로 병합하고, git log로 병합 과정 확인
- 이전 버전으로 되돌리기:
- git log를 통해 되돌리고 싶은 커밋을 찾고, git reset으로 해당 커밋으로 되돌림
결론
Git 상태 및 로그 확인은 Git을 효과적으로 사용하기 위한 필수적인 과정입니다. git status와 git log 명령어를 숙달하여 프로젝트의 개발 과정을 투명하게 관리하고, 협업 시 발생할 수 있는 문제를 해결하며, 안정적인 소프트웨어 개발을 이루세요.
728x90
728x90
'Git & GitHub 강좌 > 2. Git 기본 개념' 카테고리의 다른 글
Git의 주요 명령어 (add, commit, push, pull 등) (0) | 2024.10.06 |
---|---|
Working Directory, Staging Area, Repository 개념 (0) | 2024.10.06 |
Git 저장소 생성 및 초기화 (0) | 2024.10.06 |
Git 설치 및 환경 설정 (0) | 2024.10.06 |