PKGBUILD에 하위 모듈 개정 지정

PKGBUILD에 하위 모듈 개정 지정

설치하려고 하는데hhvm-gitAUR에서 패킹하고 오류가 발생했습니다. 하위 모듈 중 하나에 오류가 있습니다. 이 버그는 수정되었으며 개정판에 하위 모듈의 수정 사항이 포함되도록 지정하고 싶습니다. 어떻게 해야 하나요?

PKGBUILD에서 제안된 대로 개정을 지정해 보았습니다.아치스 위키(배열의 행 source):

"git+https://github.com/facebook/proxygen#7e37f926d922b55c85537057b57188dea9694c32"

결과:

  -> Creating working copy of proxygen git repo...
remote: Counting objects: 6, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 6 (delta 4), reused 0 (delta 0)
Unpacking objects: 100% (6/6), done.
From /tmp/yaourt-tmp-german/aur-hhvm-git/proxygen
   7e2a49c..3395064  master     -> origin/master
==> ERROR: Unrecognized reference: 7e37f926d922b55c85537057b57188dea9694c32

답변1

개정판을 잘못된 형식으로 지정했습니다. 제 경우에는 올바른 형식은 다음과 같습니다.

"git+https://github.com/facebook/proxygen#commit=7e37f926d922b55c85537057b57188dea9694c32"

에서 man PKGBUILD:

VCS 소스 사용

source=('directory::url#fragment') 형식으로 소스를 지정하여 버전 제어 시스템(VCS)의 소스를 사용하여 패키지의 개발 버전을 빌드할 수 있습니다. 현재 makepkg는 Bazaar, Git, Subversion 및 Mercurial 버전 제어 시스템을 지원합니다. 다른 버전 제어 시스템의 경우 업스트림 저장소는 prepare() 함수에서 수동으로 복제해야 합니다.

소스 URL은 세 부분으로 나뉩니다.

  • 목차
    (선택 사항) makepkg가 VCS 소스를 다운로드할 대체 디렉터리 이름을 지정합니다.
  • URL
    VCS 저장소의 URL입니다. makepkg가 이를 VCS 소스로 인식하려면 URL 프로토콜에 VCS가 포함되어야 합니다. 프로토콜에 VCS 이름이 포함되어 있지 않으면 URL 앞에 vcs+를 붙여 추가할 수 있습니다. 예를 들어, HTTPS를 사용하는 Git 저장소에는 git+https://.... 형식의 소스 URL이 있습니다.
  • 분할
    (선택 사항) VCS에서 체크아웃할 makepkg의 개정 번호 또는 분기를 지정할 수 있습니다. 예를 들어 특정 개정판을 확인하려면 소스 줄은 source=(url#revision=123) 형식이 됩니다. 사용 가능한 조각은 사용된 VCS에 따라 다릅니다.
    • 술꾼:개정(자세한 내용은 "bzr help revisionspec" 참조)
    • 자식:브랜치, 커밋, 태그
    • HG:분기, 개정, 태그
    • SVN:개정

답변2

빌드 파일을 편집하고 다음 fragment과 같은 옵션을 지정할 수 있습니다.

pkgdesc='A YANG data modelling language parser and toolkit written (and providing API) in C'
url="https://github.com/CESNET/${pkgname}"
fragment=c035fe6

~에서man PKGBUILD

snippet (선택 사항) VCS에서 체크아웃할 makepkg의 개정 번호 또는 분기를 지정할 수 있습니다. 조각은 type=value 형식을 갖습니다. 예를 들어 특정 개정을 확인하려면 소스 줄은 source=(url#revision=123)입니다. 사용 가능한 유형은 사용된 VCS에 따라 다릅니다.

bzr: 개정(자세한 내용은 "bzr help revisionspec" 참조)

화석: 가지, 커밋, 태그

git: 브랜치, 커밋, 태그

hg: 분기, 개정, 태그

svn:개정

관련 정보