You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A Git utility for managing work-in-progress changes across branches with super powers! 🦸♂️
4
4
5
-
Git stash with super powers! A dev tool to simplify working with work in progress changes that acts as a sub command for git.
5
+
## Features
6
6
7
-
When saving your work it creates a temporary WIP branch (pushes to remote by default) that stores your changes and allows you to restore them later. It even keeps track of which branch you were working on and which files were staged and untracked.
7
+
- 🔄 Save WIP changes to a dedicated branch
8
+
- 📋 List all your WIP branches
9
+
- ⚡ Restore WIP changes back to their original branches
10
+
- 🔒 Thread-safe and async operations
11
+
- 🌟 Maintains file states (staged, unstaged, untracked)
12
+
- 🔍 Smart branch naming with username and timestamps
13
+
- 🌐 Supports both local and remote operations
8
14
9
15
## Installation
10
16
11
-
Coming soon!
17
+
- Coming soon!
18
+
-
19
+
- Download the latest binary for your platform under releases and put it in your executable paths.
12
20
13
-
Download the latest binary for your platform under releases and put it in your executable paths.
21
+
*```bash
22
+
23
+
```
24
+
25
+
-# Install using cargo
26
+
27
+
* cargo install git-wippy
28
+
29
+
-```
30
+
31
+
```
32
+
-
33
+
- Or download the latest binary for your platform from the [releases page](https://github.com/mekwall/git-wippy/releases).
14
34
15
35
## Build and install from sources
16
36
@@ -21,19 +41,58 @@ To install, follow these steps:
21
41
1. Install [Rust and cargo](https://www.rust-lang.org/tools/install).
22
42
2. Clone this repository.
23
43
3. Navigate to the project directory and run `cargo build -r`.
24
-
4. Copy `git-wippy` binary from `target/release` to somehwere that is in your executable paths.
44
+
4. Copy `git-wippy` binary from `target/release` to somewhere in your executable paths.
25
45
26
46
## Usage
27
47
28
48
When `git-wippy` is located somewhere in your executable paths it can be used as a `git` subcommand.
29
49
30
-
Executed with `git wippy <command>`:
50
+
### Commands
51
+
52
+
```bash
53
+
# Save your WIP changes (pushes to remote by default)
54
+
git wippy save
55
+
56
+
# Save changes locally only
57
+
git wippy save --local
58
+
59
+
# List all your WIP branches
60
+
git wippy list
61
+
62
+
# Restore changes from a WIP branch
63
+
git wippy restore
64
+
```
65
+
66
+
## How It Works
67
+
68
+
1.**Saving Changes**:
31
69
32
-
-`restore`: Restore your WIP changes
33
-
-`save`: Save your WIP changes (use `--local` flag to only save locally)
34
-
-`list`: List all WIP branches
70
+
- Creates a WIP branch named `wip/{username}/{timestamp}`
71
+
- Preserves the state of all files (staged, unstaged, untracked)
0 commit comments