Git의 커밋되지 않은 변경 사항에 대한 Diff 세부 정보 표시

John Wachira 2024년2월15일
Git의 커밋되지 않은 변경 사항에 대한 Diff 세부 정보 표시

이 기사에서는 Git에서 커밋되지 않은 작업에 대한 diff 세부 정보를 얻는 방법에 대해 설명합니다. git diff 명령을 사용하여 다양한 Git 참조(예: 커밋, 인덱스 및 작업 트리) 간의 차이점을 표시합니다.

아래에서 설명하는 것처럼 커밋되지 않은 작업의 세부 정보를 표시하는 명령을 사용할 수 있습니다.

Git의 커밋되지 않은 변경 사항에 대한 Diff 세부 정보 표시

더 쉬운 문맥을 위해 예제를 사용합니다. 아래 이미지가 저장소에 있는 작업 디렉토리의 현재 상태를 나타낸다고 가정해 보겠습니다.

작업 디렉토리

위의 두 파일 모두 커밋되지 않은 작업 범주에 속합니다. 그러나 git diff 명령은 스테이징된 파일과 스테이징되지 않은 파일에 대해 동일하게 작동하지 않습니다.

더 명확한 그림을 위해 매개변수가 없는 기본 git diff부터 시작하겠습니다.

$ git diff

출력:

git diff no param

매개변수가 없는 git diff 명령은 스테이지되지 않은 파일의 변경 사항만 표시한다는 것을 알 수 있습니다. Git 문서에서 매개변수가 없는 git diff 명령은 인덱스와 관련된 변경 사항을 표시합니다.

이러한 변경 사항은 인덱스로 이동해야 하지만 아직 추가되지는 않았습니다.

준비된 파일에 대한 diff 세부 정보를 어떻게 표시합니까?

준비된 파일의 변경 사항을 표시하기 위해 아래 그림과 같이 git diff 명령을 사용합니다.

$ git diff --cached

결과:

git diff –cached

git diff 명령에 --cached 플래그를 추가하면 준비된 파일에 대한 diff 세부 정보가 표시됩니다. 사실 Git 문서에는 git diff --cached가 현재 커밋(HEAD)과 관련된 단계별 변경 사항을 표시한다고 명시되어 있습니다.

명령을 별도로 실행하지 않으려면 어떻게 해야 합니까?

단계적 및 단계적 변경에 대한 diff 세부 정보를 표시하려면 아래 그림과 같이 git diff 명령을 실행합니다.

$ git diff HEAD

결과:

git diff HEAD

git diff HEAD 명령은 작업 디렉토리와 현재 커밋 간의 diff 세부 정보를 표시합니다.

보너스 팁

위의 diff 세부 정보를 읽는 데 어려움이 있는 경우 Meld와 같은 타사 difftool을 사용할 수 있습니다.

간단히 말해서 git diff 명령을 조작하여 파일 범주에 따라 커밋되지 않은 작업에 대한 diff 세부 정보를 표시할 수 있습니다. 우리는 Git에서 스테이징된 파일과 스테이징되지 않은 파일에 대한 diff 세부 정보를 표시하는 방법을 살펴보았습니다.

작가: John Wachira
John Wachira avatar John Wachira avatar

John is a Git and PowerShell geek. He uses his expertise in the version control system to help businesses manage their source code. According to him, Shell scripting is the number one choice for automating the management of systems.

LinkedIn

관련 문장 - Git Diff