Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 425243

Summary: Add a History View
Product: [ECD] Orion Reporter: Matthias Sohn <matthias.sohn>
Component: GitAssignee: Project Inbox <orion.git-inbox>
Status: RESOLVED WONTFIX QA Contact:
Severity: enhancement    
Priority: P3 CC: antonm, john.arthorne, ken_walker, maciej.bendkowski
Version: 4.0   
Target Milestone: ---   
Hardware: All   
OS: All   
Whiteboard:
Bug Depends on:    
Bug Blocks: 425233    

Description Matthias Sohn CLA 2014-01-09 19:09:38 EST
In a Gerrit workflow typically many local branches are used for independent changes which are in review independently. Over time some of the changes get revised to address review comments others get submitted and the upstream remote branch is evolving. Also local branches maybe rebased repeatedly onto the evolving remote tracking branch they are aiming for. In order to understand this we need a way to visualize the topology of the version graph including commits and branches (local and remote tracking) and tags referencing these commits.

So we should add a new history view similar to "git log --graph" or egit's history view.
Comment 1 John Arthorne CLA 2014-01-10 10:14:29 EST
So Orion has a log view today, but it shows one branch at a time. The difference here is you want to see the history of multiple branches woven together right? Adding a graphical view would be nice but that is a big piece to implement.
Comment 2 Matthias Sohn CLA 2014-01-10 10:59:56 EST
I am aware of that this is a lot of work, and we will not tackle this first ;-)

In a Gerrit workflow developers switch between different changes in review pretty frequently and usually these different changes are based on different base versions depending on when these changes have been started. All these local branches track the same remote tracking branch because they all aim to be merged into the upstream master branch.

I think in order to understand the relationship between origin/master and a couple of local branches used to track changes in review a graphical view would be very helpful. Currently the Orion git UI has no way to show how more than one branch are interconnected. Since changes which have been pushed to Gerrit for review don't immediately reach origin/master they won't disappear from the list of commits to be pushed in Orion.
Comment 3 Maciej Bendkowski CLA 2014-01-24 11:40:20 EST
Having a nice, visual commit graph would be certailny a great improvement. AFAIK, the biggest piece of coding here would be to utilize some sort of javascript graph plotting library, e. g. d3 (https://github.com/mbostock/d3). 

I'm more concerned with designing a clean and easy to use web UI for commit trees (or even more complicated graphs). On one hand, commit details should link to specific git pages and provide a subset of related commands, but on the other hand, in case of a more complicated graph the view will quickly get too dense. Adding Anton on CC, perhaps he has some ideas.
Comment 4 Matthias Sohn CLA 2014-02-08 19:35:44 EST
(In reply to Maciej Bendkowski from comment #3)
> Having a nice, visual commit graph would be certailny a great improvement.
> AFAIK, the biggest piece of coding here would be to utilize some sort of
> javascript graph plotting library, e. g. d3
> (https://github.com/mbostock/d3). 
> 
> I'm more concerned with designing a clean and easy to use web UI for commit
> trees (or even more complicated graphs). On one hand, commit details should
> link to specific git pages and provide a subset of related commands, but on
> the other hand, in case of a more complicated graph the view will quickly
> get too dense. Adding Anton on CC, perhaps he has some ideas.

I think we could implement a view similar to the one in gitblit

here an example on the gitblit demo server:
https://next-gitblit.rhcloud.com/log/mirrors!jgit.git

we could add a context menu on the selected commit to expose the related commands
Comment 5 Maciej Bendkowski CLA 2014-02-10 06:58:07 EST
(In reply to Matthias Sohn from comment #4)
> I think we could implement a view similar to the one in gitblit

Looks good to me. Such a representation does not produce much UI noise, thus would be a nice enhancment on the git log page.
Comment 6 John Arthorne CLA 2015-05-05 14:42:26 EDT
Closing as part of a mass clean up of inactive bugs. Please reopen if this problem still occurs or is relevant to you. For more details see:

https://dev.eclipse.org/mhonarc/lists/orion-dev/msg03444.html