I've made some changes to (in my opinion) improve some of the limitations of git.
Tree Timestamp and Commit-information Changes
- Filenames are at last listed with "last modified" date/time, along with the commit details of their latest commit.
- The date and commit message of directories is set to the date/info of the latest changed file within the directory sub-tree.
- In tree view, directories are listed with a "/" after the name to emphasise that they are directories. Additionally, the meaningless 'size' value is suppressed. Executable files are displayed in red, and the now pointless display of mode/permissions has been removed.
General Changes
- Tree view is headed by a summary of the latest 15 commits relevant to the selected path - each clickable to see the full commit details. Additionally, when viewing a file under this view, each commit summary also contains lickable link to the file at the point of the specific commit.
- When manpages are displayed in tree-view, add an option to display the manpage properly rendered.
- Whilst the stupid "14 days ago" relative date is still displayed for recent changes, the absolute date is now always shown along side it, and not instead of it.
- Fixing the relative date so that it doesn't pluralise the singular number "1". E.G. (1 day or 1 minute etc. instead of 1 days or 1 minutes)
- repo index page ordering tidy-up, including removal of repo-name-search box, which is superfluous for so few repos.
- When cgit returns a "Failed to open xxxxx: No such file or directory" web-page, ensure that the HTTP status sent with this page is "404 Not Found"
- Text link format tweaks: On a text browser like "w3m", the padding css has no effect, so the text of multiple links next to each other rendered as one word. Simply add a space character before the link html.
- Added the ability to search for log messages by partial or complete commit hash.
- Added the ability to search for log messages "before" or "after" a specific date.
- Added to the menu a simple "up" link to go up a level to the parent directory.
- The addition of a "raw-log" section - analogous to "log", but showing results as plain text. This is quicker for browsing, and can also be used more conveniently to see updates from the command line (using fetch or curl etc.)
- In addition to the general repo access, also have separate sections for the most common branches, with branch-selection related clutter removed.
- On general repo index page, a clearer heading showing the currently selected branch.
- "Default tab" configuration option added, allowing the starting tab for a repo to be individually configured as an alternative to the default "summary" tab.
- Hovering over an authors name in "log view" or "refs view" pops up with the users email address.
- The page footer now also displays the time taken for the server to create the webpage.
- A quick link to the previous commit details is now displayed on the commit page.
- Improved the syntax of the "diffstat" option on the commit page, when the displayed diffstat is limited to a subset of the full commit.
- Improved functionality of the "prev" / "next" pager functions at the bottom of the "log" page.
- Added a "root-subtitle" configuration option to appear after (or below) the "root-title" heading.
