Code Monkey home page Code Monkey logo

gitmono's Introduction

CI Status Go Report Card Coverage Status Go Reference Latest Release

gitmono

CLI tool that wraps git to manage versioning of projects in monorepos.

All commands accept the monorepo project to operate on, using the -p flag. When none is specified, the flag defaults to . that enables the tool for any repository type (also non-monorepo). The specified project should match the subdirectory of the project from the root path.

Commands

init command releases and prints the initial version (0.1.0) for the specified project, if it has never been released.

version command prints the latest version of the specified project.

release command releases and prints a new version of the specified project, after looking up for a version bump command in the commits that reference files of that project.

diff command prints out the modified files for the specified git reference range that match the project subdirectory.

log command prints out the commits for the specified git reference range that match project subdirectory.

Examples

Initialise versioning:

gitmono init -p mod1

0.1.0

Get version:

gitmono version -p mod1

0.1.0

Release version:

gitmono release -p mod1

mod1/0.2.0

Diff modified files:

gitmono diff -p mod1 -f head~1 -t head

mod1/go.mod

Get commit log:

gitmono log -p mod1 -f head~2 -t head

7fd4cd0d6141b3cbc3c4f0a2206090140d2d7722 fix: mod1 modified

gitmono's People

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.