Skip to content

🎉 v0.2 Beta Release

Latest
Compare
Choose a tag to compare
@xXDeathAbyssXx xXDeathAbyssXx released this 26 Dec 23:48

🚀 About The Project

This project provides a simple Zsh script (gitd) to streamline the process of downloading Git repositories. It offers a user-friendly command-line interface to quickly clone repositories with customizable settings.

✨ Features

  • 🔄 Easy Cloning: Quickly clone Git repositories with just a few commands.
  • 📁 Customizable Base Directory: Choose your preferred base directory for downloaded repositories.
  • 🎨 Stylish Logs: Colorful and informative logs for a better user experience.
  • ⚙️ Configuration Options: Customize the script behavior using environment variables.
  • ⚙️ Setup Option: Set up the downloaded repository, including installing dependencies.

🤔 Why gitd?

  • Simplicity: gitd is designed to be straightforward and easy to use.
  • Style: Enjoy stylish and colorful logs during the cloning process.
  • Configurability: Tailor gitd to your preferences with customizable options.

🛠️ Built With

  • Zsh (Z shell)

🚀 Getting Started

To get started with gitd, follow the instructions below.

📋 Prerequisites

  • Zsh or Bash installed on your system
  • GitHub CLI (gh) for retrieving repository details

🛠️ Installation

You can install gitd by running the following command in your terminal:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/xXDeathAbyssXx/gitd/main/install.sh)"

🛠️ Usage

Use the gitd script with the following syntax:

gitd [options] <repo_url> [options]

Replace <repo_url> with the URL of the Git repository you want to download. Optionally, you can specify a branch.

⚙️ Options:

Option Description
-h, --help Show help message.
-v, --version Display the script version.
-s, --setup Set up the downloaded repository, including installing dependencies.
-b, --branch Specify the branch for cloning.

Note: The setup option is currently compatible with the following package managers and systems:

  • npm: Node.js package manager
  • yarn: Fast, reliable, and secure dependency management
  • pnpm: Fast, disk space efficient package manager
  • bundle: Ruby dependency manager
  • mvn: Apache Maven for Java projects
  • go: Go programming language
  • gcc: GNU Compiler Collection (for C/C++ projects)

🌐 Customizing Repository Location

By default, gitd saves repositories in the $HOME/Repos directory. You can customize this location by setting the GITD_BASE_DIR environment variable. For example:

export GITD_BASE_DIR=~/my_repos

Add this line to your shell configuration file (e.g., .zshrc or .bashrc) to make it persistent across sessions.

🚀 Examples

  • Clone a repository with the default settings: gitd https://github.com/xXDeathAbyssXx/gitd
  • Specify a branch for cloning: gitd -b main https://github.com/xXDeathAbyssXx/gitd
  • Set up a repository after cloning: gitd -s https://github.com/example/repo
  • Customize the base directory: export GITD_BASE_DIR=~/Downloads

🌐 Compatible Setups and Operating Systems

gitd is compatible with Zsh and Bash on various operating systems.

📝 Release Notes

  • Updated: Changed the order of auto-setup checks to prioritize non-JavaScript projects.
  • Added: Removal of the '.git' directory after cloning a repository.
  • Updated: Improved formatting for repository download size information.

Enjoy using gitd! If you encounter any issues or have suggestions, feel free to open an issue.