
% git archive --format tar master > archive.tar
% file archive.tar
archive.tar: POSIX tar archive
% tar cf a.tar archive.tar
% file a.tar
a.tar: POSIX tar archive (GNU)
7zip은 "git archive"로 생성된 tar 아카이브의 압축을 풀 수 없습니다. 분명히 약간의 차이점이 있습니다.
내가 묻는 이유는 Windows의 git에서 tar 아카이브의 압축을 풀 수 있기를 원하며 7zip은 훌륭한 유틸리티이기 때문입니다. 몇 가지 플래그/해결 방법이 있습니까(git에서 만든 tar 아카이브를 풀고 GNU tar로 포장하는 것이 부족함).
답변1
git-archive
PAX tar 아카이브만 생성하며 7-Zip은 PAX tar 아카이브를 읽을 수 없습니다. 에서 다른 형식을 사용하거나 git-archive
, 를 사용하여 다시 압축하기 위해 생성된 아카이브를 사후 처리하거나 tar
Windows에서 다른 도구를 사용하십시오.
답변2
$: git archive --list
tar
tgz
tar.gz
zip
사용 가능한 아카이브 목록에 zip 목록이 표시됩니까? tar 대신 zip을 사용하여 만들 수는 없습니까?
아카이브를 수행하기 위해 git을 사용하는 경우 동일한 도구를 사용하여 아카이브를 추출할 수 있는 방법이 없는지 궁금할 수 있습니다. 운이 좋게도 매뉴얼 페이지에 나와 있습니다:
git-get-tar-commit-id(1)
Extract commit ID from an archive created using git-archive.