Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

A nice feature would be some analysis of the available git information #377

Open
jackson-dean opened this issue May 6, 2020 · 3 comments
Labels
checkup-task Changes scoped to a specific task/set of tasks enhancement New feature or request

Comments

@jackson-dean
Copy link

None of these are my ideas, they all come directly from the book Software Design X Rays: Fix Technical Debt with Behavioral Code Analysis by Adam Tornhill :)

But it would be super cool to have analysis of what are the “hot” files, or where do we have lots of different people touching the same files which can be broken down to more granular modules, where do we have related changes always happening in tandem indicating tight coupling, among other things.

@scalvert scalvert added enhancement New feature or request checkup-task Changes scoped to a specific task/set of tasks labels May 6, 2020
@scalvert
Copy link
Contributor

scalvert commented May 6, 2020

Thanks, @jackson-dean. Great idea. We'll add it to our list for exploration.

@scalvert
Copy link
Contributor

scalvert commented May 6, 2020

I could imagine us doing something like git effort from git-extras:

❯ git effort --above 10

  path                                                                                                                       commits    active days

  CHANGELOG.md.............................................................................................................. 16          8
  package.json.............................................................................................................. 90          41
  packages/cli/__tests__/commands/run-test.ts............................................................................... 11          10
  packages/cli/__tests__/task-list-test.ts.................................................................................. 13          13
  packages/cli/package.json................................................................................................. 100         44
  packages/cli/src/commands/run.ts.......................................................................................... 12          11
  packages/cli/src/index.ts................................................................................................. 16          14
  packages/cli/src/reporters.ts............................................................................................. 11          9
  packages/cli/src/task-list.ts............................................................................................. 15          14
  packages/cli/tsconfig.json................................................................................................ 12          11
  packages/core/package.json................................................................................................ 61          32
  packages/core/src/index.ts................................................................................................ 20          18
  packages/core/src/types/tasks.ts.......................................................................................... 12          9
  packages/test-helpers/package.json........................................................................................ 46          23
  yarn.lock................................................................................................................. 225         58


  path                                                                                                                       commits    active days

  yarn.lock................................................................................................................. 225         58
  packages/cli/package.json................................................................................................. 100         44
  package.json.............................................................................................................. 90          41
  packages/core/package.json................................................................................................ 61          32
  packages/test-helpers/package.json........................................................................................ 46          23
  packages/core/src/index.ts................................................................................................ 20          18
  packages/cli/src/index.ts................................................................................................. 16          14
  CHANGELOG.md.............................................................................................................. 16          8
  packages/cli/src/task-list.ts............................................................................................. 15          14
  packages/cli/__tests__/task-list-test.ts.................................................................................. 13          13
  packages/core/src/types/tasks.ts.......................................................................................... 12          9
  packages/cli/tsconfig.json................................................................................................ 12          11
  packages/cli/src/commands/run.ts.......................................................................................... 12          11
  packages/cli/src/reporters.ts............................................................................................. 11          9
  packages/cli/__tests__/commands/run-test.ts............................................................................... 11          10

@jackson-dean
Copy link
Author

👍 there is a cli tool that does a lot of this analysis. Note that I have not vetted it for how well it works or anything else https://github.com/adamtornhill/code-maat but it was created to accompany the exercises in the aforementioned book. I imagine it has some nice tricks that could be used for inspiration though.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
checkup-task Changes scoped to a specific task/set of tasks enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants