- commit. The commit will have as parents all the tarballs previous
- mentioned. The metadata will come from the .dsc and/or the final
- changelog entry.
-
- dgit will then see if it has a series file. (dgit already rejects
- packages with distro-specific series files, so we need worry only
- about a single debian/patches/series file.)
-
- If there is a series file, dgit will read it into memory. It will
- then iterate over the series file, and each time:
- - write into its playground a series file containing one
- more non-comment non-empty line to previously
- - run dpkg-source --before-build (which will apply that
- additional patch)
- - make git tree and commit objects, using the metadata from
- the relevant patch file to make the commit (if available)
- - each commit object has as a parent the previous commit
- (either the previous commit, or the commit resulting from
- dpkg-source -x)
-
- After this the series file has been completely rewritten in
- this way, the tree should be identical to the results of
- dpkg-source -x.
+ commit. The commit will have as parents all the tarballs previously
+ mentioned. The main orig tarball will be the leftmost parent and
+ the debian tarball the rightmost parent. The metadata will come
+ from the .dsc and/or the final changelog entry.
+
+ dgit will then dpkg-source --before-build and record the resulting
+ tree, too.
+
+ Then, dgit will switch back to the patches-unapplied version and use
+ `gbp pq import' (in the private working area) to turn the
+ patches-unapplied tree into a patches-applied one.
+
+ Finally dgit will check that the gbp pq generated patches-applied
+ version has the same git tree object as the one generated by
+ dpkg-source --before-build.