Jaribu github org setup

GitHub Organization Setup (Jaribu Tech Solutions) — Obsidian Notes

Overview

This document covers the full setup of a GitHub Organization for Jaribu Tech Solutions, including security settings, structure, and best practices for managing personal vs company development.


1. Organization Decision

Choice Made:

Why this choice:


2. Identity Structure

Personal GitHub

Jaribu Tech Organization


3. Repository Structure

Inside Organization:

Rule:

All company code MUST live inside the organization.


4. Teams Setup

Create teams early (even if solo):

Suggested Teams:

Permissions:


5. Security Settings (CRITICAL)

Navigate:
Organization → Settings → Code security and analysis

Enable:

1. Push Protection

2. Dependency Graph

3. Dependabot Alerts

4. Dependabot Security Updates

5. Grouped Security Updates (Optional)

6. Private Vulnerability Reporting


6. Important Security Mindset

Biggest real risks (NOT enterprise features):

Must-have protections:


7. Git Identity Rules

For Company Repos:

git config user.name "Mati"
git config user.email "personal-email@gmail.com"

Why:


8. SSH Setup (Dual Account System)

Keys:

SSH Config:

Host github-personal
HostName github.com
User git
IdentityFile ~/.ssh/github_personal

Host github-company
HostName github.com
User git
IdentityFile ~/.ssh/github_company

Clone Example:

git clone git@github-company:Jaribu-Tech-Solutions/repo.git


9. Organization Profile Setup

Must Add:

Optional:


10. Workflow Structure

Development Flow:

  1. Create repo inside org
  2. Clone using SSH alias
  3. Set git identity per repo
  4. Commit with personal email
  5. Push to org repo
  6. Protect main branch (recommended later)

11. Critical Rules (DO NOT BREAK)


12. Mental Model

Think of it like:

Personal GitHub = Your developer identity
Organization = Company infrastructure
Repos = Products


End of Setup

This setup scales from solo founder → agency → real company without restructuring later.

Powered by Forestry.md