을 사전에 저지 정력 명령을 실행 커밋되기 전에 auto-formatted 된 파일 유형의 모든 파일을 확인하기 위해 --commit 후크.자식과 같이 후크에게 내가 배치 자동 형식으로 정력의 특정 파일 형식을 다음 명령을 사용
어떻게하면됩니까?
미리 감사드립니다. 솔루션이 될 것
을 사전에 저지 정력 명령을 실행 커밋되기 전에 auto-formatted 된 파일 유형의 모든 파일을 확인하기 위해 --commit 후크.자식과 같이 후크에게 내가 배치 자동 형식으로 정력의 특정 파일 형식을 다음 명령을 사용
어떻게하면됩니까?
미리 감사드립니다. 솔루션이 될 것
하나, as in this answer을 vim
전화 : 대신 pre-commit
후크를 사용하는
files=`find /path/to/repo -name "*.filetype" -type f`
for file in $files
do
vim -e -s -n "+normal gg=GZZ" $file
done
을하지만, 스크립트를 실행됩니다 clean
스크립트를 정의 할 수 있습니다 (같은 정력을 호출 위).
스크립트를 사용하여 content filter driver를 통해 호출됩니다 (귀하의 경우 : *.filetype
)를 .gitattributes
declaration.
("Pro Git book"에서 "Customizing Git - Git Attributes"에서 이미지))
로컬 자식 설정의 내용 파일러 드라이버, 자동, git commit
에 해당 스크립트를 적용 할 것을 선언되면.
"Best practice - Git + Build automation - Keeping configs separate"의 전체 예제를 참조하십시오.
올바른 방향으로 나를 주셔서 감사합니다. 필터는 stdin을 기대하고 stdout에 쓰는 것 같습니다. 커밋되는 파일 만 포맷하려면 어떻게해야합니까? % f는 파일 이름을 통과 시키지만, stdin과 stdout을 기대하는 상태 바로 다음의 문서를 말합니다. 그래서 주어진 모든 파일에 내 vim 명령을 적용하면 어떻게됩니까? –
@RyanPrice "커밋되는 파일 만 포맷하고 싶다면 어떻게해야할까요?": 깨끗한 스크립트가 수행합니다. 커밋 할 파일의 형식을 지정합니다. 거기에서 https://vi.stackexchange.com/a/5994와 같이 vim 명령에 내용을 전달할 수 없는지 확인하십시오. – VonC