Programming

파일에 대한 Git diff 출력은 색상을 유지합니다.

procodes 2020. 8. 14. 21:17
반응형

파일에 대한 Git diff 출력은 색상을 유지합니다.


그것은 할 수 있는가 git diff와 어떻게 든 착색과 출력을 파일로 저장?

git diff > filename.rtf파일에 저장 하는 방법을 알고 있지만 색상을 유지하고 싶습니다.


시험:

git diff --color > foo.txt

다음 문제 :

cat foo.txt

또는:

less -R foo.txt

.diff 확장자로 파일을 저장하고 메모장 ++, Vim 또는 SublimeText에서 엽니 다.

git diff > 20150203_someChanges.diff

감사합니다 @Monsingor


Sublime Text 2 에서 출력 diff 파일을 엽니 다 . 차이 색상을 보여줍니다.


@Gabe의 대답을 확장하려면.

출력을 ansi to html 변환기 bash 스크립트로 파이프하고 해당 출력을 html 파일로 보낼 수 있습니다.

git diff --color|./ansi2html.sh > changes.html

물론 html은 모든 브라우저에서 볼 수 있으므로 출력은 Windows 등에서 읽을 수 있습니다.

ansi2html 코드는 여기에 있습니다 : http://www.pixelbeat.org/scripts/ansi2html.sh


Vim은 git diff를 포함하는 파일을 아름답게 색칠합니다.

git diff


여기에서 답을 찾았습니다 : 특정 git 명령의 색상 출력 .

-c color.ui=always모든 git명령에 전달할 수 있으며 리디렉션시 계속 색상이 지정됩니다. 예를 들면 :git -c color.ui=always status > file


git remote add -f b path/to/repo_b.git
git remote update
git diff master remotes/b/master > foo.txt

'* .txt'파일에서 추출 된 차이점은 설정하지 않아도 SublimeText2에서 쉽게 읽을 수 있습니다 (View-> Syntax-> Diff 사용).


색이 지정된 터미널 텍스트 ... git diff 또는 기타 ... 브라우저에서 볼 수 있도록 허용

sudo apt-get install aha  #  https://github.com/theZiz/aha

aha위를 사용하여 설치 한 다음 문제

git diff --color mysourcefile  | aha > ~/cool_colorized.html

firefox  ~/cool_colorized.html

GitHub에 업로드하고 관련 커밋에 대한 링크를 제공 할 수 있습니다.

참고 URL : https://stackoverflow.com/questions/9706492/git-diff-output-to-file-preserve-coloring

반응형