semvec/pypi-packages huggingface dataset:
gitgulf 0.1.0
A CLI tool for managing multiple Git repositories collectively.
License: MIT
Requires Python: <4.0,>=3.6

<p align="center">
  <img src="img/gitgulf_640.png" alt="GitGulfLogo" width="320">
</p>

## Overview

GitGulf is a command-line tool designed to help you manage and navigate through multiple Git repositories with ease. Whether you are dealing with only a handful or a full collection of repositories, GitGulf aims to streamline common Git operations like fetching, pulling, and switching branches across multiple repositories, making your development workflow more efficient and effective.

Gif showing ggs, ggf & ggp:

<p align="center">
  <img src="img/gitgulf.gif" width="540">
</p>

## Features

-   **Status**: View the current status of all repositories in a directory.
-   **Fetch**: Perform a `git fetch` on all repositories.
-   **Pull**: Perform a `git pull` on all repositories.
-   **Switch Branch**: Swiftly switch between branches on all repositories.
-   **Prune**: Prune all reachable objects from the object databases.
-   **Cleanup**: Clean up and optimize your local repositories.

## Installation

### Install using pip

```shell
pip install gitgulf
```

### Install from this repo

Clone the gitgulf repository and run pip install on it:.

```shell
git clone https://github.com/tychop/gitgulf.git
cd gitgulf
pip install .
```

### Requirements

-   A modern Python version (3.6+)

### **Usage:**

```bash
gitgulf COMMAND
```

Choose from the following commands:

```
`-s, --status`        : Show all repository statuses.
`-f, --fetch`         : Fetch all repositories.
`-p, --pull`          : Pull all repositories.
`-b, --branch` BRANCH : Switch all repositories to the specified BRANCH.
`-m, --main`          : Switch all repositories to the 'main' branch.
`-d, --development`   : Switch all repositories to the 'development' branch.
`-pr, --prune`        : Prune objects no longer reachable from all repositories.
`-c, --cleanup`       : Clean up and optimize local repositories.
```

### Abbreviated Commands:

Instead of the `gitgulf COMMAND` syntax, use abbreviated commands for quicker operations:

```
`ggs`        : Show all the repository statuses.
`ggf`        : Fetch all repositories.
`ggp`        : Pull all repositories.
`ggb BRANCH` : Switch all repositories to the specified BRANCH.
`ggm`        : Switch all repositories to the 'main' branch.
`ggd`        : Switch all repositories to the 'development' branch.
`ggpr`       : Prune objects that are no longer reachable from all repositories.
`ggc`        : Clean up and optimize the local repositories.
```

### Contributing

We welcome contributions to GitGulf! Please see our Contributing Guide for more details.

### License

GitGulf is MIT licensed.

### Acknowledgements

Extend your thanks or acknowledge people or organizations that helped you in working on this project.
httpfs-sync 0.0.2
Install requirements and run code in virtual environments from the comfort of your own GIL
License: MIT
Requires Python: >=3.8
Keywords: virtualenv, dependencies

# httpfs-sync

## Overview
`httpfs-sync` is an implementation of a filesystem interface for the Python `fsspec`
library that uses synchronous requests based on `urllib3`. This serves as an alternative
to the default asynchronous (based on `aiohttp`) filesystem implementation provided by
`fsspec`. This project is ideal for environments where asynchronous operations are not
feasible or desired, allowing users to interact with HTTP-based filesystems using a
synchronous API.

If you're dealing with deadlocks potentially involving the default HTTP 'filesystem' in
`fsspec`, the implementation here may help with verification of behavior: just use the classes
provided here as a drop-in replacement for `HTTPFileSystem` and compare behaviors.

## Features
- Synchronous HTTP requests for file system operations.
- Fully compatible with the `fsspec` API, making it easy to drop in as a replacement.
- Uses `urllib3` for robust, production-ready HTTP communications.

## Installation

To install `httpfs-sync`, you can use pip:

```bash
pip install httpfs-sync
```

## Usage
Here's a simple example of how to use httpfs-sync to read a file from an HTTP server:
```python
import fsspec
from httpfs_sync.core import SyncHTTPFileSystem

# enable use of SyncHTTPFileSystem and associated files for both http and https
SyncHTTPFileSystem.overwrite_async_registration()

# Use the registered file system to access a remote file
with fsspec.open('http://example.com/data.txt', 'r') as f:
    data = f.read()
    print(data)
```

## License
httpfs-sync is distributed under the MIT License, allowing the code to be used in commercial applications as well as open-source projects.