How I Built a CLI That Automatically Bridges Jira Status Changes with Git Branching
Most teams still suffer from a classic disconnect: the gap between what a developer is actually doing in their local Git repo and what Jira shows to the rest of the team. Developers forget (or delay) updating tickets not because they're lazy, but because switching context to Jira breaks flow. This leads to stale Jira boards, painful standups full of status checks, and poor visibility for PMs and Scrum Masters. I decided to close this gap with a tool called Jitly . The Core Idea Instead of manually doing: git pull origin main git checkout -b feature/ABC-123-xyz Go to Jira → Move ticket to In Progress Jitly lets you run jitly start ABC-123 and it handles everything automatically — including respecting team-specific branch naming conventions and commit message formats. Technical Implementation Highlights Jira Integration : Supports both Jira Cloud (SSO/OAuth2) and Jira Server/Data Center (PAT). Uses atlassian-python-api under the hood with proper session management. Git Operations : Uses GitPython + subprocess for safe operations. Handles dirty working tree by offering stash/push/discard choices. Workflow Hooks : Detects ticket status change (via manual command for now) and triggers git + Jira actions. Configuration : Team-level config for branch patterns (e.g. {type}/{ticket}-{slug}) and commit templates using Jinja2-style formatting. Idempotency : If a branch already exists for a ticket, it intelligently checks out and continues work instead of failing. Single binary-like experience via pip install with entry point. It's currently focused on the most painful part of the developer workflow — starting and finishing work — while keeping the tool lightweight. Would be interesting to hear how others are solving this Jira-Git synchronization problem in their teams. What tools/workflows do you use today? Download link: https://pypi.org/project/jitly/ Demo Video: https://www.youtube.com/watch?v=_czVTfqGKGY submitted by /u/Direct_Holiday_5934 [link] [留言]