New Gerrit extension: Graph visualisation of change dependecies (GeDeGra)

798 views
Skip to first unread message

Matthias Schöpe

unread,
Mar 12, 2014, 12:24:37 PM3/12/14
to repo-d...@googlegroups.com
Hi,

We are currently developing a new extension for gerrit. Its purpose is to
visualise change dependencies in a graph.
The idea behind this is to simplify the process of finding the first
change that has to be accepted. Besides the graph visualisation gives a
good project overview at a glance.

We named our extension 'GeDeGra' which stands for 'Gerrit Dependency Graph'.

The version we publish here now is just a test version and doesn't have
all the features planned.

Implemented features:
- Access to the extension via Top Menu (All > Dependency Graph)
- Drawing a graph for all projects with a few interaction possibilities

Planned features:
- More interaction features wih the graph
- Proper standard layout for the visualisaton (Don't worry the current
representation will be revised)
- User editable limit of nodes to be drawn

The extension source is available here:
git clone git://git.informatik.uni-erlangen.de/GeDeGra

We would be glad about any feedback. If you have any comments or questions
regarding this extension do not hesitate to contact us!

The next version is planned to be published on friday.

This project is part of a practical course from the Friedrich-Alexander
University Erlangen-Nuernberg.

Regards,
the developers:
Matthias Schoepe <matthias...@fau.de>
Andreas Frembs <andreas...@fau.de>

Mark Derricutt

unread,
Mar 12, 2014, 5:46:24 PM3/12/14
to Matthias Schöpe, repo-d...@googlegroups.com
On 13 Mar 2014, at 5:24, Matthias Schöpe wrote:

> We named our extension 'GeDeGra' which stands for 'Gerrit Dependency
> Graph'.

Sounds nice - is there quick screnshot anywhere one can look at?

Mark

Matthias Schöpe

unread,
Mar 13, 2014, 3:35:25 AM3/13/14
to repo-d...@googlegroups.com, Matthias Schöpe
 Hi,

I made a screenshot of the current layout.
You can see some changes in there that have to be applied (the black ones). The green one is the current status of the git repository. Red ones are outdated.

We are currently enhancing the layout to prevent the overlapping like in the screenshot and adding some mouseover information about the changes.

Matthias
gedegra-example.png

Edwin Kempin

unread,
Mar 13, 2014, 4:09:11 AM3/13/14
to Matthias Schöpe, Repo and Gerrit Discussion
2014-03-13 8:35 GMT+01:00 Matthias Schöpe <matsc...@googlemail.com>:


On Wednesday, March 12, 2014 10:46:24 PM UTC+1, Mark Derricutt wrote:
On 13 Mar 2014, at 5:24, Matthias Schöpe wrote:

> We named our extension 'GeDeGra' which stands for 'Gerrit Dependency
> Graph'.
This is cool, are you are aware of the branch-network plugin [1]?
It is also able to render commits as a graph.
 

Sounds nice - is there quick screnshot anywhere one can look at?

Mark
 Hi,

I made a screenshot of the current layout.
Just looking at the screenshot, why do you have the initial commit at top?
Most git tools (git log on commandline, EGit History view, gitk, Related Changes tab on Gerrit's new ChangeScreen) sort commit the other way around, having the oldest commits at the bottom and the newest commit at top.
 
 
You can see some changes in there that have to be applied (the black ones). The green one is the current status of the git repository. Red ones are outdated.

We are currently enhancing the layout to prevent the overlapping like in the screenshot and adding some mouseover information about the changes.

Matthias

--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Luca Milanesio

unread,
Mar 13, 2014, 4:09:20 AM3/13/14
to Matthias Schöpe, repo-d...@googlegroups.com
Hi Matthias,
as the changes are effectively unnamed branches, why don't you reuse the rendering logic of the branch-network plugin ?

P.S. Or just enhance THAT plugin to display the changes as well :-)

Luca.

--
--
To unsubscribe, email repo-discuss...@googlegroups.com
More info at http://groups.google.com/group/repo-discuss?hl=en

---
You received this message because you are subscribed to the Google Groups "Repo and Gerrit Discussion" group.
To unsubscribe from this group and stop receiving emails from it, send an email to repo-discuss...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
<gedegra-example.png>

Matthias Schöpe

unread,
Mar 14, 2014, 9:02:33 AM3/14/14
to repo-d...@googlegroups.com

Hi,


Thanks for all your replies!

Just looking at the screenshot, why do you have the initial commit at top?


 You're right, most GIT tools show the dependencies the other way round. We decided to draw our graph starting from the top, because we are interested in the first change that has to be submitted. This is the one next to the GIT repository.
But as there are good arguments for both ways we added a button to easily reverse the graph (see screenshot). Thank you for that hint.

This is cool, are you are aware of the branch-network plugin?

 We also took a look at the branch-network plugin. It really has a cool rendering logic.
Unfortunately it is not easy to port our datastructures to this representation.
As we have planned to publish the final version today it wouldn't have been reasonable to reimplement it that way. We will keep it in mind for future projects.

As already announced we publish our final version today. We have implemented the following features:

- Access to the extension via Top Menu (All > Dependency Graph)
- Drawing a graph for all projects or just for a selected project
- Redirection to changes on click
- Basic information about a change on mouseover
- Reverse button to reverse graph order (see above)
- Nicer standard layout for the graphs
To provide a quick overview we attached some screenshots here.

The source of the new version is again available here:

git clone git://git.informatik.uni-erlangen.de/GeDeGra

We would be glad about any feedback. If you have any comments or questions
regarding this extension or spot any bugs do not hesitate to contact us!



Regards,
the developers:
Matthias Schoepe <matthias...@fau.de>
Andreas Frembs <andreas...@fau.de>

P.S. Is there some sort of official plugin/extension list for Gerrit where we can publish our project?
gedegra-1-mouseover.png
gedegra-2-zoom-and-reverse.png
Reply all
Reply to author
Forward
0 new messages