## Workflow

A typical, simple workflow consists of the following steps:

1. Initially import a Debian™ package via gbp import-dsc. This imports the Debian™ Package on the `debian-branch` and the upstream sources on the `upstream-branch`.

2. Develop, test, commit changes. During this time, you can always build the package with gbp buildpackage. In case you have uncommitted changes in your source tree, you can use the `--git-ignore-new` option.

3. Optionally you can create the Debian™ changelog entries using gbp dch and create snapshot releases for testing using its `--snapshot` option.

4. Once satisfied, you can build the final package with gbp buildpackage `--git-tag`. This additionally creates a tag within Git so you can switch back to that version later at any time. The format of the tags can be specified; tags can be GPG signed.

5. When a new upstream version is released and upstream isn't using Git, you can import the new version via gbp import-orig onto the `upstream-branch`. gbp import-orig will by default try to merge the new upstream version onto the `debian-branch` (you can skip the merge with `--no-merge`). After resolving any potential conflicts, go back to the second step.

These steps will be explained in more details in the following sections.