카테고리 보관물: Git

Git

Git에서 가장 많이 변경된 파일 찾기 어떻게 표시 할 수

Git에서 가장 자주 변경되는 파일을 어떻게 표시 할 수 있습니까?



답변

파일 당 커밋 수 (커밋 및 활성 날짜 별)에 대한 통계를 표시 git effort하는 ( git-extras패키지에서) 명령을 사용할 수 있습니다 .

편집 : 자식의 노력은 단지 떠들썩한 파티 스크립트 당신이 여기에서 찾을 수 있습니다 그리고 당신은 더 특별한 무언가가 필요하다면 여러분의 필요에 적응.


답변

다음과 같이 할 수 있습니다.

git log --pretty=format: --name-only | sort | uniq -c | sort -rg | head -10

로그는 각 커밋에서 변경된 파일의 이름 만 출력하고 나머지는 가장 자주 나타나는 상위 10 개의 파일 이름을 정렬하고 출력합니다.


답변

Mark

sehe의
답변이 --follow파일 이 아니라는 것을 알았습니다. 즉
, 파일 이름이 변경되면 중지됩니다. 이 스크립트는 훨씬 느리지 만 그 목적으로 작동합니다.

git ls-files |
while read aa
do
  printf . >&2
  set $(git log --follow --oneline "$aa" | wc)
  printf '%s\t%s\n' $1 "$aa"
done > bb
echo
sort -nr bb
rm bb

git-most.sh


답변

powershell의 경우 git bash가 설치되어 있다고 가정합니다.

git log --pretty=format: --name-only | sort | uniq -c | sort -Descending | select -First 10


답변

이것은 Windows 버전입니다

git log --pretty=format: --name-only  > allfiles.csv

그런 다음 Excel에서 엽니 다.

A1: FileName
A2: isVisibleFilename  >> =IFERROR(IF(C2>0,TRUE,FALSE),FALSE)
A3: DotLocation >> =FIND("@",SUBSTITUTE(A2,".","@",(LEN(A2)-LEN(SUBSTITUTE(A2,".","")))/LEN(".")))
A4: HasExt       >> =C2>1
A5: TYPE        >> =IF(D2=TRUE,MID(A2,C2+1,18),"")

피벗 테이블 생성

values: Type
  Filter: isFilename = true
  Rows : Type
  Sub : FileName

click [Count Of TYPE] -> Sort -> Sort Largest To Smallest


답변

git whatchanged --all | \grep "\.\.\." | cut -d' ' -f5- | cut -f2- | sort | uniq -c | sort

만보고 싶다면 파일 추가 --authorgit whatchanged --author=name --all.


답변

오래된 질문이지만 여전히 매우 유용한 질문이라고 생각합니다. 다음은 직선형 powershell의 작동 예입니다. 이것은 당신이 속한 브랜치와 관련하여 당신의 저장소에서 가장 많이 변경된 파일 10 개를 얻을 것입니다.

git log --pretty=format: --name-only | Where-Object { ![string]::IsNullOrEmpty($_) } | Sort-Object | Group-Object  | Sort-Object -Property Count -Descending | Select-Object -Property Count, Name -First 10