"git diff"는 "diff"와 관련이 있습니까?

"git diff"는 "diff"와 관련이 있습니까?

git diff관련이 있나요 diff?

  1. git diff기반으로 합니까 diff?

  2. 명령줄 구문git diff~처럼하나diff? 하나를 배우는 것이 다른 하나를 사용하는 데 많은 도움이 됩니까?

  3. 출력 파일이 동일한 형식을 따르나요? 동시에 git patch사용할 수 있나요 patch? ( 가 있나요 git patch? 와 무슨 관련이 있나요 patch?)

감사해요.

답변1

파일 형식은 상호 운용 가능합니다. Git은 가장 좋은 형식을 사용하며, diff -u.it은 이를 확장하여 다른 유형의 변경 사항도 나타냅니다.

이에 상응하는 patch것은 git apply인덱스의 변경 사항을 단계적으로 조정하고 이를 작업 트리에 적용하는 것입니다.

참조 문서에서는 명시적인 비교를 하지 않는 것 같지만 git apply보다 엄격했던 것으로 기억합니다 . patch활성화하거나 비활성화할 수 있는 여러 테스트/버그가 언급되어 있습니다.

참조 문서에서는 옵션 중 하나를 사용하면 git 저장소 외부에서도 "GNU 패치 대체"로 사용할 수 있다고 제안합니다.

답변2

git-diff는 diff보다 더 많은 기능을 제공합니다. diff가 다음과 같은 줄을 생성하기 때문에 출력 패치가 (일부 추가 옵션 없이) 상호 운용 가능하다고 생각하지 않습니다.

diff -ruNa dir1/file1.txt dir2/file1.txt

그리고 git-diff는 다음과 같은 라인을 생성합니다

diff --git a/dir1/file1.txt b/dir2/file1.txt

--no-prefix( 다른 옵션을 사용하여 전환 할 수 있는 소스 및 대상 접두사에 유의하세요 .)

git-diff의 추가 기능은 다음과 같습니다.

  • 이동한 파일이나 이름이 변경된 파일을 녹음할 수 있습니다.차이는 있을 수 없다

  • 재귀 모드 사용, diff 통합 및 기본적으로 새/삭제된 파일 처리( diff -ruN)

  • 차이점을 찾기 위해 다양한 알고리즘을 지원합니다.

  • 바이너리 데이터를 ASCII로 인코딩하는 git 바이너리 패치 지원

관련 정보