git-bubbles

### git-bubbles

Outil de gestion de branches pour pull requests.

#### Usage

`git bubbles`

Liste les commits et affiche ceux qui seront poussés sur le dépôt distant. Une ligne sépare les commits partagés de ceux qui restent en local. Le filtre par défaut est `--`, il est configurable (cf `bubbles.pattern`).
Affiche également une vue synthétique de la différence entre la branche courante et la remote déjà poussée.

Exemple :

```
$ git bubbles
* b1aae76 (HEAD, reloadable-http-config) --HACK-- Tweak HTTP server config
* bdc9adf --HACK-- Use /tmp for cache files
--------------------------------------------------
* 3d9805d Configuration files can now be reloaded in dev mode
* c382b47 Upgrade to HTTPd 4.0

git diff -b -M ptitfred/reloadable-http-config..3d9805d --stat
 src/main/ruby/lib/configuration.rb |  22 ++++++++++++++++++++++++++++++
 build.xml                          |   2 +-
 2 files changed, 24 insertions(+), 2 deletions(-)

git push mine 3d9805d:reloadable-http-config --force
```

`git bubbles diff`

Affiche la différence entre la branche courante et la remote déjà poussée : cela correspond aux modifications que l'on veut incorporer dans la branche, par exemple suite à de la revue de code

`git bubbles push`

Effectue le git push --force avec uniquement les commits qui passent le filtre.

`git bubbles content`

Inspecte la diff de la branche (uniquement les commits qui passent le filtre).

#### Configuration

`bubbles.remote-name` text => nom de la remote où chercher les branches synchronisées
`bubbles.pattern` text => filtre utilisé pour exclure des commits (par exemple des commits que l'on ne veut pas partager, de la configuration, des patchs pour les tests, pour s'adapter à l'architecture, pour supporter une bibliothèque tierce...)