Windows 클라이언트 용 git은 500MB 이상의 공간을 차지하는 내 컴퓨터에 전체 mingw 배포판을 설치하는 것으로 보입니다.
이것은 Windows 용 Gimp 설치의 거의 두 배입니다!
저는 이미 cygwin, vim 및 제 작업을 수행하는 데 필요한 다른 모든 유틸리티가 있으므로 perl, vim 등의 다른 복사본에 대해 아무것도 필요하지 않습니다. Windows 용 git 클라이언트가 필요합니다.
내가 사용할 수있는 git 클라이언트를 얻기 위해 설치되는 것을 최소화하려면 어떻게해야합니까?
여기에는 두 가지가 있습니다.
GfW 설치가 차지하는 공간을 계산하는 데 사용한 도구가 무엇이든 잘못되었습니다. 여기에 이유가 있습니다.
역사적 이유 때문에 많은 "보조"Git 실행 파일은 이제 주 실행 파일 인 git.exe
.
이를 위해 설치 프로그램은 git.exe
파일을 작성한 다음 해당 git.exe
실행 파일을 가리키는 소위 "하드 링크"를 생성합니다 . 즉, git-*.exe
에 위치한 파일 mingw32\libexec\git-core
은 모두 하드 링크에 불과합니다.
내 (다소 먼지가 많은) GfW 설치에는 116 개의 하드 링크가 git.exe
있습니다. 약 3MiB를 곱하면 350MiB에 가까운 값을 얻을 수 있습니다. 1
번들로 제공되는 대부분의 항목이 GfW와 관련이없는 것은 실제로 작동하는 데 중요합니다.
Git 핵심 기능의 일부는 쉘 스크립트로 작성됩니다. 좋은 예는 git-rebase
두 번의 마이너 Git 릴리스 전에 C로 다시 작성되었습니다.
쉘 스크립트는 POSIX 쉘의 Windows 포트가 필요함을 의미합니다. 그래서 GfW 번들 bash
. 또한 유닉스 쉘 프로그래머가 사용할 수있을 것으로 기대하는 유틸리티 세트가 필요함을 의미하기도합니다. 예를 들어 sed
or awk
등 ( "그냥"이 아니라 실제로 Git 코드의 일부에서 사용되기 때문입니다).
git svn
다리는 Perl로 작성하고 클라이언트 서브 버전 라이브러리뿐만 아니라 사용할 수 몇 가지 펄 모듈이 필요합니다.
핵심 구성 요소는 아니지만 많은 사람들이 그 존재를 당연하게 여기기 때문에 여기에 있습니다.
주식 GUI 유틸리티, git gui
그리고 gitk
은 Tcl / Tk를 작성하는 ... 그래서 무엇을 생각한다.
그리고 다시 많은 사람들이 그들의 가용성을 당연하게 여기고 있습니다.
OpenSSH SSH
클라이언트는 같은 이유로 번들로 제공됩니다.
HTTP[S]
Git의 프로토콜에 대한 지원은 libcURL
OpenSSL을 포함한 많은 항목에 따라 구현됩니다 .
이제 내가 열거 한 소프트웨어의 많은 부분이 번들링이 필요한 자체 하드 종속성을 가지고 있음을 고려하십시오.
따라서 기본적으로 꼭 필요하지 않은 두 개의 번들 소프트웨어 인 Vim과 Mintty가 남아 있습니다. GfW 작업을하는 사람들의 의견은 Git Bash 창에서 GfW 작업을 선호하는 사람들이 사용할 수있을 것으로 기대된다는 것입니다. 간단히 말해서, 그들은 Unix 땅에서 왔거나 Windows와 Unix 유사 시스템 (Mac OS X 포함)간에 시스템을주고받는 사람들을 위해 존재합니다.
그래서 ... 좀 더 생각해 보면, 예를 들어 일반적인 GNU / Linux 기반 OS에서 다음과 같이 할 때
apt install git git-gui gitk git-svn
당신은 의존성에 대해 도저히 신경 쓰지 않습니다.
이렇게하면 Git 설치가 잘못된 종속성이 거의없는 것처럼 보입니다.
반면 Windows는
지금 보시다시피, GfW 개발자는 모든 것을 번들로 묶는 것보다이 제품을 구현하는 다른 현명한 방법이 없었습니다. 결국, 전형적인 Joe Random Developer는 설치 프로그램을 다운로드하고 클릭하여 결과적으로 완전히 작동하는 제품을 얻을 것으로 예상합니다.
상황은 약간 개선 될 것입니다. 2.x 브랜치가 시작된 이후 GfW는 가능한 한 Msys2 생태계에 편승하기 위해 노력하고 있으며 여기에는 패키지 관리 기능 ( pacman
IIRC 의 Windows 포트 기반)이 포함됩니다. ). 지금 작동하는지 확실하지 않지만 목표는 결국 Msys2 패키지 세트로 사용할 수있게하여 GfW를 설치 가능하게 만드는 것이 었습니다. 이에 대한 상태 업데이트를 원하시면 GfW 메일 링리스트에 문의하십시오.
요약하자면, 시스템에 GfW를 설치하는 방법에는 (전체) 설치 프로그램과 Msys2 에코 시스템 및 자체 패키지 관리자를 통한 두 가지 방법이 있습니다. 후자의 기능을 사용하면 최소한의 물건 만 설치할 수 있습니다 (패키지 관리자의 부기에서 발생하는 일부 오버 헤드 대신).
1 FAT32와 같이 하드 링크를 지원하지 않는 파일 시스템에 GfW를 설치 한 경우에는 작동하지 않습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다