summaryrefslogtreecommitdiffstats
path: root/src/main/resources
Commit message (Collapse)AuthorAgeFilesLines
* Remove "folding outlines" and sort repositories before subfolders.Florian Zschocke2019-06-151-0/+1
| | | | | | | | Remove guard rails at the left to get a cleaner look. To make it easier to determine which repositories belong to which folder, display the repositories first, then the subfolder. Decreased indentation a little.
* Add support nested groups on the Repositories pageFlorian Zschocke2019-06-151-8/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix for #725. Also covers #527. This is a squashed commit of the following commits, merging and closing pull request #1267: commit 55fee41769ffab1aff59344fe117d481687aa743 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 17:19:53 2017 +0100 declared local variable final to fix travis build commit 131e4d14a48c2a3fdce621fa54637de50684d040 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 14:11:55 2017 +0100 fix formatting (use tab for identation) commit 8da5f6d5967894f157251c320928acdab3a451e7 Author: Martin Spielmann <mail@martinspielmann.de> Date: Mon Nov 6 13:45:39 2017 +0100 Add repositoryListType tree. Addresses #725, 527 and includes #1224 commit 6c061651fb95212ae242dbca06c8d9ef80146201 Merge: f365daa3 40ee9653 Author: Martin Spielmann <mail@martinspielmann.de> Date: Sat Nov 4 13:19:08 2017 +0100 Merge remote-tracking branch 'collapsible/ticket/527' into 725_nested_repos commit f365daa3b1d6be135365f9b11bdece320beabf4e Author: Martin Spielmann <mail@martinspielmann.de> Date: Sat Nov 4 13:10:24 2017 +0100 first working version of tree model
* collapsible group repositoriesybosy2019-06-151-0/+32
|
* Prevent last column on Tree page from wrapingJan Breuer2017-02-201-0/+1
| | | | | With localizations, there can be longer text then 13em so there is a line break. This fix prevent this line breaking and thus every line has normal height again.
* Fix disabled links in PagerPanelTom2016-10-311-0/+25
| | | | | | | | | | | Disabled links in the PagerPanel (used on the LuceneSearchPage to page through search results) were only rendered as "disabled". The links themselves remained active, which gives strange effects when clicked. For instance it was possible to move to result pages -1, -2, and so on. Really disable the links. Add missing CSS rules to have correct styling as Wicket renders disabled links as spans, not anchors. Include the new CSS file in BasePage.html. And add the left/right arrows only if not on the first/last page.
* Merge pull request #1055 from gitblit/1048-TicketReferencesPaul Martin2016-06-181-0/+15
|\ | | | | Ticket Reference handling #1048
| * Ticket Reference handling #1048Paul Martin2016-04-271-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | + Supports referencing: + Tickets from other tickets via comments + Tickets from commits on any branch + Common TicketLink class used for both commits and tickets + TicketLink is temporary and persisted to ticket as a Reference + Support deletion of ticket references + Rebasing patchsets/branches will generate new references + Deleting old patchsets/branches will remove the relevant references + Substantial testing of use cases + With and without patchsets, deleting, amending + BranchTicketService used during testing to allow end-to-end ref testing + Relocated common git helper functions to JGitUtils
* | Fixes #1062 - Upgraded to Prosemirror 0.6.1Paul Martin2016-04-291-10/+10
|/
* Fixes #1028 - FilestorePage now pages and filtersPaul Martin2016-04-081-0/+27
|
* Fix for #962 - Delete patchset abilityPaul Martin2016-04-061-0/+5
|
* Fix for #1042 - Filestore items now shown as iconsPaul Martin2016-04-061-0/+4
|
* Updating ProseMirror to 0.4.0Paul Martin2016-03-271-10/+10
|
* Document edit capability via ProseMirror submodule #974Paul Martin2016-03-2710-44/+292
| | | | | | | | | | | | + New docEdit page with links from docPage and docList + Bespoke menu system with full screen edit mode + npm required for building client side scripts + Ant script added for BuildUI which performs npm commands + Update font-awesome to 4.5.0 + Factor out to JGitUtils common code in BranchTicketService for EditFilePage + getTreeEntries + commitIndex + Merge capability for document editing
* Fix for #976 - Filestore links via browserPaul Martin2015-12-251-0/+6
| | | | | | | | | | | | | + GitLFS client support + FilestoreModel now parses meta file + Read meta heading from cache if available + Authentication based on accept headers for browser view filestore login + PathModel & PathChangeModel now understands filestore items + Zip & Rar downloads contain include filestore items + Filestore servlet returns LFS JSON error only if accepted by client + DiffStat now knows repository to allow identification of filestore items + Filestore items identified and returned via view, raw & blob links on blame, commitDiff, commit and Tree pages
* Git-LFS supportPaul Martin2015-10-101-1/+15
| | | | | | | | | | | | | | + Metadata maintained in append-only JSON file providing complete audit history. + Filestore menu item + Lists filestore items + Current size and availability + Link to GitBlit Filestore help page (top right) + Hooks into existing repository permissions + Uses default repository path for out-of-box operation with Git-LFS client + accessRestrictionFilter now has access to http method and auth header + Testing for servlet and manager
* provide spacing on the projects page listingJoel Johnson2015-07-021-1/+5
| | | | | | | | | | The projects page was showing the project listing directly under the navbar with no spacing. This adds spacing to have the elements offset. The table is showing using the common "repositories" class, however it can't be changed directly since several other table displays use the same class, and have adequate top margin spacing. We create a new class for the one-off use on the projects page.
* Add a blink comparator and pixel difference to image diffsTom2014-11-193-1/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | Pixel difference uses CSS mix-blend-mode, which is supported currently only on Firefox >= 32 and on Safari >= 7.1. Implementation is behind a Javascript feature test. For other browsers, there's a blink comparator. Code changes: * ImageDiffHandler now takes the page it's used on as argument. We need that to get labels. DOM generated is a little bit different (new controls). * Diff pages adapted to new constructor of ImageDiffHandler. * CSS and Javascript changes implementing the new controls, making use of two new static image resources. Since I felt that the new controls deserved tooltips, I also gave the opacity slider a tooltip: changed to <a>, and slider handle changed from <div> to <span>. CSS ensures everything still displays the same (basically display:inline-block). * Supplied messages for English, French, and German for the new tooltips. Tested on IE8, Safari 6.1.6 & 7.1, Chrome 38, FF 33.1 & FF 3.6.13
* IE < 10 does not support gradients.Tom2014-11-171-15/+25
| | | | | | | | | | | | | | | | | | Since the new imgdiff UI heavily used gradients, this leaves IE9 and IE8 users with a complete disfunctional UI. Replaced all gradients by simpler means: * Vertical handle: instead of 2px wide gradient, use a 1px background and a white border-right * Opacity slider: No gradient but a simple border and background-color * All radial-gradients replaced by small pre-computed PNGs * Checkerboard background done with a small repeated PNG With these changes, the imgdiff UI is fully functional even in IE 8. Visual changes in other browsers are barely discernible.
* Javascript-based sliders styled with CSSTom2014-11-141-70/+97
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This works better for small images. The previous CSS-resize based attempt worked reasonably well, but had two problems on WebKit (Safari): 1. For very small images the red resize handle would overlap the image itself. In that case, the image became un-draggable as soon as the opacity was reduced below 1.0. 2. Safari apparently doesn't send mousemove events during a CSS resize, so the opacity was changed only on mouseup. Both observed on Safari 6.1.6 and 7.1. FF 33.1 had no problems. Therefore I've switched to a Javascript slider. Since I didn't find any that was simple, did not require HTML 5, appeared to be well maintained, had a bug tracker and not too many outstanding bug reports, didn't pull in umpteen other dependencies, didn't suffer from feature bloat, was compatible with jQuery 1.7.1, and was freely licensed, I ended up writing my own. imgdiff.js contains a small Javascript slider (only horizontal) that is styled completely in CSS. It reports ratios in the range [0..1] and fires nice jQuery events 'slider:pos' on value changes. Base element is a plain div that is positioned. It's not a general-purpose do-it-all slider, but it's small, simple, and works for what we need it. (imgdiff.js also sets up the ese sliders on the diff pages.)
* Fix that opacity sliderTom2014-11-131-18/+34
| | | | | | | Using the browser's built-in slider doesn't work if the browser hides scrollbars (like Firefox on Mac). So,construct our own slider with three divs and some CSS. Event-handling Javascript changed to match this new implementation.
* Opacity adjustments for image diffsTom2014-11-121-1/+30
| | | | | | | | * ImageDiffHandler adds the slider; styled in gitblit.css * imgdiff.js is a little bottom-loaded Javascript that adjusts the opacity on sliders' scroll events. * The three diff pages add this bottom script to the page if needed * GitBlitDiffFormatter: center image diffs.
* Image diffsTom2014-11-111-0/+60
| | | | | | | | | | | | | | | | | | | | | | | | Ticket 88: https://dev.gitblit.com/tickets/gitblit.git/88 Based on Lea Verou's pure CSS slider: http://lea.verou.me/2014/07/image-comparison-slider-with-pure-css/ * Add a callback interface, pass it through DiffUtils to the GitBlitDiffFormatter. Is needed because the rendering needs access to the repositoryName and other things that are known only at higher levels. * New class ImageDiffHandler responsible for rendering an image diff. Called for all binary diffs, doesn't do anything if it's not an image. HTML is generated via JSoup: no worries about forgetting to close a tag, not about HTML escaping, nor about XSS. * The 3 diff pages set up such an ImageDIffHandler and pass it along. * CSS changes: from Lea Verou, with some minor improvements. I think in the long run there'll be no way around rewriting the HTML diff formatter from scratch, not using the standard JGit DiffFormatter at all.
* Add min-width in .diff-line CSSTom2014-11-061-0/+1
| | | To ensure the line number columns never get squashed.
* CSS changes.Tom2014-11-061-4/+4
| | | | | | | | | | - As discussed: - gutter a little lighter, context lines nearly but not quite white. - 2px left (and right) padding in the code column. - I also noticed that somehow all lines were spaced vertically a little wider than on dev.gitblit. Added cellpadding='0' to get the old line height again.
* Further diff improvementsTom2014-11-061-0/+8
| | | | - Add the new settings to gitblit.properties - Highlight trailing whitespace
* Improve the commitdiff.Tom2014-11-061-43/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Optimize CSS: simplify selectors. That alone cuts rendering time in half! * Adapt HTML generation accordingly. * Change line number generation so that one can select only code lines. Also move the +/- out of the code column; it also gets in the way when selecting. * Omit long diffs altogether. * Omit diff lines for deleted files, they're not particularly interesting. * Introduce a global limit on the maximum number of diff lines to show. * Supply translations for the languages I speak for the new messages. https://code.google.com/p/gitblit/issues/detail?id=450 was about a diff with nearly 300k changed lines (with more then 3000 files deleted). But one doesn't have to have such a monster commit to run into problems. My FF 32 become unresponsive for the 30+ seconds it takes it to render a commitdiff with some 30000 changed lines. (90% of which are in two generated files; the whole commit has just 20 files.) GitHub has no problems showing a commitdiff for this commit, but omits the two large generated files, which makes sense. This change implements a similar thing. Files with too many diff lines get omitted from the output, only the header and a message that the diff is too large remains. Additionally, there's a global limit on the length of a commitdiff; if we exceed that, the whole diff is truncated and the files not shown are listed. The CSS change improves performance by not using descendant selectors for all these table cells. Instead, we assign them precise classes and just use that in the CSS. The line number generation thing using data attributes and a :before selector in the CSS, which enables text selections only in the code column, is not strictly XHTML 1.0. (Data attributes are a feature of HTML 5.) However, reasonably modern browsers also handle this correctly if the page claims to be XHTML 1.0. Besides, the commitdiff page isn't XHTML compliant anyway; I don't think a pre-element may contain divs or even tables. (Note that this technique could be used on other diff pages, too. For instance on the blame page.)
* Integrate GitHub OcticonsJames Moger2014-10-239-3/+911
|
* Fix critical severity dot positioningJames Moger2014-10-211-1/+1
|
* Remove S# text, set severity in tooltipJames Moger2014-10-211-5/+5
|
* Adjust priority & severity CSSJames Moger2014-10-211-16/+21
| | | | | | | | - Severity: more severe are ROY, less severe are GB - Replaced first-letter of severity with S# and show # dots - Priority: higher priorityare RO, lower priority is B I really like the 'C, 'CA' idea but that will definitely lead to translation questions. The S# approach will still generate the same complaints, but at least it is more generic.
* Tickets - Priority, Severity optionsPaul Martin2014-10-201-1/+73
| | | | | | | | | + Severity indicated via new character indicator and color of ticket icon on ticket list + Priority indicated via new priority icon and color on ticket list + Indexed as integers to provide sorting and maintain language neutral index + Colours and indicator text controlled through CSS classes priority-<x> & severity-<x> + UITicketTest created to generate tickets of all types to ease debugging
* Added TortoiseGit to the clientappspbe2014-05-051-0/+0
|
* Switch to self-hosted flotr2 graphs from Google Chartstryan2014-04-092-0/+31
|
* Add setting to hide the navbar for those embedding GitblitJames Moger2014-03-051-0/+7
|
* Implement user "disabled" flag as an alternative to deleting the accountJames Moger2014-03-041-1/+6
|
* Lower opacity for merge commit short messages in the log panelJames Moger2014-03-031-1/+9
|
* Ticket tracker with patchset contributionsJames Moger2014-03-032-5/+409
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A basic issue tracker styled as a hybrid of GitHub and BitBucket issues. You may attach commits to an existing ticket or you can push a single commit to create a *proposal* ticket. Tickets keep track of patchsets (one or more commits) and allow patchset rewriting (rebase, amend, squash) by detecing the non-fast-forward update and assigning a new patchset number to the new commits. Ticket tracker -------------- The ticket tracker stores tickets as an append-only journal of changes. The journals are deserialized and a ticket is built by applying the journal entries. Tickets are indexed using Apache Lucene and all queries and searches are executed against this Lucene index. There is one trade-off to this persistence design: user attributions are non-relational. What does that mean? Each journal entry stores the username of the author. If the username changes in the user service, the journal entry will not reflect that change because the values are hard-coded. Here are a few reasons/justifications for this design choice: 1. commit identifications (author, committer, tagger) are non-relational 2. maintains the KISS principle 3. your favorite text editor can still be your administration tool Persistence Choices ------------------- **FileTicketService**: stores journals on the filesystem **BranchTicketService**: stores journals on an orphan branch **RedisTicketService**: stores journals in a Redis key-value datastore It should be relatively straight-forward to develop other backends (MongoDB, etc) as long as the journal design is preserved. Pushing Commits --------------- Each push to a ticket is identified as a patchset revision. A patchset revision may add commits to the patchset (fast-forward) OR a patchset revision may rewrite history (rebase, squash, rebase+squash, or amend). Patchset authors should not be afraid to polish, revise, and rewrite their code before merging into the proposed branch. Gitblit will create one ref for each patchset. These refs are updated for fast-forward pushes or created for rewrites. They are formatted as `refs/tickets/{shard}/{id}/{patchset}`. The *shard* is the last two digits of the id. If the id < 10, prefix a 0. The *shard* is always two digits long. The shard's purpose is to ensure Gitblit doesn't exceed any filesystem directory limits for file creation. **Creating a Proposal Ticket** You may create a new change proposal ticket just by pushing a **single commit** to `refs/for/{branch}` where branch is the proposed integration branch OR `refs/for/new` or `refs/for/default` which both will use the default repository branch. git push origin HEAD:refs/for/new **Updating a Patchset** The safe way to update an existing patchset is to push to the patchset ref. git push origin HEAD:refs/heads/ticket/{id} This ensures you do not accidentally create a new patchset in the event that the patchset was updated after you last pulled. The not-so-safe way to update an existing patchset is to push using the magic ref. git push origin HEAD:refs/for/{id} This push ref will update an exisitng patchset OR create a new patchset if the update is non-fast-forward. **Rebasing, Squashing, Amending** Gitblit makes rebasing, squashing, and amending patchsets easy. Normally, pushing a non-fast-forward update would require rewind (RW+) repository permissions. Gitblit provides a magic ref which will allow ticket participants to rewrite a ticket patchset as long as the ticket is open. git push origin HEAD:refs/for/{id} Pushing changes to this ref allows the patchset authors to rebase, squash, or amend the patchset commits without requiring client-side use of the *--force* flag on push AND without requiring RW+ permission to the repository. Since each patchset is tracked with a ref it is easy to recover from accidental non-fast-forward updates. Features -------- - Ticket tracker with status changes and responsible assignments - Patchset revision scoring mechanism - Update/Rewrite patchset handling - Close-on-push detection - Server-side Merge button for simple merges - Comments with Markdown syntax support - Rich mail notifications - Voting - Mentions - Watch lists - Querying - Searches - Partial miletones support - Multiple backend options
* Add the No Docs page if there are no root documentsJames Moger2014-03-011-0/+12
|
* Show "Displayname (username)" in palettes for edit team and repository pagesAlfred Schmid2014-02-191-0/+5
|
* Add FontAwesome dependencyJames Moger2013-12-306-0/+418
| | | | Change-Id: I2dc302fea7a7cd21d4569e835ed987748ff8938b
* Add support for per-repository bugtraq configurationJames Moger2013-12-031-0/+4
| | | | | | | | | | | | | | | | | | | Imported the reference implementation contributed by syntevo which is used in their SmartGit product. You may create a bugtraq config section inf your .git/config file OR you may add a .gitbugtraq file to the root of your repository. Example: [bugtraq "issues"] url = http://code.google.com/p/gitblit/issues/detail?id=%BUGID% logRegex = "[Ii]ssue[-#:\\s]{1}\\d+" logRegex1 = "\\d+" [bugtraq "[pullrequests"] url = "https://github.com/gitblit/gitblit/pull/%BUGID%" logRegex = "(?:pull request|pull|pr)\\s*[-#]?([0-9]+)" Change-Id: Iaba305bf4280d08cc4d1abf533c2f1365470a43f
* Add coloring modes to the blame page (issue-2, pull request #125)Alex Lewis2013-12-021-1/+20
| | | | | | | | | Blame output is now colored according to Commit (default), Author or Age. Both Commit and Author output uses random colors whereas Age uses a single color with varying tints applied to indicate the age. White indicates the eldest commit with the tint darkening as the commits get younger. Change-Id: I045458329af4765e91d5829ce3e8d28e21eeb66e
* Display common repository documents as tabs on the docs pageJames Moger2013-11-141-7/+62
| | | | Change-Id: I6935fa45598da847936748b474a3da47e94efaac
* Implement mirror executor (issue-5)James Moger2013-11-131-0/+0
| | | | | | | | | | | | | | | | | | | | | | | | | The mirror executor will fetch ref updates for repository mirrors. This feature is disabled by default and can be enabled by setting git.enableMirroring=true. The period between update checks is configurable, but it is global. An individual rpeository may not set it's own update schedule. Requirements: 1. you must manually clone the repository using native git git clone --mirror git://somewhere.com/myrepo.git 2. the "origin" remote must be the mirror source 3. the "origin" repository must be accessible without authentication OR the credentials must be embedded in the origin url (not recommended) Notes: 1. "origin" SSH urls are untested and not likely to work 2. mirrors cloned while Gitblit is running are likely to require clearing the gitblit cache (link on the repositories page of an administrator account) 3. Gitblit will automatically repair any invalid fetch refspecs with a "//" sequence. Change-Id: I4bbe3fb2df106366ae4c2313596d0fab0dfcac46
* Refactor markup processing in preparation for supporting other formatsJames Moger2013-11-121-0/+23
| | | | Change-Id: I0eb217064abc4f4b0f6bfbbc21302c470cc2f9c6
* DocumentationJames Moger2013-10-251-3/+3
| | | | Change-Id: I717e13d1f852a4adf50b547f4769dd62da2384ce
* Remove emphasis coloring in markdown divJames Moger2013-10-251-4/+0
| | | | Change-Id: Ie81e94546868a4a16c302ed0b283ac86d3491276
* Support for intra-Markdown linking using [[WikiLinks]] syntax (issue-324)James Moger2013-10-251-9/+8
| | | | | | | | | All WikiLinks must be specified relative to the root of the repository. The displayed link text is stripped to just the document name. Spaces in the document name are replaced with '-' characters; this is consistent with wiki syntax and Github. Change-Id: Id3fb1b5441352d9bacc4993a5b85882db113693b
* Fix incorrect mappings for some iconic classesJames Moger2013-10-011-4/+4
| | | | Change-Id: Ieeb7159768453a17b01b8e2a59289b256c6c3492
* Tweak diffstat cssJames Moger2013-10-011-2/+2
| | | | Change-Id: I0f6551bb7ca2f9b8908e95359b375c23daeab380