DEV Community

Cover image for How to work efficiently and confidently with Git repos without Git's commands and myriad options
Elifarley Cruz
Elifarley Cruz

Posted on

How to work efficiently and confidently with Git repos without Git's commands and myriad options

I've been using Git for a long time, but I'll be honest: I still have to pause before typing git reset. Is it --soft or --mixed I need? What exactly is about to happen to my staged files versus my working directory?

That hesitation is a problem. A version control system should be a trusted safety net, a tool that gives you the confidence to experiment and move quickly.
But for many of us, Git can feel like a command-line minefield, where one wrong flag can vaporize hours of work.

If you can't predict precisely what a tool will do, you can't trust it. And I never fully trusted Git.

After my personal list of git aliases grew out of control, I decided to build the tool I always wanted: Hug SCM.

Hug is a humane wrapper for Git, designed around a simple principle: give developers confidence. It's not a replacement for Git, but a friendly, predictable layer on top.

How Hug Builds Confidence

Hug is organized around simple, memorable patterns.

Short commands are for safe, everyday tasks.
Longer, more explicit commands are for powerful or destructive actions. And everything has a safety net.

1. Predictable Naming Conventions

Commands are grouped by what they operate on. No more wondering if a command affects the branch, the HEAD, or the files on disk.

  • b* for branches (hug bc new-feature)
  • h* for HEAD operations (hug h back)
  • w* for the working directory (hug w discard)

2. Destructive Actions Are Explicit and Safe

In Hug, you can't accidentally destroy work. For example, hug w zap-all is the "nuclear option" to completely reset your repository. But it's not scary, because it's safe by default:

  • It requires explicit confirmation.
  • It always shows you a --dry-run preview of what will be deleted first.

This way, you know exactly what's going to happen before you commit to it.

3. Common Tasks are Simple and Intuitive

The commands you use most often are short, sweet, and do what you expect.

Want to undo your last commit but keep the changes to fix them? Just hug h back (h for Heah; back). The head goes back, and nothing else happens. Your changes are still there in your working directory. It’s a safe "soft" reset, no flags to remember.

Need a new branch? hug bc my-new-idea (Branch: Create) creates it and switches to it in one step.

It’s about turning Git’s sharp edges into a smooth, reliable workflow.

See it in Action

Here's a quick demo of some commonly used Hug commands:
hug s (for Status):
hug s

hug sl

hug lol

What now?

For the first time in years, I feel fully in control of my version control. I'm no longer afraid of reset, rebase, or cleaning my working directory, because my tool is designed to protect me.

If you've ever felt that same hesitation or frustration with Git, give Hug a try. You can find the installation instructions and more on the Hug Documentation site:
https://elifarley.github.io/hug-scm/

Let me know what you think

Top comments (0)