mirror of
https://github.com/flatpak/flatpak.git
synced 2025-12-30 11:27:58 -05:00
291 lines
11 KiB
XML
291 lines
11 KiB
XML
<?xml version='1.0'?> <!--*-nxml-*-->
|
|
<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
|
|
"http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
|
|
|
|
<refentry id="flatpak-build-commit-from">
|
|
|
|
<refentryinfo>
|
|
<title>flatpak build-commit-from</title>
|
|
<productname>flatpak</productname>
|
|
|
|
<authorgroup>
|
|
<author>
|
|
<contrib>Developer</contrib>
|
|
<firstname>Alexander</firstname>
|
|
<surname>Larsson</surname>
|
|
<email>alexl@redhat.com</email>
|
|
</author>
|
|
</authorgroup>
|
|
</refentryinfo>
|
|
|
|
<refmeta>
|
|
<refentrytitle>flatpak build-commit-from</refentrytitle>
|
|
<manvolnum>1</manvolnum>
|
|
</refmeta>
|
|
|
|
<refnamediv>
|
|
<refname>flatpak-build-commit-from</refname>
|
|
<refpurpose>Create new commits based on existing one (possibly from another repository)</refpurpose>
|
|
</refnamediv>
|
|
|
|
<refsynopsisdiv>
|
|
<cmdsynopsis>
|
|
<command>flatpak build-commit-from</command>
|
|
<arg choice="opt" rep="repeat">OPTION</arg>
|
|
<arg choice="plain">DST-REPO</arg>
|
|
<arg choice="plain" rep="repeat">DST-REF</arg>
|
|
</cmdsynopsis>
|
|
</refsynopsisdiv>
|
|
|
|
<refsect1>
|
|
<title>Description</title>
|
|
|
|
<para>
|
|
Creates new commits on the <arg choice="plain">DST-REF</arg>
|
|
branch in the <arg choice="plain">DST-REPO</arg>, with the
|
|
contents (and most of the metadata) taken from another
|
|
branch, either from another repo, or from another branch in
|
|
the same repository.
|
|
</para>
|
|
<para>
|
|
The collection ID set on
|
|
<arg choice="plain">DST-REPO</arg> (if set) will be used for the
|
|
newly created commits.
|
|
</para>
|
|
<para>
|
|
This command is very useful when you want to maintain a branch
|
|
with a clean history that has no unsigned or broken commits.
|
|
For instance, you can import the head from a different repository
|
|
from an automatic builder when you've verified that it worked.
|
|
The new commit will have no parents or signatures from the
|
|
autobuilder, and can be properly signed with the official
|
|
key.
|
|
</para>
|
|
<para>
|
|
Any deltas that affect the original commit and that match parent
|
|
commits in the destination repository are copied and rewritten
|
|
for the new commit id.
|
|
</para>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Options</title>
|
|
|
|
<para>The following options are understood:</para>
|
|
|
|
<variablelist>
|
|
<varlistentry>
|
|
<term><option>-h</option></term>
|
|
<term><option>--help</option></term>
|
|
|
|
<listitem><para>
|
|
Show help options and exit.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--src-repo=SRC-REPO</option></term>
|
|
|
|
<listitem><para>
|
|
The (local) repository to pull the source branch from. Defaults to the
|
|
destination repository.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--src-ref=SRC-REF</option></term>
|
|
|
|
<listitem><para>
|
|
The branch to use as the source for the new commit. Defaults to the same
|
|
as the destination ref, which is useful only if a different source repo
|
|
has been specified.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--extra-collection-id=COLLECTION-ID</option></term>
|
|
|
|
<listitem><para>
|
|
Add an extra collection-ref binding for this collection, in addition to whatever
|
|
would normally be added due to the destination repository collection id.
|
|
This option can be used multiple times.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--subset=SUBSET</option></term>
|
|
|
|
<listitem><para>
|
|
Mark the commit to be included in the named subset. This will cause the commit
|
|
to be put in the named subset summary (in addition to the main one), allowing
|
|
users to see only this subset instead of the whole repo.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--untrusted</option></term>
|
|
|
|
<listitem><para>
|
|
The source repostory is not trusted, all objects are copied (not hardlinked) and
|
|
all checksums are verified.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-s</option></term>
|
|
<term><option>--subject=SUBJECT</option></term>
|
|
|
|
<listitem><para>
|
|
One line subject for the commit message. If not specified, will be taken from the source commit.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-b</option></term>
|
|
<term><option>--body=BODY</option></term>
|
|
|
|
<listitem><para>
|
|
Full description for the commit message. If not specified, will be taken from the source commit.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
|
|
<varlistentry>
|
|
<term><option>--update-appstream</option></term>
|
|
|
|
<listitem><para>
|
|
Update the appstream branch after the build.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--no-update-summary</option></term>
|
|
|
|
<listitem><para>
|
|
Don't update the summary file after the new commit is added. This means
|
|
the repository will not be useful for serving over http until build-update-repo
|
|
has been run. This is useful is you want to do multiple repo operations before
|
|
finally updating the summary.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--force</option></term>
|
|
|
|
<listitem><para>
|
|
Create new commit even if the content didn't change from the existing branch head.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--disable-fsync</option></term>
|
|
|
|
<listitem><para>
|
|
Don't fsync when writing to the repository. This can result in data loss in exceptional situations, but can improve performance when
|
|
working with temporary or test repositories.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--gpg-sign=KEYID</option></term>
|
|
|
|
<listitem><para>
|
|
Sign the commit with this GPG key.
|
|
This option can be used multiple times.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--gpg-homedir=PATH</option></term>
|
|
|
|
<listitem><para>
|
|
GPG Homedir to use when looking for keyrings
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--end-of-life=REASON</option></term>
|
|
|
|
<listitem><para>
|
|
Mark build as end-of-life
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--end-of-life-rebase=OLDID=NEWID</option></term>
|
|
|
|
<listitem><para>
|
|
Mark new refs as end-of-life. Unlike <option>--end-of-life</option>,
|
|
this one takes an ID that supersedes the current one. By the user's
|
|
request, the application data may be preserved for the new application.
|
|
Note, this is actually a prefix match, so if you say org.the.app=org.new.app,
|
|
then something like org.the.app.Locale will be rebased to org.new.app.Locale.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--timestamp=TIMESTAMP</option></term>
|
|
|
|
<listitem><para>
|
|
Override the timestamp of the commit. Use an ISO 8601 formatted
|
|
date, or NOW for the current time
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--disable-fsync</option></term>
|
|
|
|
<listitem><para>
|
|
Don't fsync when writing to the repository. This can result in data loss in exceptional situations, but can improve performance when
|
|
working with temporary or test repositories.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>-v</option></term>
|
|
<term><option>--verbose</option></term>
|
|
|
|
<listitem><para>
|
|
Print debug information during command processing.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
|
|
<varlistentry>
|
|
<term><option>--ostree-verbose</option></term>
|
|
|
|
<listitem><para>
|
|
Print OSTree debug information during command processing.
|
|
</para></listitem>
|
|
</varlistentry>
|
|
</variablelist>
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>Examples</title>
|
|
|
|
<para>
|
|
To revert a commit to the commit before:
|
|
</para>
|
|
<para>
|
|
<command>$ flatpak build-commit-from --timestamp=NOW --src-ref=app/org.gnome.gedit/x86_64/master^ repo app/org.gnome.gedit/x86_64/master</command>
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
<refsect1>
|
|
<title>See also</title>
|
|
|
|
<para>
|
|
<citerefentry><refentrytitle>ostree</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak-build-init</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak-build</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak-build-finish</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak-build-sign</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
|
|
<citerefentry><refentrytitle>flatpak-build-update-repo</refentrytitle><manvolnum>1</manvolnum></citerefentry>
|
|
</para>
|
|
|
|
</refsect1>
|
|
|
|
</refentry>
|