this post was submitted on 30 Oct 2024
118 points (98.4% liked)

Linux

48668 readers
1025 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

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?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 1 points 1 month ago

Personal stuff goes in ~/Projects

Work stuff goes in ~/Work/Code

[–] [email protected] 1 points 1 month ago

Personal?

~

My homedir is a HUGE MESS.

Work?

~/src///

i.e. ~/src/github/mirantis/docker (not real I don't imagine, just an example)

~/src/bitbucket/INTERNALPROJECTCODE/coolrepo

[–] [email protected] 1 points 1 month ago

~/Documents/projects/<YYYY>-<MM>-<DD>_<name>

[–] [email protected] 1 points 1 month ago

~/Prototypes on pretty much all machines I own, from desktop, laptop, server, tablets, ebook readers, RPis, XR headset, video projector, etc.

[–] [email protected] 1 points 1 month ago

~/Sources for stuff I'm only building from sources and no immediate intention to contribute to

~/Projects for stuff I'm involved in, with a following structure:

Projects
 - Personal
 - - Art
 - - Music
 - - Code
 - - - Ideas
 - - - In progress
 - - - Deployed
 - - - Scripts
 - - - Abandoned
 - [Company name]
 - - [Project name]
 - Interviews
 - - [Company name]

The last part grouping project by companies has worked great for me, especially with freelance and outsource work. Sorting personal projects into types and stages feels like a mistake, as every time I have to navigate it, I can't help but think of limitations of hierarchical file systems, as some of them are multiple types simultaneously, and also moving projects between stages feels dumb.

[–] [email protected] 1 points 1 month ago

In ~/src Mostly because I'm too lazy to type "source".

[–] [email protected] 1 points 1 month ago

Putting one directly under the home directory feels like a psychopathic move, so I stay by XDG and put them under a subdirectory of xdg-documents

[–] [email protected] 2 points 1 month ago
[–] [email protected] 7 points 1 month ago* (last edited 1 month ago)

~/git, for projects I cloned from the web because I don't know how to code :(

[–] [email protected] 1 points 1 month ago (2 children)
[–] [email protected] 2 points 1 month ago

My best recommendation is a good git GUI. I really like Gitkraken (proprietary & freemium unfortunately, but a pretty generous free plan). I'm now more advanced than many of my coworkers because it helped me form an intuitive understanding of git.

[–] [email protected] 3 points 1 month ago* (last edited 1 month ago) (1 children)

Don't worry, the basics are really easy to ~~git~~ get down, you can read any beginner guide to start trying it out, for example this one on baeldung seems pretty alright by a quick skim, or, if you prefer a more playful approach, definitely check out ohmygit.
If you want to try a git hoster as well, make a GitHub profile if you want to go where most everyone is, so you can also easily contribute to others' projects, otherwise, if you care about staying on a free platform, make an account on Codeberg, fewer people, but all great like-minded free software supporters

..or make one on both, ngl

[–] [email protected] 2 points 1 month ago (1 children)

Thanks. I do have a codeberg, a Gitlab and a github account (all I have here are my blacklist and white lists). If my kids allow me, I'll start swimming on this waters this weekend. I've only seen how you guys basically hold repose of pretty much anything and automate workflows and configurations so easily, it's amazing.

[–] [email protected] 2 points 1 month ago

Good luck! It can get complicated so I know how you feel looking at weird configurations that do magic

[–] [email protected] 2 points 1 month ago

C:\repos or ~/repos

[–] [email protected] 0 points 1 month ago* (last edited 1 month ago)

Unfortunately I'm still on windows, so [User]/Documents/Projects/*

[–] [email protected] 7 points 1 month ago (1 children)
[–] [email protected] 6 points 1 month ago

Similar, but I’m not ashamed of having my projects on display, so it’s just ~/projects for me.

[–] [email protected] 8 points 1 month ago* (last edited 1 month ago)

~/workspace/git

That way I can also keep other stuff in the same "workspace" directory and keep everything else clean

I have a Code, simulations, ECAD, and FreeCAD folder in the workspace folder 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.

[–] [email protected] 7 points 1 month ago

~/src/${reponame}

[–] [email protected] 6 points 1 month ago

~/code/$LANGUAGE/$REPONAME

[–] [email protected] 10 points 1 month ago

${HOME}/repos

[–] [email protected] 2 points 1 month ago

XDG Documents folder

[–] [email protected] 1 points 1 month ago
[–] [email protected] 3 points 1 month ago

All over the place...

[–] [email protected] 1 points 1 month ago

~/git/AUR|dev|whatever/$(git clone) is where mine usually reside.

[–] [email protected] 5 points 1 month ago

I used to use ~/devbut for years now I use ~/Workspace becaue Eclipse made me do it

[–] [email protected] 1 points 1 month ago
[–] [email protected] 2 points 1 month ago
[–] [email protected] 5 points 1 month ago

~/code for everything I want to change/look at the source code.

~/.local/src for stuff I want to install locally from source.

[–] [email protected] 4 points 1 month ago* (last edited 1 month ago)

~/repo for code I write and ~/src for code I didnt.

[–] [email protected] 1 points 1 month ago

~/gits

Documentation is usually a doc folder inside the repo or just a README.md for small projects.

[–] [email protected] 3 points 1 month ago

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}

[–] [email protected] 2 points 1 month ago* (last edited 1 month ago)

Any naming convention is fine as long as it's meaningful to you. But it's a good idea to keep your own repos separate from the random ones you clone from the internet.

[–] [email protected] 4 points 1 month ago

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/ and Music/, 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 to repo/, and if I have multiple relevant repos for the Project, then make it repo-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.

[–] [email protected] 5 points 1 month ago
[–] [email protected] 1 points 1 month ago

Like some other ppl here, I clone everything in a git folder under my home directory.

[–] [email protected] 0 points 1 month ago

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.

[–] [email protected] 0 points 1 month ago
[–] [email protected] 1 points 1 month ago

~/sites

I have always used it. I liked how it was easy to find in the home directory amongst other folders. Then under that I have a folder for every organization, including myself, and repositories live in those folders.

load more comments
view more: next ›