jmforsythe / git-heat-map Goto Github PK
View Code? Open in Web Editor NEWVisualise a git repository by diff activity
Home Page: http://heatmap.jonathanforsythe.co.uk
Visualise a git repository by diff activity
Home Page: http://heatmap.jonathanforsythe.co.uk
I tried several runs of generate_db.py and saw the following behavior:
(I run on WIndows, Python 3.8-64 in PowerShell using a venv)
(venv) PS C:\Dev\my-repo> python C:\Dev\Tools\Git-Heat-Map\generate_db.py C:\Dev\my-repo\
(venv) PS C:\Dev\my-repo> python C:\Dev\Tools\Git-Heat-Map\generate_db.py C:\Dev\my-repo
The first run creates a file .db
in C:\Dev\my-repo\
.
I would have liked the file to have a name and an extension, instead of just the extension.
The second run creates a file my-repo.db
in C:\Dev\
.
I do not have the idea that one is better than the other, but I would have liked to know which file was generated by looking at the command output. I took me some time to figure out where the db was and how I should run to make it be picked up by the app.
So my request would be: generate the db file with a clear name and report the name and the success in the script.
Hi,
Could you please consider adding requirement.txt? It will speed up the set up process.
Thanks!
There is a lot of overlapping text for the repo I tried. Also I wondered why there are no colors?
repo tried: https://github.com/tokiwa-software/fuzion
in git_database.py,var path_unix and path_win use error.
Installation:
curl https://clickhouse.com/ | sh
Usage:
./clickhouse git-import --help
Then the tool can be run directly inside the git repository.
It will collect data like commits, file changes, and changes of every
line in every file for further analysis.
It works well even on the largest repositories like Linux or Chromium.
Example of a trivial query:
SELECT author AS k, count() AS c FROM line_changes WHERE
file_extension IN ('h', 'cpp') GROUP BY k ORDER BY c DESC LIMIT 20
Example of some non-trivial query - a matrix of authors, how much code
of one author is removed by another:
SELECT k, written_code.c, removed_code.c,
round(removed_code.c * 100 / written_code.c) AS remove_ratio
FROM (
SELECT author AS k, count() AS c
FROM line_changes
WHERE sign = 1 AND file_extension IN ('h', 'cpp')
AND line_type NOT IN ('Punct', 'Empty')
GROUP BY k
) AS written_code
INNER JOIN (
SELECT prev_author AS k, count() AS c
FROM line_changes
WHERE sign = -1 AND file_extension IN ('h', 'cpp')
AND line_type NOT IN ('Punct', 'Empty')
AND author != prev_author
GROUP BY k
) AS removed_code USING (k)
WHERE written_code.c > 1000
ORDER BY c DESC LIMIT 500
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.