#text-file #repository #single #tool #command-line-tool #turn #ignore

app repo2file-cli

A CLI tool to turn a code repository into a single text file

2 releases

0.1.1 Jun 5, 2024
0.1.0 Jun 5, 2024

#688 in Command line utilities

Download history 241/week @ 2024-06-03 6/week @ 2024-06-10

247 downloads per month

MIT license

307 lines


repo2file-cli is a command-line tool designed to consolidate a code repository into a single text file. This can be useful for archiving, analysis, or sharing purposes.


To install repo2file-cli, you need to have Rust installed. If you don't have Rust installed, you can get it from rustup.rs.

Once you have Rust, you can install the repo2file-cli using cargo:

cargo install repo2file-cli


To use repo2file-cli, you can run the following command:

repo2file-cli <input> [OPTIONS]


  • <input>: The directory or Git URL of the repository you want to process.


  • --ignore-files <FILES>: Comma-separated list of files to ignore.
  • --ignore-dirs <DIRS>: Comma-separated list of directories to ignore.
  • --include-files <FILES>: Comma-separated list of files to include exclusively (cannot be used with --ignore-files or --ignore-dirs).
  • --output <OUTPUT>: The output file. Defaults to a file named after the current directory.


Convert a local repository

repo2file-cli /path/to/repository --output output.txt

Convert a GitHub repository

repo2file-cli https://github.com/username/repo --output output.txt

Ignore specific files and directories

repo2file-cli /path/to/repository --ignore-files *.md,*.json --ignore-dirs node_modules,.git

Include only specific files

repo2file-cli /path/to/repository --include-files *.rs,*.toml


We welcome contributions! Please follow these steps to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes.
  4. Commit your changes (git commit -am 'Add new feature').
  5. Push to the branch (git push origin feature-branch).
  6. Create a new Pull Request.

Development Setup

To set up your development environment, follow these steps:

  1. Clone the repository:
    git clone https://github.com/yourusername/repo2file-cli.git
  2. Change to the project directory:
    cd repo2file-cli
  3. Install the required extensions (if using VSCode):

Running Tests

You can run the tests using the following command:

cargo test

Build from source

you can install the binary from source while youre devin'

cargo install --path .


This project is licensed under the MIT License - see the LICENSE file for details.


~407K SLoC