Skip to content

Git Growth Tracker is a Python-based utility that processes Git repository histories to generate visualizations and statistics about code evolution. It helps users track the development progress, identify active periods, and assess the longevity of code contributions.

Notifications You must be signed in to change notification settings

devridge0/git-growth-tracker

Repository files navigation

Git Growth Tracker

A step-by-step roadmap to level up your Git, coding, and open-source skills. Track your daily commits, learn professional repo practices, improve code quality, and start contributing to the developer community — one commit at a time.


Git Growth Skill Tree

📅 Roadmap Overview

Week 1 – Core Habits

  • Create a practice repo for experimenting.

  • Make at least 1 commit per day (bug fixes, README updates, refactoring).

  • Use descriptive commit messages:

    type(scope): short description
    

    Example: feat(api): add user authentication

  • Learn branching basics: create, switch, merge, delete.

Week 2 – Repo Polish & Automation

  • Add a README.md with description, install instructions, usage, and license.
  • Create a .gitignore for your language/framework.
  • Add a pull_request_template.md.
  • Set up GitHub Actions for linting and tests on every push.

Week 3 – Code Quality Boost

  • Add a linter (ESLint, Pylint, etc.) and fix all warnings.
  • Write unit tests for at least one critical feature.
  • Add Codecov (or similar) for test coverage.
  • Enable branch protection rules for main branch.

Week 4 – Public Engagement

  • Open a small PR to an open-source repo you use.
  • Comment constructively on one PR in that repo.
  • Publish a GitHub Gist with a reusable snippet/tool.

Week 5 & Beyond – Scaling Up

  • Publish a portfolio project publicly, with clean docs and a demo.
  • Share your repo link in GitHub Discussions or dev communities.
  • Keep making weekly commits and one PR to another repo per month.
  • Learn advanced Git commands (interactive rebase, cherry-pick, bisect).

🚀 Getting Started

Prerequisites

Setup

  1. Clone this repo:

    git clone https://github.com/devridge0/git-growth-tracker.git
    cd git-growth-tracker
  2. Start working through the roadmap, ticking off tasks as you complete them.


📜 Commit Message Guidelines

Follow the format:

type(scope): short description

Types: feat, fix, docs, style, refactor, test, chore Example:

feat(api): add user authentication
fix(ui): correct button alignment
docs(readme): update installation steps

💡 Tips for Success

  • Commit small and often — your activity graph will thank you.
  • Break work into meaningful commits instead of one giant commit.
  • Experiment freely in your practice repo before touching important projects.

📈 XP Hack

Think of this roadmap like a game:

  • Each commit = XP gained
  • Each merged PR = level-up
  • Each new skill learned = unlocked ability

React + TypeScript + Vite

This template provides a minimal setup to get React working in Vite with HMR and some ESLint rules.

Currently, two official plugins are available:

Expanding the ESLint configuration

If you are developing a production application, we recommend updating the configuration to enable type-aware lint rules:

export default tseslint.config([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...

      // Remove tseslint.configs.recommended and replace with this
      ...tseslint.configs.recommendedTypeChecked,
      // Alternatively, use this for stricter rules
      ...tseslint.configs.strictTypeChecked,
      // Optionally, add this for stylistic rules
      ...tseslint.configs.stylisticTypeChecked,

      // Other configs...
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])

You can also install eslint-plugin-react-x and eslint-plugin-react-dom for React-specific lint rules:

// eslint.config.js
import reactX from 'eslint-plugin-react-x'
import reactDom from 'eslint-plugin-react-dom'

export default tseslint.config([
  globalIgnores(['dist']),
  {
    files: ['**/*.{ts,tsx}'],
    extends: [
      // Other configs...
      // Enable lint rules for React
      reactX.configs['recommended-typescript'],
      // Enable lint rules for React DOM
      reactDom.configs.recommended,
    ],
    languageOptions: {
      parserOptions: {
        project: ['./tsconfig.node.json', './tsconfig.app.json'],
        tsconfigRootDir: import.meta.dirname,
      },
      // other options...
    },
  },
])

About

Git Growth Tracker is a Python-based utility that processes Git repository histories to generate visualizations and statistics about code evolution. It helps users track the development progress, identify active periods, and assess the longevity of code contributions.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published