CI-CD

[Git] git diff 에 대한 다양한 예시

IT-PAPA 2023. 12. 4. 06:14
반응형

git diff 명령어는 코드 변경 사항을 비교하고 표시하는 데 사용됩니다. 다양한 옵션을 통해 원하는 방식으로 비교 결과를 조절할 수 있습니다. 아래는 git diff 명령어의 일부 옵션들과 간단한 설명, 예시를 나타내는 표입니다.

옵션 설명 예시
git diff Working directory와 인덱스(Staging Area) 간의 차이를 보여줍니다. git diff
git diff --staged 또는 git diff --cached Staging Area와 최신 커밋 간의 차이를 보여줍니다. git diff --staged
git diff commit1 commit2 두 커밋 간의 차이를 보여줍니다. git diff abc123 def456
git diff HEAD 현재 브랜치의 마지막 커밋과 Working directory 간의 차이를 보여줍니다. git diff HEAD
git diff branch_name 현재 브랜치와 지정한 브랜치 간의 차이를 보여줍니다. git diff feature-branch
git diff --color 변경 사항을 컬러로 강조하여 표시합니다. git diff --color
git diff --name-only 변경된 파일의 이름만 표시합니다. git diff --name-only
git diff --stat 변경된 파일 및 통계 정보를 간략하게 표시합니다. git diff --stat
git diff -w 공백 문자를 무시하여 비교합니다. git diff -w
git diff --word-diff 단어 단위로 변경 내용을 표시합니다. git diff --word-diff
git diff --cached HEAD Staging Area와 최신 커밋 간의 차이를 보여줍니다. git diff --cached HEAD
git diff --ignore-space-change 공백 문자 변경을 무시합니다. git diff --ignore-space-change
git diff --ignore-all-space 모든 공백 문자를 무시합니다. git diff --ignore-all-space
git diff --color-words 단어 단위로 변경 내용을 강조하여 표시합니다. git diff --color-words

 

현재 작업 디렉토리의 변경 사항 확인:

git diff

Staging area(index)와 최신 커밋 간의 변경 사항 확인:

git diff --staged

두 커밋 간의 변경 사항 확인:

git diff abc123 def456

두 브랜치 간의 변경 사항 확인:

git diff feature-branch master

변경된 파일의 이름만 확인:

git diff --name-only

파일의 추가, 수정, 삭제 상태 확인:

git diff --name-status

통계 정보와 함께 변경 사항 확인:

git diff --stat

단어 간의 변경 사항에서 공백을 무시하여 확인:

git diff --color-words -w

특정 디렉토리의 변경 사항만 확인:

git diff directory/path

이전 커밋과 현재 작업 디렉토리의 변경 사항 비교:

git diff HEAD~1

특정 확장자를 가진 파일의 변경 사항 확인:

git diff -- '*.js'

변경된 파일 내용을 무시하고 파일 이름만 확인:

git diff --name-only --diff-filter=D

변경된 내용 중에서 특정 문자열이 포함된 부분 확인:

git diff -G 'search_string'

변경된 내용을 파일로 저장:

git diff > changes.patch

이전 커밋부터 특정 커밋까지의 변경 사항 확인:

git diff HEAD~3..HEAD~1

변경된 파일의 특정 부분 비교:

git diff -U0 -- file.txt

변경된 파일 중에서 크기가 일정 이상인 파일만 확인:

git diff --name-only --diff-filter=AMR --shortstat | awk '$3 > 100 {print $0}'

변경된 파일 중에서 파일 크기가 가장 큰 것 확인:

git diff --name-only --diff-filter=AMR --shortstat | sort -k 3 -n -r | head -n 1

이전 브랜치에서 현재 브랜치로의 변경 사항 확인:

git diff other-branch...

두 브랜치 간의 변경된 내용을 파일로 저장:

git diff branch1 branch2 > branch_changes.patch
728x90
반응형
LIST