I wrote sdf
because I wanted my project structure to be organized. But setting
this up for every repository, and navigating to the correct directory felt too
much work.
More lazy development tools are being added as they are needed.
brew install nousefreak/brew/sdf
Because sdf
needs to be able to do some bash magic, it will need to wrapper.
Run the following once to complete the installation.
sdf setup
Once this is done, reload your session and you are good to go.
cd
Change to a directory using fuzzy search.
sdf cd g/nuf/sdf
# will cd to ~/Projects/src/github.com/NoUseFreak/sdf
clone
Clone a project into the project structure.
sdf clone g/NoUseFreak/sdf
# Will clone and cd to ~/Projects/src/github.com/NoUseFreak/sdf
env
Manage environment variables your don't want to save in your projects.
- cat Print a set
- edit Edit an existing set
- list List all available sets
- new Create a new set
- rm Remove a set
- use Exports a set to the current session
sdf env new myproject
# Will prompt an editor to let you set KEY=value environment variables
sdf env use myproject
# Will export any vars defined above.
short
Create custom short commands.
- new Create a new short command
- list List all shorts
sdf short new test "ls /tmp"
# Will create a short called test
sdf test
# Will execute 'ls /tmp'
wdid
Query all your repositories to see a
what did I do
report.
sdf wdid 1 day
After setup, you will have a ~/.sdf/main.yml
file, this contains some settings
that can tailor the sdf
commands to your way of working.
- profile Profile name if you want more profiles (default: main).
- projectdir Root of all projects.
- default_namespace Default path if cd does not find one match.