365 Days of Code - Day 053

Project Status

ProjectLanguageStatusDue DateLatest Update
Personal WebsiteHugoOngoingNoneThe site is live. Continuous improvements ongoing.
Laravel From ScratchLaravel (PHP)In-Progress2026-03-31Episode 8
PRMLaravel (PHP)In-Progress2026-03-31Working alongside other Laravel projects.
Client Website (J.L.)Laravel (PHP)In-Progress2026-03-31Working alongside other Laravel projects.
Project EulerCOngoingNoneWorking on P25. BigInt (AI gen) was a waste of time, need to rewrite
Practice JavaJavaPausedNoneInstalled, need to find a good project.
Practice PythonPythonPausedNoneInstalled, need to find a good project.
Learn GoGoPausedNoneInstalled, work on LDAP Injector from ippsec.
Learn RustRustHaven’t StartedNoneInstalled, will try network protocols after finishing in C and Zig.
Learn ElixirElixirHaven’t StartedNoneInstalled, need a good tutorial project.
Learn HaskellHaskellHaven’t StartedNoneInstalled, need a good tutorial project.
Learn ZigZigHaven’t StartedNoneInstalled, will try network protocols after finishing in C.
Linux+N/AIn-Progress2026-03-31Reading Chapter 4.
Cyber Quest 2026N/AIn-Progress2026-02-28Finished quiz 1 with 75%.
Operating SystemsN/AIn-Progress2026-03-31Reading Chapter 4: Abstraction
Grey-Hat HackingVariousIn-Progress2026-03-31Reading Chapter 8: Threat Hunting Lab
PHP Time TrackerPHPBeta FinishedNoneWorking on a basic level.
HTTP Status Code ReaderCComplete2026-02-18Complete.
ZSH Configurationbash/zshCompleteNoneSort of an ongoing process, but complete for now. Works good.
Network ProtocolsCIn-ProgressNoneWorking on V3, implementing IPv6.
Discinox WebsiteHTML, CSS, JSComplete2026-03-04The site is live.
DiroffTech WebsiteHTML, CSS, JSComplete2026-03-05The site is live. git-lfs needs to be initialized for images.
Automate BackupsbashComplete2026-03-08Backups done.

Splitting Code Up Into Branches

Part of writing code is properly managing your VCS. In my IP/ICMP project, I’ve been adding new folders each time I wanted to create a new version of the project. This is improper, and makes the code base larger than it needs to be. I split the code into branches to support each version.

There are a small number of steps to complete, in order.

  1. Checkout main
  2. Create a new branch
  3. Move and remove files
  4. Commit
  5. Push
  6. Repeat
bash
git checkout main
git checkout -b v1
rm -rf c/v2/ c/v3/
mv c/v1/ip_stack_v1 c/
rm -rf c/v1/
git add .
git commit -S -m "refactor: isolate v1"
git push --set-upstream origin v1
# Restart
git checkout main
git checkout -b v2
rm -rf c/v1/ c/v3/
mv c/v2/ip_stack_v2 c/
rm -rf c/v2/
git add .
git commit -S -m "refactor: isolate v2"
git push --set-upstream origin v2
# Restart
git checkout main
git checkout -b v3
rm -rf c/v1/ c/v2/
mv c/v3/* c/
rm -rf c/v3/
git add .
git commit -S -m "refactor: isolate v3"
git push --set-upstream origin v3
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
git checkout main
git checkout -b v1
rm -rf c/v2/ c/v3/
mv c/v1/ip_stack_v1 c/
rm -rf c/v1/
git add .
git commit -S -m "refactor: isolate v1"
git push --set-upstream origin v1
# Restart
git checkout main
git checkout -b v2
rm -rf c/v1/ c/v3/
mv c/v2/ip_stack_v2 c/
rm -rf c/v2/
git add .
git commit -S -m "refactor: isolate v2"
git push --set-upstream origin v2
# Restart
git checkout main
git checkout -b v3
rm -rf c/v1/ c/v2/
mv c/v3/* c/
rm -rf c/v3/
git add .
git commit -S -m "refactor: isolate v3"
git push --set-upstream origin v3

Now, everything is nice and organized into branches for each version.

This is all the time I have for code today!

Related content