git master에서 arch의 makepkg를 효율적으로 실행합니다(자주 발생하지만 "작은" 변경).

git master에서 arch의 makepkg를 효율적으로 실행합니다(자주 발생하지만 "작은" 변경).

아치에서 소스에서 빌드된 pacman 설치 가능 .pkg.tar.xz 파일을 사용할 때 ... 업스트림 버전 대신 AUR "-git" 소스인 경우 (첫 번째 버전 이후 ) 수행할 수 있는 makepkg방법이 있습니까 ? 빌드 시스템이 실제로 재빌드해야 할 사항을 처리합니까? (최신 git 소스를 설치하고 싶은 경우가 많습니다.)makepkggit pull

makepkg매번 새로운 Git 저장소를 다운로드하지 않고 매번 처음부터 모든 것을 다시 빌드하는 것을 피하는 방법을 모르겠습니다 .

답변1

Makepkg는 매번 저장소를 다시 복제하지 않습니다.수표소스에 이미 존재하는 클론의 경우. 올바른 원격 URL을 가진 비어 있지 않은 복제본이 발견되면 makepkg가 수행하는 모든 작업은 다음과 같습니다.새로운 커밋 받기. makepkgs 출력은 다음과 같습니다.

==> Retrieving sources...
-> Updating mpd-git git repo...
Fetching origin
remote: Compressing objects: 100% (91/91), done.
remote: Total 481 (delta 392), reused 479 (delta 390)
Receiving objects: 100% (481/481), 64.87 KiB | 0 bytes/s, done.
Resolving deltas: 100% (392/392), completed with 99 local objects.
From file:///home/wieland/dev/mpd
   cd1148c..3fa4dad  master     -> master
   cd1148c..3fa4dad  origin/master -> origin/master
   0d7ee2b..b0ff3bc  origin/v0.19.x -> origin/v0.19.x
 * [new tag]         v0.19.10   -> v0.19.10

--clean또한 makepkg 를 전달하지 않는 한 패키지를 빌드하는 데 사용된 소스 디렉터리를 삭제하지 않으므로 --cleanbuild이론적으로는 전체 패키지를 다시 빌드할 필요가 없습니다. 그러나 어떤 경우에는 구성된 구성 스크립트 또는 호출된 다른 스크립트로 build()인해 빌드 프로세스가 모든 것을 다시 컴파일할 수 있습니다.

관련 정보