Package Exports
- git-bro
- git-bro/src/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (git-bro) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
git-bro
Get detailed insights for GitHub repositories without cloning the entire codebase
Installation • Usage • Features • Examples • Configuration • Troubleshooting • Contributing • License
Why git-bro?
Have you ever needed detailed insights for a GitHub repository? Or wanted to audit dependencies, explore commit history, or analyze project metadata without downloading the entire codebase? git-bro solves these problems by providing specific commands to generate insights, audit dependencies, explore commits, and generate project folder structures, saving you bandwidth, time, and disk space.
Features
- Generate Insights: Get detailed insights for a GitHub repository
- Audit Dependencies: Analyze dependencies in a GitHub repository
- Explore Commits: View commit history of a GitHub repository
- Generate Structure: Generate a project folder structure
Installation
Global Installation (Recommended)
npm install -g git-broThis installs git-bro as a global command-line tool accessible from anywhere in your terminal.
On-demand Usage
npx git-bro <github-repo-url>Run git-bro directly without installation using npx.
Command Line Options
| Option | Description |
|---|---|
-V, --version |
Show version number |
-h, --help |
Show help |
Commands
| Command | Description |
|---|---|
insights <repo> [options] |
Generate detailed insights for a GitHub repository |
audit <repo> [options] |
Audit dependencies in a GitHub repository |
commits <repo> [options] |
Explore commit history of a GitHub repository |
generate |
Generate a project folder structure |
Commits Feature Options
| Option | Description |
|---|---|
-a, --author <author> |
Filter commits by author |
-f, --file <file> |
Filter commits by file path |
-c, --conflicts |
Show only commits with merge conflicts |
-l, --limit <number> |
Limit number of commits (default: "50") |
-h, --help |
Display help for command |
Audit Feature Options
| Option | Description |
|---|---|
--type <type> |
Type of dependency file (package.json, requirements.txt) |
--output <path> |
Output directory for audit reports |
Examples
Generate Insights for a Repository
git-bro insights username/repositoryAudit Dependencies in a Repository
git-bro audit username/repositoryExplore Commit History
git-bro commits username/repositoryGenerate Project Folder Structure
git-bro generateConfiguration
git-bro works out of the box without configuration. For rate-limited GitHub API usage, authentication support is under development.
Troubleshooting
Common Issues
Rate Limit Exceeded
Error: Request failed with status code 403Solution: GitHub limits unauthenticated API requests. Wait a few minutes and try again.
Invalid URL Format
Error: Invalid GitHub URL formatSolution: Ensure your URL follows the pattern: https://github.com/owner/repo
Repository Not Found
Error: Repository not foundSolution: Verify the repository name and ensure it is accessible.
Contributing
Contributions make the open-source community an amazing place to learn, inspire, and create. Any contributions to git-bro are greatly appreciated.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
See the open issues for a list of proposed features and known issues.
Roadmap
- Add GitHub token authentication
- Support for GitLab and Bitbucket repositories
- Download from specific commits or tags
- Dry run mode
- CLI interactive mode
License
This project is licensed under the MIT License - see the LICENSE file for details.
Acknowledgments
- GitHub API for making this tool possible
- Everyone who has provided feedback and suggestions
Made with ❤️ by Adwait-Borate and ShreyashIngle
If you find this tool useful, consider sponsoring its development