FS#19459 - [makepkg] Integrated VCS checkout, update and revision selection

Attached to Project: Pacman
Opened by Jan Alexander Steffens (heftig) - Friday, 14 May 2010, 22:36 GMT
Last edited by Allan McRae (Allan) - Friday, 10 August 2012, 04:55 GMT
Task Type Feature Request
Category makepkg
Status Closed
Assigned To No-one
Architecture All
Severity Low
Priority Normal
Reported Version 3.3.3
Due in Version 4.1.0
Due Date Undecided
Percent Complete 100%
Votes 3
Private No

Details

This is a feature request for better VCS support.

E.g., for Mercurial:

vcs=('vim:hg:http://vim.googlecode.com/hg/vim') # array of 'dest:vcs:source'
rev_vim=1290

This would checkout revision 1290 of
http://vim.googlecode.com/hg/vim into $srcdir/vim:

hg clone -u "$rev" "$source" "$srcdir/$dest" || return 1

If vim already exists, pull new revisions from the source and
update the repository to rev 1290:

( cd "$srcdir/$dest"; hg pull; hg update -r "$rev" ) || return 1

A special option to makepkg would tell it to update the revisions
to the most recent. This is in contrast to what is done currently
(--holdver to *not* make it update the version.)
This task depends upon

Closed by  Allan McRae (Allan)
Friday, 10 August 2012, 04:55 GMT
Reason for closing:  Implemented
Additional comments about closing:  https://projects.archlinux.org/pacman.gi t/commit/?id=024bc44a
Comment by Jan Alexander Steffens (heftig) - Friday, 14 May 2010, 22:51 GMT
I guess one could implement three functions for each type of repository:

Clone the source (e.g. hg clone, git clone, svn checkout)
Must succeed or build aborted

Fetch newest changes from the source (e.g. hg pull, git fetch, no-op for svn)
Need not succeed, generates warning if it doesn't

Checkout the specified revision (e.g. hg update, git checkout, svn update)
Must succeed or build aborted
Comment by Allan McRae (Allan) - Friday, 14 May 2010, 23:05 GMT

Loading...