programing tip

힘내 : 다른 지점에서 두 개의 서로 다른 파일을 어떻게 다른가요?

itbloger 2020. 6. 4. 19:14
반응형

힘내 : 다른 지점에서 두 개의 서로 다른 파일을 어떻게 다른가요?


다른 지점에 두 개의 다른 파일이 있습니다. 하나의 명령으로 어떻게 차이점을 알 수 있습니까?

같은 것

# git diff branch1/foo.txt branch2/foo-another.txt

다른 파일을 확인하고 diff하여 복원 할 수는 있지만 매우 더러운 해결책입니다.


git diff branch1:full/path/to/foo.txt branch2:full/path/to/foo-another.txt

상대 경로를 사용할 수도 있습니다.

git diff branch1:./relative/path/to/foo.txt branch2:./relative/path/to/foo-another.txt

참고 사항 : 전체 경로가 필요하지 않으며 ./상대 경로 부터 시작할 수 있습니다 . 때로는 편리 할 수 ​​있습니다.

git diff branch1:./relative/path/to/foo.txt branch2:./relative/path/to/foo-another.txt

두 개의 다른 브랜치에서 파일을 비교하는 방법에는 여러 가지가 있습니다. 예를 들면 다음과 같습니다.

  • 이름이 같거나 다른 경우 :

     git diff branch1:file branch2:file
    

    예:

     git diff branch1:full/path/to/foo.txt branch2:full/path/to/foo-another.txt
    
  • 이름이 동일하고 현재 작업 디렉토리를 일부 브랜치와 비교하려는 경우에만 :

    git diff ..someBranch path/to/file
    

    예:

    git diff ..branch2 full/path/to/foo.txt
    

    이 예에서는 실제 분기의 파일을 마스터 분기의 파일과 비교합니다.

이 응답을 확인할 수 있습니다.

Git에서 두 가지 지점의 파일 비교


추가하기 위해 매우 간단한 구문을 찾았습니다.

git diff <branch1> <branch2> <filepath>

예를 들어 다음과 같은 상대 참조와 함께 작동합니다.

# compare the previous committed state from HEAD with the state branch1 was 3 commits ago
git diff HEAD^ <branch1>~3 <filepath>

git diff적용 할 시작 및 범위를 지정할 수 있습니다 . 범위는 ..표기법으로 표시됩니다.

branch1=somebranch
branch2=someotherbranch
git diff ${branch1}..${branch2} -- file_path

참고 URL : https://stackoverflow.com/questions/8131135/git-how-to-diff-two-different-files-in-different-branches

반응형