저는 AUR에서atom-editor-git PKGBUILD를 개발 중이며 이를 gvim-git PKGBUILD와 동등한 Atom으로 바꾸고 싶습니다. gvim-git PKGBUILD는 최신 버전의 gVim으로 실행될 때마다 패키지 버전을 업데이트합니다. 예를 들어 지금 실행하면 gVim 7.4.1236용 패키지가 빌드됩니다. 그러나atom-editor-git PKGBUILD는 1.4.0.r653.g41029f6
최신 버전의 Atom에 대한 패키지 버전을 반환합니다. 1.4.2
gvim-git은 다음 pkgver()
기능을 사용합니다:
pkgver() {
cd $_pkgname
git describe --tags | sed 's/^v//;s/-/./g'
}
그리고atom-editor-git은 다음을 사용합니다:
pkgver() {
cd "$srcdir/atom"
git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//'
}
확실한 해결책은atom-editor-git PKGBUILD를 git describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g;s/^v//'
다음으로 바꾸는 것입니다.git describe --tags | sed 's/^v//;s/-/./g'
git describe --tags | sed 's/^v//;s/-/./g'
Atom Git 저장소다음을 제공합니다:
1.4.0.653.g41029f6
이것은 내가 원하는 형식( 1.4.2
)이 아니기 때문에 Atom의 최신 버전인 Atom-editor-git 패키지가 필요한 것 같습니다. 함수의 대체 git 라인이 pkgver()
바로 제가 여기 있는 이유입니다. 명확히 하자면, 7자 커밋 짧은 설명 이나 위치가 아닌 정확한 현재 버전을 pkgver()
제공 하고 싶습니다 .1.4.2
v1.4.2
v1.4.2-1-<COMMIT>
<COMMIT>
답변1
Atom은 안정적인 버전 빌드를 위해 이 stable
분기를 사용하므로 버전의 최신 태그를 찾으려면 이 분기를 확인해야 합니다.
$ git describe --tags stable
v1.4.2-1-ge9db64c
해당 태그를 검색하려면 첫 번째 태그까지 모든 것을 유지하세요 -
.
$ git describe --tags stable | cut -d- -f1
v1.4.2
앞에 가 없는 버전을 얻으려면 v
해당 버전을 제거하세요.
$ git describe --tags stable | cut -d- -f1 | sed 's/^v//'
1.4.2