TODOs
These may also be scattered throughout the codebase... Search @TODO
across the codebase for more things TODO
quality of life
- Fix the
prompt
function, so it wraps to new line when line end is reached - Take argument to skip prompts:
- bent switch branch_name
unsorted
- [bent save COMMIT_MSG] to disable the prompt for message
- [bent move] move project (to a new host), move file?, move...?
- [bent find] find project, find file (in current state or across commit history?), find string in files
- [bent use] Use feature. Use extension. Use remote project??
- [bent cd project_name] as a way to cd into a project directory. Probably bent switch project NAME
- [bent check] to: check current status, download latest updates, and whatever else I think of. Intention is to run at the start of your code day to get your project into a proper state
delete
- [bent delete project]: Delete project online
- [bent delete submodule]: Remove a submodule from your project
- [bent delete file]: Remove a file from git, but maybe not from local machine? Idk
switch
- [bent switch host] to change whether you're pushing to
origin
ormy_personal_server
or whatever - [bent switch project] to cd into another project
manage
config
- Configuration options.
- to auto-upload on save or not
- multiple remotes, multiple users
- Colors of headers, instructional messages, status messages, etc
setup
- normalize method names
- Guidance for setting up webhooks
show
other
- [bent archive]: create a tag, prefixed with archive/
- [bent reset]: force local to be identical to remote files
- [bent reset remote]: Force remote to be identical to local files
- Expose internal functions via
bent internal func_name
or something... - SSH assistance: Before doing a git push, check & make sure your SSH key is active, otherwise log you in
- A
publish
feature, generally for web servers, to upload your local repo to your webserver
extensions
- [bent use extension]
- add extensions feature
- extensions could be downloaded by git url & managed by git bent, including managing updates & choosing which version to install
- add extension for my php testing library
- Download the library & add the cli command to your path... something like that? That's not really a bent extensions... Idunno exactly what I'm thinking here.
- add extension for my php documentor library
internals
- Convert everything to script-friendly commands (using rev-parse, I think?)
- Create a
prompt_ordefault
function. Example output:We will upload to 'origin': ([enter]-confirm / c-cancel / e-edit):
- This could also take a string input & use that over the default instead of having an
e-edit
step - I don't remember where I have this kind of functionality currently, but I'm using it in one or two places
- This could also take a string input & use that over the default instead of having an
- Maybe add an automated way to find all executable commands... To make sure the help menus cover everything
- Write tests. Start REALLY small...