Metadata-Version: 2.4
Name: git-easypush
Version: 0.2.0
Summary: Push to GitHub without the pain. One command, zero fuss.
Author-email: whosifrago53 <whosifrago@protonmail.com>
License-Expression: MIT
Project-URL: Homepage, https://github.com/whosifrago53/easypush
Classifier: Programming Language :: Python :: 3
Classifier: Operating System :: OS Independent
Classifier: Environment :: Console
Classifier: Topic :: Software Development :: Version Control :: Git
Requires-Python: >=3.6
Description-Content-Type: text/markdown

# easypush

Are you tired of typing the same six Git commands every time you want to push a project to GitHub? Is your cat staring at you, slowly dying of starvation, because you're still fumbling with `git remote add origin` for the 400th time? Do you have better things to do with your life than memorize the exact order of `git init`, `git add`, `git commit`, `git branch`, `git remote`, `git push`?

**easypush is for you.**

One command. That's it. Your cat gets fed. Everyone wins.

> ⚠️ **Heads up:** easypush is a simple tool built for hobbyists, students, and anyone who just wants to shove a project up to GitHub fast. It is **not** designed for teams, companies, complex workflows, CI/CD pipelines, or anything that requires careful version control. If you're doing serious work — use Git properly. If you just want to push your weekend project before you forget what it does — use easypush.

---

## Installation

```bash
pip install git-easypush
```

---

## Usage

easypush has two modes:

### Mode 1 — Initialize & Push (new repo)

Got a fresh project that's never touched GitHub? Give easypush the repo URL and it handles everything:

```bash
easypush https://github.com/yourusername/your-repo
```

This runs the following automatically:

```bash
git init
git add .
git commit -m "first commit via easypush"
git branch -M main
git remote add origin https://github.com/yourusername/your-repo.git
git push -u origin main
```

The `.git` at the end of the URL is optional — easypush figures it out.

### Mode 2 — Quick Push (existing repo)

Already have a Git repo set up and just want to push your latest changes without thinking?

```bash
easypush
```

No arguments needed. easypush checks for a `.git` folder and runs:

```bash
git add .
git commit -m "Committed with easypush"
git push
```

If there's no `.git` folder in the current directory, easypush will let you know and tell you to use Mode 1 instead.

---

## Options

| Flag | Description | Default |
|------|-------------|---------|
| `-b`, `--branch` | Branch to push to | `main` |
| `-m`, `--message` | Commit message | `first commit via easypush` |

### Custom branch

```bash
easypush https://github.com/yourusername/your-repo -b dev
```

### Custom commit message

```bash
easypush https://github.com/yourusername/your-repo -m "finally got it working"
```

---

## Examples

```bash
# Initialize a new repo and push everything
easypush https://github.com/yourusername/my-project

# Same but push to a different branch
easypush https://github.com/yourusername/my-project -b staging

# Quick-push changes on an already-initialized repo
easypush

# Initialize with a custom message
easypush https://github.com/yourusername/my-project -m "v2 but it still barely works"
```

---

## Who is this for?

- Solo developers who push personal projects
- Students uploading homework before the deadline
- Anyone who keeps Googling "how to push to GitHub" every single time
- People who just want to get code online fast and move on

## Who is this NOT for?

- Teams collaborating on shared repos
- Projects with code reviews, PRs, or branch protection rules
- Anything involving production deployments
- Basically any serious software development workflow

---

## Contributing

Found a bug? Want to add something? PRs welcome over at [GitHub](https://github.com/whosifrago53/easypush). Please don't use easypush to push your PR to easypush. That would be a bit much.

## License

MIT — do whatever you want with it.
