summaryrefslogtreecommitdiffstats
path: root/doc
diff options
context:
space:
mode:
authorAllan McRae <allan@archlinux.org>2012-07-23 08:37:08 +0200
committerAllan McRae <allan@archlinux.org>2012-08-03 16:16:39 +0200
commite0cd7b02932e5472f4c4fa30896ff73240dc9341 (patch)
tree422bb2b7709b5f28fa9c27c11d2fd54a1e1d929a /doc
parent4b129d484394ce6090a9ed21782fe1df2227ad18 (diff)
downloadpacman-e0cd7b02932e5472f4c4fa30896ff73240dc9341.tar.gz
pacman-e0cd7b02932e5472f4c4fa30896ff73240dc9341.tar.xz
doc: Document using VCS sources in a PKGBUILD
Signed-off-by: Allan McRae <allan@archlinux.org>
Diffstat (limited to 'doc')
-rw-r--r--doc/PKGBUILD.5.txt32
1 files changed, 32 insertions, 0 deletions
diff --git a/doc/PKGBUILD.5.txt b/doc/PKGBUILD.5.txt
index 9d9e5998..a8d3f891 100644
--- a/doc/PKGBUILD.5.txt
+++ b/doc/PKGBUILD.5.txt
@@ -109,6 +109,10 @@ It is also possible to change the name of the downloaded file, which is helpful
with weird URLs and for handling multiple source files with the same
name. The syntax is: `source=('filename::url')`.
+
+makepkg also supports building developmental versions of packages using sources
+downloaded from version control systems (VCS). For more information, see
+<<VCS,Using VCS Sources>> below.
++
Files in the source array with extensions `.sig`, `.sign` or `.asc` are recognized by
makepkg as PGP signatures and will be automatically used to verify the integrity
of the corresponding source file.
@@ -392,6 +396,34 @@ The install script does not need to be specified in the source array. A
template install file is available in '{pkgdatadir}' as 'proto.install' for
reference with all of the available functions defined.
+Using VCS Sources[[VCS]]
+------------------------
+Building a developmental version of a package using sources from a version control
+system (VCS) is enabled by specifying the source in the form
+`source=('folder::url#fragment')`. Currently makepkg supports the `git` protocol.
+
+The source URL is divided into three components:
+
+*folder*::
+ (optional) Specifies an alternate folder name for makepkg to download the VCS
+ source into.
+
+*url*::
+ The url to the VCS repo. This must include the the vcs in the URL protocol for
+ makepkg to recognize this as a VCS source. If the protocol does not include
+ the VCS name, it can be added by prefixing the URL with `vcs+`. For example,
+ using a git repository over `http` would have a source URL in the form
+ `git+http://...`.
+
+*fragment*::
+ (optional) Allows specifying a revision number or branch for makepkg to checkout
+ from the VCS. For example, to checkout a given revision, the source line would
+ have the format `source=(url#revision=123)`. The available fragments depends on
+ the VCS being used:
+
+ *git*;;
+ branch, commit, tag
+
Example
-------
The following is an example PKGBUILD for the 'patch' package. For more