Skip to main content

Handling git submodules and patches per yml

Project description

Welcome to GIMERA

How to install:

  • pip install gimera

How to use:

Put gimera.yml into your root folder of your project:

repos:
    # make ordinary git submodule:
    - url: "https://github.com/foo/bar"
      branch: branch1
      path: roles/sub1
      patches: []
      type: submodule


    # instead of submodule put the content directly in the repository;
    # apply patches from local git repository
    - url: "https://github.com/foo/bar"
      branch: branch1
      path: roles2/sub1
      patches:
          - 'roles2/sub1_patches'
      type: integrated

    # instead of submodule put the content directly in the repository;
    # apply patches from another remote repository
    #
    - url: "https://github.com/foo/bar"
      branch: branch1
      path: roles2/sub1
      remotes:
          remote2: https://github.com/foo2/bar2
      merges:
          - remote2 main
          - origin refs/pull/1/head
      type: integrated

Patches and remote merges may be combined.

Then execute:

> gimera apply

How to make a patchfile:

From the example above:

  • edit roles2/sub1/file1.txt
  • > gimera apply

Then a patch file is created as suggestion in roles2/sub1_patches which you may commit and push.

How to fetch only one or more repo:

  • > gimera apply repo_path repo_path2 repo_path3

How to fetch latest versions:

  • > gimera apply --update

Latest versions are pulled and patches are applied.

How to upload new version

  • increase version in setup.py
  • one time: pipenv install twine --dev
  • pipenv shell
  • python3 setup.py upload

Contributors

install directly

pip install git+https://github.com/marcwimmer/gimera

Project details


Release history Release notifications | RSS feed

This version

0.4.5

Download files

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

Source Distribution

gimera-0.4.5.tar.gz (8.4 kB view hashes)

Uploaded Source

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