gbp-pull

&dhsection;

gbp-pull

Safely update a repository from remote

          &gbp-pull;

          &man.common.options.synopsis;
          --force
          --redo-pq
          --[no-]pristine-tar
          --ignore-branch
          --debian-branch=branch_name
          --upstream-branch=branch_name
          --depth=depth
          repository

## DESCRIPTION

&gbp-pull; updates the debian, upstream and pristine-tar branches from remote repositories in one go. It checks if the update is safe (would result in a fast-forward merge) and aborts otherwise.

If given on the command line the changes are fetched from the given repository otherwise the default for `repository` is read from the `remote` configuration for each branch (in git's configuration).

## OPTIONS

&man.common.options.description;

`--force`

- force a branch update even if this results in a non fast forward update.

  Forcing a branch update makes you lose your modifications.

`--redo-pq`

- also rebuild the corresponding patch-queue using &gbp-pq;.

  This drops the patch-queue branch if it exists.

`--ignore-branch`

- Don't care if we're on a branch or in detached head state.

`--debian-branch`=`branch_name`

- The branch in the Git repository the Debian package is being developed on, default is `master`.

`--upstream-branch`=`branch_name`

- The branch in the &git; repository the upstream sources are put onto. Default is `upstream`.

`--depth`=`depth`

- Git history depth, for deepening shallow git clones.

`--pristine-tar`

- Whether to update the pristine-tar branch too.

## EXIT CODES

When &gbp-pull; finishes, it indicates success or failure with its exit code:

`0`

- Success.

`1`

- An error occurred during the pull, see the printed error message for details.

`2`

- At least one branch couldn't be fast forwarded.

&man.gbp.config-files;

## SEE ALSO

man.gbp.buildpackage, man.gbp.clone, man.gbp.pq, man.gbp.conf

## AUTHOR

&dhusername; &dhemail;