Personally, to keep my documents like Inkscape files or LibreOffice documents separate from my code, I add a directory under my home directory called Development
. There, I can do git clones to my heart's content
What do you all do?
~/workspace/git
That way I can also keep other stuff there.
I have a Code, simulations, ECAD, and FreeCAD folder in there where projects or 1-offs are stored and when I want to bring them to git, I copy them over, play around in the project folders again, then copy changes over when I am ready to commit.
I could better use branching and checking out in git, but large mechanical assemblies work badly on git.
I used to use
~/dev
but for years now I use~/Workspace
becaue Eclipse made me do it~/code
for everything I want to change/look at the source code.~/.local/src
for stuff I want to install locally from source.For my personal projects I use ~/dev/projects/
For clones I use ~/dev/clones
My audio engineering stuff is at ~/audio/{samples, plugins, projects, templates}
~/gits
Documentation is usually a
doc
folder inside the repo or just aREADME.md
for small projects.For a project called "Potato Peeler", I'll put it into a structure like this:
~/Projects/Tools/Potato-Peeler/potato-peeler/
Tools/
is just a rough category. Other categories are, for example,Games/
andMusic/
, because I also do gamedev and composing occasionally.Then the capitalized
Potato-Peeler/
folder, that's for me to drop in all kinds of project-related files, which I don't want to check into the repo.And the lower-case
potato-peeler/
folder is the repo then. Seeing other people's structures, maybe I'll rename that folder torepo/
, and if I have multiple relevant repos for the Project, then make itrepo-something
.I also have a folder like
~/Projects/Tools/zzz/
where I'll move dormant projects. The "zzz" sorts nicely to the bottom of the list.Like some other ppl here, I clone everything in a git folder under my home directory.
On Linux I usually just keep them in my home directory because I'm lazy. On Windows though I usually do C:\git\ or D:\git\ if I have a second drive.
Most of my code and some non-code is under
~/src
, but I have repos scattered all around for other things.~/Projects/$TOPIC_OR_LANGUAGE/$PROJECT_NAME
ie.
~/Projects/Web/passport.ink
for a web dev project~/Projects/Minecraft/synthetic_ascension
for a Minecraft mod~/Projects/C++/journalpp
for a C++ library
Admittedly, that irks me slightly just because of the shared name with the devices folder in root, but do what works for you.
I actually have my whole home directory like that for that reason haha
bin - executables dev - development, git projects doc - documents etc - symlinks to all the local user configs med - pictures, music, videos mnt - usb/sd mountpoints nfs - nfs mountpoints smb - smb mountpoints src - external source code tmp - desktop