developer tip

Git 저장소에 존재했던 모든 파일 나열

copycodes 2020. 8. 19. 19:48
반응형

Git 저장소에 존재했던 모든 파일 나열


지정된 브랜치에 존재했던 모든 파일을 나열하는 깔끔한 방법이 있습니까?


이것은 Strager 솔루션 의 단순화 된 변형입니다 .

git log --pretty=format: --name-status | cut -f2- | sort -u

편집 : 댓글에 대해 좀 더 가르쳐 준 Jakub 덕분에이 버전은 파이프 라인이 더 짧고 git에게 더 많은 기회를 제공합니다.

git log --pretty=format: --name-only --diff-filter=A | sort -u

이것은 현재 브랜치뿐만 아니라 리포지토리 에 파일 이름이 있는지 확인하는 데 올바른 작업을 수행합니다 .

git log --all --pretty=format: --name-only --diff-filter=A | sort - | grep fubar

실행할 수 있습니다 git-log --name-status.

commit afdbbaf52ab24ef7ce1daaf75f3aaf18c4d2fee0
Author: Your Name <your@email.com>
Date:   Tue Aug 12 13:28:34 2008 -0700

    Added test file.

A       test

그런 다음 추가 된 파일을 추출합니다.

git-log --name-status | sed -ne 's/^A[^u]//p' | sort -u

다음은 두 가지 유용한 별칭입니다 : FindFile ff및 FindFilewithCopies ffc:

# Find if one file ever had into repository
ff = "!git log --pretty=format: --name-status --all -M -B | sort -u | grep $1   #"
# The same as above but showing copied files
ffc = "!git log --pretty=format: --name-status --all -C -M -B | sort -u | grep $1 #"

파일 이름 및 작업에 대한 정보를 얻을 수 있습니다.

샘플 사용 :

$ git ff create
A       database/migrations/2014_10_12_000000_create_users_table.php
A       database/migrations/2014_10_12_100000_create_password_resets_table.php
A       database/migrations/2015_05_11_200932_create_boletin_table.php
A       database/migrations/2015_05_15_133500_create_usuarios_table.php
D       database/migrations/2015_05_12_000000_create_users_table.php
M       database/migrations/2015_05_11_200932_create_boletin_table.php
R051    database/migrations/2014_10_12_000000_create_users_table.php    database/migrations/2015_05_12_000000_create_users_table.php

$ git ffc create
A       database/migrations/2014_10_12_000000_create_users_table.php
A       database/migrations/2014_10_12_100000_create_password_resets_table.php
A       database/migrations/2015_05_11_200932_create_boletin_table.php
A       database/migrations/2015_05_15_133500_create_usuarios_table.php
C052    database/migrations/2014_10_12_000000_create_users_table.php    database/migrations/2015_05_11_210246_create_boletin_nosend_table.php
D       database/migrations/2015_05_12_000000_create_users_table.php
M       database/migrations/2015_05_11_200932_create_boletin_table.php
R051    database/migrations/2014_10_12_000000_create_users_table.php    database/migrations/2015_05_12_000000_create_users_table.php

참고 URL : https://stackoverflow.com/questions/543346/list-all-the-files-that-ever-existed-in-a-git-repository

반응형