Skip to main content

A library to aggregate git branches from different remotes into a consolidated one

Project description

License: AGPL-3 https://travis-ci.org/acsone/git-aggregator.svg?branch=master https://coveralls.io/repos/acsone/git-aggregator/badge.png?branch=master Python support: 2.7, 3.3, 3.4, 3.5

git-aggregator

Manage the aggregation of git branches from different remotes to build a consolidated one.

Command line Usage:

Create a repos.yaml file:

./product_attribute:
    remotes:
        oca: https://github.com/OCA/product-attribute.git
        acsone: git+ssh://git@github.com/acsone/product-attribute.git
    merges:
        - oca 8.0
        - oca refs/pull/105/head
        - oca refs/pull/106/head
    target: acsone aggregated_branch_name

./connector-interfaces:
    remotes:
        oca:  https://github.com/OCA/connector-interfaces.git
        acsone:  https://github.com/acsone/connector-interfaces.git
    merges:
        - oca 6054de2c4e669f85cec380da90d746061967dc83
        - acsone 8.0-connector_flow
        - acsone 80_connector_flow_ir_cron_able-lmi
        - acsone 8.0_connector_flow_improve_eval_config
    target: acsone aggregated_branch_name

Aggregate you repositories at any time:

$ gitaggregate -c repos.yaml

You can also aggregate and automatically push the result to the target:

$ gitaggregate -c repos.yaml -p

Only aggregate a specific repository using fnmatch:

$ gitaggregate -c repos.yaml -p -d connector-interfaces

It’s also possible to specify a command or a list of shell commands to execute after the aggregation (and before the push). The commands are executed into the aggregated directory.

./product_attribute:
    remotes:
        oca: https://github.com/OCA/product-attribute.git
        acsone: git+ssh://git@github.com/acsone/product-attribute.git
    merges:
        - oca 8.0
    target: acsone aggregated_branch_name
    shell_command_after: echo 'my command'

./connector-interfaces:
    remotes:
        oca:  https://github.com/OCA/connector-interfaces.git
        acsone:  https://github.com/acsone/connector-interfaces.git
    merges:
        - oca 9.0
    target: acsone aggregated_branch_name
    shell_command_after:
        - echo 'a first command'
        - echo 'a second command'

Credits

Author

  • Laurent Mignon (ACSONE)

Maintainer

ACSONE SA/NV

This module is maintained by ACSONE SA/NV.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

git-aggregator-1.0.0.tar.gz (9.5 kB view details)

Uploaded Source

File details

Details for the file git-aggregator-1.0.0.tar.gz.

File metadata

File hashes

Hashes for git-aggregator-1.0.0.tar.gz
Algorithm Hash digest
SHA256 384be3137da877072b218db34cc399171126664b933e39a24c3e4040991b6bd4
MD5 8aa2394caca2d74a7a30971c9e7a1167
BLAKE2b-256 7f84f38823cf669088254b008859703a67403bdda5dc47d5ef3a8d3e4e4b1b0c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page