()
| 257 | |
| 258 | |
| 259 | def main(): |
| 260 | print("Analyzing programming time for BPlusTree repository...") |
| 261 | print("Fetching commit data...") |
| 262 | |
| 263 | # Parse commits |
| 264 | commits = parse_git_log() |
| 265 | |
| 266 | if not commits: |
| 267 | print("No commits found to analyze!") |
| 268 | return |
| 269 | |
| 270 | print(f"Found {len(commits)} commits") |
| 271 | |
| 272 | # Calculate programming sessions (assuming gaps > 2 hours indicate breaks) |
| 273 | sessions = calculate_programming_sessions(commits, max_gap_minutes=120) |
| 274 | |
| 275 | # Analyze daily data |
| 276 | daily_data = analyze_daily_programming(sessions) |
| 277 | |
| 278 | # Print comprehensive analysis |
| 279 | print_summary(sessions, daily_data) |
| 280 | create_ascii_chart(daily_data) |
| 281 | print() |
| 282 | analyze_patterns(sessions, daily_data) |
| 283 | |
| 284 | |
| 285 | if __name__ == "__main__": |
no test coverage detected