Multiple GitGraph improvements: Exclude PR heads, Add branch/PR links, Show only certain branches, (#12766)
* Multiple GitGraph improvements. Add backend support for excluding PRs, selecting branches and files. Fix #10327 Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * Only show refs in dropdown we display on the graph Signed-off-by: Andrew Thornton <art27@cantab.net> * as per @silverwind Signed-off-by: Andrew Thornton <art27@cantab.net> * use flexbox for ui header Signed-off-by: Andrew Thornton <art27@cantab.net> * Move Hide Pull Request button to the dropdown Signed-off-by: Andrew Thornton <art27@cantab.net> * Add SHA and user pictures Signed-off-by: Andrew Thornton <art27@cantab.net> * fix test Signed-off-by: Andrew Thornton <art27@cantab.net> * fix test 2 Signed-off-by: Andrew Thornton <art27@cantab.net> * fixes * async * more tweaks * use tabs in tmpl Signed-off-by: Andrew Thornton <art27@cantab.net> * remove commented thing Signed-off-by: Andrew Thornton <art27@cantab.net> * fix linting Signed-off-by: Andrew Thornton <art27@cantab.net> * Update web_src/js/features/gitgraph.js Co-authored-by: silverwind <me@silverwind.io> * graph tweaks * more tweaks * add title Signed-off-by: Andrew Thornton <art27@cantab.net> * fix loading indicator z-index and position Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: techknowlogick <techknowlogick@gitea.io> Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
parent
d4e0b28655
commit
c05a8abc76
21 changed files with 588 additions and 126 deletions
|
@ -4,6 +4,8 @@
|
|||
|
||||
package git
|
||||
|
||||
import "strings"
|
||||
|
||||
// Reference represents a Git ref.
|
||||
type Reference struct {
|
||||
Name string
|
||||
|
@ -16,3 +18,44 @@ type Reference struct {
|
|||
func (ref *Reference) Commit() (*Commit, error) {
|
||||
return ref.repo.getCommit(ref.Object)
|
||||
}
|
||||
|
||||
// ShortName returns the short name of the reference
|
||||
func (ref *Reference) ShortName() string {
|
||||
if ref == nil {
|
||||
return ""
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/heads/") {
|
||||
return ref.Name[11:]
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/tags/") {
|
||||
return ref.Name[10:]
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/remotes/") {
|
||||
return ref.Name[13:]
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/pull/") && strings.IndexByte(ref.Name[10:], '/') > -1 {
|
||||
return ref.Name[10 : strings.IndexByte(ref.Name[10:], '/')+10]
|
||||
}
|
||||
|
||||
return ref.Name
|
||||
}
|
||||
|
||||
// RefGroup returns the group type of the reference
|
||||
func (ref *Reference) RefGroup() string {
|
||||
if ref == nil {
|
||||
return ""
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/heads/") {
|
||||
return "heads"
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/tags/") {
|
||||
return "tags"
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/remotes/") {
|
||||
return "remotes"
|
||||
}
|
||||
if strings.HasPrefix(ref.Name, "refs/pull/") && strings.IndexByte(ref.Name[10:], '/') > -1 {
|
||||
return "pull"
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue