Skip to main content

ControlGit - Git account and repository settings management

Project description

ControlGit

ControlGit is a lightweight Git account and repository settings management tool. It's a subset of SmartGit focused on controlling Git configuration without deployment capabilities.

Features

  • Account Settings: Manage global Git user configuration
  • Repository Settings: Manage repository-specific Git configuration
  • Remote Management: Add, remove, and update Git remotes
  • GitHub Authentication: Store and manage GitHub credentials
  • GitHub CLI Integration: Optional integration with GitHub CLI

Installation

pip install pypi-controlgit

Quick Start

Account Management

# Show global Git configuration
controlgit account config

# Set user name
controlgit account name "Your Name"

# Set user email
controlgit account email "your.email@example.com"

# Set custom configuration
controlgit account set core.editor "vim"

Repository Management

# Show repository configuration
controlgit repo config my-repo

# Set repository configuration
controlgit repo set my-repo core.ignorecase true

# List remotes
controlgit repo remotes my-repo

# Add remote
controlgit repo add-remote my-repo origin https://github.com/user/repo.git

# Remove remote
controlgit repo remove-remote my-repo origin

# Update remote URL
controlgit repo set-remote-url my-repo origin https://github.com/user/new-repo.git

GitHub Authentication

# Set credentials manually
controlgit auth set username token --2fa 123456

# Use GitHub CLI for interactive login
controlgit auth set

# Check authentication status
controlgit auth status

# Clear credentials
controlgit auth clear

Commands

auth

  • auth set [username] [password] - Set GitHub credentials
  • auth status - Show authentication status
  • auth clear - Clear stored credentials

account

  • account config - Show global Git configuration
  • account set <key> <value> - Set global Git configuration
  • account name <name> - Set global user name
  • account email <email> - Set global user email

repo

  • repo config <name> - Show repository configuration
  • repo set <name> <key> <value> - Set repository configuration
  • repo remotes <name> - List repository remotes
  • repo add-remote <name> <remote-name> <url> - Add remote
  • repo remove-remote <name> <remote-name> - Remove remote
  • repo set-remote-url <name> <remote-name> <url> - Update remote URL

Options

  • --path <path> - Working directory (default: current directory)
  • --github-user <username> - GitHub username (default: abucodingai)

Requirements

  • Python 3.8+
  • Git 2.0+
  • GitHub CLI (gh) 2.0+ (optional, for interactive login)

License

MIT License

Author

Abu Shariff (abu.shariffaiml@gmail.com)

System Requirements

This package requires the following system tools to be installed:

After installation, authenticate with GitHub:

gh auth login

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

pypi_controlgit-1.3.0.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pypi_controlgit-1.3.0-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

Details for the file pypi_controlgit-1.3.0.tar.gz.

File metadata

  • Download URL: pypi_controlgit-1.3.0.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for pypi_controlgit-1.3.0.tar.gz
Algorithm Hash digest
SHA256 a3acbd158cbec51e61b4f74ec3d931dd130e46a78e396e248c4fc1715807d344
MD5 f593a8ba7467c035b7b31bb5887d2b0e
BLAKE2b-256 8ece04c1c7e3bf10b269cc319a8d9f80d9d1dc1c73c30d1a266049ebd219656b

See more details on using hashes here.

File details

Details for the file pypi_controlgit-1.3.0-py3-none-any.whl.

File metadata

File hashes

Hashes for pypi_controlgit-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 647c365257442fc4bf5f68e7b9d732a9d4cabc90f60894da1ad0483c84b50e42
MD5 1e0666c43ce063c57c27ecfea9523e9a
BLAKE2b-256 2ddef3145d36c6189102ac742eed029ab49e8b49ddde2d726d0514161298c7ed

See more details on using hashes here.

Supported by

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