AURの「*-git date」パッケージはどうなりましたか?

AURの「*-git date」パッケージはどうなりましたか?

Arch Linuxに移行する準備をしています。 AURのパッケージを見ると、「project-name-git date」という名前付けスキームに従うパッケージがたくさんあります。たとえば、次のようになります。

adonthell-git 20100408-1
akonadi-facebook-git 20111117-1
wesnoth-svn 40587-1
vimprobable-git 20110829-1
vimprobable2-git 20111214-1

このパッケージは何ですか?特定時点のadonthell/wesnoth/etcリポジトリのスナップショットですか?その場合、パッケージ名を変更しないとパッケージを更新できないため、パッケージ管理がさらに複雑になります。

gitリポジトリに最新バージョンのvimprobableが必要な場合は、AURを使用する必要がありますか、それとも直接コンパイルする必要がありますか?

ベストアンサー1

要するに:パッケージをビルドすると、Gitリポジトリの最新バージョンになります。これはで自動的に処理されますmakepkg

パッケージPKGBUILDのファイルを次から読みます-git(例:アドンテルの子)、あなたは見ることができます:

cd $_gitname && git pull origin
msg "The local files are updated."

したがってmakepkg、実行されるたびにGitリポジトリから最新バージョンをダウンロードします。

このpkgverパラメーターは、最終パッケージにバージョン番号が必要なため必要です。makepkgここではPKGBUILD日付が最適です。

Gitのパッケージであることが検出されると、makepkgそれに応じて特別なケースが処理されます。

makepkg関数の1687-1771行devel_check

elif [[ -n ${_gitroot} && -n ${_gitname} ]] ; then
    if ! type -p git >/dev/null; then
            warning "$(gettext "Cannot find the %s binary required to determine latest %s revision.")" "git" "git"
            return 0
        fi
        msg "$(gettext "Determining latest %s revision...")" 'git'
        newpkgver=$(date +%Y%m%d)

[その他多くの事例が切り捨てられるdarcsなどhgsvn]

makepkg関数1773-1792行devel_update

# This is lame, but if we're wanting to use an updated pkgver for
# retrieving svn/cvs/etc sources, we'll update the PKGBUILD with
# the new pkgver and then re-source it. This is the most robust
# method for dealing with PKGBUILDs that use, e.g.:

したがって、バージョン番号が作成された日付のパッケージが作成されます。

おすすめ記事