8 unstable releases (3 breaking)

0.4.1 Nov 24, 2024
0.4.0 Nov 24, 2024
0.3.3 Nov 24, 2024
0.2.0 Nov 23, 2024
0.1.0 Nov 17, 2024

#2178 in Command line utilities

Download history 46/week @ 2024-11-11 266/week @ 2024-11-18 219/week @ 2024-11-25 146/week @ 2024-12-02 274/week @ 2024-12-09

951 downloads per month

MIT license

2.5MB
625 lines

Git Cli Wrapper for Ducks 🦆

For the orange\yellow bill inclined amongst us

  • Tha goal is a git cli wrapper that does 95% of what you need to do but SUPER slick.
  • gota be able to yank text from the terminal with EASE

demo

Usage

Status info

git status command (default method) but copy pasteable

> dukit -b

 Staged
 src/lib.rs

 Modified
 README.md
 src/base_commands.rs

 Untracked
 hi.txt

Branch info

Notice how easy copy pasting should be

> dukit -b

  Your branch is up to date with 'origin/main'.

  feature/git-switch-interactive
  main

Fuzzy branch switching

> dukit -f

 #opens fzf
    test2
    test1
▌   feature/git-switch-interactive
  3/3 ─────────────────────────────────────────────────────────────
> {search bar here}

 Switched to branch 'feature/git-switch-interactive'

Interactive git add

This opens your default editor with files to add

> dukit -i

# Staged
 out.tape

# -------------------------------------

# Unstaged
[ ] README.md
[ ] .gitignore
[x] demo.gif

# Selected files to be staged like so below V
# [x] file.txt
# Lines begining with (#) will be ignored

> running git add demo.gif
  demo.gif staged

Interactive git add via the keys

allows only upto 26 modified files at once, if more use duckit -i

Unstaged                     Staged

                             a:  Cargo.lock
s:  Cargo.toml
d:  README.md
                             f:  demo.gif
g:  out.tape
h:  src/duck_commands.rs

> running git add  Cargo.lock
   Cargo.lock Staged
 
  running git add  demo.gif
   demo.gif Staged

Better git log output

notice how the output is reversed (most recent at the bottom)

8436fdb
 init 
dc7338e
 chore: commit 1 
30357b2
 feat: commit 2 
0562d8c
 feat: commit 3 
5dade7e
 refactor: commit 4 
0167a1b
 feat: commit 5 

Installation

cargo install dukit
apt install fzf

Contributing

  • If you want to suggest a feature put in an issue with the feature request.
  • If you spot a bug (which there probabably are many), put in an issue with how to reproduce it.
  • If you want to contribute code, make a pull request. anything short of a war crime will probably be accepted.

TODO

  • status info
  • branch and remote info
  • git add using editor
  • unwrap unwrap unwrap unwrap unwrap unwrap
  • fuzzy branch switching?
  • nice git log info
  • ez copy commit hashes
  • ez rebase
  • ez cherry pick
  • random other git porcelein shizz

duck duck duck duck

Dependencies