Update README
This commit is contained in:
parent
3e56bf8e65
commit
43342bf858
61
README.md
61
README.md
@ -1,22 +1,5 @@
|
|||||||
# GitLab Project Manager
|
# GitLab Project Manager
|
||||||
|
|
||||||
## TODO
|
|
||||||
|
|
||||||
- [ ] Fix NPE when cache is reset or project for whatever reason leaves an orphaned alias
|
|
||||||
- [ ] Add config setters and getters
|
|
||||||
- [ ] Add TTL check to cache load, and add -f / --force flag to re-build regardless
|
|
||||||
- [ ] For each project loaded, check if it is the same, and do nothing
|
|
||||||
- [ ] prevents clobbering cache on a partial update
|
|
||||||
- [ ] track loaded projects in []*Project to diff after load
|
|
||||||
- [ ] should prune missing after the load is complete
|
|
||||||
- [ ] Add open command
|
|
||||||
- [ ] config should exist for editor (vim, code, etc..)
|
|
||||||
- [ ] Update README for shell completion, aliases, usage
|
|
||||||
- [ ] Make a Makefile
|
|
||||||
- [ ] Add git repo status to project go (up-to-date, pending commits, etc..)
|
|
||||||
- [x] Merge aliases together for same project when selecting
|
|
||||||
- [ ] If after merging there is only one project, go there by default
|
|
||||||
|
|
||||||
## Purpose
|
## Purpose
|
||||||
|
|
||||||
The goal of this utility is to provide a fuzzy-find method of locating, cloning,
|
The goal of this utility is to provide a fuzzy-find method of locating, cloning,
|
||||||
@ -25,8 +8,46 @@ and shortcuts.
|
|||||||
|
|
||||||
## Functionality
|
## Functionality
|
||||||
|
|
||||||
### Project Caching
|
Fuzzy as F_ck. This program will try like hell to help you find a project,
|
||||||
|
and once you've found it, will remember your preference along with whatever crazy
|
||||||
|
thing your lizard brain wants to call it.
|
||||||
|
|
||||||
### Project Aliases
|
Do you think of a project called terraform as infra-stuff? No problem, just let
|
||||||
|
gpm know that and it'll remember.
|
||||||
|
|
||||||
|
The basic workflow looks like this:
|
||||||
|
|
||||||
|
1. **Cache** -- load your cache to make things super quick
|
||||||
|
- project cache has a TTL, or you can load it manually
|
||||||
|
- you only need to update it if there are new projects the cache is unaware of
|
||||||
|
2. **Add** -- find your project, give it any extra aliases you want
|
||||||
|
- run `gpm project add` (or `padd` if using the provided shell defaults)
|
||||||
|
3. **Go** -- go to your project, fuzzy searching by alias
|
||||||
|
- clones your project if that's never been done
|
||||||
|
- the provided `pgo` func makes it easy
|
||||||
|
4. **Open** -- rather than simply changing directories to a project, open it in your IDE
|
||||||
|
5. **Manage** -- fine-tune your aliases, making it easy to nail them without fuzzy stuff
|
||||||
|
- if you are lazy in your aliases, you'll be fuzzy finding a lot
|
||||||
|
- match your alias exactly (or have only one result) and you go there right away
|
||||||
|
- positive reinforcement given for solid alias behavior
|
||||||
|
- manage aliases using `gpm alias add` or `gpm alias delete`
|
||||||
|
6. **List** -- get a list of your configured projects any time with `plist`
|
||||||
|
7. **Reward** -- buy the author a beer, because this thing is a time saver
|
||||||
|
|
||||||
|
## TODO
|
||||||
|
|
||||||
|
- [ ] Fix NPE when cache is reset or project for whatever reason leaves an orphaned alias
|
||||||
|
- [ ] Add config setters and getters
|
||||||
|
- [ ] Add TTL check to cache load, and add -f / --force flag to re-build regardless
|
||||||
|
- [ ] For each project loaded, check if it is the same, and do nothing
|
||||||
|
- [ ] prevents clobbering cache on a partial update
|
||||||
|
- [ ] track already loaded projects to diff after load
|
||||||
|
- [ ] should prune missing after the load is complete
|
||||||
|
- [ ] Add open command
|
||||||
|
- [ ] config should exist for editor (vim, code, etc..)
|
||||||
|
- [ ] Update README for shell completion, aliases, usage
|
||||||
|
- [ ] Make a Makefile
|
||||||
|
- [ ] Add git repo status to project go (up-to-date, pending commits, etc..)
|
||||||
|
- [x] Merge aliases together for same project when selecting
|
||||||
|
- [ ] If after merging there is only one project, go there by default
|
||||||
|
|
||||||
### Fuzzy All the Things
|
|
||||||
|
Loading…
Reference in New Issue
Block a user