git을 사용하여 특정 파일의 변경 사항을 확인하십시오 git diff명령을 사용하여 변경 사항을 확인할 수

git diff명령을 사용하여 변경 사항을 확인할 수 있지만 이해하는 한 디렉토리 기반입니다. 이는 현재 디렉토리에있는 모든 파일의 모든 변경 사항을 제공함을 의미합니다.

하나의 특정 파일에서 변경 사항 만 확인하려면 어떻게합니까? 예를 들어 파일 file_1.rb, file_2.rb…, 을 변경 file_N.rb했지만 파일의 변경에만 관심이 있습니다 file_2.rb. 커밋하기 전에 이러한 변경 사항을 어떻게 확인합니까?



답변

다음과 같은 명령을 사용하십시오.

git diff file_2.rb

차이점을 얻을 수있는 종류에 대한 자세한 내용은 git diff설명서 를 참조하십시오 .

일반적으로 현재 디렉토리 만이 아니라 git diff전체 저장소 의 모든 변경 사항이 표시됩니다 .


답변

다른 방법 ( 이 SO answer 에서 언급 됨 )은 터미널에 기록을 유지하고 파일 자체에 대한 매우 깊은 기록을 제공합니다.

git log --follow -p -- file

파일의 전체 히스토리가 표시됩니다 (이름 변경 이후의 히스토리 및 각 변경마다 차이가있는 히스토리 포함).

즉, bar라는 파일 이름이 foo로 이름 지정된 경우 git log -p bar (-follow 옵션없이)는 파일 이름이 바뀐 지점까지만 파일 기록을 표시합니다. foo로 알려진 파일의 기록. git log –follow -p bar를 사용하면 파일이 foo라고 알려진 파일의 변경 사항을 포함하여 파일의 전체 기록을 표시합니다.


답변

gitk [filename]변경 로그를 보는 데 사용할 수 있습니다


답변

아래 명령을 사용하여 파일에서 누가 무엇을 변경했는지 확인할 수 있습니다.

git blame <filename>


답변

당신은 실행할 수 있습니다

git status -s

수정 된 파일 이름이 표시되고 관심있는 파일 경로를 복사하여 다음을 사용하여 변경 사항을 볼 수 있습니다. git diff

git diff <filepath + filename>

답변

특정 파일 변경에 대한 세부 정보 만 커밋하려면

git log --follow file_1.rb

동일한 파일에 대한 다양한 커밋 간의 차이점을 나열합니다.

git log -p file_1.rb

커밋과 메시지 만 나열하기 위해

git log --follow --oneline file_1.rb

답변

당신은 또한 시도 할 수 있습니다

git show <filename>

커밋의 경우, git show 는 로그 메시지와 텍스트 차이 (파일과 커밋 된 버전 사이의 파일)를 표시합니다.

자세한 내용은 git show Documentation 을 확인할 수 있습니다 .