Skip to main content

forkyeah is a small tool for managing patches on an upstream git repo.

Project description

forkyeah

The purpose of this project is to facilitate the management of forks of upstream repositories, where the fork is basically a tag or hash from upstream with a one or more patches applied to it. These patches may be stored locally, or fetched over the network for example using the diff link which GitHub supplies for each PR, or from a gist.

The configuration file is fork.yaml and looks like the following:

upstream:
  repo: https://github.com/ros-controls/ros_control.git
  ref: 0.13.0

fork:
  repo: git@gitlab.yourcompany.com:forks/ros_control.git
  branch: fork-latest
  tag: fork-%Y%m%d-%H%M%S
  apply:
  - patch: https://github.com/ros-controls/ros_control/pull/301.diff
    name: "Upstream PR 301: CompositeController template."
  - patch: https://github.com/ros-controls/ros_control/commit/a65fb8cc.diff
    name: "Revert a65fb8cc to resolve merge conflicts."
    reverse: True
  - patch: https://github.com/ros-controls/ros_control/pull/302.diff
    name: "Upstream PR 302: Variadic Controller template."
  - patch: http://gitlab.clearpathrobotics.com/snippets/72/raw
    name: "Un-deprecate MultiInterfaceController."

The intention is that this fork.yaml config file is stored in an orphan branch of the fork repo, and that that orphan branch is the default, so that when you want to update it you simply make and commit changes (add, remove, reorder patches, or change the version used as the starting point) and then rerun:

forkyeah

The tool will handle checking out the given baseline, switching to the fork-latest branch, applying the patches, creating a new tag according to the template, and pushing everything to the defined fork repo. '

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

forkyeah-0.0.2.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

forkyeah-0.0.2-py2-none-any.whl (4.5 kB view details)

Uploaded Python 2

File details

Details for the file forkyeah-0.0.2.tar.gz.

File metadata

  • Download URL: forkyeah-0.0.2.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for forkyeah-0.0.2.tar.gz
Algorithm Hash digest
SHA256 092f483040f84f6e3f104898a1ed013e90787957b8e0c8547402642bd6479518
MD5 303b04ec51ec63e20e938911c611f482
BLAKE2b-256 e569774d1b91f46d0a5bd712ace30025f02495319f2dc8db2bfc906f22ea834f

See more details on using hashes here.

File details

Details for the file forkyeah-0.0.2-py2-none-any.whl.

File metadata

File hashes

Hashes for forkyeah-0.0.2-py2-none-any.whl
Algorithm Hash digest
SHA256 4431cdfc06718be6273a680e59482b5676110bb5d5b0763af71386e1185cda15
MD5 f781509bcc962bd2b4c03c1ca0e2c205
BLAKE2b-256 c1201cf0689d08f7b6dc687709c76e0e97c8ccf0d6c4010f44c05bb2de777016

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