Skip to main content

A simple function to test whether your git repo is clean

Project description

Is Git Repo Clean

Table of Contents


Intro

What is it?

A simple function that tests whether your git repo is clean.

by clean I mean it has:

  • no untracked files
  • no staged changes
  • no unstaged changes

Installing this also exposes a cli command is-git-repo-clean

Why create it?

I wanted to write a build script that would exit early if the git repo wasn't clean


Install

$ pip install is_git_repo_clean

Usage

programmatic

import is_git_repo_clean


async def isCleanAsync(pathToGitRepo = None):
  # async by default
   return await is_git_repo_clean.check(pathToGitRepo)


def isCleanSync(pathToGitRepo = None):
  # sync available
  return is_git_repo_clean.checkSync(pathToGitRepo)

cli

$ is-git-repo-clean --help

Usage
  is-git-repo-clean [--dir <path>] [--silent]
  is-git-repo-clean --help
  is-git-repo-clean --version

Options
  dir:      path to the git repo to test.  Defaults to `os.getcwd()`
  silent:   disables output
  help:     print this
  version:  prints the version of this tool

Returns
  <exit code>: <output>

  0: yes
  1: no
  2: <invalid arg message>
  3: dir is not a git repository
  4: unexpected error occurred <error>

Api

is_git_repo_clean exports the following

check async (dir=os.getcwd()) => bool

  • an asynchronous function that returns whether the git repo is clean

checkSync (dir=os.getcwd()) => bool

  • a synchronous function that returns whether the git repo is clean

version


Test

hub clone olsonpm/py_is-git-repo-clean
cd py_is-git-repo-clean
python runTests.py

Project details


Download files

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

Files for is-git-repo-clean, version 0.3.6
Filename, size File type Python version Upload date Hashes
Filename, size is_git_repo_clean-0.3.6-py3-none-any.whl (7.1 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size is_git_repo_clean-0.3.6.tar.gz (5.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page