Feature #14818

Diff and Repository Navigation: include navigation when inside diffs (prev difference, next difference), etc.

Added by Friedrich Schiller about 4 years ago. Updated about 4 years ago.

Status:NewStart date:
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:SCM
Target version:-
Resolution:

Description

In diffs (and other places): include better navigation.

The benefit: one does not always have to move back to this page

Example:

The arrows should be links! Explanation:

It should also be easier to go to diffs from pages like this.

nav.PNG (19.6 KB) Friedrich Schiller, 2013-09-02 17:22

nav_expl.PNG (21.7 KB) Friedrich Schiller, 2013-09-02 17:22


Related issues

Related to Redmine - Feature #14816: Diff: in repository/diff - Include Links to repository/ch... New
Related to Redmine - Feature #14820: Repository: Show which rev introduced changes ("Last Chan... New

History

#1 Updated by Friedrich Schiller about 4 years ago

The image explanation, states in red: move diff-number forward.

This means: move to the next version that introduces an actual difference (don't blindly move to the next number).

#2 Updated by Friedrich Schiller about 4 years ago

Here's an example for determining revisions that actually introduce changes:
Consider Revision 516: 570 trunk/app/controllers/account_controller.rb

Here we should display the versions that introduced the actual differences...
Maby like this: Revision 514(516): 567(570) trunk/app/controllers/account_controller.rb

How do we determine 514 and 567?

When was trunk/app/controllers/account_controller.rb@ 516 last changed?

svn info http://svn.redmine.org/redmine/trunk/app/controllers/account_controller.rb@516 | grep -e "^Last Changed Rev: " | cut -c19-
...this gives us 514.

When was trunk/app/controllers/account_controller.rb@ 570 last changed?

svn info http://svn.redmine.org/redmine/trunk/app/controllers/account_controller.rb@570 | grep -e "^Last Changed Rev: " | cut -c19-
...this gives us 567.

Redmine should show which version introduced the changes.

To determine versions prior to 514 (that introduced changes) use:

svn log -q http://svn.redmine.org/redmine/trunk/app/controllers/account_controller.rb@514 -l 5 -r 513:1 | grep -E -e "^r[[:digit:]]+" -o | cut -c2-
...this gives us 333, 236, 200, 175, 167
(Note that -l 5 limits the output to 5 versions)

To determine versions after to 567 (that introduced changes) use:

svn log -q http://svn.redmine.org/redmine/trunk/app/controllers/account_controller.rb@567 -l 5 -r 568:HEAD | grep -E -e "^r[[:digit:]]+" -o | cut -c2-
...this gives us 600, 601, 622, 674, 760
(Note that -l 5 limits the output to 5 versions)

To determine versions between 514 and 567 (that introduced changes) use:

svn log -q http://svn.redmine.org/redmine/trunk/app/controllers/account_controller.rb@514 -l 5 -r 515:566 | grep -E -e "^r[[:digit:]]+" -o | cut -c2-
...this gives us "" (Empty output: thus there are no versions between 514 and 567 [that introduce changes]).

Thus any navigation should show us the versions that actually introduced changes. If we happen to land on a version that does not introduce changes, the put it in brackets and show that "Last Changed Rev".

#3 Updated by Friedrich Schiller about 4 years ago

Summary for the above: the changeset from 516: 570 is equivalent with the changeset 514: 567 (for path trunk/app/controllers/account_controller.rb)

#4 Updated by Toshi MARUYAMA about 4 years ago

  • Category set to SCM

#5 Updated by Toshi MARUYAMA about 4 years ago

  • Related to Feature #14816: Diff: in repository/diff - Include Links to repository/changes and repository/revisions added

#6 Updated by Toshi MARUYAMA about 4 years ago

  • Related to Feature #14820: Repository: Show which rev introduced changes ("Last Changed Rev") added

Also available in: Atom PDF