submodule.go 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. // Copyright 2014 The Gogs Authors. All rights reserved.
  2. // Use of this source code is governed by a MIT-style
  3. // license that can be found in the LICENSE file.
  4. package git
  5. import (
  6. "strings"
  7. "github.com/gogits/gogs/modules/setting"
  8. )
  9. type SubModule struct {
  10. Name string
  11. Url string
  12. }
  13. // SubModuleFile represents a file with submodule type.
  14. type SubModuleFile struct {
  15. *Commit
  16. refUrl string
  17. refId string
  18. }
  19. func NewSubModuleFile(c *Commit, refUrl, refId string) *SubModuleFile {
  20. return &SubModuleFile{
  21. Commit: c,
  22. refUrl: refUrl,
  23. refId: refId,
  24. }
  25. }
  26. // RefUrl guesses and returns reference URL.
  27. func (sf *SubModuleFile) RefUrl() string {
  28. if sf.refUrl == "" {
  29. return ""
  30. }
  31. url := strings.TrimSuffix(sf.refUrl, ".git")
  32. // git://xxx/user/repo
  33. if strings.HasPrefix(url, "git://") {
  34. return "http://" + strings.TrimPrefix(url, "git://")
  35. }
  36. // http[s]://xxx/user/repo
  37. if strings.HasPrefix(url, "http://") || strings.HasPrefix(url, "https://") {
  38. return url
  39. }
  40. // sysuser@xxx:user/repo
  41. i := strings.Index(url, "@")
  42. j := strings.LastIndex(url, ":")
  43. if i > -1 && j > -1 {
  44. // fix problem with reverse proxy works only with local server
  45. if strings.Contains(setting.AppUrl,url[i+1:j]) {
  46. return setting.AppUrl + url[j+1:]
  47. } else {
  48. return "http://" + url[i+1:j] + "/" + url[j+1:]
  49. }
  50. }
  51. return url
  52. }
  53. // RefId returns reference ID.
  54. func (sf *SubModuleFile) RefId() string {
  55. return sf.refId
  56. }
PANIC: session(release): write data/sessions/6/f/6fa5ca0bb926fdc4: no space left on device

PANIC

session(release): write data/sessions/6/f/6fa5ca0bb926fdc4: no space left on device
github.com/go-macaron/session@v0.0.0-20190805070824-1a3cdc6f5659/session.go:199 (0x8b2934)
gopkg.in/macaron.v1@v1.3.9/context.go:79 (0x83d0a0)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/context.go:112 (0x84fdb5)
gopkg.in/macaron.v1@v1.3.9/recovery.go:161 (0x84fda8)
gopkg.in/macaron.v1@v1.3.9/logger.go:40 (0x840c73)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:157 (0x80ab07)
github.com/go-macaron/inject@v0.0.0-20160627170012-d8a0b8677191/inject.go:135 (0x80a8a8)
gopkg.in/macaron.v1@v1.3.9/context.go:121 (0x83d1f8)
gopkg.in/macaron.v1@v1.3.9/router.go:187 (0x850fc6)
gopkg.in/macaron.v1@v1.3.9/router.go:303 (0x8493e5)
gopkg.in/macaron.v1@v1.3.9/macaron.go:220 (0x841fca)
net/http/server.go:2836 (0x7a79b2)
net/http/server.go:1924 (0x7a341b)
runtime/asm_amd64.s:1373 (0x46f9f0)