Keeping track of everything

Keeping track of everything

This is an excursion about housekeeping of code.

My only professional experience with source code versioning control was back in 2000-2001 when I worked as software developer, and that was Visual Source Safe.

Hated that tool, but loved the concept, and even after shifting to a different career path I've followed the development of these tools.

Subversion was a nice progrssion, but git was a mind-blowing paradigm shift that got me permanently hooked.

GitHub was another amazing step forward, making git repo sharing so accessible, and eventually the development of self-hosted solution like it made git THE version control tool.

I host my code on a self-hosted docker container running Gitea with some private code repos and a few public ones, the address is:

https://code.lksz.me

The PowerShell Script Directory

At this point, the only code discussed in this blog is PowerShell code.

Also, none of the code above found it's way to the repo yet, but going forward, I'd like to change that. I'm starting with the Scripts directory as that's where I'm going to pour most of my 'daily-driver' code into.

Below are details about where to find the repo, as well as how I set it up for myself.

$MyPSScriptRoot

$MyPSScriptRoot is how I'm designating the Scripts directory in a system agnostic way, the full code to have it setup goes into my profile.

If you fing the linked code undesirable, this variable assignment should do for now:

$MyPSScriptRoot = '~/.local/share/powershell/Scripts'

The repo:

https://code.lksz.me/lksz/PowerShell_Scripts

The code below is what I used to initialize my own $MyPSScriptRoot from my git repo:

cd /tmp
git clone https://code.lksz.me/lksz/PowerShell_Scripts
Get-ChildItem /tmp/PowerShell_Scripts -Force | Move-Item -Destination $MyPSScriptRoot
Remove-Item /tmp/PowerShell_Scripts

We're good to go...

With this setup, I'll be able not only to share my code, but also track the history of this endavour, and allowing anyone who reads this blog (be it myself or someone else) to track the evolution of this technical journey.