git-ingest
Version:
A Handy CLI Tool for Ingesting Your Project into a File
124 lines (82 loc) ⢠2.37 kB
Markdown
# š Git-Ingest
> A Handy CLI Tool for Ingesting Your Project into a File
## š Features
- š Generate directory structure with .gitignore support.
- š Append file contents to the directory tree.
- š Copy results to clipboard for quick sharing (with --copy flag).
- ā Automatically ignores image files and dynamically created files like git-ingest outputs.
## š§ Installation
Install Git-Ingest globally using npm:
```bash
npm install -g git-ingest
```
or use npx without installing globally:
```bash
npx git-ingest
```
## š Usage
Run Git-Ingest from your terminal:
### Basic Usage
```bash
git-ingest
```
This will generate a file with your project structure and contents appended.
### Copy Results to Clipboard
Add the --copy flag to copy the output directly to your clipboard:
```bash
git-ingest --copy
```
or using npx:
```bash
npx git-ingest --copy
```
## š Output File
- The generated file will be named with a timestamp, e.g., git-ingest-1688291234.txt.
- The file contains:
- The directory structure.
- The contents of all files, appended with clear separators.
## š Development Features
### .gitignore Support
- Automatically excludes files and directories listed in your .gitignore.
- Dynamically excludes generated git-ingest files and common image formats (.jpg, .png, etc.).
### Clipboard Support
- Automatically copies output to clipboard on supported platforms:
- š„ MacOS: Uses pbcopy.
- šŖ Windows: Uses clip.
- š§ Linux: Uses xclip.
### Additional Usage
- Run Git-Ingest without global installation using npx.
```bash
npx git-ingest
```
### š Example
Run Git-Ingest in a sample project:
```bash
git-ingest --copy
```
Output file will look like this:
```txt
Directory structure:
āāā LICENSE
āāā package.json
āāā src
āāā cli.js
āāā read-file-and-append.js
āāā tree-generator.js
================================================
File: LICENSE
================================================
MIT License
...license content...
================================================
File: package.json
================================================
{
"name": "git-ingest",
"version": "1.0.0",
...
}
```
## š Author
Developed with ā¤ļø by [Aung Myo Kyaw](https://github.com/AungMyoKyaw)
## š Licensed under the MIT License.