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.4.0.tar.gz (14.4 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.4.0-py3-none-any.whl (13.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pypi_controlgit-1.4.0.tar.gz
  • Upload date:
  • Size: 14.4 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.4.0.tar.gz
Algorithm Hash digest
SHA256 04757cc6221cb661e81066ac0dda91a232edf70d92de607ef6267c05869d1bb1
MD5 a236e13de90b95467c857231dda1f9b1
BLAKE2b-256 8a5424ab81740f60412286091e21b3d8369f83dcdf7ee555e19a4f6dd32e542b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for pypi_controlgit-1.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 e401ecfd1e3aaecc972caae628c3ab6d77e1474e863577d48e03560dffae2219
MD5 0c6bdb5a605c343aecd5dc37345fe32b
BLAKE2b-256 9193aa263880ac112f86b029e288938719977a4f1be94bdb49f8663c78b566b2

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