Compare commits

..

1344 Commits

Author SHA1 Message Date
JSS
df467d8ff1 Fix git reset --end-of-options error on file upload and edit (#8184) 2026-02-18 19:04:31 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
36d56d5525 all: rename packages ending with "util" to end with "x" (#8182)
Co-authored-by: JSS <jss@unknwon.dev>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 13:25:19 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
5f17b670b3 docker: pin Go 1.26 in builder stage images (#8180)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 23:44:13 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ea682c5bbc all: upgrade to Go 1.26 (#8179)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 23:31:14 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
9001a68cdd js: use safe DOM construction for milestone and assignee selection (#8178)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-13 23:24:52 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
295bfba729 context: reject access tokens passed via URL query parameters (#8177) 2026-02-13 15:27:48 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ac21150a53 template: escape untrusted names in locale strings piped through Safe (#8176)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-12 21:42:23 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
a000f0c7a6 database: use safe git-module API for tag deletion (#8175)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-12 21:24:44 -05:00
Joe Chen
a976fd2f9c chore: minor case fixup
[skip ci]
2026-02-12 21:09:36 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
441c64d7bd markup: restrict data URI scheme to safe image MIME types (#8174)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 22:26:31 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
5c67d47512 database: remove MSSQL backend support (#8173) 2026-02-10 18:41:31 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
94d6e53dc2 email: replace gomail with go-mail (#8164)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-10 17:44:01 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
a1fa62b270 all: decouple API types from go-gogs-client SDK (#8171)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-02-10 10:56:17 -05:00
Copilot
317e28b908 Remove non-existent README_ZH.md from release workflow (#8170)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-02-09 09:22:24 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
069d3535d6 chore: fix broken links to gogs.io (#8169) 2026-02-09 09:09:59 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
81ee883644 lfs: verify content hash and prevent object overwrite (#8166)
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2026-02-08 17:14:12 -05:00
Copilot
400ae7bd28 Add CLI reference doc page under advancing and normalize gogs command references (#8165)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-02-08 10:18:41 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
630ae0b3b0 cmd: migrate from urfave/cli v1 to v3 (#8160) 2026-02-08 00:58:05 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
3c358ede6d all: migrate from json-iterator to encoding/json (#8159) 2026-02-08 00:34:36 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
48500aa2b0 all: migrate from satori/go.uuid to google/uuid (#8161) 2026-02-08 00:13:43 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
785157ba1f all: migrate from nfnt/resize to golang.org/x/image/draw (#8158) 2026-02-08 00:08:50 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
1c8016a27b database/schemadoc: migrate to github.com/DATA-DOG/go-sqlmock (#8157) 2026-02-08 00:07:45 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
00c36d8d8a public: update jQuery from 3.6.0 to 3.7.1 (#8156) 2026-02-07 23:48:49 -05:00
Copilot
3747cd9058 Fix broken links in docs/getting-started/introduction.mdx (#8155)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
2026-02-07 18:19:02 -05:00
Joe Chen
08e7cfd76c docs: fix up wwads-cn style in dark mode
[skip ci]
2026-02-07 17:49:58 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
9dd3e58f7b docs: migrate to Mintlify (#8154) 2026-02-07 17:32:52 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
edc1478f6b cmd: remove cert subcommand (#8153)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 14:23:33 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
bb86d12c36 cmd: show detected config path in web command help (#8152)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-07 13:38:53 -05:00
Copilot
bf17cc6c69 Replace github.com/unknwon/com with stdlib and internal helpers (#8148)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-05 22:08:54 -05:00
Copilot
6d56105f8f Run modernize tool across codebase (#8147)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2026-02-05 21:32:09 -05:00
Joe Chen
ed5d02e036 chore: free up "docs/" subdir for Mintlify
[skip ci]
2026-02-01 23:15:47 -05:00
dependabot[bot]
5874791a57 mod: bump golang.org/x/crypto from 0.45.0 to 0.47.0 (#8141)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 09:20:24 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
17ad3d3425 pkgr: fix up install main package path (#8146) 2026-02-01 09:12:12 -05:00
dependabot[bot]
9b2a967e45 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.6.3 to 2.6.4 (#8143)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 09:01:09 -05:00
dependabot[bot]
e80635a449 mod: bump github.com/go-ldap/ldap/v3 from 3.4.11 to 3.4.12 (#8144)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 09:00:50 -05:00
Joe Chen
47bccf292d pkgr: fix up install path
[skip ci]
2026-02-01 08:53:52 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
38def73489 Update security policy for version support and advisories
[skip ci]
2026-02-01 08:16:22 -05:00
Copilot
6cf6422b88 Remove codecov config and upload in CI (#8145)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: unknwon <2946214+unknwon@users.noreply.github.com>
2026-02-01 08:10:55 -05:00
dependabot[bot]
8d8d66ec1d mod: bump github.com/olekukonko/tablewriter from 1.1.0 to 1.1.3 (#8140)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-01 07:45:08 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
7ea2c4093f refactor: move main package from root to cmd/gogs (#8139)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 23:28:48 -05:00
dependabot[bot]
7ebfb202e4 mod: bump github.com/olekukonko/tablewriter from 0.0.5 to 1.1.0 (#8039)
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 23:11:08 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
7b8c560f15 ci(go): use tparse for test output in non-Windows jobs (#8138)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:58:41 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
a636dcf678 fix(release): remove "v" prefix from archive names (#8137)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:42:45 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
3dcb74be39 release: cut CHANGELOG entries for 0.14.1
[skip ci]
2026-01-31 22:23:09 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
7ad425025e fix(ssh): git clone via built-in SSH server hangs (#8135)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:20:43 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
85abee4b9b chore: update release templates (#8134)
[skip ci]
2026-01-31 20:08:38 -05:00
Joe Chen
997c3c5eab chore: take care of legacy code 2026-01-31 20:07:49 -05:00
Joe Chen
a5ddb2665e chore: bump dev version to 0.15
[skip ci]
2026-01-31 20:04:55 -05:00
Joe Chen
b68e6886c6 release: cut CHANGELOG entries for 0.14.0
[skip ci]
2026-01-31 16:29:15 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ac7ba9c8a7 locale: sync from Crowdin (#8131) 2026-01-31 16:07:47 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
dd862ee058 ci(docker): auto-tag minor version for stable releases (#8129)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 15:50:42 -05:00
Joe Chen
f94042ce6f chore: update release templates
[skip ci]
2026-01-31 15:17:59 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
628216d588 security: require authentication for attachment uploads (#8128)
https://github.com/gogs/gogs/security/advisories/GHSA-fc3h-92p8-h36f

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 14:40:39 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
7306b955a9 ci: use external unknwon/send-email-on-failure action (#8127) 2026-01-31 13:29:30 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
fc6d1e2055 ci(release): add email notification on failure for main branch (#8126)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 13:13:51 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
3b01892d85 fix(docker): correct binary path in Dockerfiles(#8125)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 13:02:25 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
7b7e38c880 security: prevent deletion of protected and default branches via web UI (#8124)
https://github.com/gogs/gogs/security/advisories/GHSA-2c6v-8r3v-gh6p

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:51:07 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
bb68c0a042 security: fix cross-repository label modification vulnerability (#8123)
https://github.com/gogs/gogs/security/advisories/GHSA-cv22-72px-f4gh

Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 12:28:30 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
68271e6af0 chore: update vulnerability reporting guidelines
[skip ci]
2026-01-31 12:01:23 -05:00
Copilot
4f5b00f8c4 Build artifacts for every commit on main (#8122)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 11:58:45 -05:00
Joe Chen
5d3ffd132b chore: bunch of minor tidy-ups
[skip ci]
2026-01-31 09:59:32 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ee65aa89ca ci: add cross-compilation workflow for releases (#8121)
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 09:40:32 -05:00
dependabot[bot]
a1a97de76f mod: bump modernc.org/sqlite from 1.38.2 to 1.39.0 (#8038)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-30 23:19:19 -05:00
Matthias Jobst
9963268267 docker: ignore proxy for healthcheck command (#7532)
Co-authored-by: Joe Chen <jc@unknwon.io>
2026-01-30 23:12:49 -05:00
dependabot[bot]
49a45290ae mod: bump gopkg.in/macaron.v1 from 1.5.0 to 1.5.1 (#8035)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: ᴊᴏᴇ ᴄʜᴇɴ <jc@unknwon.io>
2026-01-30 23:10:14 -05:00
Yaroslav Halchenko
3cc8e7aa6d Fix typos throughout the codebase (#7514) 2026-01-30 23:03:05 -05:00
Rajat Jain
9f1499f3ab Support comparing tags in addition to branches (#6493)
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-30 22:45:03 -05:00
Jeff Li
77dba1b5ea repo: fix 500 error on watchers and stargazers pages using MSSQL (#6386)
Co-authored-by: Joe Chen <jc@unknwon.io>
Co-authored-by: Claude <noreply@anthropic.com>
2026-01-30 22:24:43 -05:00
Georg Wicke-Arndt
f70f29fdb0 Show file name in browser tab title when viewing files (#5896) 2026-01-30 22:11:10 -05:00
Joe Chen
ed6109d35d chore: update AGENTS.md
[skip ci]
2026-01-30 22:01:02 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
54e08ba678 docker: add image versions instructions
[skip ci]
2026-01-30 21:52:31 -05:00
Sino
87c8faaf08 Standardize HTTP status codes (#7851)
Co-authored-by: Joe Chen <jc@unknwon.io>
2026-01-30 09:27:59 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
1b226ca48d repo: improve authz for resources (#8119)
https://github.com/gogs/gogs/security/advisories/GHSA-jj5m-h57j-5gv7
2026-01-29 20:56:09 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
e3bb4165dc database: impersonate pure-Go SQLite driver as the old "sqlite3" (#8118) 2026-01-29 14:49:36 -05:00
pikomonde
df3d945a2c config: validate and print warnings for invalid options (#7705)
Co-authored-by: Joe Chen <jc@unknwon.io>
2026-01-28 11:36:03 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ae41bab5f2 repo: always list tree entries with verbatim (#8116)
Co-authored-by: Ali <alicse3@gmail.com>
2026-01-28 10:11:30 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
2316b09eaf database: fully switch over to pure-Go SQLite driver (#8115) 2026-01-27 22:45:50 -05:00
Copilot
3477bbac0e Add ED25519 test coverage and refactor SSH key parsing tests (#8107)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: unknwon <2946214+unknwon@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-27 14:04:12 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
bb3cab921b chore: update release template (#8110)
[skip ci]
2026-01-24 23:07:27 -05:00
Copilot
1cdeef2ce8 Replace tool.IsMaliciousPath with pathutil.Clean and move IsSameSite to urlutil (#8106) 2026-01-23 21:13:27 -05:00
Joe Chen
a7bc1637db chore: update AGENTS.md
[skip ci]
2026-01-23 12:20:51 -05:00
Joe Chen
f1102a7a7c release: cut CHANGELOG entries for 0.13.4
[skip ci]
2026-01-23 10:13:11 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
26ef07f60d repo: validate Git server hook name for editing (#8103) 2026-01-23 09:40:36 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
ca59e76a53 api: verify write access to update repo content (#8102) 2026-01-23 09:19:11 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
27f1250d00 api: verify owner access to delete repos (#8101) 2026-01-22 22:52:57 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
560f92ec5f two_factor: verify recovery code ownership upon using (#8100) 2026-01-22 22:30:27 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
1bbc36149a wiki: sanitize old wiki page name when editing (#8099) 2026-01-22 11:00:27 -05:00
Copilot
4ee706b2bf chore: replace pkg/errors with cockroachdb/errors (#8098)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: unknwon <2946214+unknwon@users.noreply.github.com>
2026-01-22 08:20:53 -05:00
Copilot
ae59787ff5 chore: remove internal/database/errors package (#8096) 2026-01-22 07:17:34 -05:00
Copilot
389ec54b2c chore: rename osutil.IsExist to osutil.Exist (#8097) 2026-01-21 22:22:07 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
5544212adb wiki: auto-detect default branch (#8094) 2026-01-20 23:38:10 -05:00
Joe Chen
6e1e4cb848 chore: update AGENTS.md
[skip ci]
2026-01-19 22:13:49 -05:00
deepsource-autofix[bot]
8e08450182 style: format code with Go fmt and Gofumpt (#8092) 2026-01-19 14:54:13 -05:00
Shivam Kumar
beeeb64969 repo: check directory existence before creation (#8091)
Co-authored-by: ᴊᴏᴇ ᴄʜᴇɴ <jc@unknwon.io>
2026-01-19 14:36:38 -05:00
Mukaiu
3ef71a43d9 api: fix nil pointer dereference when listing user repos (#8069)
Co-authored-by: Joe Chen <jc@unknwon.io>
2026-01-18 21:01:03 -05:00
Joe Chen
e44284fada chore: add AGENTS.md
[skip ci]
2026-01-18 21:00:19 -05:00
Shivam Kumar
b7010084b7 auth: support redirecting to custom URL upon sign out (#8089)
Co-authored-by: ᴊᴏᴇ ᴄʜᴇɴ <jc@unknwon.io>
2026-01-16 15:44:26 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
b8ab712819 chore: update pull request template checklist
[skip ci]
2026-01-16 14:38:59 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
59e9fa191b chore: remove all MIT license file headers (#8083)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2026-01-08 19:32:15 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
553707f3fd repository: reject any updates that has symlink in path hierarchy (#8082)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2026-01-08 14:22:04 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
b6030ba713 docker-next: fix up Git user home directory and permission issue (#8081) 2026-01-07 10:33:27 -05:00
Élie Bouttier
e68949dd13 fix(Dockerfile.next): install curl (#8080) 2026-01-06 12:30:15 -05:00
Copilot
f813c17565 Add DigitalOcean container registry garbage collection workflow (#8073) 2025-12-20 18:29:32 +08:00
ᴊᴏᴇ ᴄʜᴇɴ
5e7c599755 chore: update security advisory reporting process
[skip ci]
2025-12-10 20:22:12 -05:00
Jakub Domeracki
2c88cd4d9f security: patch mermaid package version
Co-authored-by: Jakub Domeracki <jdomeracki.itsec@gmail.com>
Co-authored-by: ᴊᴏᴇ ᴄʜᴇɴ <jc@unknwon.io>
2025-12-04 14:58:06 +09:00
Copilot
04cc48339f chore: update Go version from 1.24 to 1.25 in CI and related files (#8066)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: unknwon <2946214+unknwon@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-12-03 20:11:14 -05:00
Neptunium93
3666718ec5 repo: fix potential null pointer dereference in mirror sync (#8065) 2025-12-03 18:04:42 -05:00
Joe Chen
4cc83c498b chore: fix up docker-next SSH instruction
[skip ci]
2025-11-30 10:26:58 -05:00
Copilot
332c0895e6 docker: add next-generation rootless image with Kubernetes security context support (#8061)
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: unknwon <2946214+unknwon@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-11-29 23:01:12 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
16f466d1c1 CHANGELOG: add entry for #8057
[skip ci]
2025-11-25 22:40:48 -05:00
Joe Chen
5e3f45e7f5 ci: set timeout on deploy gogs-demo
[skip ci]
2025-11-25 20:31:33 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
994b769d9d ci: use kubeconfig of service account (#8060) 2025-11-25 19:07:24 -05:00
Copilot
3488e22a40 ci: pin all GitHub Actions to full SHA256 hashes (#8059) 2025-11-25 19:03:04 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
d0d4de70ca ci: deploy gogs-demo after image is built (#8058) 2025-11-24 11:05:25 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
79cc921892 conf: enable value mapping from env vars (#8057) 2025-11-23 20:59:52 -05:00
dependabot[bot]
1347c7802f mod: bump golang.org/x/crypto from 0.41.0 to 0.45.0 (#8056)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-19 21:46:39 -05:00
ᴊᴏᴇ ᴄʜᴇɴ
89f0f86c7e locale: sync from Crowdin (#8040) 2025-10-02 23:10:06 -04:00
Dmitry Afanasiev
6a6364bb5d chore: update mermaid to 11.9.0 (#8009)
Co-authored-by: ᴊᴏᴇ ᴄʜᴇɴ <jc@unknwon.io>
2025-09-30 06:11:09 -04:00
dependabot[bot]
35c047dc9d mod: bump golang.org/x/net from 0.42.0 to 0.43.0 (#8022)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 20:20:15 -04:00
dependabot[bot]
e4923af32d mod: bump golang.org/x/text from 0.27.0 to 0.28.0 (#8027)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 20:18:18 -04:00
dependabot[bot]
0533fb7744 mod: bump golang.org/x/crypto from 0.40.0 to 0.41.0 (#8024)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 13:13:50 -04:00
dependabot[bot]
28810f7db7 mod: bump github.com/prometheus/client_golang from 1.22.0 to 1.23.0 (#8026)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-02 12:38:55 -04:00
ᴊᴏᴇ ᴄʜᴇɴ
cfe38e0a08 chore: update Debian and Ubuntu targets in .pkgr.yml
[skip ci]
2025-09-01 21:45:41 -04:00
dependabot[bot]
110da379c1 mod: bump github.com/stretchr/testify from 1.10.0 to 1.11.1 (#8025)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-09-01 21:19:47 -04:00
dependabot[bot]
37962fcc0b mod: bump github.com/niklasfasching/go-org from 1.8.0 to 1.9.1 (#8013)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 21:56:02 -04:00
dependabot[bot]
7265a7cd26 mod: bump golang.org/x/net from 0.40.0 to 0.42.0 (#8014)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 21:52:36 -04:00
dependabot[bot]
521fbe34f6 mod: bump golang.org/x/crypto from 0.39.0 to 0.40.0 (#8016)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 16:32:05 -04:00
dependabot[bot]
1375bc401a mod: bump modernc.org/sqlite from 1.37.1 to 1.38.2 (#8017)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-08-03 15:43:27 -04:00
dependabot[bot]
28f83626d4 mod: bump github.com/urfave/cli from 1.22.16 to 1.22.17 (#7995)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-02 20:17:59 -04:00
dependabot[bot]
dcf8d9340e mod: bump github.com/sergi/go-diff from 1.3.1 to 1.4.0 (#7996)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-01 13:10:47 -04:00
dependabot[bot]
76b5d75d79 mod: bump golang.org/x/crypto from 0.38.0 to 0.39.0 (#7997)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-01 13:10:13 -04:00
dependabot[bot]
454175ece2 mod: bump github.com/Masterminds/semver/v3 from 3.3.1 to 3.4.0 (#8000)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-07-01 13:09:19 -04:00
Joe Chen
d940e692ec chore: fix up links and add CTA in README
[skip ci]
2025-06-18 09:46:51 -04:00
Joe Chen
7fc19d094c chore: update dev_release_patch_version.md
[skip ci]
2025-06-08 23:13:35 -04:00
Joe Chen
4e3bf27fe2 chore: update dev_release_patch_version.md
[skip ci]
2025-06-08 21:30:40 -04:00
Joe Chen
16b8b0974e chore: update dev_release_patch_version
[skip ci]
2025-06-08 21:23:46 -04:00
Joe Chen
f004b5b472 CHANGELOG: cut entries for 0.13.3 (#7983)
[skip ci]
2025-06-08 18:53:03 -04:00
Joe Chen
591810e405 web_editor: prohibit CRUD to symbolic files (#7981)
Fixes
[GHSA-wj44-9vcg-wjq7](https://github.com/gogs/gogs/security/advisories/GHSA-wj44-9vcg-wjq7)

---------

Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2025-06-08 18:28:28 -04:00
Joe Chen
3c2112215f ci: only run Docker job for the main repository (#7980) 2025-06-08 17:19:48 -04:00
dependabot[bot]
9db5c30c36 mod: bump github.com/pquerna/otp from 1.3.0 to 1.5.0 (#7972)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-01 12:58:19 -04:00
dependabot[bot]
49f4d4312b mod: bump github.com/niklasfasching/go-org from 1.7.0 to 1.8.0 (#7978)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-01 12:50:52 -04:00
dependabot[bot]
0cf12eccae mod: bump modernc.org/sqlite from 1.37.0 to 1.37.1 (#7977)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-01 12:50:32 -04:00
dependabot[bot]
495c38825a mod: bump gorm.io/driver/postgres from 1.5.11 to 1.6.0 (#7973)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-06-01 11:56:55 -04:00
dependabot[bot]
60b912ddda mod: bump golang.org/x/net from 0.39.0 to 0.40.0 (#7975)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-06-01 11:42:13 -04:00
Edoardo Ottavianelli
4d6a0ebaac security: patch for Stored XSS in PDF renderer (#7966) 2025-05-16 15:49:58 -04:00
dependabot[bot]
54fa465da5 mod: bump github.com/go-ldap/ldap/v3 from 3.4.10 to 3.4.11 (#7960)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-01 13:02:00 -04:00
dependabot[bot]
54cd8fd160 mod: bump golang.org/x/net from 0.36.0 to 0.38.0 (#7946)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-04-16 08:48:37 -04:00
dependabot[bot]
7abc81c4d2 mod: bump github.com/prometheus/client_golang from 1.21.0 to 1.21.1 (#7949)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-15 13:10:30 -04:00
dependabot[bot]
493834861d mod: bump golang.org/x/text from 0.22.0 to 0.23.0 (#7950)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-15 13:00:41 -04:00
dependabot[bot]
9a539393bd mod: bump github.com/editorconfig/editorconfig-core-go/v2 (#7948)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-04-14 18:05:48 -04:00
dependabot[bot]
139ea3ce7d mod: bump modernc.org/sqlite from 1.36.0 to 1.37.0 (#7947)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-04-14 18:00:07 -04:00
dependabot[bot]
4acaaac85a mod: bump golang.org/x/net from 0.34.0 to 0.36.0 (#7935)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 23:27:10 -05:00
dependabot[bot]
e93ced2163 mod: bump modernc.org/sqlite from 1.34.5 to 1.36.0 (#7929)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 23:18:23 -05:00
dependabot[bot]
9672b6dd6c mod: bump github.com/prometheus/client_golang from 1.20.5 to 1.21.0 (#7931)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 23:11:43 -05:00
dependabot[bot]
7a12c8418e mod: bump golang.org/x/text from 0.21.0 to 0.22.0 (#7933)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-03-04 23:11:08 -05:00
Joe Chen
2208f17e8e chore: update Trivy scan config (#7934) 2025-03-04 23:07:09 -05:00
宋子桓🌈
46a84fdad5 email: fix unable to override templates in custom directory (#7905)
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-02-12 21:52:18 -05:00
dependabot[bot]
9c80e6d922 mod: bump modernc.org/sqlite from 1.34.4 to 1.34.5 (#7906)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 23:24:18 -05:00
dependabot[bot]
3a952bd248 mod: bump golang.org/x/net from 0.33.0 to 0.34.0 (#7908)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-01 23:22:49 -05:00
Joe Chen
96d5d622b8 ci: update GitHub Actions version for Code QL 2025-01-01 19:46:13 -05:00
MarcUs7i
b59e943aa6 Set timeout to explicit 0 in gogs.js (#7890)
## Describe the pull request

A simple fix in public/js/gogs.js making bug upload not result in a
timeout (added just one line)

Link to the issue: closes https://github.com/gogs/gogs/issues/6149

## Test plan

- Set the max_size of `attachment` to a high number

```toml
[release.attachment]
ENABLED          = true
ALLOWED_TYPES    = */*
MAX_SIZE         = 512
MAX_FILES        = 20
```

- Upload a file to releases


![image](https://github.com/user-attachments/assets/8cf29c73-c8ec-42a3-9660-681a583b577a)

It doesn't randomly timeout!
2025-01-01 19:41:24 -05:00
dependabot[bot]
371a6092de mod: bump modernc.org/sqlite from 1.34.1 to 1.34.4 (#7893)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-01 11:18:34 -05:00
dependabot[bot]
e6896eb393 mod: bump gorm.io/driver/postgres from 1.5.7 to 1.5.11 (#7895)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2025-01-01 11:11:51 -05:00
dependabot[bot]
6c04a1ce7c mod: bump github.com/go-ldap/ldap/v3 from 3.4.8 to 3.4.10 (#7894)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-01-01 10:37:55 -05:00
Martin
6bdbb88fb8 gogs.service: Remove syslog.target (#7681)
Remove syslog.target from service file, this target hasn't existed for
over a decade.


6aa8d43ade/NEWS (L72-L73)
2024-12-26 11:55:46 -05:00
ngn
6b4e8668a1 Adding '|' to the releases page (#7631)
Adding '|' to the releases page `templates/repo/release/list.tmpl` 

i changed this:

![2023-12-22_16-41_1](https://github.com/gogs/gogs/assets/78868991/3d0f8572-b4de-458d-8bf2-dcd030c67757)
to this:

![2023-12-22_16-41](https://github.com/gogs/gogs/assets/78868991/43e2fe58-1019-40f5-b2fb-d011d1145be4)
(yes)
2024-12-26 11:15:44 -05:00
Joe Chen
d8f562b6ad docs: remove dev/release directory (#7884)
[skip ci]
2024-12-23 13:26:07 -05:00
Joe Chen
f1e64008fb cmd: always build with "cert" subcommand (#7883) 2024-12-23 12:10:43 -05:00
Joe Chen
cfde357824 release: pull back 0.13.1 and move CHANGELOG entries to 0.13.2 (#7881) 2024-12-23 10:56:57 -05:00
Joe Chen
3459f8df49 Dockerfile: fix up outdated s6-svscan path (#7880)
## Describe the pull request

Link to the issue: https://github.com/gogs/gogs/issues/7864
2024-12-23 10:53:40 -05:00
Joe Chen
c0332ff856 release: update templates (#7877)
[skip ci]
2024-12-22 21:44:17 -05:00
Joe Chen
e1042e7d47 release: cut CHANGELOG entries for 0.13.1 (#7874)
Part of https://github.com/gogs/gogs/issues/7873

[skip ci]
2024-12-22 17:50:59 -05:00
Joe Chen
76831d0d06 dep: update github.com/gogs/git-module to v1.8.4 (#7872)
## Describe the pull request

Fixes
https://github.com/gogs/gogs/security/advisories/GHSA-m27m-h5gj-wwmg by
including https://github.com/gogs/git-module/pull/110
2024-12-22 16:37:51 -05:00
Joe Chen
68b3c8f339 repo: ignore unintended Git options for diff preview (#7871)
## Describe the pull request

Fixes
https://github.com/gogs/gogs/security/advisories/GHSA-9pp6-wq8c-3w2c
2024-12-22 15:59:03 -05:00
Joe Chen
77a4a945ae repo: prevent preview and delete files in .git directories (#7870)
## Describe the pull request

Fixes
https://github.com/gogs/gogs/security/advisories/GHSA-ccqv-43vm-4f3w
2024-12-22 15:24:18 -05:00
Joe Chen
b09f317aa0 database: lock mock properly to avoid data race in tests (#7869)
Fixes tests data race found in
https://github.com/gogs/gogs/actions/runs/12457230279/job/34771555537
2024-12-22 15:09:42 -05:00
Joe Chen
009a1855aa ssh: make env command a passthrough (#7868)
## Describe the pull request

Fixes
https://github.com/gogs/gogs/security/advisories/GHSA-vm62-9jw3-c8w3
2024-12-22 14:56:31 -05:00
Alexandre Jacquin
fb7812b194 Fix s6-svscan path in Dockerfile (#7867)
Related to #7864

## Describe the pull request

Fix the path of the s6-svscan binary path in the Dockerfile. As
mentionned in the issue, it is probably to the alpine base image change
(from `3.17` to `3.21`).

Link to the issue:
https://github.com/gogs/gogs/issues/7864#issuecomment-2558323928

Credit to @cryptovaltt

## Test plan

Build the image and check if the application can be ran. E.g.:

```bash
docker build -t gogs:working-7864 -f Dockerfile .
docker run --name=gogs -p 10022:22 -p 10880:3000 -v gogs:working-7864 --rm
```
2024-12-22 10:53:00 -05:00
Joe Chen
00bd6081a5 chore: minor fixup on README (#7866)
[skip ci]
2024-12-21 10:58:38 -05:00
Joe Chen
5326b4113a chore: update minimum Go version to 1.23.4 (#7865) 2024-12-21 10:48:17 -05:00
Joe Chen
7adac94f1e Dockerfile: update base image to alpine3.21 and enable trivy scan (#7863)
## Describe the pull request

Link to the issue: fixes https://github.com/gogs/gogs/issues/6674
2024-12-20 22:33:46 -05:00
Joe Chen
c5dff8cdad chore: update vulnerability report and patch policy
[skip ci]
2024-12-16 19:05:53 -05:00
dependabot[bot]
8a39d529d0 mod: bump golang.org/x/crypto from 0.29.0 to 0.31.0 (#7861)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-14 23:36:29 -05:00
Joe Chen
740eba4f70 session: support TLS for Redis provider (#7860) 2024-12-14 23:18:46 -05:00
Joe Chen
9a9388ace2 api: clean file path for updating repo contents (#7859)
## Describe the pull request

Link to the issue: closes https://github.com/gogs/gogs/issues/7582
2024-12-14 21:30:34 -05:00
Joe Chen
8a3b8198af chore: update security policy 2024-12-10 22:23:01 -05:00
Joe Chen
c94baec9ca repo/editor: disallow editing symlink while changing file name (#7857)
## Describe the pull request

Link to the issue: https://github.com/gogs/gogs/issues/7582
2024-12-08 21:12:55 -05:00
dependabot[bot]
25a799ad63 mod: bump github.com/Masterminds/semver/v3 from 3.2.1 to 3.3.1 (#7854)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2024-12-01 11:08:42 -05:00
dependabot[bot]
f518abaff1 mod: bump golang.org/x/net from 0.30.0 to 0.31.0 (#7853)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-01 10:58:39 -05:00
dependabot[bot]
58fa30c7be mod: bump golang.org/x/text from 0.19.0 to 0.20.0 (#7856)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-01 10:49:39 -05:00
dependabot[bot]
a02d6a22d6 mod: bump modernc.org/sqlite from 1.33.1 to 1.34.1 (#7852)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-01 09:49:01 -05:00
Joe Chen
7a2dffa95a ci: push Docker images to DigitalOcean Container Registry (#7839) 2024-11-09 19:50:01 -05:00
dependabot[bot]
2541348408 mod: bump github.com/prometheus/client_golang from 1.20.4 to 1.20.5 (#7834)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-03 17:36:50 -05:00
dependabot[bot]
f037c58eee mod: bump golang.org/x/net from 0.29.0 to 0.30.0 (#7837)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-02 21:36:24 -04:00
dependabot[bot]
e5e03cba24 mod: bump github.com/urfave/cli from 1.22.15 to 1.22.16 (#7838)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-01 18:38:05 -04:00
Joe Chen
07380780c6 locale: sync from Crowdin (#7824) 2024-10-13 20:24:38 -04:00
dependabot[bot]
3a8bd73901 mod: bump github.com/prometheus/client_golang from 1.20.2 to 1.20.4 (#7818)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 21:52:08 -04:00
dependabot[bot]
79bd350ad6 mod: bump modernc.org/sqlite from 1.32.0 to 1.33.1 (#7816)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-02 08:23:28 -04:00
dependabot[bot]
0700cef63e mod: bump golang.org/x/net from 0.28.0 to 0.29.0 (#7814)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-01 20:44:05 -04:00
Mobile Mind
e34ebac459 install: fix SMTP password config name to save (#7807) 2024-09-12 22:10:02 -04:00
Joe Chen
03d26b0482 locale: sync from Crowdin (#7801) 2024-09-08 12:12:25 -04:00
Kyle Fawcett
e6d4db0b4c Fix spacing if BuildTime is missing. (#7800)
Co-authored-by: Gogs <gogs@fake.local>
Co-authored-by: Joe Chen <jc@unknwon.io>
2024-09-07 11:43:29 -04:00
dependabot[bot]
69d74485f0 mod: bump modernc.org/sqlite from 1.31.1 to 1.32.0 (#7795)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2024-09-04 08:46:26 -04:00
dependabot[bot]
9401784421 mod: bump github.com/prometheus/client_golang from 1.19.1 to 1.20.2 (#7793)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 08:43:26 -04:00
dependabot[bot]
93aba5a6b7 mod: bump golang.org/x/net from 0.27.0 to 0.28.0 (#7794)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-04 08:43:03 -04:00
dependabot[bot]
9108970e45 mod: bump golang.org/x/crypto from 0.25.0 to 0.26.0 (#7792)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2024-09-03 09:36:00 -04:00
dependabot[bot]
0965db473f mod: bump golang.org/x/net from 0.26.0 to 0.27.0 (#7780)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-02 01:14:46 -04:00
dependabot[bot]
f1f6d3f37d mod: bump golang.org/x/crypto from 0.24.0 to 0.25.0 (#7779)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-01 19:59:36 -04:00
dependabot[bot]
8e195067df mod: bump github.com/microcosm-cc/bluemonday from 1.0.25 to 1.0.27 (#7782)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-01 19:58:32 -04:00
dependabot[bot]
5d6bc5c9fd mod: bump modernc.org/sqlite from 1.29.2 to 1.31.1 (#7783)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-08-01 19:58:01 -04:00
Joe Chen
8869354d21 locale: sync from Crowdin (#7778) 2024-07-29 03:35:15 -04:00
dependabot[bot]
5bdf91e73c mod: bump golang.org/x/net from 0.25.0 to 0.26.0 (#7769)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-01 07:19:04 -04:00
dependabot[bot]
54776c776a mod: bump golang.org/x/text from 0.15.0 to 0.16.0 (#7770)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-01 07:11:59 -04:00
Joe Chen
f2ff885f33 locale: sync from Crowdin (#7764) 2024-06-28 23:17:41 -04:00
idnandre
6cb018df2f chore: remove duplicate error and fix typo error message (#7763) 2024-06-28 23:03:32 -04:00
Sergei Gnezdov
f4a78e5cfb chore: update version of mermaid to 10.9.1 (#7760) 2024-06-08 12:57:00 -04:00
dependabot[bot]
1815fd5c36 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.6.1 to 2.6.2 (#7755)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 21:51:10 -04:00
dependabot[bot]
15d64e0f23 mod: bump github.com/prometheus/client_golang from 1.19.0 to 1.19.1 (#7758)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 21:50:13 -04:00
dependabot[bot]
15077b13e3 mod: bump golang.org/x/net from 0.24.0 to 0.25.0 (#7759)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-06-03 21:49:58 -04:00
alingse
87f47166ac chore: fix miss makezero bug (#7752) 2024-05-26 18:04:54 -04:00
dependabot[bot]
c8cd3e7125 mod: bump github.com/go-ldap/ldap/v3 from 3.4.6 to 3.4.8 (#7738)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 19:26:33 -04:00
dependabot[bot]
ce350e768a mod: bump golang.org/x/net from 0.23.0 to 0.24.0 (#7737)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 19:17:28 -04:00
dependabot[bot]
56a1712275 mod: bump github.com/urfave/cli from 1.22.14 to 1.22.15 (#7736)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 19:17:21 -04:00
dependabot[bot]
f8a3e7153f mod: bump golang.org/x/crypto from 0.21.0 to 0.22.0 (#7735)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-02 19:00:01 -04:00
Jiaxin Zhu
6f9b63517d fix(systemd script): define RestartSec as 2 (#7733) 2024-04-30 09:15:34 -04:00
Joe Chen
1eae0b2fce locale: sync from Crowdin (#7732) 2024-04-27 13:22:20 -04:00
dependabot[bot]
24f06bb088 mod: bump golang.org/x/net from 0.22.0 to 0.23.0 (#7730)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-19 19:56:17 -04:00
Jiaxin Zhu
015589cdd9 fix(.editorconfig): remove setting end_of_line and make Git track EOL changes on Windows (#7725) 2024-04-15 10:36:54 -04:00
Jiaxin Zhu
ba17b9b56b fix(templates): the green color is supposed to be purple (#7722)
Co-authored-by: jxzhu <zhujiaxin@gmail.com>
2024-04-11 10:13:46 -04:00
dependabot[bot]
3b8c9ba7ab mod: bump gorm.io/driver/postgres from 1.5.6 to 1.5.7 (#7712)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-01 21:18:44 -04:00
dependabot[bot]
f915eb3a40 mod: bump golang.org/x/net from 0.21.0 to 0.22.0 (#7713)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-01 21:17:38 -04:00
dependabot[bot]
c036214c45 mod: bump github.com/stretchr/testify from 1.8.4 to 1.9.0 (#7714)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-01 21:09:52 -04:00
dependabot[bot]
b8ed5d8d91 mod: bump golang.org/x/crypto from 0.20.0 to 0.21.0 (#7715)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-04-01 21:09:30 -04:00
Joe Chen
d9ecdcaef0 all: unwrap database.UsersStore interface (#7708) 2024-03-27 23:18:59 -04:00
Joe Chen
202012887a all: unwrap database.TwoFactorsStore interface (#7707) 2024-03-27 22:14:08 -04:00
Joe Chen
4d05804729 all: unwrap database.RepositoriesStore interface (#7706) 2024-03-26 23:34:31 -04:00
bitebyte
e1e75ed36b Fix issue: synchronize the section name[mailer/email] of app.ini (#7704) 2024-03-26 22:30:25 -04:00
Joe Chen
895e553e68 all: unwrap database.PublicKeysStore interface (#7702) 2024-03-23 20:55:45 -04:00
Joe Chen
5cf0189df1 all: unwrap database.PermissionsStore interface (#7701) 2024-03-23 20:46:32 -04:00
Joe Chen
8d2386b4db database: set Handle direcetly during initialization (#7699) 2024-03-20 19:02:57 -04:00
Joe Chen
dd49412edd all: unwrap database.OrganizationsStore interface (#7696) 2024-03-19 19:33:43 -04:00
Joe Chen
b89f20e02d all: unwrap database.NoticesStore interface (#7695) 2024-03-17 20:44:13 -04:00
Joe Chen
e634aa6277 all: unwrap database.LoginSourcesStore interface (#7694) 2024-03-17 20:14:54 -04:00
Joe Chen
3a5132b6f7 all: unwrap database.LFSStore interface (#7692) 2024-03-16 20:32:12 -04:00
dependabot[bot]
b9e41f28c3 mod: bump github.com/jackc/pgx/v5 from 5.4.3 to 5.5.4 (#7688)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-16 18:08:27 -04:00
Joe Chen
6d77d6204d all: unwrap database.ActionsStore interface (#7686) 2024-03-13 22:03:02 -04:00
dependabot[bot]
f73edbd172 mod: bump google.golang.org/protobuf from 1.32.0 to 1.33.0 (#7685)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-13 20:00:00 -04:00
Joe Chen
fa84482d98 chore: upgrade go-mockgen for 1.22 (#7683) 2024-03-12 19:25:30 -04:00
dependabot[bot]
6c63a88ef0 mod: bump modernc.org/sqlite from 1.28.0 to 1.29.2 (#7680)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 13:14:35 -05:00
dependabot[bot]
35c59d2c24 mod: bump github.com/prometheus/client_golang from 1.18.0 to 1.19.0 (#7679)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 09:24:38 -05:00
dependabot[bot]
6d77bcebaa mod: bump golang.org/x/crypto from 0.18.0 to 0.20.0 (#7677)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 09:23:29 -05:00
dependabot[bot]
605c751926 mod: bump gorm.io/driver/postgres from 1.5.4 to 1.5.6 (#7676)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-03-01 09:23:11 -05:00
Joe Chen
8054ffc12f all: unwrap database.AccessTokensStore interface (#7670) 2024-02-20 21:47:32 -05:00
Joe Chen
917c14f2ce internal/database: consistently use Store and s as receiver (#7669) 2024-02-19 20:00:13 -05:00
Joe Chen
dfe27ad556 database: use all tables to setup test suite (#7667) 2024-02-18 21:26:30 -05:00
Joe Chen
3616bc03c9 packager: use centos-9 and debian-12 (#7668) 2024-02-18 21:25:01 -05:00
Joe Chen
10cd022e08 ci: upgrade GitHub Actions versions (#7666) 2024-02-18 21:05:27 -05:00
Joe Chen
3650b32ec5 chore: rename internal/db to internal/database (#7665) 2024-02-18 19:39:41 -05:00
Joe Chen
cad79a31d8 locale: sync from Crowdin (#7664) 2024-02-18 19:05:22 -05:00
dependabot[bot]
077141d2ba mod: bump golang.org/x/net from 0.19.0 to 0.20.0 (#7657)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-02 18:05:38 -05:00
Joe Chen
cd3f132844 README: update sponsor list (#7661)
[skip ci]
2024-02-02 18:00:58 -05:00
dependabot[bot]
ff7dc29ad3 mod: bump golang.org/x/crypto from 0.17.0 to 0.18.0 (#7659)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-02 17:46:13 -05:00
dependabot[bot]
87a5ae3f61 mod: bump gorm.io/gorm from 1.25.5 to 1.25.6 (#7658)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 23:34:56 -05:00
dependabot[bot]
6bd09e75fe mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.6.0 to 2.6.1 (#7660)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-02-01 23:34:13 -05:00
dependabot[bot]
7b06bf642a mod: bump modernc.org/sqlite from 1.27.0 to 1.28.0 (#7637)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-01 13:51:32 -05:00
dependabot[bot]
b6e4b379c1 mod: bump github.com/prometheus/client_golang from 1.17.0 to 1.18.0 (#7638)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-01-01 13:51:15 -05:00
dependabot[bot]
5e96f64b83 mod: bump golang.org/x/crypto from 0.16.0 to 0.17.0 (#7626)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-24 22:59:10 -05:00
Joe Chen
41d473e999 Taskfile: drop-test-db (#7623)
[skip ci]
2023-12-17 16:49:37 -05:00
Joe Chen
25fdeaac49 db: pass context to tests by default (#7622)
[skip ci]
2023-12-17 16:32:28 -05:00
Joe Chen
0c7b45ad1f locale: sync from Crowdin (#7621) 2023-12-16 21:31:21 -05:00
dependabot[bot]
5293781c0d mod: bump golang.org/x/net from 0.17.0 to 0.19.0 (#7609)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-01 12:31:22 -05:00
dependabot[bot]
7a2c691c5b mod: bump golang.org/x/text from 0.13.0 to 0.14.0 (#7608)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-01 12:25:35 -05:00
dependabot[bot]
dfc129ee98 mod: bump golang.org/x/crypto from 0.14.0 to 0.16.0 (#7607)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-12-01 12:25:21 -05:00
Joe Chen
1c711bc8d4 chore: move CODEOWNERS to .github/
[skip ci]
2023-11-17 19:20:20 -05:00
Joe Chen
31a0964e12 dbtest: properly close test connection (#7598) 2023-11-12 19:09:50 -05:00
Joe Chen
b644d797b4 chore: add CODEOWNERS 2023-11-12 19:08:26 -05:00
Joe Chen
61940ca879 chore: update security policy
[skip ci]
2023-11-09 22:10:42 -05:00
Joe Chen
16b185f97d build: remove support of Go 1.18 and 1.19 (#7590) 2023-11-01 23:06:24 -04:00
Athanasios Oikonomou
c531da02ca commit: fix matchUsersWithCommitEmails (#7561)
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-11-01 11:58:48 -04:00
dependabot[bot]
bc1b5e52a9 mod: bump modernc.org/sqlite from 1.26.0 to 1.27.0 (#7587)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 08:56:17 -04:00
dependabot[bot]
0b5257425f mod: bump gorm.io/driver/postgres from 1.5.3 to 1.5.4 (#7588)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-11-01 08:55:58 -04:00
Joe Chen
7fb3dcb1eb locale: sync from Crowdin (#7584) 2023-10-29 21:38:20 -04:00
dependabot[bot]
5c3fde8531 mod: bump gorm.io/driver/postgres from 1.5.2 to 1.5.3 (#7573)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 20:26:53 -04:00
dependabot[bot]
7bffc0d0e3 mod: bump gorm.io/gorm from 1.25.4 to 1.25.5 (#7574)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 20:14:39 -04:00
Joe Chen
748c67df8b chore: slow down dep update to monthly
[ci skip]
2023-10-20 20:04:41 -04:00
dependabot[bot]
2d9be6c06b mod: bump gorm.io/driver/mysql from 1.5.1 to 1.5.2 (#7575)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-20 20:03:59 -04:00
dependabot[bot]
493a56b262 mod: bump golang.org/x/net from 0.15.0 to 0.17.0 (#7569)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-12 00:11:23 -04:00
dependabot[bot]
3350740563 mod: bump github.com/prometheus/client_golang from 1.16.0 to 1.17.0 (#7560)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 22:51:35 -04:00
dependabot[bot]
89b123f9d1 mod: bump modernc.org/sqlite from 1.25.0 to 1.26.0 (#7559)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 22:51:11 -04:00
dependabot[bot]
4821e89780 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.5.2 to 2.6.0 (#7558)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-10-02 22:50:52 -04:00
dependabot[bot]
e989093129 mod: bump github.com/msteinert/pam from 0.0.0-20190215180659-f29b9f28d6f9 to 1.2.0 (#7550)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-26 08:59:57 -04:00
dependabot[bot]
018337ddfb mod: bump github.com/go-ldap/ldap/v3 from 3.4.5 to 3.4.6 (#7548)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-18 11:42:16 -04:00
dependabot[bot]
fde10f1236 mod: bump golang.org/x/net from 0.14.0 to 0.15.0 (#7547)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-11 23:47:57 -04:00
dependabot[bot]
48710b9793 mod: bump golang.org/x/text from 0.12.0 to 0.13.0 (#7544)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-04 17:13:52 -04:00
Joe Chen
069f1ed9a4 db: migrate admin.go to notices.go with GORM (#7536) 2023-08-23 00:15:30 -04:00
dependabot[bot]
1112a71ea5 mod: bump gorm.io/gorm from 1.25.3 to 1.25.4 (#7535)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-21 10:40:39 -04:00
Joe Chen
9d86838fa7 ci: use Go 1.21 (#7528) 2023-08-14 22:24:26 -04:00
dependabot[bot]
f187005581 mod: bump gorm.io/gorm from 1.25.2 to 1.25.3 (#7526)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 10:39:53 -04:00
dependabot[bot]
7efda8e8fc mod: bump github.com/gogs/git-module from 1.8.2 to 1.8.3 (#7527)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-14 10:39:35 -04:00
dependabot[bot]
2620cc3e8d mod: bump golang.org/x/net from 0.12.0 to 0.14.0 (#7522)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:50:25 -04:00
dependabot[bot]
af77cbb759 mod: bump modernc.org/sqlite from 1.24.0 to 1.25.0 (#7521)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:30:19 -04:00
dependabot[bot]
65e14b18ec mod: bump golang.org/x/crypto from 0.11.0 to 0.12.0 (#7520)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:29:53 -04:00
dependabot[bot]
738ac3c03b mod: bump golang.org/x/text from 0.11.0 to 0.12.0 (#7519)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-07 09:29:34 -04:00
Joe Chen
7a0a07628d locale: sync from Crowdin (#7518) 2023-08-01 22:27:56 -04:00
dependabot[bot]
c373a92da6 mod: bump github.com/microcosm-cc/bluemonday from 1.0.24 to 1.0.25 (#7513)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-25 12:31:52 -04:00
dependabot[bot]
23ea4863f1 mod: bump github.com/niklasfasching/go-org from 1.6.6 to 1.7.0 (#7491)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-17 21:26:14 -04:00
dependabot[bot]
8940778bb8 mod: bump modernc.org/sqlite from 1.23.1 to 1.24.0 (#7508)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-17 21:25:18 -04:00
dependabot[bot]
53c009288c mod: bump golang.org/x/net from 0.11.0 to 0.12.0 (#7500)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-09 13:59:45 -04:00
Joe Chen
3be3ae500b ci: remove Codeball 2023-07-09 10:59:12 -04:00
dependabot[bot]
9ab8bd6785 mod: bump golang.org/x/crypto from 0.10.0 to 0.11.0 (#7501)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-09 10:58:12 -04:00
dependabot[bot]
9e91602b42 mod: bump golang.org/x/text from 0.10.0 to 0.11.0 (#7502)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-07 22:25:08 -04:00
dependabot[bot]
b13cb438d1 mod: bump gorm.io/gorm from 1.25.1 to 1.25.2 (#7497)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-07-06 22:22:31 -04:00
dependabot[bot]
69802f07b7 mod: bump golang.org/x/net from 0.10.0 to 0.11.0 (#7485)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-20 19:24:55 -04:00
dependabot[bot]
c426e9b8ad mod: bump golang.org/x/text from 0.9.0 to 0.10.0 (#7480)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 12:58:32 -04:00
dependabot[bot]
97ccf329b1 mod: bump github.com/prometheus/client_golang from 1.15.1 to 1.16.0 (#7482)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 12:39:17 -04:00
dependabot[bot]
89b759e2ed mod: bump github.com/urfave/cli from 1.22.13 to 1.22.14 (#7481)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 12:39:08 -04:00
dependabot[bot]
1fb33bd586 mod: bump modernc.org/sqlite from 1.22.1 to 1.23.1 (#7475)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-17 12:38:53 -04:00
dependabot[bot]
0ca017d0a8 mod: bump github.com/go-ldap/ldap/v3 from 3.4.4 to 3.4.5 (#7476)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-06-17 12:17:06 -04:00
Joe Chen
75767078aa pkgr: remove debian-9 (#7472)
[skip ci]
2023-06-03 20:01:30 -04:00
dependabot[bot]
22bf85b6f5 mod: bump gorm.io/driver/mysql from 1.5.0 to 1.5.1 (#7458)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-03 19:44:28 -04:00
dependabot[bot]
b2ea82c8d8 mod: bump github.com/stretchr/testify from 1.8.2 to 1.8.3 (#7460)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-03 19:44:13 -04:00
dependabot[bot]
7fae076155 mod: bump github.com/microcosm-cc/bluemonday from 1.0.23 to 1.0.24 (#7459)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-06-03 19:43:57 -04:00
dependabot[bot]
ed825c6273 mod: bump gorm.io/driver/postgres from 1.5.0 to 1.5.2 (#7461)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-24 22:15:47 -04:00
dependabot[bot]
795cac1dd0 mod: bump github.com/gogs/git-module from 1.8.1 to 1.8.2 (#7455)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-15 07:42:45 -04:00
dependabot[bot]
ad3f9ac068 mod: bump golang.org/x/crypto from 0.8.0 to 0.9.0 (#7456)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-15 07:42:11 -04:00
Joe Chen
0721ef2399 refactor(db): migrate off user_email.go to users.go (#7452) 2023-05-14 20:15:47 -04:00
Joe Chen
9ac93067f6 ci: refurbish Docker job (#7446) 2023-05-09 23:02:57 -04:00
Joe Chen
167cdb09e3 chore: generate SCIP instead of LSIF (#7445) 2023-05-09 09:13:02 -04:00
Joe Chen
ada1083462 tests(db): fix data race (#7444)
[skip ci]
2023-05-08 23:02:45 -04:00
dependabot[bot]
5df9668063 mod: bump github.com/prometheus/client_golang from 1.15.0 to 1.15.1 (#7442)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 08:56:02 -04:00
dependabot[bot]
249668a2b9 mod: bump gorm.io/gorm from 1.25.0 to 1.25.1 (#7441)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-08 08:55:41 -04:00
dependabot[bot]
66364d9c02 mod: bump modernc.org/sqlite from 1.22.0 to 1.22.1 (#7439)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-01 07:21:10 -04:00
dependabot[bot]
077c80d258 mod: bump github.com/urfave/cli from 1.22.12 to 1.22.13 (#7438)
[skip ci]

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-05-01 07:20:48 -04:00
dependabot[bot]
79bda9df35 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.5.1 to 2.5.2 (#7433)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-24 20:00:41 +08:00
dependabot[bot]
6e5f9e8a1b mod: bump modernc.org/sqlite from 1.21.1 to 1.22.0 (#7432)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-24 19:58:20 +08:00
dependabot[bot]
7e5db4ba42 mod: bump github.com/prometheus/client_golang from 1.14.0 to 1.15.0 (#7427)
Bumps
[github.com/prometheus/client_golang](https://github.com/prometheus/client_golang)
from 1.14.0 to 1.15.0.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/prometheus/client_golang/releases">github.com/prometheus/client_golang's
releases</a>.</em></p>
<blockquote>
<h2>v1.15.0</h2>
<h2>Changed</h2>
<p>[BUGFIX] Fix issue with atomic variables on ppc64le <a
href="https://redirect.github.com/prometheus/client_golang/issues/1171">#1171</a>
[BUGFIX] Support for multiple samples within same metric <a
href="https://redirect.github.com/prometheus/client_golang/issues/1181">#1181</a>
[BUGFIX] Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149 <a
href="https://redirect.github.com/prometheus/client_golang/issues/1187">#1187</a>
[ENHANCEMENT] Add exemplars and middleware examples <a
href="https://redirect.github.com/prometheus/client_golang/issues/1173">#1173</a>
[ENHANCEMENT] Add more context to &quot;duplicate label names&quot;
error to enable debugging <a
href="https://redirect.github.com/prometheus/client_golang/issues/1177">#1177</a>
[ENHANCEMENT] Add constrained labels and constrained variant for all
MetricVecs <a
href="https://redirect.github.com/prometheus/client_golang/issues/1151">#1151</a>
[ENHANCEMENT] Moved away from deprecated github.com/golang/protobuf
package <a
href="https://redirect.github.com/prometheus/client_golang/issues/1183">#1183</a>
[ENHANCEMENT] Add possibility to dynamically get label values for http
instrumentation <a
href="https://redirect.github.com/prometheus/client_golang/issues/1066">#1066</a>
[ENHANCEMENT] Add ability to Pusher to add custom headers <a
href="https://redirect.github.com/prometheus/client_golang/issues/1218">#1218</a>
[ENHANCEMENT] api: Extend and improve efficiency of json-iterator usage
<a
href="https://redirect.github.com/prometheus/client_golang/issues/1225">#1225</a>
[ENHANCEMENT] Added (official) support for go 1.20 <a
href="https://redirect.github.com/prometheus/client_golang/issues/1234">#1234</a>
[ENHANCEMENT] timer: Added support for exemplars <a
href="https://redirect.github.com/prometheus/client_golang/issues/1233">#1233</a>
[ENHANCEMENT] Filter expected metrics as well in CollectAndCompare <a
href="https://redirect.github.com/prometheus/client_golang/issues/1143">#1143</a>
[ENHANCEMENT] ⚠️ Only set start/end if time is not Zero. This breaks
compatibility in experimental api package. If you strictly depend on
empty time.Time as actual value, the behavior is now changed <a
href="https://redirect.github.com/prometheus/client_golang/issues/1238">#1238</a></p>
<!-- raw HTML omitted -->
<ul>
<li>Merge release 1.14 to main by <a
href="https://github.com/bwplotka"><code>@​bwplotka</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1164">prometheus/client_golang#1164</a></li>
<li>Fix typo in doc comment by <a
href="https://github.com/beorn7"><code>@​beorn7</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1166">prometheus/client_golang#1166</a></li>
<li>Fix issue with atomic variables on ppc64le by <a
href="https://github.com/beorn7"><code>@​beorn7</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1171">prometheus/client_golang#1171</a></li>
<li>examples: Add exemplars and middleware examples by <a
href="https://github.com/jessicalins"><code>@​jessicalins</code></a> in
<a
href="https://redirect.github.com/prometheus/client_golang/pull/1173">prometheus/client_golang#1173</a></li>
<li>Add context to &quot;duplicate label names&quot; to enable debugging
by <a
href="https://github.com/SpencerMalone"><code>@​SpencerMalone</code></a>
in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1177">prometheus/client_golang#1177</a></li>
<li>Add constrained labels and Constrained variant for all MetricVecs by
<a href="https://github.com/Okhoshi"><code>@​Okhoshi</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1151">prometheus/client_golang#1151</a></li>
<li>Support for multiple samples within same metric by <a
href="https://github.com/machadovilaca"><code>@​machadovilaca</code></a>
in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1181">prometheus/client_golang#1181</a></li>
<li>Replace deprecated github.com/golang/protobuf package by <a
href="https://github.com/zhsj"><code>@​zhsj</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1183">prometheus/client_golang#1183</a></li>
<li>Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149 by <a
href="https://github.com/b4bay"><code>@​b4bay</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1187">prometheus/client_golang#1187</a></li>
<li>typo fix by <a
href="https://github.com/ibreakthecloud"><code>@​ibreakthecloud</code></a>
in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1178">prometheus/client_golang#1178</a></li>
<li>Add possibility to dynamically get label values for http
instrumentation by <a
href="https://github.com/Okhoshi"><code>@​Okhoshi</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1066">prometheus/client_golang#1066</a></li>
<li>Bump github.com/cespare/xxhash/v2 from 2.1.2 to 2.2.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1199">prometheus/client_golang#1199</a></li>
<li>Bump github.com/prometheus/procfs from 0.8.0 to 0.9.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1198">prometheus/client_golang#1198</a></li>
<li>Bump golang.org/x/sys from 0.3.0 to 0.4.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1217">prometheus/client_golang#1217</a></li>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1213">prometheus/client_golang#1213</a></li>
<li>Bump github.com/prometheus/common from 0.37.0 to 0.39.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1197">prometheus/client_golang#1197</a></li>
<li>Add <code>Header</code> method to Pusher for custom header by <a
href="https://github.com/songjiayang"><code>@​songjiayang</code></a> in
<a
href="https://redirect.github.com/prometheus/client_golang/pull/1218">prometheus/client_golang#1218</a></li>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1224">prometheus/client_golang#1224</a></li>
<li>api: Extend and improve json-iterator usage by <a
href="https://github.com/beorn7"><code>@​beorn7</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1225">prometheus/client_golang#1225</a></li>
<li>Indent example in godoc consistently by <a
href="https://github.com/lamida"><code>@​lamida</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1226">prometheus/client_golang#1226</a></li>
<li>Remove unnecessary check if label is nil in observeWithExemplar by
<a href="https://github.com/dimonl"><code>@​dimonl</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1235">prometheus/client_golang#1235</a></li>
<li>README: Remove not working gocoverage images. by <a
href="https://github.com/bwplotka"><code>@​bwplotka</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1236">prometheus/client_golang#1236</a></li>
<li>Added support for go 1.20. by <a
href="https://github.com/bwplotka"><code>@​bwplotka</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1234">prometheus/client_golang#1234</a></li>
<li>timer: Added support for exemplars. by <a
href="https://github.com/bwplotka"><code>@​bwplotka</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1233">prometheus/client_golang#1233</a></li>
<li>Synchronize common files from prometheus/prometheus by <a
href="https://github.com/prombot"><code>@​prombot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1237">prometheus/client_golang#1237</a></li>
<li>Filter expected metrics as well in CollectAndCompare by <a
href="https://github.com/DariaKunoichi"><code>@​DariaKunoichi</code></a>
in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1143">prometheus/client_golang#1143</a></li>
<li>Only set start/end if time is not Zero by <a
href="https://github.com/jacksontj"><code>@​jacksontj</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1238">prometheus/client_golang#1238</a></li>
<li>Bump google.golang.org/protobuf from 1.28.1 to 1.30.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1243">prometheus/client_golang#1243</a></li>
<li>Bump golang.org/x/sys from 0.5.0 to 0.6.0 by <a
href="https://github.com/dependabot"><code>@​dependabot</code></a> in <a
href="https://redirect.github.com/prometheus/client_golang/pull/1246">prometheus/client_golang#1246</a></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/prometheus/client_golang/blob/main/CHANGELOG.md">github.com/prometheus/client_golang's
changelog</a>.</em></p>
<blockquote>
<h2>1.15.0 / 2023-04-13</h2>
<h2>What's Changed</h2>
<ul>
<li>[BUGFIX] Fix issue with atomic variables on ppc64le <a
href="https://redirect.github.com/prometheus/client_golang/issues/1171">#1171</a></li>
<li>[BUGFIX] Support for multiple samples within same metric <a
href="https://redirect.github.com/prometheus/client_golang/issues/1181">#1181</a></li>
<li>[BUGFIX] Bump golang.org/x/text to v0.3.8 to mitigate CVE-2022-32149
<a
href="https://redirect.github.com/prometheus/client_golang/issues/1187">#1187</a></li>
<li>[ENHANCEMENT] Add exemplars and middleware examples <a
href="https://redirect.github.com/prometheus/client_golang/issues/1173">#1173</a></li>
<li>[ENHANCEMENT] Add more context to &quot;duplicate label names&quot;
error to enable debugging <a
href="https://redirect.github.com/prometheus/client_golang/issues/1177">#1177</a></li>
<li>[ENHANCEMENT] Add constrained labels and constrained variant for all
MetricVecs <a
href="https://redirect.github.com/prometheus/client_golang/issues/1151">#1151</a></li>
<li>[ENHANCEMENT] Moved away from deprecated github.com/golang/protobuf
package <a
href="https://redirect.github.com/prometheus/client_golang/issues/1183">#1183</a></li>
<li>[ENHANCEMENT] Add possibility to dynamically get label values for
http instrumentation <a
href="https://redirect.github.com/prometheus/client_golang/issues/1066">#1066</a></li>
<li>[ENHANCEMENT] Add ability to Pusher to add custom headers <a
href="https://redirect.github.com/prometheus/client_golang/issues/1218">#1218</a></li>
<li>[ENHANCEMENT] api: Extend and improve efficiency of json-iterator
usage <a
href="https://redirect.github.com/prometheus/client_golang/issues/1225">#1225</a></li>
<li>[ENHANCEMENT] Added (official) support for go 1.20 <a
href="https://redirect.github.com/prometheus/client_golang/issues/1234">#1234</a></li>
<li>[ENHANCEMENT] timer: Added support for exemplars <a
href="https://redirect.github.com/prometheus/client_golang/issues/1233">#1233</a></li>
<li>[ENHANCEMENT] Filter expected metrics as well in CollectAndCompare
<a
href="https://redirect.github.com/prometheus/client_golang/issues/1143">#1143</a></li>
<li>[ENHANCEMENT] ⚠️ Only set start/end if time is not Zero. This
breaks compatibility in experimental api package. If you strictly depend
on empty time.Time as actual value, the behavior is now changed <a
href="https://redirect.github.com/prometheus/client_golang/issues/1238">#1238</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="d7896d4bd0"><code>d7896d4</code></a>
Cut v1.15.0 (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1249">#1249</a>)</li>
<li><a
href="bba12b5514"><code>bba12b5</code></a>
Bump github.com/prometheus/common from 0.41.0 to 0.42.0 (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1244">#1244</a>)</li>
<li><a
href="9015fcfc2c"><code>9015fcf</code></a>
Bump github.com/golang/protobuf from 1.5.2 to 1.5.3 (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1245">#1245</a>)</li>
<li><a
href="1bb8cf8306"><code>1bb8cf8</code></a>
Bump golang.org/x/sys from 0.5.0 to 0.6.0 (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1246">#1246</a>)</li>
<li><a
href="ff7efedd43"><code>ff7efed</code></a>
Merge pull request <a
href="https://redirect.github.com/prometheus/client_golang/issues/1243">#1243</a>
from prometheus/dependabot/go_modules/google.golang....</li>
<li><a
href="852a282f10"><code>852a282</code></a>
Bump google.golang.org/protobuf from 1.28.1 to 1.30.0</li>
<li><a
href="63a3955992"><code>63a3955</code></a>
Merge pull request <a
href="https://redirect.github.com/prometheus/client_golang/issues/1238">#1238</a>
from jacksontj/issue_621</li>
<li><a
href="eb339714f5"><code>eb33971</code></a>
Filter expected metrics as well in CollectAndCompare (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1143">#1143</a>)</li>
<li><a
href="5c7821d84a"><code>5c7821d</code></a>
Update common Prometheus files (<a
href="https://redirect.github.com/prometheus/client_golang/issues/1237">#1237</a>)</li>
<li><a
href="603786389c"><code>6037863</code></a>
Only set start/end if time is not Zero</li>
<li>Additional commits viewable in <a
href="https://github.com/prometheus/client_golang/compare/v1.14.0...v1.15.0">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=github.com/prometheus/client_golang&package-manager=go_modules&previous-version=1.14.0&new-version=1.15.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)


</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-17 20:11:00 +08:00
dependabot[bot]
7be3ea194f mod: bump gorm.io/driver/mysql from 1.4.7 to 1.5.0 (#7424)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 18:35:54 +08:00
dependabot[bot]
d119526bde mod: bump github.com/Masterminds/semver/v3 from 3.2.0 to 3.2.1 (#7422)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 18:32:22 +08:00
dependabot[bot]
c3f1331a5e mod: bump gorm.io/gorm from 1.24.7-0.20230306060331-85eaf9eeda11 to 1.25.0 (#7423)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 18:32:02 +08:00
dependabot[bot]
8de873be86 mod: bump golang.org/x/crypto from 0.7.0 to 0.8.0 (#7421)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-11 18:19:23 +08:00
dependabot[bot]
eeb397a0ac mod: bump golang.org/x/net from 0.8.0 to 0.9.0 (#7419)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-04-10 21:20:59 +08:00
dependabot[bot]
5432293224 mod: bump modernc.org/sqlite from 1.21.0 to 1.21.1 (#7413) 2023-04-03 20:16:33 +08:00
Joe Chen
5da1e62426 locale: sync from Crowdin (#7401) 2023-03-19 22:34:04 +08:00
Joe Chen
057ae983a0 chore(ci): fix typo in docker.yml (#7398)
[skip ci]
2023-03-15 23:23:05 +08:00
dependabot[bot]
f473643d29 mod: bump github.com/niklasfasching/go-org from 1.6.5 to 1.6.6 (#7395)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-13 21:53:19 +08:00
dependabot[bot]
b96b8eb389 mod: bump gorm.io/driver/postgres from 1.4.8 to 1.5.0 (#7393)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-13 21:37:21 +08:00
dependabot[bot]
70777899f8 mod: bump github.com/microcosm-cc/bluemonday from 1.0.22 to 1.0.23 (#7394)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-13 21:36:38 +08:00
dependabot[bot]
cdde49978b mod: bump golang.org/x/crypto from 0.6.0 to 0.7.0 (#7388)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-06 19:10:56 +08:00
dependabot[bot]
0ddab94774 mod: bump gorm.io/gorm from 1.24.5 to 1.24.6 (#7387)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-06 19:08:13 +08:00
TheDarkUndoing
5483d97f73 gitutil: strip SSH port from submodule URL when rendering for HTML link (#7383)
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-03-05 20:00:56 +08:00
dependabot[bot]
6fa552994a mod: bump gopkg.in/macaron.v1 from 1.4.0 to 1.5.0 (#7377)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 09:36:40 +08:00
dependabot[bot]
bd0ab704af mod: bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#7378)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 09:34:55 +08:00
dependabot[bot]
cd7b3cf971 mod: bump modernc.org/sqlite from 1.20.4 to 1.21.0 (#7380)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-03-01 09:34:08 +08:00
Joe Chen
fb6693f612 chore: update release playbook (#7376)
[skip ci]
2023-02-26 12:15:19 +08:00
Joe Chen
a98968436c chore: bump dev version to 0.14 (#7375)
[skip ci]
2023-02-26 12:13:11 +08:00
Joe Chen
540134d443 CHANGELOG: cut entries for 0.13.0 (#7373)
[skip ci]
2023-02-25 20:31:04 +08:00
Joe Chen
6244daa3ea chore: update release issue templates (#7371)
[skip ci]
2023-02-25 20:28:30 +08:00
Joe Chen
689e71ff2c ci: run Go tests with -shuffle=on (#7370) 2023-02-25 16:56:39 +08:00
Joe Chen
361a681225 docs: minor updates (#7367)
[skip ci]
2023-02-25 16:08:34 +08:00
Joe Chen
73ae88badf CHANGELOG: cut entries for 0.12.11 (#7368)
[skip ci]
2023-02-25 13:39:06 +08:00
dependabot[bot]
72d51347ec mod: bump gorm.io/driver/mysql from 1.4.3 to 1.4.7 (#7363)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-20 19:28:14 +08:00
dependabot[bot]
dc37bf5794 mod: bump modernc.org/sqlite from 1.20.3 to 1.20.4 (#7364)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-20 19:15:19 +08:00
dependabot[bot]
9e5fa984f8 mod: bump gorm.io/driver/postgres from 1.4.7 to 1.4.8 (#7362)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-20 19:14:56 +08:00
Joe Chen
3e3d6eda12 chore: update Go versions in CI (#7346) 2023-02-19 18:10:34 +08:00
dependabot[bot]
9110059797 mod: bump golang.org/x/net from 0.6.0 to 0.7.0 (#7358)
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-18 22:19:40 +08:00
Joe Chen
15d0d6a94b fix(db): correctly check Git path on case-insensitive file system (#7359) 2023-02-18 22:15:13 +08:00
Joe Chen
0f8c71d3b3 fix(migration): skip v20 if column sha256 already exists (#7354) 2023-02-14 22:44:23 +08:00
Joe Chen
8f9895acaf fix(db): sanitize user full name after find (#7353) 2023-02-14 21:46:09 +08:00
Joe Chen
2a375007ee fix(repo): be tolerant to implicit submodules (#7352) 2023-02-14 14:46:29 +08:00
dependabot[bot]
c63448e357 mod: bump github.com/gogs/git-module from 1.7.2 to 1.8.0 (#7350)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 22:46:36 +08:00
dependabot[bot]
5db49a8892 mod: bump gorm.io/driver/postgres from 1.4.6 to 1.4.7 (#7349)
[ci skip]

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 22:45:31 +08:00
dependabot[bot]
1a1b50d786 mod: bump golang.org/x/crypto from 0.5.0 to 0.6.0 (#7347)
[ci skip]

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-13 22:43:31 +08:00
Joe Chen
b34ee73497 feat(ssh): support dynamic list of algorithms (#7345) 2023-02-12 13:10:41 +08:00
Joe Chen
92f66c9eac chore: ask for test plan when test cases are not applicable (#7344)
[ci skip]
2023-02-12 12:47:13 +08:00
Joe Chen
3a28168d41 fix(backup): skip "data" in the custom directory (#7343) 2023-02-12 00:14:51 +08:00
Vamsi Atluri
ef1fe1bb3b conf: add new config option for default branch name (#7291)
Co-authored-by: Vamsi Atluri <me@vamc19.dev>
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-02-11 16:37:24 +08:00
Joe Chen
8350daf505 refactor(db): merge relation stores into entity stores (#7341) 2023-02-08 13:55:54 +08:00
Joe Chen
133b9d9044 refactor(db): finish migrate methods off user.go (#7337) 2023-02-07 23:39:00 +08:00
Joe Chen
7c453d5b36 README: update sponsor link (#7340)
[ci skip]
2023-02-07 20:00:31 +08:00
Joe Chen
b6df33fa72 README: update VPS sponsor (#7339)
[ci skip]
2023-02-06 23:17:40 +08:00
dependabot[bot]
8d6b964099 mod: bump gorm.io/gorm from 1.24.3 to 1.24.5 (#7338)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-06 20:08:09 +08:00
Joe Chen
7ff09cf359 refactor(db): migrate methods off user.go (#7336) 2023-02-05 16:28:47 +08:00
Joe Chen
3c43b9b21c locale: sync from Crowdin (#7335) 2023-02-04 20:47:53 +08:00
Zachary Walters
5887bc116f chore: remove usages of the deprecated ioutil (#7332)
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-02-04 13:43:36 +08:00
Joe Chen
6d220540c1 refactor(db): migrate methods off user.go (#7334) 2023-02-04 13:36:00 +08:00
Joe Chen
ed51686240 refactor(db): migrate methods off user.go (#7333) 2023-02-04 12:22:37 +08:00
Joe Chen
cc4d4eacad refactor(db): migrate methods off user.go (#7331) 2023-02-04 00:02:34 +08:00
Joe Chen
c53a1998c5 all: replace interface{} with any (#7330)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2023-02-02 21:25:25 +08:00
Joe Chen
614382fec0 refactor(db): migrate methods off user.go (#7329) 2023-02-02 21:14:27 +08:00
Joe Chen
9df10cb8cc docker: upgrade base images to alpine:3.17 (#7043) 2023-01-30 20:38:53 +08:00
dependabot[bot]
5c47ecfcb8 mod: bump github.com/microcosm-cc/bluemonday from 1.0.21 to 1.0.22 (#7325)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-30 20:24:06 +08:00
dependabot[bot]
3d8004cf6f mod: bump modernc.org/sqlite from 1.20.2 to 1.20.3 (#7321)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-01-26 20:20:11 +08:00
dependabot[bot]
a3e2adeda2 mod: bump github.com/urfave/cli from 1.22.10 to 1.22.12 (#7320)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-24 22:07:28 +08:00
dependabot[bot]
63117f46ee mod: bump github.com/sergi/go-diff from 1.2.0 to 1.3.1 (#7312)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-18 10:07:30 +08:00
dependabot[bot]
cf70284de9 mod: bump gorm.io/gorm from 1.24.2 to 1.24.3 (#7305)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ci skip]
2023-01-09 23:29:05 +08:00
dependabot[bot]
367f2907df mod: bump golang.org/x/crypto from 0.4.0 to 0.5.0 (#7303)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-09 23:22:47 +08:00
Juning
16aded2743 systemd: add mysql.service to "After" (#7300) 2023-01-07 17:02:24 +08:00
dependabot[bot]
12b46b7757 mod: bump modernc.org/sqlite from 1.20.0 to 1.20.2 (#7301)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-01-07 17:00:12 +08:00
dependabot[bot]
6133415f6d mod: bump gorm.io/driver/postgres from 1.4.5 to 1.4.6 (#7299)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2023-01-07 16:52:04 +08:00
dependabot[bot]
c53b7e9698 mod: bump github.com/Masterminds/semver/v3 from 3.1.1 to 3.2.0 (#7275)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 23:20:52 +08:00
dependabot[bot]
c5d07b8bf9 mod: bump modernc.org/sqlite from 1.19.5 to 1.20.0 (#7276)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 23:20:32 +08:00
dependabot[bot]
2fc1e35943 mod: bump golang.org/x/text from 0.4.0 to 0.5.0 (#7277)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-12-08 23:20:12 +08:00
xpume
83335043e2 chore: fix typo in docstring (#7269) 2022-12-08 21:58:01 +08:00
dependabot[bot]
a5ad63a005 mod: bump modernc.org/sqlite from 1.19.4 to 1.19.5 (#7268)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[skip ci]
2022-11-28 18:54:04 +08:00
Joe Chen
ae20d03aec refactor(db): migrate UpdateUser off user.go (#7267) 2022-11-27 19:36:10 +08:00
Joe Chen
44333afd20 chore: consistently use errors.Cause for identifying error types (#7264) 2022-11-27 15:53:26 +08:00
Joe Chen
13099a7e4f refactor(db): add Users.Update (#7263) 2022-11-27 15:19:44 +08:00
Joe Chen
a7dbc970df fix(db): update user.updated_unix upon changing username (#7262) 2022-11-25 23:01:41 +08:00
Joe Chen
644a3a9d78 refactor(db): migrate ChangeUsername off user.go (#7261) 2022-11-25 22:40:20 +08:00
dependabot[bot]
93736cbc12 mod: bump github.com/derision-test/go-mockgen from 1.3.6 to 1.3.7 (#7243)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[skip ci]
2022-11-15 22:48:45 +08:00
dependabot[bot]
b157cc8b06 mod: bump github.com/prometheus/client_golang from 1.13.1 to 1.14.0 (#7245)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[skip ci]
2022-11-15 22:47:16 +08:00
dependabot[bot]
1d65c8e3ef mod: bump modernc.org/sqlite from 1.19.3 to 1.19.4 (#7233)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-10 22:15:12 +08:00
dependabot[bot]
cdf4f59cb4 mod: bump github.com/prometheus/client_golang from 1.13.0 to 1.13.1 (#7232)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-11-10 22:14:12 +08:00
Joe Chen
5fb29db2db refactor(db): migrate methods off and delete deprecated methods from user.go (#7231) 2022-11-05 23:33:05 +08:00
Joe Chen
b5d47b9692 refactor(db): migrate methods off user.go (#7230) 2022-11-05 18:56:48 +08:00
Joe Chen
fd798b4197 refactor(db): migrate methods off user.go (#7228) 2022-11-05 17:55:05 +08:00
Joe Chen
a66c90462d refactor(db): migrate methods off user.go and org.go (#7219) (#7227) 2022-11-05 13:12:53 +08:00
dependabot[bot]
3af5a424f0 mod: bump github.com/derision-test/go-mockgen from 1.3.4 to 1.3.6 (#7224)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ci skip]
2022-10-31 22:31:28 +08:00
dependabot[bot]
a9e3fa3ce5 mod: bump modernc.org/sqlite from 1.19.2 to 1.19.3 (#7223)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ci skip]
2022-10-31 22:30:51 +08:00
dependabot[bot]
75ee18f87e mod: bump github.com/gogs/git-module from 1.7.0 to 1.7.1 (#7222)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

[ci skip]
2022-10-31 22:30:13 +08:00
Joe Chen
d44978c940 locale: update [settings] access_token_tips (#7221) 2022-10-31 12:02:06 +08:00
Joe Chen
516cf7d077 locale: sync from Crowdin (#7220) 2022-10-31 11:55:24 +08:00
Joe Chen
1905b19ee7 refactor(db): migrate methods off user.go (#7219) 2022-10-30 23:04:24 +08:00
Joe Chen
131be6e074 refactor(db): migrate helpers off user_cache.go (#7214) 2022-10-24 23:45:31 +08:00
dependabot[bot]
49be63abbf mod: bump gorm.io/driver/postgres from 1.4.4 to 1.4.5 (#7212)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-24 19:41:03 +08:00
dependabot[bot]
f2b158159c mod: bump github.com/stretchr/testify from 1.8.0 to 1.8.1 (#7213)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-24 19:40:37 +08:00
Joe Chen
f6acc4763e test(db): add missing tests (#7208) 2022-10-23 21:53:11 +08:00
Joe Chen
3265abfbc2 refactor(db): migrate perms methods off user.go (#7207) 2022-10-23 21:22:36 +08:00
Joe Chen
d0a4a3401c refactor(db): migrate avatar methods off user.go (#7206) 2022-10-23 20:54:16 +08:00
Joe Chen
c58c893621 refactor(db): migrate password methods off user.go (#7205) 2022-10-23 19:15:14 +08:00
Joe Chen
ef0388045f chore: rename file to align with type name (#7204)
[ci skip]
2022-10-23 16:48:45 +08:00
Joe Chen
b1fefcbe50 refactor(db): migrate Follow off user.go (#7203) 2022-10-23 16:17:53 +08:00
Joe Chen
8077360cf6 chore(db): remove unused field (#7202) 2022-10-23 00:15:43 +08:00
Joe Chen
2e020b1cf6 release: update playbook (#7201) 2022-10-23 00:04:53 +08:00
Mateusz Reszka
742bc36edd api: support put content (#7114)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-10-22 23:52:48 +08:00
Yarden Shoham
a7299bbb8d ui: remove useless "Cancel" buttons (#7192)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-10-22 23:00:42 +08:00
Joe Chen
11edc09681 refactor: replace ioutil.ReadAll with io.ReadAll (#7200) 2022-10-22 21:34:53 +08:00
Yang Liu
b9f5cfddc1 auth: enable authentication by token from password (#7198)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-10-22 21:25:36 +08:00
LJea
fd5874b07b ui: add usage instructions for PAT (#7194)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-10-22 20:07:52 +08:00
Joe Chen
ce25881c88 refactor(db): move some methods off user.go (#7199) 2022-10-22 20:01:38 +08:00
Joe Chen
7cbd84d5b3 refactor(db): rename User.Passwd to User.Password (#7196) 2022-10-22 14:56:25 +08:00
Joe Chen
c502dc6ed8 refactor(db): move some methods from user.go to users.go (#7195) 2022-10-22 14:41:40 +08:00
dependabot[bot]
260e990be7 mod: bump golang.org/x/text from 0.3.7 to 0.4.0 (#7193)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 18:46:38 +08:00
dependabot[bot]
2df4b61eb2 mod: bump modernc.org/sqlite from 1.19.1 to 1.19.2 (#7190)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 18:35:43 +08:00
dependabot[bot]
689991578e mod: bump gorm.io/driver/mysql from 1.4.1 to 1.4.3 (#7189)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-18 18:34:13 +08:00
dependabot[bot]
a9bce79c6b mod: bump gorm.io/gorm from 1.23.10 to 1.24.0 (#7179)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-10-10 20:16:45 +08:00
dependabot[bot]
ac86936797 mod: bump gorm.io/driver/postgres from 1.3.10 to 1.4.4 (#7180)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-10 19:56:53 +08:00
dependabot[bot]
dcf9c111b6 mod: bump gorm.io/driver/mysql from 1.3.6 to 1.4.1 (#7178)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-10 19:44:34 +08:00
Joe Chen
50e5766867 build: remove support of Go 1.17 (#7177) 2022-10-09 23:12:03 +08:00
Joe Chen
8982a42d38 refactor(db): move User.HasForkedRepository to users.HasForkedRepository (#7176)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-10-09 22:55:32 +08:00
dependabot[bot]
fb00e3e56f mod: bump github.com/microcosm-cc/bluemonday from 1.0.20 to 1.0.21 (#7169)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-04 16:24:00 +08:00
dependabot[bot]
a0b8f5464e mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.4.5 to 2.5.1 (#7170)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-10-04 16:23:19 +08:00
dependabot[bot]
777fb14fc9 mod: bump gorm.io/gorm from 1.23.9 to 1.23.10 (#7166)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-27 20:31:42 +08:00
dependabot[bot]
25d6b168c5 mod: bump modernc.org/sqlite from 1.18.2 to 1.19.1 (#7162)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-21 08:50:56 +08:00
dependabot[bot]
c9fd177998 mod: bump gorm.io/gorm from 1.23.8 to 1.23.9 (#7163)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-20 23:46:19 +08:00
dependabot[bot]
02973f7f80 mod: bump gorm.io/driver/postgres from 1.3.9 to 1.3.10 (#7164)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-20 23:45:54 +08:00
dependabot[bot]
360280b0ea mod: bump modernc.org/sqlite from 1.18.1 to 1.18.2 (#7161)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-12 22:39:49 +08:00
Joe Chen
82e29c6bd3 locale: sync from Crowdin (#7159) 2022-09-11 17:09:47 +08:00
dependabot[bot]
cefbaa08d9 mod: bump github.com/microcosm-cc/bluemonday from 1.0.19 to 1.0.20 (#7154)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-06 01:56:47 +08:00
dependabot[bot]
87def3de5f mod: bump github.com/urfave/cli from 1.22.9 to 1.22.10 (#7155)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-06 01:56:12 +08:00
dependabot[bot]
9ea258e97f mod: bump gorm.io/driver/postgres from 1.3.8 to 1.3.9 (#7141)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 20:58:37 +08:00
dependabot[bot]
7e6fc2603e mod: bump modernc.org/sqlite from 1.18.0 to 1.18.1 (#7139)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 20:39:16 +08:00
dependabot[bot]
4487890979 mod: bump gopkg.in/ini.v1 from 1.66.6 to 1.67.0 (#7140)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 20:38:55 +08:00
dependabot[bot]
be775e2ffa mod: bump github.com/derision-test/go-mockgen from 1.3.3 to 1.3.4 (#7142)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 20:37:39 +08:00
dependabot[bot]
cee6ef39ee mod: bump gorm.io/driver/mysql from 1.3.5 to 1.3.6 (#7143)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-15 20:37:15 +08:00
dependabot[bot]
5910265e13 mod: bump github.com/prometheus/client_golang from 1.12.2 to 1.13.0 (#7130)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-08 19:15:21 +08:00
Joe Chen
a43b933c90 go: update required version to be 1.17 and add 1.19 to CI (#7129)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-08-08 13:56:50 +08:00
dependabot[bot]
cfa5ddbde8 mod: bump github.com/go-ldap/ldap/v3 from 3.4.3 to 3.4.4 (#7117)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-02 15:24:47 +08:00
dependabot[bot]
a21f0b0540 mod: bump modernc.org/sqlite from 1.17.3 to 1.18.0 (#7116)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-02 15:24:21 +08:00
Joe Chen
ad796b8ba5 CHANGELOG: cut entries for 0.12.10 (#7119)
[skip ci]
2022-08-02 10:43:14 +08:00
Joe Chen
db82024fc7 netutil: allow using * to match any hostname (#7111) 2022-07-25 21:38:15 +08:00
Christian Eichert
780b33c639 chore: add Simona Iacob as translator for Romanian language (#7102) 2022-07-17 15:17:49 +08:00
Yehonatan Ezron
a5d3e1900e api: support getting blob content (#7080)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-07-17 15:16:52 +08:00
dependabot[bot]
ab7133b35a mod: bump gorm.io/gorm from 1.23.7 to 1.23.8 (#7105)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-17 15:05:30 +08:00
dependabot[bot]
75cc3ce172 mod: bump gorm.io/driver/mysql from 1.3.4 to 1.3.5 (#7104)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-17 15:04:36 +08:00
liuxhit
05a6a9d6e9 docker: support adding extra options to backup command (#7060)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-07-17 14:52:35 +08:00
dependabot[bot]
25a2b716ad mod: bump gorm.io/driver/postgres from 1.3.7 to 1.3.8 (#7098)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-07-05 08:46:12 +08:00
dependabot[bot]
1d48df3fd1 mod: bump github.com/stretchr/testify from 1.7.5 to 1.8.0 (#7097)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-04 23:19:58 +08:00
dependabot[bot]
b8294a460e mod: bump github.com/microcosm-cc/bluemonday from 1.0.18 to 1.0.19 (#7099)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-04 23:18:54 +08:00
dependabot[bot]
6043bf20fe mod: bump gorm.io/gorm from 1.23.6 to 1.23.7 (#7096)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-04 23:17:13 +08:00
Joe Chen
1cd501b107 chore: go mod tidy (#7086) 2022-06-27 20:30:16 +08:00
dependabot[bot]
0022566a3a mod: bump github.com/stretchr/testify from 1.7.2 to 1.7.5 (#7083)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-27 20:13:54 +08:00
dependabot[bot]
5f3d44ec00 mod: bump github.com/gogs/git-module from 1.6.0 to 1.7.0 (#7084)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-27 20:04:50 +08:00
Joe Chen
25b49294b2 conf: update test golden file (#7085) 2022-06-27 20:04:16 +08:00
Joe Chen
a8e43f63a1 locale: sync from Crowdin (#7082) 2022-06-26 11:09:33 +08:00
Joe Chen
fb52bd6fea db: set XORM log level to error (#7078) 2022-06-25 21:17:55 +08:00
Joe Chen
bc5c739047 pkgr: update supported distributions (#7077)
[skip ci]
2022-06-25 20:58:01 +08:00
Joe Chen
97ccb365ec webhook: validate against hostname instead of full URL (#7075) 2022-06-25 20:36:05 +08:00
Joe Chen
083c3ee659 db: refactor "action" table to use GORM (#7054)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-06-25 18:07:39 +08:00
dependabot[bot]
9df4e3ae3c mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.4.4 to 2.4.5 (#7067)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-20 20:26:59 +08:00
Joe Chen
4a3dc6c774 db: skip auto migrate for existing "version" table (#7057) 2022-06-14 15:47:11 +08:00
dependabot[bot]
c0db4a7f1b mod: bump gorm.io/gorm from 1.23.5 to 1.23.6 (#7052)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 19:42:13 +08:00
dependabot[bot]
04fe4c86ec mod: bump github.com/derision-test/go-mockgen from 1.2.0 to 1.3.3 (#7053)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-13 19:41:28 +08:00
Joe Chen
b772603d78 migrations: add tests and remove XORM (#7050) 2022-06-12 14:15:01 +08:00
Joe Chen
2e19f5a3c8 db: add tests for authentication through login sources (#7049) 2022-06-12 10:34:12 +08:00
Joe Chen
63cb76106a chore: fix typo in codecov.yml (#7047)
[skip ci]
2022-06-11 17:35:30 +08:00
Joe Chen
1df62fafb9 db: use context and go-mockgen for ReposStore (#7046) 2022-06-11 12:43:56 +08:00
Joe Chen
5e32058c13 db: use context and go-mockgen for TwoFactorsStore (#7045) 2022-06-11 11:54:11 +08:00
Joe Chen
75fbb82440 db: use context for backup and restore (#7044) 2022-06-11 11:10:25 +08:00
Joe Chen
f837ea6346 db: use context and go-mockgen for UsersStore (#7042) 2022-06-11 09:42:17 +08:00
Joe Chen
9776bdc9b8 db: use context and go-mockgen for login sources (#7041) 2022-06-10 19:54:36 +08:00
Joe Chen
94059f291d db: use context and go-mockgen for LFSStore (#7038) 2022-06-10 11:27:06 +08:00
shlande
318fb25761 web: enable ETag to improve loading speed of static resources (#7035)
Co-authored-by: shlande <shlandeme@icloud.com>
2022-06-09 09:48:03 +08:00
Joe Chen
577621d463 mod: use github.com/gogs/gorm-sqlite as the SQLite driver (#7034) 2022-06-08 19:30:17 +08:00
Joe Chen
7229dd893f db: use context and go-mockgen for PermsStore (#7033) 2022-06-08 19:26:20 +08:00
Joe Chen
0918d8758b db: add back xorm tag for AccessToken.UserID (#7032) 2022-06-08 14:47:15 +08:00
Joe Chen
fe1d07f29c db: rename AccessTokensStore.Save to Touch (#7029) 2022-06-08 13:34:10 +08:00
Joe Chen
390fd3d283 docker: remove outdated info from README (#7028)
[skip ci]
2022-06-08 08:51:09 +08:00
Joe Chen
8304574738 release: minor updates to templates and docs (#7027)
[skip ci]
2022-06-08 01:32:37 +08:00
Joe Chen
727d4dbbe0 mod: update gorm.io/driver/sqlite to 1.3.2 (#7025) 2022-06-07 23:34:33 +08:00
Joe Chen
d6c6b901f0 CHANGELOG: cut entries for 0.12.9 (#7024)
[skip ci]
2022-06-07 21:30:42 +08:00
Joe Chen
9bf748b6c4 http: clean request path from Git endpoints (#7022) 2022-06-07 21:11:36 +08:00
Joe Chen
e3706575d5 ci: pin go-mockgen to 1.2.0 (#7021) 2022-06-07 20:38:54 +08:00
Joe Chen
2ca014250f pathutil: check both styles of os.PathSeparator (#7020) 2022-06-07 20:34:46 +08:00
dependabot[bot]
325904ce5a mod: bump github.com/niklasfasching/go-org from 1.6.2 to 1.6.5 (#7015)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:51:18 +08:00
dependabot[bot]
fa36765373 mod: bump github.com/stretchr/testify from 1.7.1 to 1.7.2 (#7016)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:50:52 +08:00
dependabot[bot]
55a8079c83 mod: bump gopkg.in/ini.v1 from 1.66.5 to 1.66.6 (#7017)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 22:50:33 +08:00
Joe Chen
0a92ad27ef db: use context and go-mockgen for AccessTokensStore (#7013) 2022-06-06 12:10:36 +08:00
Joe Chen
4cc3000b07 schemadoc: print table indexes (#7012) 2022-06-05 18:08:59 +08:00
E99p1ant
a328e7ccc4 access_token: encrypt access token with SHA256 (#7008)
* access_token: encrypt access token with SHA256

* revert list access token

* fix lint

* generate schemadoc

* add database migrations

* fix tests

* fix tests

* add test case for access token golden

* fix test in postgres

* `Sha256` -> `SHA256`

* Use GORM for migration

* task generate-schemadoc

* Use unique

* change migration name

* allow read

* task generate-schemadoc

* add changelog

* fix lint error

* update changelog

* remove Debug

* add comments

Co-authored-by: Joe Chen <jc@unknwon.io>
2022-06-05 13:34:21 +08:00
E99p1ant
155cae1de8 issues: sanitize DisplayName (#7009)
* issues: display issue poster’s `Name` instead of `DisplayName`

* sanitize display name

* update changelog
2022-06-05 00:53:15 +08:00
Joe Chen
64e09476c7 ci: check tidiness of "task generate-schemadoc" (#7007) 2022-06-04 14:40:21 +08:00
Joe Chen
4455cc1244 db: code tidy up for AccessTokens (#7006) 2022-06-04 13:35:42 +08:00
Joe Chen
38aff73251 repo_editor: check both styles of os.PathSeparator in all systems (#7005) 2022-06-04 13:11:29 +08:00
Joe Chen
69827490e0 pull: ignore PR status check if head repository is missing (#7004) 2022-06-04 13:10:15 +08:00
Joe Chen
75e10445ca http: fix non-sense NotFound call (#7003) 2022-06-04 10:44:54 +08:00
Joe Chen
5f0999243a ci: add Codeball (#6997)
[skip ci]
2022-06-03 21:16:52 +08:00
Joe Chen
09ddb8761f repo: remove hard-coded branch name in init (#6999) 2022-06-03 17:14:21 +08:00
Joe Chen
ccdcb1c45b db: run tests with pure-Go SQLite (#6998) 2022-06-03 10:03:48 +08:00
Joe Chen
5f34265db6 ci: run database tests against Postgres, MySQL and SQLite (#6996) 2022-06-01 22:51:46 +08:00
Joe Chen
05cdf8616b chore: update release issue templates (#6993)
[skip ci]
2022-05-31 19:07:43 +08:00
Joe Chen
c0941f4631 CHANGELOG: cut entries for 0.12.8 (#6992)
[skip ci]
2022-05-31 16:47:13 +08:00
Joe Chen
5414ae14a9 CHANEGLOG: add missing entry for #6988 (#6990)
[skip ci]
2022-05-31 15:48:40 +08:00
Joe Chen
b782400b92 locale: sync from Crowdin (#6989) 2022-05-31 15:48:21 +08:00
Joe Chen
7885f454a4 webhook: revalidate local hostname before each delivery (#6988) 2022-05-31 15:17:17 +08:00
Joe Chen
90bc752297 repo_editor: prohibit move files to to .git directory (#6986) 2022-05-31 15:10:00 +08:00
1135
519aeefbd9 repo_editor: prohibits uploading files to .git. directory (#6970)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-30 19:14:41 +08:00
dependabot[bot]
649e9e7f8c mod: bump gorm.io/driver/mysql from 1.3.3 to 1.3.4 (#6985)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-30 19:01:11 +08:00
dependabot[bot]
d466c96229 mod: bump gopkg.in/ini.v1 from 1.66.4 to 1.66.5 (#6984)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-30 19:00:49 +08:00
dependabot[bot]
38dbfee56c mod: bump gorm.io/driver/postgres from 1.3.6 to 1.3.7 (#6983)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-30 18:49:43 +08:00
Joe Chen
069d832a51 docker: push ephemeral image to ttl.sh for pull requests (#6981)
[skip ci]
2022-05-29 22:37:13 +08:00
Joe Chen
04d3946511 web: print accessible URL on startup (#6979) 2022-05-29 19:45:40 +08:00
Joe Chen
d7bda9ac0e build: remove Makefile and update Docker build steps (#6980) 2022-05-29 19:45:25 +08:00
Joe Chen
8356dc7774 locale: sync from Crowdin (#6978) 2022-05-29 15:10:21 +08:00
Joe Chen
1496988ac1 docs: use "go install" instead of "go get" (#6972) 2022-05-27 08:36:38 +08:00
Toby Simmons
d54e153fc8 csrf: sanitize token after reading from cookie (#6969)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-26 23:56:14 +08:00
Naveen
e65071d3aa chore: Set permissions for GitHub actions (#6936) 2022-05-26 01:05:29 +08:00
Songsong Wang
b4624bd468 chore: update README_ZH.md (#6960)
[skip ci]

Co-authored-by: Joe Chen <jc@unknwon.io>
2022-05-25 18:27:24 +08:00
dependabot[bot]
bdff033492 mod: bump gorm.io/driver/postgres from 1.3.5 to 1.3.6 (#6964)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-23 20:35:06 +08:00
Joe Chen
e01b0ce0d1 codecov: make patch status to be informational (#6952) 2022-05-16 20:58:35 +08:00
Joe Chen
c4b770f305 chore: fix lint errors (#6951) 2022-05-16 20:57:19 +08:00
dependabot[bot]
a6c53eb068 mod: bump github.com/prometheus/client_golang from 1.12.1 to 1.12.2 (#6950)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-16 19:42:12 +08:00
Joe Chen
705126cac8 locale: sync from Crowdin (#6948) 2022-05-15 02:15:24 +08:00
dependabot[bot]
cdc904e49e mod: bump github.com/urfave/cli from 1.22.8 to 1.22.9 (#6938)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-09 19:39:16 +08:00
Joe Chen
7ca5c8ca72 chore: update release templates (#6935) 2022-05-07 00:16:46 +08:00
Joe Chen
e51e016834 CHANGELOG: cut entries for 0.12.7 (#6931)
[skip ci]
2022-05-05 16:09:17 +08:00
Joe Chen
f7802b9227 release: add step to publish GitHub security advisory (#6929) 2022-05-05 15:57:50 +08:00
Joe Chen
a76aff36d0 CHANGELOG: add entry for #6926 (#6928) 2022-05-05 15:57:32 +08:00
Joe Chen
f45dbf3e76 chore: watch "custom" directory in dev and use lowercase for header value (#6927) 2022-05-03 17:54:14 +08:00
Joe Chen
cb35b73048 attachment: set CSP header in the serving endpoint (#6926) 2022-05-03 17:51:28 +08:00
dependabot[bot]
a61a4389ec mod: bump github.com/urfave/cli from 1.22.7 to 1.22.8 (#6925)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-02 20:58:08 +08:00
dependabot[bot]
f1755f5bc5 mod: bump gorm.io/gorm from 1.23.4 to 1.23.5 (#6924)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-02 20:57:37 +08:00
Joe Chen
71fc57f8a0 chore: fix dead link in pull request template (#6922)
[skip ci]
2022-04-27 20:29:54 +08:00
4e4o
f2c3027f50 restore: fix incorrect existence checking of "repositories.zip" (#6914) 2022-04-27 10:32:13 +08:00
vinceAmstoutz
39adf6e55a chore: update TRANSLATORS (#6912) 2022-04-27 10:19:59 +08:00
Joe Chen
4d33a5b5a8 locale: sync from Crowdin (#6920) 2022-04-26 17:46:22 +08:00
dependabot[bot]
26fce15bcf mod: bump gorm.io/driver/postgres from 1.3.4 to 1.3.5 (#6917)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-25 20:33:16 +08:00
dependabot[bot]
a230b3de22 mod: bump github.com/urfave/cli from 1.22.5 to 1.22.7 (#6918)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-25 20:32:36 +08:00
dependabot[bot]
e5350b9627 mod: bump github.com/go-ldap/ldap/v3 from 3.4.2 to 3.4.3 (#6905)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 19:38:46 +08:00
dependabot[bot]
a7693cbc86 mod: bump gorm.io/driver/postgres from 1.3.3 to 1.3.4 (#6904)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-11 19:38:18 +08:00
Joe Chen
69514d2fc8 SECURITY: refer dummy issue to a simpler example (#6902) 2022-04-09 14:02:32 +08:00
Joe Chen
0778db4228 CHANGELOG: add missing entries (#6899)
[skip ci]
2022-04-06 21:30:55 +08:00
dependabot[bot]
5911b0296b mod: bump gorm.io/driver/mysql from 1.3.2 to 1.3.3 (#6892)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-05 16:49:08 +08:00
dependabot[bot]
8acbc2d1de mod: bump gorm.io/gorm from 1.23.3 to 1.23.4 (#6891)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-05 16:48:54 +08:00
Joe Chen
f37a8d82c1 codecov: make status only informational (#6897)
[skip ci]
2022-04-05 16:47:46 +08:00
dependabot[bot]
2601b40ffa mod: bump github.com/gogs/git-module from 1.5.0 to 1.6.0 (#6894)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-04-05 16:45:01 +08:00
Joe Chen
5acbd7bcc3 dependabot: request reviews from the core team (#6896)
[skip ci]
2022-04-05 16:41:17 +08:00
dependabot[bot]
5910f77e42 mod: bump gorm.io/driver/postgres from 1.3.1 to 1.3.3 (#6893)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-05 16:39:27 +08:00
Renzo Toma
efa572162f webhook: add missing %s URL value for webhook description (#6478)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-04-04 17:40:34 +08:00
Joe Chen
5c4db08968 locale: sync from Crowdin (#6888) 2022-04-02 19:04:55 +08:00
Joe Chen
f44a693bbd docs: remove task generate-bindata step from sync from Crowdin (#6887)
[skip ci]
2022-04-02 19:03:58 +08:00
Joe Chen
3f439f15c3 mod: update golang.org/x/crypto/ssh (#6884) 2022-04-01 09:54:42 +08:00
Joe Chen
6dbeb16d21 Taskfile: watch go.mod and use timestamp instead of checksum (#6885)
[skip ci]
2022-04-01 09:51:30 +08:00
Joe Chen
c5549b442b templates: use OldIndex for delete files in diff (#6878) 2022-03-28 21:47:07 +08:00
dependabot[bot]
70c6f0a490 mod: bump github.com/gogs/git-module from 1.4.0 to 1.5.0 (#6877)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-28 21:36:21 +08:00
Joe Chen
f37cd9672c restore: clean up leftover and invalid chars (#6875) 2022-03-26 15:10:39 +08:00
Joe Chen
9bce320160 Taskfile: fix incorrect sources syntax (#6874)
[skip ci]
2022-03-25 22:12:51 +08:00
Joe Chen
22fb91cff9 Taskfile: remove trailing period in task description (#6873)
[skip ci]
2022-03-25 18:38:40 +08:00
dependabot[bot]
3c49a6173d mod: bump github.com/gogs/git-module from 1.2.0 to 1.4.0 (#6866)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-22 00:55:36 +08:00
dependabot[bot]
d66fe583d5 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.4.3 to 2.4.4 (#6865)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 18:49:41 +08:00
dependabot[bot]
72c2d6ab70 mod: bump github.com/stretchr/testify from 1.7.0 to 1.7.1 (#6867)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 18:49:11 +08:00
dependabot[bot]
70ff8d787a mod: bump gorm.io/gorm from 1.23.2 to 1.23.3 (#6864)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-21 18:48:47 +08:00
Joe Chen
0300f88602 docs: tweak release matters (#6860)
[skip ci]
2022-03-19 17:10:00 +08:00
Joe Chen
f36eeedbf8 CHANGELOG: cut entries for 0.12.6 (#6858)
[skip ci]
2022-03-19 14:06:23 +08:00
Joe Chen
e10ec6f3b8 pkgr: remove debian-8 and ubuntu-14.04 (#6853)
[skip ci]
2022-03-17 15:00:23 +08:00
Joe Chen
d753a48a7d docs: remove instructions to install go-bindata (#6852)
[skip ci]
2022-03-17 14:09:00 +08:00
Michael Li
32c454ba5f assets: convert usage of go-bindata to Go embed (#6851)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-17 14:05:09 +08:00
Joe Chen
39f64a1371 go: update required version to be 1.16 (#6850) 2022-03-16 12:18:27 +08:00
Joe Chen
3539de754d ci: delete Go 1.15 and add Go 1.18 (#6847) 2022-03-16 02:04:27 +08:00
Joe Chen
1791665f74 chore: run task generate (#6844) 2022-03-15 22:42:22 +08:00
tc608
def6fcc4dc templates: fetch fixed size of members' avatar (#5755)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-15 22:12:08 +08:00
Joe Chen
d392bc6e9a workflows: lock closed threads after 90 days (#6843) 2022-03-15 21:30:13 +08:00
Joe Chen
714383a063 conf: add allowlist for accessing local network (#6842) 2022-03-14 22:06:08 +08:00
Joe Chen
a2c6325261 codecov: disable GitHub Checks (#6840)
[skip ci]
2022-03-14 12:52:50 +08:00
Joe Chen
aeb5e34490 golangci-lint: add unparam linter (#6839) 2022-03-13 22:37:00 +08:00
Joe Chen
775901058d repo_editor: check upload TreePath and file name (#6838) 2022-03-13 22:18:56 +08:00
Joe Chen
3e35371754 chore: fix typo in release issue templates (#6831)
[skip ci]
2022-03-11 15:04:47 +08:00
Joe Chen
bd12d46e79 CHANGELOG: cut entries for 0.12.5 (#6830)
[skip ci]
2022-03-11 15:04:12 +08:00
Joe Chen
82ee089088 SECURITY: clarify vulnerability lifecycle (#6828)
[skip ci]
2022-03-11 14:25:09 +08:00
Bo Lorentsen
61529fd780 docker: check "/data" mount ownership before forcing it (#6553)
Co-authored-by: bl <bl@moch.dk>
2022-03-11 12:29:51 +08:00
Joe Chen
aac91b3611 lsif: update upload endpoint (#6827)
Co-authored-by: Sourcegraph <batch-changes@sourcegraph.com>
2022-03-10 23:30:03 +08:00
dependabot[bot]
4ca87057f3 mod: bump gorm.io/gorm from 1.22.5 to 1.23.2 (#6817)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-08 20:44:30 +08:00
deepsource-autofix[bot]
553d32ce7d autofix: format code with gofmt and gofumpt (#6821)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>

[skip ci]
2022-03-08 20:35:31 +08:00
ysf
940a7da9d1 security: fix improper PAM authorization handling (#6819)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-08 20:02:01 +08:00
Michael Rowley
242deca524 security: fix SSRF in repository migration (#6812)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-08 11:34:53 +08:00
Nicolas Ferrari
bb19f52c05 README: Add alwaysdata to Cloud providers (#6818)
[skip ci]
2022-03-07 23:48:04 +08:00
dependabot[bot]
e75ee730b8 mod: bump github.com/niklasfasching/go-org from 1.6.1 to 1.6.2 (#6816)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-03-07 23:07:29 +08:00
Joe Chen
36102f1689 security: encourage reporting vulnerabilities through huntr.dev (#6811)
[skip ci]
2022-03-06 20:13:56 +08:00
deepsource-autofix[bot]
e452d94fc8 autofix: format code with gofumpt and gofmt (#6803)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 17:55:17 +08:00
deepsource-autofix[bot]
2466da4e82 autofix: fix nested if with else if (#6807)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:39:14 +08:00
deepsource-autofix[bot]
09dbbf9a69 autofix: fix unused method receiver (#6808)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:37:41 +08:00
deepsource-autofix[bot]
b7372b1f32 autofix: fix unnecessary allocations due to strings.Index call (#6806)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:34:01 +08:00
deepsource-autofix[bot]
5afca6ca8e autofix: function call can be replaced with helper function (#6805)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:33:55 +08:00
deepsource-autofix[bot]
deec3516d5 autofix: fix check for empty string (#6804)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:33:45 +08:00
deepsource-autofix[bot]
65526f84e1 chore: update .deepsource.toml (#6802)
Co-authored-by: DeepSource Bot <bot@deepsource.io>
2022-03-06 16:14:48 +08:00
deepsource-autofix[bot]
442609fa17 autofix: simplify slice expression to sliced value itself (#6801)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 16:03:27 +08:00
deepsource-autofix[bot]
2d609b8b31 autofix: types of function parameters can be combined (#6800)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 15:59:45 +08:00
deepsource-autofix[bot]
3acc13038d autofix: unused parameter should be replaced by underscore (#6799)
Co-authored-by: deepsource-autofix[bot] <62050782+deepsource-autofix[bot]@users.noreply.github.com>
2022-03-06 15:46:21 +08:00
deepsource-autofix[bot]
ab96a4f0d8 chore: add .deepsource.toml (#6798)
Co-authored-by: DeepSource Bot <bot@deepsource.io>
2022-03-06 14:02:28 +08:00
shuyue
7c893a58da markdown: support rendering Mermaid diagrams (#6776)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-03-05 19:23:08 +08:00
Joe Chen
ed81fc5a01 docs: update release playbook for ARMv7 (#6792)
[skip ci]
2022-03-02 18:49:16 +08:00
dependabot[bot]
8f6c4341f7 mod: bump github.com/gogs/git-module from 1.1.5 to 1.2.0 (#6791)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 19:11:39 +08:00
dependabot[bot]
175e4f228d mod: bump github.com/go-ldap/ldap/v3 from 3.4.1 to 3.4.2 (#6790)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 19:10:46 +08:00
dependabot[bot]
325f4f9560 mod: bump github.com/niklasfasching/go-org from 0.1.9 to 1.6.1 (#6789)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-28 19:10:22 +08:00
Joe Chen
c7e8c145d1 ci: check Go module tidiness (#6787)
[skip ci]
2022-02-27 19:58:23 +08:00
Simone Cattaneo
6d77712b1b dep: update github.com/go-ldap/ldap to v3 (#6763)
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-02-26 18:43:51 +08:00
Joe Chen
8442d8530a contributing: add guide for making proposals (#6784)
[skip ci]
2022-02-25 21:19:37 +08:00
Joe Chen
9a164bcb45 README: use branch check status instead of workflow (#6783) 2022-02-25 15:10:52 +08:00
dependabot[bot]
8a1a40ce6a mod: bump github.com/microcosm-cc/bluemonday from 1.0.17 to 1.0.18 (#6771)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 22:15:00 +08:00
dependabot[bot]
f6494d22ee mod: bump gopkg.in/ini.v1 from 1.66.2 to 1.66.4 (#6770)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-14 22:14:25 +08:00
dependabot[bot]
3d24360f20 mod: bump gorm.io/gorm from 1.22.4 to 1.22.5 (#6769)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-11 18:50:45 +08:00
Joe Chen
815624c88a contributing: add links of articles for the guide
[skip ci]
2022-02-10 20:11:36 +08:00
dependabot[bot]
47a996ba4b mod: bump github.com/prometheus/client_golang from 1.12.0 to 1.12.1 (#6756)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-02-07 23:24:37 +08:00
dependabot[bot]
5e8444ed0f mod: bump github.com/prometheus/client_golang from 1.11.0 to 1.12.0 (#6745)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-26 12:37:18 +08:00
Joe Chen
dfe8fbde84 docker: remove healthcheck against the SSH port (#6742) 2022-01-20 16:11:35 +08:00
Joe Chen
3a5ccc18cf docker: delete Dockerfile.rpi (#6741)
[skip ci]
2022-01-20 14:20:18 +08:00
Joe Chen
82e5fd018b docs: delete and re-create Docker manifest for release (#6739)
[skip ci]
2022-01-20 12:57:08 +08:00
Joe Chen
2071eb634f docs: update release templates and playbook (#6735)
[skip ci]
2022-01-18 11:58:09 +08:00
Joe Chen
e6c5633f58 CHANGELOG: cut entries for 0.12.4 (#6733)
[skip ci]
2022-01-17 09:21:59 +08:00
Joe Chen
6ccc1ce804 docs: update links to release templates (#6729)
[skip ci]
2022-01-16 19:04:28 +08:00
Joe Chen
74886d95d0 docs: update release templates (#6728)
[skip ci]
2022-01-16 18:51:17 +08:00
Joe Chen
acf2df3688 mailmap: update replacements
[skip ci]
2022-01-13 11:29:50 +08:00
Joe Chen
9ae80a6173 chore: rename few consts to camel case (#6725) 2022-01-13 11:27:16 +08:00
Joe Chen
c8476b1c2e docker: add job for pull requests from forks (#6724) 2022-01-13 11:04:54 +08:00
Alex Zhao
cbe775aee2 docker: fix nc command (#6722) 2022-01-13 10:35:24 +08:00
Joe Chen
5e43fa92ff markup: use default link formation when no format in metas (#6723) 2022-01-13 10:13:36 +08:00
Joe Chen
539e2a8b42 github: update dead links in issue forms (#6721) 2022-01-11 23:48:04 +08:00
dependabot[bot]
5f250de8ad mod: bump gorm.io/driver/mysql from 1.0.3 to 1.2.3 (#6717)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-10 20:06:36 +08:00
Joe Chen
2e625a051d locale: sync from Crowdin (#6714) 2022-01-08 16:43:46 +08:00
Joe Chen
3e948fd792 contributing: add Philosophy and methodology (#6713)
[skip ci]
2022-01-08 14:55:50 +08:00
Nuyube
b52bea7503 chore: fix dead link in README (#6709)
[skip ci]
2022-01-06 22:47:27 +08:00
zvrh
a9be4de5a5 database: add PostgreSQL custom schema support (#6695)
Co-authored-by: Homura37 <git@gvip.xyz>
Co-authored-by: Homura <16538800+Homura37@users.noreply.github.com>
Co-authored-by: Joe Chen <jc@unknwon.io>
2022-01-05 22:02:33 +08:00
dependabot[bot]
14481533b8 mod: bump github.com/olekukonko/tablewriter from 0.0.4 to 0.0.5 (#6705)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-04 14:33:52 +08:00
dependabot[bot]
2519f28632 mod: bump github.com/microcosm-cc/bluemonday from 1.0.16 to 1.0.17 (#6707)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-04 14:33:27 +08:00
dependabot[bot]
22caf7b659 mod: bump github.com/issue9/identicon from 1.0.1 to 1.2.1 (#6706)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-04 14:31:46 +08:00
dependabot[bot]
ee9ab396dc mod: bump github.com/prometheus/client_golang from 1.9.0 to 1.11.0 (#6704)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-01-04 11:27:30 +08:00
dependabot[bot]
dc07fbe753 mod: bump github.com/sergi/go-diff from 1.1.0 to 1.2.0 (#6699)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-28 12:00:44 +08:00
dependabot[bot]
d19af039e7 mod: bump github.com/editorconfig/editorconfig-core-go/v2 from 2.4.1 to 2.4.3 (#6698)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-28 11:59:12 +08:00
Joe Chen
37383d9a1f chore: add missing period to contributing.md (#6690)
[skip ci]
2021-12-23 15:51:57 +08:00
Joe Chen
165d5051b5 chore: fix dead links and wording in README (#6689) 2021-12-22 11:26:06 +08:00
Joe Chen
8d9f61c467 chore: update README banner (#6688) 2021-12-21 16:48:50 +08:00
dependabot[bot]
a72bac54d5 mod: bump unknwon.dev/clog/v2 from 2.1.2 to 2.2.0 (#6684)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-20 19:03:33 +08:00
Joe Chen
7878465567 db: skip ping when not available (#6687) 2021-12-20 18:46:54 +08:00
dependabot[bot]
c82dc04cbb mod: bump github.com/go-macaron/binding from 1.1.1 to 1.2.0 (#6686)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-20 18:43:49 +08:00
dependabot[bot]
69380e4934 mod: bump github.com/gogs/git-module from 1.1.4 to 1.1.5 (#6685)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-20 18:43:22 +08:00
dependabot[bot]
b6ab8cd68d mod: bump gorm.io/driver/postgres from 1.0.5 to 1.2.3 (#6683)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-20 18:42:29 +08:00
dependabot[bot]
0d0dc67141 mod: bump gopkg.in/ini.v1 from 1.62.0 to 1.66.2 (#6682)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-20 18:41:23 +08:00
Joe Chen
f0b21aff91 docker: build and push images when new releases are published (#6681) 2021-12-19 20:47:16 +08:00
Joe Chen
160a0b77cf docs: update links and outdated conent (#6680) 2021-12-18 11:23:59 +08:00
Joe Chen
6528bf35dc ci: send emails on job failures for Docker and Go (#6679) 2021-12-18 11:15:02 +08:00
Joe Chen
da56873d37 github: give Docker workflow write access to packages (#6678) 2021-12-18 10:51:22 +08:00
Joe Chen
c6968105e5 docker: update README to add ghcr.io (#6677) 2021-12-18 01:18:48 +08:00
Joe Chen
f1f3e970b9 github: fix CodeQL token permissions (#6676) 2021-12-18 01:03:01 +08:00
Joe Chen
b827a2f342 docker: upgrade base images to alpine3.14 (#6675) 2021-12-18 00:31:03 +08:00
dependabot[bot]
5f4e07eb4f mod: bump github.com/pquerna/otp from 1.2.0 to 1.3.0 (#6667)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-17 18:54:58 +08:00
dependabot[bot]
b1193607c2 mod: bump github.com/json-iterator/go from 1.1.10 to 1.1.12 (#6668)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-17 18:52:48 +08:00
Joe Chen
eeef90a475 github: refurbish contributing guide (#6673) 2021-12-17 18:49:58 +08:00
Joe Chen
a523138e51 github: improve description of the bug report issue form 2021-12-17 18:18:14 +08:00
Joe Chen
6ec001f944 github: fix grammar in the documentation issue form 2021-12-17 18:15:52 +08:00
Joe Chen
55070da239 github: refurbish issue and pull request templates (#6664) 2021-12-17 18:13:21 +08:00
Ikko Ashimine
6f2b7fb853 chore: fix typo in message.go (#6587) 2021-12-16 21:06:41 +08:00
dependabot[bot]
899ec7ed54 build(deps): bump github.com/microcosm-cc/bluemonday from 1.0.5 to 1.0.16 (#6660)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-12-15 23:58:49 +08:00
Joe Chen
8ee734b1df ci: build and push Docker images on main branch (#6659) 2021-12-15 16:20:39 +08:00
Joe Chen
7867163bfd docker: delete Dockerfile.aarch64 (#6658) 2021-12-15 11:52:58 +08:00
odidev
82652f0f08 Dockerfile: add ARM64 and ARMhf support (#6579)
Co-authored-by: Luciano Colosio <lucio@c8.io>
2021-12-15 11:27:27 +08:00
Devops
d60d9cf985 api: support listing repository tags (#6656)
Co-authored-by: zhouzhibo <zhouzhibo>
Co-authored-by: Joe Chen <jc@unknwon.io>
2021-12-14 20:41:12 +08:00
Joe Chen
63bd4bb4b1 locale: sync from Crowdin (#6651) 2021-11-28 17:03:18 +08:00
Pavel M
de3161155b api: EditWiki implementation (#5860)
Co-authored-by: Joe Chen <jc@unknwon.io>
2021-11-10 13:29:27 +08:00
Joe Chen
8938855b40 locale: sync from Crowdin (#6633) 2021-10-23 21:58:26 +08:00
Joe Chen
55e5a7c25a README: update VPS sponsors 2021-10-04 21:55:27 +08:00
Joe Chen
fa3d011415 chore: fix lint errors (#6620) 2021-09-24 00:44:09 +08:00
Jordan Levin
b9a3626cad api: add GET /api/v1/{owner}/{repo}/commits endpoint (#6574)
This pull request targets issue #6573.

It provides a new API endpoint: `/api/v1/repos/{org}/{repo}/commits?pageSize=<int>` with a default page size of 30 commits (the same as the UI).

This implementation currently only focuses on the main/master branch of the repository, and does not provide the ability to return commit history for other branches.

- Note: Since the logic for converting a git.Commit to api.Commit had to be used in `GetAllCommits` and `GetSingleCommit`, I decided to pull the code out into a helper function, ` gitCommitToAPICommit(commit, context)`.
2021-09-24 00:33:52 +08:00
dependabot[bot]
b3eb33be0f build(deps): bump github.com/microcosm-cc/bluemonday from 1.0.4 to 1.0.5 (#6613)
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2021-09-04 13:53:00 +08:00
ᴜɴᴋɴᴡᴏɴ
4a89438454 ci: update GitHub Actions (#6612) 2021-09-04 13:40:35 +08:00
ᴜɴᴋɴᴡᴏɴ
f524e4f932 dep: update golang.org/x/sys (#6611) 2021-09-04 13:24:49 +08:00
Cuban Pete
156b91baff docker: add Healthcheck support (#6522)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <jc@unknwon.io>
2021-09-04 13:16:59 +08:00
DoMeLe
764e901689 docker: update default port to be exposed on the host (#6597) 2021-08-30 23:58:10 +08:00
James-REANNZ
8f6757cc7b web: correctly handle go-get pages for repository roots (#6598)
Fixes regression in go-get handling introduced in #6318.
2021-08-26 13:12:51 +08:00
ᴜɴᴋɴᴡᴏɴ
7445dec1b4 locale: sync from Crowdin (#6602) 2021-08-08 22:07:58 +08:00
Kevin
ba8be9489e public/js: upgrade jQuery to 3.6.0 (#6550)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2021-05-19 15:12:34 +08:00
ᴜɴᴋɴᴡᴏɴ
12ab7efdb0 chore: go mod tidy (#6564) 2021-05-19 14:56:19 +08:00
dependabot-preview[bot]
3993b65bbf build(deps): bump github.com/editorconfig/editorconfig-core-go/v2 from 2.3.9 to 2.4.1 (#6509)
Bumps [github.com/editorconfig/editorconfig-core-go/v2](https://github.com/editorconfig/editorconfig-core-go) from 2.3.9 to 2.4.1.
- [Release notes](https://github.com/editorconfig/editorconfig-core-go/releases)
- [Changelog](https://github.com/editorconfig/editorconfig-core-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/editorconfig/editorconfig-core-go/compare/v2.3.9...v2.4.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-05-19 14:41:01 +08:00
dependabot-preview[bot]
fb969f8492 build(deps): bump github.com/stretchr/testify from 1.6.1 to 1.7.0 (#6473)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.6.1 to 1.7.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.6.1...v1.7.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-05-19 14:39:08 +08:00
dependabot-preview[bot]
8f8a27c904 build(deps): bump github.com/prometheus/client_golang from 1.8.0 to 1.9.0 (#6454)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.8.0 to 1.9.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.8.0...v1.9.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2021-05-19 14:38:04 +08:00
ᴜɴᴋɴᴡᴏɴ
d8fa08111b chore: fix linguist-vendored with double asterisks (#6563) 2021-05-19 14:32:09 +08:00
Massimiliano Losego
4077f27592 templates: add it-IT version of home page (#6558)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2021-05-19 13:43:09 +08:00
ᴜɴᴋɴᴡᴏɴ
1a1a01a842 ci: use new lint action and add custom config (#6562) 2021-05-19 13:38:13 +08:00
Peter Dave Hello
c4cf659e32 docker: reduce additional image layer for the not executable gosu binary (#6557)
This will help reduce the image size and image layers.
2021-05-19 13:31:19 +08:00
Atin
d6987ee05b chore: fix typos in code comments (#6556) 2021-05-19 13:12:09 +08:00
ᴜɴᴋɴᴡᴏɴ
509a392272 locale: sync from Crowdin (#6510)
* locale: sync from Crowdin

* Fix tests
2021-02-27 18:48:10 +08:00
ᴜɴᴋɴᴡᴏɴ
af6510fd17 locale: sync from Crowdin (#6449) 2020-12-13 10:24:23 +08:00
dependabot-preview[bot]
cd4d79cf99 build(deps): bump github.com/go-macaron/i18n from 0.5.0 to 0.6.0 (#6440)
Bumps [github.com/go-macaron/i18n](https://github.com/go-macaron/i18n) from 0.5.0 to 0.6.0.
- [Release notes](https://github.com/go-macaron/i18n/releases)
- [Commits](https://github.com/go-macaron/i18n/compare/v0.5.0...v0.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-12-06 01:14:08 +08:00
dependabot-preview[bot]
10e7c42a83 build(deps): bump github.com/editorconfig/editorconfig-core-go/v2 from 2.3.7 to 2.3.9 (#6441)
Bumps [github.com/editorconfig/editorconfig-core-go/v2](https://github.com/editorconfig/editorconfig-core-go) from 2.3.7 to 2.3.9.
- [Release notes](https://github.com/editorconfig/editorconfig-core-go/releases)
- [Changelog](https://github.com/editorconfig/editorconfig-core-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/editorconfig/editorconfig-core-go/compare/v2.3.7...v2.3.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-12-06 01:13:42 +08:00
dependabot-preview[bot]
7676b59b02 build(deps): bump gorm.io/gorm from 1.20.7 to 1.20.8 (#6442)
Bumps [gorm.io/gorm](https://github.com/go-gorm/gorm) from 1.20.7 to 1.20.8.
- [Release notes](https://github.com/go-gorm/gorm/releases)
- [Commits](https://github.com/go-gorm/gorm/compare/v1.20.7...v1.20.8)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-12-06 01:12:21 +08:00
ᴜɴᴋɴᴡᴏɴ
0ff888c989 CHANGELOG: make entries more informational (#6445) 2020-12-06 01:09:38 +08:00
peppe8o
6b4a5b5e91 README: add a new RPI Zero W tutorial (#6443)
Updated tutorial section adding peppe8o.com tutorial to install Gogs on a cheap Raspberry PI Zero W with MariaDB database.
2020-12-06 01:09:08 +08:00
ᴜɴᴋɴᴡᴏɴ
72af17bbbe db: simplify GORM logger init in tests (#6444) 2020-12-06 01:06:24 +08:00
Eduardo Bacchi Kienetz
c875950c43 ssh: allow setting allowed MAC algorithms for built-in server (#6435)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-12-04 21:52:26 +08:00
dependabot-preview[bot]
71eeb2f0c0 build(deps): bump gorm.io/driver/sqlite from 1.1.3 to 1.1.4 (#6432)
Bumps [gorm.io/driver/sqlite](https://github.com/go-gorm/sqlite) from 1.1.3 to 1.1.4.
- [Release notes](https://github.com/go-gorm/sqlite/releases)
- [Commits](https://github.com/go-gorm/sqlite/compare/v1.1.3...v1.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-28 03:28:00 +08:00
dependabot-preview[bot]
99f1b9899f build(deps): bump gorm.io/gorm from 1.20.6 to 1.20.7 (#6425)
* build(deps): bump gorm.io/gorm from 1.20.6 to 1.20.7

Bumps [gorm.io/gorm](https://github.com/go-gorm/gorm) from 1.20.6 to 1.20.7.
- [Release notes](https://github.com/go-gorm/gorm/releases)
- [Commits](https://github.com/go-gorm/gorm/compare/v1.20.6...v1.20.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* Fix compile error

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-11-28 02:11:11 +08:00
dependabot-preview[bot]
bee3bebb4e build(deps): bump github.com/russross/blackfriday from 1.5.2 to 1.6.0 (#6429)
Bumps [github.com/russross/blackfriday](https://github.com/russross/blackfriday) from 1.5.2 to 1.6.0.
- [Release notes](https://github.com/russross/blackfriday/releases)
- [Commits](https://github.com/russross/blackfriday/compare/v1.5.2...v1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-28 01:58:35 +08:00
dependabot-preview[bot]
efcb8bbca6 build(deps): bump github.com/Masterminds/semver/v3 from 3.1.0 to 3.1.1 (#6431)
Bumps [github.com/Masterminds/semver/v3](https://github.com/Masterminds/semver) from 3.1.0 to 3.1.1.
- [Release notes](https://github.com/Masterminds/semver/releases)
- [Changelog](https://github.com/Masterminds/semver/blob/master/CHANGELOG.md)
- [Commits](https://github.com/Masterminds/semver/compare/v3.1.0...v3.1.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-28 01:54:35 +08:00
stypr
cd469f7a1d repo: disallow urlencoded new lines in git protocol paths (#6420)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-11-27 18:52:42 +08:00
weibaohui
c7f58ca870 templates: fix typo of BranchCount (#6370)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-11-24 23:13:40 +08:00
MichaIng
b34d040c78 scripts: fix MySQL script for MariaDB >= 10.3.1 (#6424)
innodb_file_format and innodb_large_prefix have been deprecated with MariaDB v10.2 and removed with v10.3.1. They have been reintroduced with v10.4.3 but remain deprecated and unused:
- https://mariadb.com/kb/en/innodb-system-variables/#innodb_file_format
- https://mariadb.com/kb/en/innodb-system-variables/#innodb_large_prefix

Setting those variables on MariaDB >=10.3.1 leads to the following error:
"ERROR 1238 (HY000) at line 7: Variable 'innodb_file_format' is a read only variable"

Since semantic versioning patch versions cannot be compared via numeric operators, only the major + minor versions are compared against 10.3. Since v10.2.2 the defaults match the desired values, so there is only the single patch version 10.3.0 where, when explicitly set differently via MariaDB configs, this commit could lead to an unwanted database format. In favour of a simple SQL change, this case is ignored.

This commit additionally removes trailing spaces and the doubled trailing empty line.

Signed-off-by: MichaIng <micha@dietpi.com>
2020-11-24 01:55:50 +08:00
ᴜɴᴋɴᴡᴏɴ
afaf6da405 locale: sync from Crowdin (#6419) 2020-11-15 01:14:39 +08:00
dependabot-preview[bot]
7bef64a0d6 build(deps): bump gopkg.in/macaron.v1 from 1.3.9 to 1.4.0 (#6416)
Bumps [gopkg.in/macaron.v1](https://github.com/go-macaron/macaron) from 1.3.9 to 1.4.0.
- [Release notes](https://github.com/go-macaron/macaron/releases)
- [Commits](https://github.com/go-macaron/macaron/compare/v1.3.9...v1.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-15 01:02:36 +08:00
dependabot-preview[bot]
146960368f build(deps): bump gorm.io/gorm from 1.20.5 to 1.20.6 (#6417)
Bumps [gorm.io/gorm](https://github.com/go-gorm/gorm) from 1.20.5 to 1.20.6.
- [Release notes](https://github.com/go-gorm/gorm/releases)
- [Commits](https://github.com/go-gorm/gorm/compare/v1.20.5...v1.20.6)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-15 01:02:20 +08:00
Matheus Mosca
997ba0fef0 context: add X-Frame-Options header (#6411)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-11-11 12:17:43 +08:00
dependabot-preview[bot]
6f735cc2da build(deps): bump github.com/urfave/cli from 1.22.4 to 1.22.5 (#6410)
Bumps [github.com/urfave/cli](https://github.com/urfave/cli) from 1.22.4 to 1.22.5.
- [Release notes](https://github.com/urfave/cli/releases)
- [Changelog](https://github.com/urfave/cli/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/urfave/cli/compare/v1.22.4...v1.22.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-09 23:42:36 +08:00
dependabot-preview[bot]
8b35485ee5 build(deps): bump golang.org/x/text from 0.3.3 to 0.3.4 (#6403)
Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.3 to 0.3.4.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.3.3...v0.3.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-11-04 21:31:58 +08:00
ᴜɴᴋɴᴡᴏɴ
428276d7a8 locale: sync from Crowdin (#6404) 2020-10-31 18:34:44 +08:00
Rubén de Celis Hernández
053695b63d Update CHANGELOG.md (#6389) 2020-10-26 17:50:36 +08:00
dependabot-preview[bot]
b4bb83e68f build(deps): bump gorm.io/driver/mysql from 1.0.2 to 1.0.3 (#6397)
Bumps [gorm.io/driver/mysql](https://github.com/go-gorm/mysql) from 1.0.2 to 1.0.3.
- [Release notes](https://github.com/go-gorm/mysql/releases)
- [Commits](https://github.com/go-gorm/mysql/compare/v1.0.2...v1.0.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:34:05 +08:00
dependabot-preview[bot]
2989a5e0f5 build(deps): bump gorm.io/driver/sqlserver from 1.0.4 to 1.0.5 (#6395)
Bumps [gorm.io/driver/sqlserver](https://github.com/go-gorm/sqlserver) from 1.0.4 to 1.0.5.
- [Release notes](https://github.com/go-gorm/sqlserver/releases)
- [Commits](https://github.com/go-gorm/sqlserver/compare/v1.0.4...v1.0.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:18:33 +08:00
dependabot-preview[bot]
9844d2c96a build(deps): bump gorm.io/driver/postgres from 1.0.2 to 1.0.5 (#6400)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:18:09 +08:00
dependabot-preview[bot]
ab16ca0580 build(deps): bump github.com/prometheus/client_golang from 1.6.0 to 1.8.0 (#6394)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.6.0 to 1.8.0.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.6.0...v1.8.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:06:36 +08:00
dependabot-preview[bot]
f0a9ec21cd build(deps): bump github.com/gogs/git-module from 1.1.3 to 1.1.4 (#6398)
Bumps [github.com/gogs/git-module](https://github.com/gogs/git-module) from 1.1.3 to 1.1.4.
- [Release notes](https://github.com/gogs/git-module/releases)
- [Commits](https://github.com/gogs/git-module/compare/v1.1.3...v1.1.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:04:50 +08:00
dependabot-preview[bot]
6c5fd05a31 build(deps): bump gorm.io/gorm from 1.20.2 to 1.20.5 (#6399)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-25 18:02:27 +08:00
ᴜɴᴋɴᴡᴏɴ
1744f238e1 locale: sync from Crowdin (#6383) 2020-10-11 14:18:21 +08:00
E99p1ant
fd765bd88f context: fix Access-Control-Allow-Credentials header typo (#6381) 2020-10-10 23:09:42 +08:00
dependabot-preview[bot]
533b6b0de2 build(deps): bump gopkg.in/ini.v1 from 1.60.2 to 1.62.0 (#6380)
Bumps [gopkg.in/ini.v1](https://github.com/go-ini/ini) from 1.60.2 to 1.62.0.
- [Release notes](https://github.com/go-ini/ini/releases)
- [Commits](https://github.com/go-ini/ini/compare/v1.60.2...v1.62.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-10 23:08:36 +08:00
ᴜɴᴋɴᴡᴏɴ
bf3c9061a2 docs: update patch release issue template (#6375) 2020-10-08 02:32:29 +08:00
ᴜɴᴋɴᴡᴏɴ
b60e2c65d3 CHANGELOG: cut entries for 0.12.3 (#6374) 2020-10-07 22:37:15 +08:00
ᴜɴᴋɴᴡᴏɴ
e44ac3c20a docs: update patch release issue template 2020-10-07 22:29:15 +08:00
ᴜɴᴋɴᴡᴏɴ
2eaf1d693a db: migrate access table to use GORM (#6371) 2020-10-06 15:43:28 +08:00
ᴜɴᴋɴᴡᴏɴ
a92d818aa3 docs: update patch release issue template 2020-10-06 13:12:12 +08:00
ᴜɴᴋɴᴡᴏɴ
ca3330cecd lfs: ask client to always send the same value for the HTTP header (#6369) 2020-10-04 18:40:39 +08:00
ᴜɴᴋɴᴡᴏɴ
cf86546dff ci: change of Go dependencies needs go test (#6368) 2020-10-04 08:56:46 +08:00
dependabot-preview[bot]
8e028c32d4 build(deps): bump gorm.io/driver/mysql from 1.0.1 to 1.0.2 (#6366)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-04 08:47:10 +08:00
dependabot-preview[bot]
c082bf72af build(deps): bump gorm.io/driver/postgres from 1.0.1 to 1.0.2 (#6365)
Bumps [gorm.io/driver/postgres](https://github.com/go-gorm/postgres) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/go-gorm/postgres/releases)
- [Commits](https://github.com/go-gorm/postgres/compare/v1.0.1...v1.0.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-04 08:40:16 +08:00
dependabot-preview[bot]
906c6a5ba0 build(deps): bump gorm.io/gorm from 1.20.1 to 1.20.2 (#6364)
Bumps [gorm.io/gorm](https://github.com/go-gorm/gorm) from 1.20.1 to 1.20.2.
- [Release notes](https://github.com/go-gorm/gorm/releases)
- [Commits](https://github.com/go-gorm/gorm/compare/v1.20.1...v1.20.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-10-04 08:39:54 +08:00
ᴜɴᴋɴᴡᴏɴ
a6bd00f807 locale: sync from Crowdin (#6367) 2020-10-04 08:37:55 +08:00
ouyangjinting
7797efe1bb docs: fix README_ZH.md link (#6360) 2020-10-01 12:21:50 +08:00
Zhukov Roman
be86d67e81 Add git diff timeout in app config (#6348)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-09-29 23:12:17 +08:00
Jeff
23823e9698 markup: render SHA links without branch prefix (#6350)
Co-authored-by: Zhukov Roman <zhukov.roman@gmail.com>
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-09-29 23:07:16 +08:00
ᴜɴᴋɴᴡᴏɴ
7bc3ee49aa cmd/serv: use different log files for ORMs in hook mode (#6361) 2020-09-29 22:26:07 +08:00
ᴜɴᴋɴᴡᴏɴ
8fc4013240 README: remove broken/deprecated links 2020-09-27 11:50:34 +08:00
dependabot-preview[bot]
211a1394b8 build(deps): bump gorm.io/driver/postgres from 1.0.0 to 1.0.1 (#6351)
Bumps [gorm.io/driver/postgres](https://github.com/go-gorm/postgres) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/go-gorm/postgres/releases)
- [Commits](https://github.com/go-gorm/postgres/compare/v1.0.0...v1.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-26 21:58:43 +08:00
ᴜɴᴋɴᴡᴏɴ
73e5936220 docs: update patch release issue template (#6353) 2020-09-26 18:00:04 +08:00
ᴜɴᴋɴᴡᴏɴ
e4e46d8fbc release: cut entries for 0.12.2 (#6355) 2020-09-26 16:49:10 +08:00
ᴜɴᴋɴᴡᴏɴ
b4abbf3ac8 ci: enable Go for release branches 2020-09-26 16:28:39 +08:00
ᴜɴᴋɴᴡᴏɴ
83a89127fd action: fix issue reference regexp and error handling (#6352) 2020-09-26 16:23:05 +08:00
ᴜɴᴋɴᴡᴏɴ
6ed98ca8f6 dep: update github.com/unknwon/cae to v1.0.2 (#6342) 2020-09-21 20:26:47 +08:00
ᴜɴᴋɴᴡᴏɴ
3af91d7cfd auth: decouple types and functions from db (#6320) 2020-09-20 11:19:02 +08:00
dependabot-preview[bot]
b836a56e6e build(deps): bump github.com/go-macaron/binding from 1.1.0 to 1.1.1 (#6340)
Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-19 22:37:22 +08:00
ᴜɴᴋɴᴡᴏɴ
c56db8f2c4 db: create new session for MySQL after changing attribute (#6338) 2020-09-18 18:37:47 +08:00
ᴜɴᴋɴᴡᴏɴ
dda1092e74 gitutil: infer submodule with baseURL when it is a relative path (#6337) 2020-09-18 16:19:31 +08:00
dependabot-preview[bot]
8b75e9a442 build(deps): bump gorm.io/driver/sqlite from 1.1.1 to 1.1.3 (#6336)
Bumps [gorm.io/driver/sqlite](https://github.com/go-gorm/sqlite) from 1.1.1 to 1.1.3.
- [Release notes](https://github.com/go-gorm/sqlite/releases)
- [Commits](https://github.com/go-gorm/sqlite/compare/v1.1.1...v1.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 15:06:43 +08:00
dependabot-preview[bot]
1da1e90d1e build(deps): bump gorm.io/driver/sqlserver from 1.0.3 to 1.0.4 (#6325)
Bumps [gorm.io/driver/sqlserver](https://github.com/go-gorm/sqlserver) from 1.0.3 to 1.0.4.
- [Release notes](https://github.com/go-gorm/sqlserver/releases)
- [Commits](https://github.com/go-gorm/sqlserver/compare/v1.0.3...v1.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 14:40:58 +08:00
dependabot-preview[bot]
9a268ca7f5 build(deps): bump github.com/editorconfig/editorconfig-core-go/v2 from 2.3.2 to 2.3.7 (#6324)
Bumps [github.com/editorconfig/editorconfig-core-go/v2](https://github.com/editorconfig/editorconfig-core-go) from 2.3.2 to 2.3.7.
- [Release notes](https://github.com/editorconfig/editorconfig-core-go/releases)
- [Changelog](https://github.com/editorconfig/editorconfig-core-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/editorconfig/editorconfig-core-go/compare/v2.3.2...v2.3.7)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 14:37:42 +08:00
dependabot-preview[bot]
d85504a9d1 build(deps): bump github.com/olekukonko/tablewriter from 0.0.1 to 0.0.4 (#6327)
Bumps [github.com/olekukonko/tablewriter](https://github.com/olekukonko/tablewriter) from 0.0.1 to 0.0.4.
- [Release notes](https://github.com/olekukonko/tablewriter/releases)
- [Commits](https://github.com/olekukonko/tablewriter/compare/v0.0.1...v0.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 14:37:00 +08:00
dependabot-preview[bot]
8658ded190 build(deps): bump gorm.io/gorm from 1.20.0 to 1.20.1 (#6328)
Bumps [gorm.io/gorm](https://github.com/go-gorm/gorm) from 1.20.0 to 1.20.1.
- [Release notes](https://github.com/go-gorm/gorm/releases)
- [Commits](https://github.com/go-gorm/gorm/compare/v1.20.0...v1.20.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 14:35:55 +08:00
dependabot-preview[bot]
04b11d3a07 build(deps): bump github.com/unknwon/cae from 1.0.0 to 1.0.1 (#6329)
Bumps [github.com/unknwon/cae](https://github.com/unknwon/cae) from 1.0.0 to 1.0.1.
- [Release notes](https://github.com/unknwon/cae/releases)
- [Commits](https://github.com/unknwon/cae/compare/v1.0.0...v1.0.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-18 14:34:43 +08:00
ᴜɴᴋɴᴡᴏɴ
56eac57222 locale: sync from Crowdin (#6333) 2020-09-16 23:15:57 +08:00
ᴜɴᴋɴᴡᴏɴ
594a2dc41f web: correctly serving go-get pages for subdirs (#6318)
* web: correctly serving go-get page for subdirs

* Update CHANGELOG

* Fix golint error
2020-09-09 20:14:48 +08:00
ᴜɴᴋɴᴡᴏɴ
06193ed825 schemadoc: add go:generate to output database schema (#6310)
* schemadoc: add go:generate to output database schema

* Check errors

* Revert string renames
2020-09-06 17:02:25 +08:00
ᴜɴᴋɴᴡᴏɴ
519e59b577 db: migrate to GORM v2 (#6309) 2020-09-06 10:11:08 +08:00
dependabot-preview[bot]
771d3673f5 build(deps): bump github.com/gogs/git-module from 1.1.2 to 1.1.3 (#6306)
Bumps [github.com/gogs/git-module](https://github.com/gogs/git-module) from 1.1.2 to 1.1.3.
- [Release notes](https://github.com/gogs/git-module/releases)
- [Commits](https://github.com/gogs/git-module/compare/v1.1.2...v1.1.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-09-05 10:52:14 +08:00
ᴜɴᴋɴᴡᴏɴ
2cb83f13fd repo: set default value for is_unlisted column (#6305) 2020-09-04 05:56:31 +08:00
ᴜɴᴋɴᴡᴏɴ
2665b5968c locale: sync from Crowdin (#6303) 2020-09-04 04:08:31 +08:00
ᴜɴᴋɴᴡᴏɴ
7a649ada09 ci: only enforce Go checks for pushes to main branch
Otherwise would create duplicated GitHub Checks.
2020-09-04 04:08:00 +08:00
ᴜɴᴋɴᴡᴏɴ
a533e8fb52 Taskfile: add desc to each task (#6304) 2020-09-04 04:05:36 +08:00
ᴜɴᴋɴᴡᴏɴ
bb93cabd39 ci: re-run Go checks for every push on a pull request
If a pull request has changed any Go file, even if the new push doesn't change any,
we should re-run Go checks to make GitHub Checks look consistent.
2020-09-04 03:13:59 +08:00
Achilleas Koutsou
c4360747a3 repo: support unlisted but publicly accessible repositories (#6176)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-09-04 03:04:22 +08:00
ᴜɴᴋɴᴡᴏɴ
23ff182d1f chore: use Task as main build tool (#6297) 2020-08-29 21:05:55 +08:00
ᴜɴᴋɴᴡᴏɴ
cb88caa2d2 install: remove MSSQL option (#6295) 2020-08-29 14:49:54 +08:00
ᴜɴᴋɴᴡᴏɴ
cf216f12a1 github: add Go 1.15 to CI (#6294) 2020-08-29 13:41:35 +08:00
ᴜɴᴋɴᴡᴏɴ
a22fd01959 install: fix generating removed options (#6293) 2020-08-29 13:39:32 +08:00
ᴜɴᴋɴᴡᴏɴ
b38139a855 README: add emoji for license header 2020-08-28 13:01:20 +08:00
ᴜɴᴋɴᴡᴏɴ
1a681ad022 docker: revert shellcheck fix (#6288) 2020-08-28 11:43:14 +08:00
ᴜɴᴋɴᴡᴏɴ
f6d672a3cd chore: change default branch to main (#6285) 2020-08-27 19:51:44 +08:00
ᴜɴᴋɴᴡᴏɴ
016d9d8c88 Revert "README: update VPS sponsor"
This reverts commit f667d139bc.
2020-08-27 17:37:49 +08:00
ᴜɴᴋɴᴡᴏɴ
c769f2566a docs: add patch release docs 2020-08-27 15:33:46 +08:00
ᴜɴᴋɴᴡᴏɴ
423f9e6de7 github: enable Go actions on push 2020-08-27 14:57:12 +08:00
ᴜɴᴋɴᴡᴏɴ
bbef32b1ef CHANGELOG: cut more entries for 0.12.1 2020-08-27 14:42:54 +08:00
ᴜɴᴋɴᴡᴏɴ
92953007de CHANGELOG: cut entries for 0.12.1 2020-08-27 14:41:10 +08:00
ᴜɴᴋɴᴡᴏɴ
4ecd588776 db: fix wrong column type of login_source (#6283) 2020-08-27 14:29:03 +08:00
ᴜɴᴋɴᴡᴏɴ
4e5b7c5d24 docker: fix broken SSHD for Dockerfile.rpi (#6278) 2020-08-24 23:22:31 +08:00
ᴜɴᴋɴᴡᴏɴ
c1db31c130 CHANGELOG: add entry for #6210 2020-08-24 19:09:48 +08:00
Kosadchiy
a02b3e1258 issue: fix timestamp updating (#6210)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-08-24 19:06:29 +08:00
ᴜɴᴋɴᴡᴏɴ
afb445bb57 github: only run Actions when Go files are changed (#6275) 2020-08-23 15:27:54 +08:00
ᴜɴᴋɴᴡᴏɴ
92c5f94fe7 shellcheck: fix warnings (#6274)
* Remove outdated files

* Fix warnings
2020-08-23 15:17:54 +08:00
ᴜɴᴋɴᴡᴏɴ
a840ae9035 pkgr: use main branch and Go 1.15 for buildpack (#6273) 2020-08-23 14:55:01 +08:00
ᴜɴᴋɴᴡᴏɴ
0a5977e951 docker: fix missing make command (#6272) 2020-08-23 14:39:14 +08:00
ᴜɴᴋɴᴡᴏɴ
a7fb211827 docs: add release strategy (#6271) 2020-08-23 13:14:33 +08:00
ᴜɴᴋɴᴡᴏɴ
3ed8c292c2 migrations: remove old migrations before 0.12.0 (#6270) 2020-08-23 12:51:55 +08:00
ᴜɴᴋɴᴡᴏɴ
13ae25b785 Makefile: explicitly call go generate (#6269) 2020-08-22 22:36:58 +08:00
ᴜɴᴋɴᴡᴏɴ
40513a117f docs: add instructions for release (#6268) 2020-08-22 22:35:09 +08:00
ᴜɴᴋɴᴡᴏɴ
f0761eb7ec conf: remove legacy options (#6267)
* conf: remove legacy options

* Update tests
2020-08-22 22:25:21 +08:00
ᴜɴᴋɴᴡᴏɴ
05477f1d29 app: update dev version (#6266) 2020-08-22 21:36:28 +08:00
ᴜɴᴋɴᴡᴏɴ
ac4a708307 assets: make generate (#6265) 2020-08-22 19:12:31 +08:00
ᴜɴᴋɴᴡᴏɴ
720cb5fcb1 CHANGELOG: cut 0.12.0 and 0.13.0+dev (#6264) 2020-08-22 17:52:27 +08:00
ᴜɴᴋɴᴡᴏɴ
c7a10dd90d locale: sync from Crowdin (#6263) 2020-08-22 17:49:33 +08:00
ᴜɴᴋɴᴡᴏɴ
178b73fecd repo: users have access to base repository can also view forks (#6261) 2020-08-22 13:17:45 +08:00
ᴜɴᴋɴᴡᴏɴ
bc8428ca42 conf: make generate for #6237 (#6260) 2020-08-22 01:49:51 +08:00
David Refoua
90b1ee1dfa conf: fix some typos in comments (app.ini) (#6237) 2020-08-22 01:36:29 +08:00
ᴜɴᴋɴᴡᴏɴ
7f9a4b7578 CHANGELOG: add entry for gogs/git-module#59 (#6257) 2020-08-21 22:37:01 +08:00
Fernando San Julián
e789f82979 deps: update git-module to v.1.1.2 (#6256)
Co-authored-by: Gogs <gogs@fake.local>
2020-08-21 22:31:50 +08:00
ᴜɴᴋɴᴡᴏɴ
c6143edb44 osutil: update docstring and tests (#6255) 2020-08-19 21:30:01 +08:00
bibo38
252d0fd977 osutil: use system API to get the username when env vars are empty (#6246)
As Golang supports getting usernames via the standard library, this function
is now used to get the username if the environment variables are empty.
Using the standard library as a fallback is intended to keep compability
to existing implementations that rely on the environment variables dictating
the current username.
2020-08-19 21:17:16 +08:00
InsanusMokrassar
d1caae3f79 docker: fix gosu link in Dockerfile.rpi (#6203) 2020-08-17 21:29:22 +08:00
dependabot-preview[bot]
874d2fd602 build(deps): bump golang.org/x/text from 0.3.2 to 0.3.3 (#6207)
Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.2 to 0.3.3.
- [Release notes](https://github.com/golang/text/releases)
- [Commits](https://github.com/golang/text/compare/v0.3.2...v0.3.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-17 21:28:13 +08:00
dependabot-preview[bot]
32adb0f2da build(deps): bump github.com/microcosm-cc/bluemonday from 1.0.2 to 1.0.4 (#6251)
Bumps [github.com/microcosm-cc/bluemonday](https://github.com/microcosm-cc/bluemonday) from 1.0.2 to 1.0.4.
- [Release notes](https://github.com/microcosm-cc/bluemonday/releases)
- [Commits](https://github.com/microcosm-cc/bluemonday/compare/v1.0.2...v1.0.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-08-17 21:24:43 +08:00
ᴜɴᴋɴᴡᴏɴ
f3993b9cdb organization: limit showing at most 12 members in profile page (#6254) 2020-08-17 21:09:22 +08:00
ᴜɴᴋɴᴡᴏɴ
a961afe52b db: fix update team panic (#6253)
* db: fix update team panic

* Update CHANGELOG
2020-08-16 21:31:08 +08:00
ᴜɴᴋɴᴡᴏɴ
f667d139bc README: update VPS sponsor 2020-08-16 19:50:40 +08:00
Dre
90904b3f42 workflow: add shellcheck as a linter (#6202)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-07-17 22:49:32 +08:00
ᴜɴᴋɴᴡᴏɴ
a7afa11610 lsif: fix upload to private instance (#6216) 2020-06-30 00:25:57 +08:00
dependabot-preview[bot]
2fe4d07599 build(deps): bump github.com/json-iterator/go from 1.1.9 to 1.1.10 (#6199)
Bumps [github.com/json-iterator/go](https://github.com/json-iterator/go) from 1.1.9 to 1.1.10.
- [Release notes](https://github.com/json-iterator/go/releases)
- [Commits](https://github.com/json-iterator/go/compare/v1.1.9...v1.1.10)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-13 13:39:31 +08:00
dependabot-preview[bot]
da4f5d79f5 build(deps): bump gopkg.in/macaron.v1 from 1.3.8 to 1.3.9 (#6200)
Bumps [gopkg.in/macaron.v1](https://github.com/go-macaron/macaron) from 1.3.8 to 1.3.9.
- [Release notes](https://github.com/go-macaron/macaron/releases)
- [Commits](https://github.com/go-macaron/macaron/compare/v1.3.8...v1.3.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-13 13:39:04 +08:00
dependabot-preview[bot]
2af4114d64 build(deps): bump github.com/stretchr/testify from 1.6.0 to 1.6.1 (#6201)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.6.0 to 1.6.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.6.0...v1.6.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-06-13 13:38:49 +08:00
Baptiste Covolato
8366bd1cbe Update Dockerfiles for ARM to use alpine golang (#6183) 2020-06-11 23:10:10 +08:00
Justin Hutchings
79d8aa0cb8 Add CodeQL security scanning (#6188)
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-06-11 23:02:57 +08:00
ᴜɴᴋɴᴡᴏɴ
e62bccde9e README: remove OpenShift link (#6194) 2020-06-11 22:39:21 +08:00
ᴜɴᴋɴᴡᴏɴ
516c7ab505 locale: sync from Crowdin (#6191) 2020-06-08 11:08:27 +08:00
dependabot-preview[bot]
158dd33a25 build(deps): bump github.com/stretchr/testify from 1.5.1 to 1.6.0 (#6181)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.5.1 to 1.6.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.5.1...v1.6.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-05-30 01:22:21 +08:00
ᴜɴᴋɴᴡᴏɴ
7e99a6ce42 locale: sync from Crowdin (#6174) 2020-05-24 18:59:43 +08:00
ᴜɴᴋɴᴡᴏɴ
cb406bb350 lsif: upload data to dogfood instance (#6171) 2020-05-22 16:58:26 +08:00
garo (they/them)
9bbe029c28 lsif: don't upload indexes for forks (#6170) 2020-05-22 05:40:04 +08:00
ᴜɴᴋɴᴡᴏɴ
280b06485f docker: fix broken link in README
Fixes #6167
2020-05-20 20:44:10 +08:00
dependabot-preview[bot]
50797d8fa1 build(deps): bump gopkg.in/ini.v1 from 1.55.0 to 1.56.0 (#6166) 2020-05-16 14:44:27 +08:00
Aleksandar Puharic
2003864615 docker: add scheduled backups with retention policy (#6140) 2020-05-11 11:55:21 +08:00
ᴜɴᴋɴᴡᴏɴ
1125bb5848 lfs: add user and admin docs (#6158) 2020-05-10 20:37:22 +08:00
ᴜɴᴋɴᴡᴏɴ
44ea9604ed locale: sync from Crowdin (#6156) 2020-05-10 12:33:07 +08:00
dependabot-preview[bot]
d28101ee66 build(deps): bump gopkg.in/macaron.v1 from 1.3.6 to 1.3.8 (#6153) 2020-05-09 21:37:38 +08:00
ᴜɴᴋɴᴡᴏɴ
9fd4f5562d all: use semver to compare versions (#6147) 2020-05-04 18:48:23 +08:00
ᴜɴᴋɴᴡᴏɴ
9bb218734c db: use GORM to backup and restore non-legacy tables (#6142) 2020-05-04 16:25:57 +08:00
ᴜɴᴋɴᴡᴏɴ
82ffca3fc9 Add security policy 2020-05-02 17:15:55 +08:00
dependabot-preview[bot]
d9f8efa9c3 build(deps): bump github.com/prometheus/client_golang from 1.5.1 to 1.6.0 (#6144) 2020-05-02 16:48:16 +08:00
dependabot-preview[bot]
f26eb2a192 build(deps): bump gopkg.in/macaron.v1 from 1.3.5 to 1.3.6 (#6143) 2020-05-02 16:47:36 +08:00
dependabot-preview[bot]
dbe373af6f build(deps): bump github.com/editorconfig/editorconfig-core-go/v2 from 2.3.1 to 2.3.2 (#6135) 2020-04-25 09:57:13 +08:00
ᴜɴᴋɴᴡᴏɴ
4e1f38ce28 lfs: show configs in admin ui (#6128)
* Rename template consts

* Display new DB options

* Display LFS configs
2020-04-21 18:07:17 +08:00
ᴜɴᴋɴᴡᴏɴ
60273d3d6d Update CHANGELOG.md 2020-04-19 19:25:21 +08:00
Kousik Mitra
5a52ee75e3 db: remove db.User.LoginType field (#6122) 2020-04-19 04:32:53 +08:00
ᴜɴᴋɴᴡᴏɴ
c0fd6042fd test: remove the use of goconvey (#6123) 2020-04-19 04:24:08 +08:00
Kousik Mitra
fc57c921b1 conf: fallback time layout to RFC 3339 when misconfigured (#6120)
* Fix: fallback to default time format if misconfigured (#6098)

* Update CHANGELOG.md

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-04-18 15:19:29 +08:00
ᴜɴᴋɴᴡᴏɴ
7b295378e4 public: remove unused github.min.css (#6119) 2020-04-18 12:29:11 +08:00
ᴜɴᴋɴᴡᴏɴ
9d64d222a8 db: add tests for users (#6116)
* Add new methods

* Use Users.Create to replace previous hack

* Reduce side effect

* Do not clear tables when test failed

* test_users_Authenticate

* Rename constant

* test_users_Create

* test_users_GetByEmail

* test_users_GetByID

* test_users_GetByUsername
2020-04-18 12:07:30 +08:00
ᴜɴᴋɴᴡᴏɴ
fa497b1633 db: add tests for repos (#6112)
* Add Repos.create method

* Fix repo name error handling

* Fix all compile errors

* Update github.com/go-macaron/captcha to fix http issue

* Add repos tests
2020-04-17 10:14:18 +08:00
eightpigs
e131a45646 docker: fix mkdir subdir in /data failed when no mount volume (#6107) 2020-04-15 22:32:47 +08:00
eightpigs
28d74a9844 docker: fix the bug of using root to create /data/ directory (#6106) 2020-04-15 19:42:32 +08:00
ᴜɴᴋɴᴡᴏɴ
5637706e46 docs: fix Go version (#6105)
* docs: fix Go version

* Update README.md
2020-04-15 12:06:45 +08:00
ᴜɴᴋɴᴡᴏɴ
614aba6007 Update CHANGELOG (#6103) 2020-04-15 06:03:41 +08:00
Rui Santos
440b1ecbfd api: add admin endpoint to get team members (#6101)
fixes #5877
2020-04-15 06:00:44 +08:00
ᴜɴᴋɴᴡᴏɴ
cdafe21661 db: add tests for loginSourceFiles (#6102) 2020-04-15 05:52:30 +08:00
ᴜɴᴋɴᴡᴏɴ
844d2f49ce db: use GORM bulk insert helper (#6100)
* Bulk insert permissions

* Bulk insert recovery codes

* Remove unnecessary import rename
2020-04-14 10:03:30 +08:00
ᴜɴᴋɴᴡᴏɴ
cb439a126a db: add tests for two factors (#6099)
* Rename to TwoFactors.Create

* Use GORM to execute queries

* TwoFactor.GetByUserID

* Add tests

* Fix failing tests

* Add MD5 tests

* Add tests for RandomChars
2020-04-14 09:41:54 +08:00
ᴜɴᴋɴᴡᴏɴ
659acd48b1 github: update bug report template (#6097) 2020-04-13 22:34:35 +08:00
wameidemao
d19287d5b7 ssh: improve env command processing (#6095)
* modify ssh env command processing mode

* Update internal/ssh/ssh.go

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* Update internal/ssh/ssh.go

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* Update internal/ssh/ssh.go

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* Update ssh.go

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-04-12 12:18:43 +08:00
ᴜɴᴋɴᴡᴏɴ
26a2d0b2a1 ssh: ignore malformed "env" commands (#6094) 2020-04-12 09:18:58 +08:00
ᴜɴᴋɴᴡᴏɴ
ae107b2e6e db: only use AutoMigrate to create new tables (#6092)
* Only use AutoMigrate to create new tables

* Revert models.go
2020-04-11 23:45:06 +08:00
ᴜɴᴋɴᴡᴏɴ
41f56ad05d login_source: migrate to GORM and add tests (#6090)
* Use GORM in all write paths

* Migrate to GORM

* Fix lint errors

* Use GORM  to init table

* dbutil: make writer detect error

* Add more tests

* Rename to clearTables

* db: finish adding tests

* osutil: add tests

* Fix load source files path
2020-04-11 20:18:05 +08:00
ᴜɴᴋɴᴡᴏɴ
76bb647d24 db: add tests for permissions (#6088)
* Add flag to print SQLs

* Add tests for perms

* Make results stable

* codecov: only show diff

* Once again, stable find results
2020-04-11 05:39:45 +08:00
ᴜɴᴋɴᴡᴏɴ
e077ecdd9d db: add tests for LFS (#6087)
* Improve DB test setup

* Discard GORM logs in non-verbose mode

* Add tests to lfs

* Fix data race
2020-04-11 02:56:37 +08:00
ᴜɴᴋɴᴡᴏɴ
62dda96159 access_token: migrate to GORM and add tests (#6086)
* access_token: migrate to GORM

* Add tests

* Fix tests

* Fix test clock
2020-04-11 01:25:19 +08:00
ᴜɴᴋɴᴡᴏɴ
5753d4cb87 Revert "docker: fix the bug of using root account to create `/d… (#6085)
This reverts commit f3b05961aa.
2020-04-10 22:58:55 +08:00
ᴜɴᴋɴᴡᴏɴ
e186a3d2c9 db: add tests for helper functions (#6084) 2020-04-10 22:51:24 +08:00
ᴜɴᴋɴᴡᴏɴ
9a5b227f3e lfsutil: add Storager interface and local storage (#6083)
* Add Storager interface

* Add tests

* Add back note

* Add tests for basic protocol routes

* Fix lint errors
2020-04-10 22:13:42 +08:00
alpencrossi
3e055e329c repo: disable public access option when using external wiki and issue tracker (#6081) 2020-04-09 04:13:50 +08:00
ᴜɴᴋɴᴡᴏɴ
5b36ba66c2 docker: clean up never used files (#6080) 2020-04-09 00:53:52 +08:00
ᴜɴᴋɴᴡᴏɴ
e79aebb3e1 route: bypass require signin check for trigger repo tasks (#6079)
* route: bypass require signin check for trigger repo tasks

* CHANGELOG

* Fix lint errors
2020-04-08 20:55:15 +08:00
ᴜɴᴋɴᴡᴏɴ
6a096811ff docker: bump to Go 1.14 (#6077) 2020-04-07 16:00:12 +08:00
ᴜɴᴋɴᴡᴏɴ
cac1054acb github: update bug report template (#6076)
To include Docker image SHA
2020-04-07 15:43:22 +08:00
eightpigs
f3b05961aa docker: fix the bug of using root account to create /data/* directory (#6068)
* Fix the bug of using root account to create /data directory

* Fix the bug that sshkey cannot be added in the container and remove unnecessary chown.
2020-04-07 15:12:08 +08:00
☃ Stephen Shkardoon ☃
4ebdcb719a db: include the Team ID in the error message (#6056)
This means that when using the API to create a new team, the output
contains the existing team ID, not just the name.
While there may be the thought that this reveals sensitive
information, it is never the case that a user can create or update
a team without permission to view the teams in the first place.
2020-04-07 03:03:22 +08:00
ᴜɴᴋɴᴡᴏɴ
571be84e26 db: handle JSON conversion for LoginSource (#6075) 2020-04-07 00:29:27 +08:00
ᴜɴᴋɴᴡᴏɴ
2b3655fa11 lfs: add tests to batch endpoint (#6073) 2020-04-06 23:53:55 +08:00
ᴜɴᴋɴᴡᴏɴ
ca2f7a7e16 repo: delete rows in lfs_object table when delete repo (#6072) 2020-04-06 18:44:06 +08:00
ᴜɴᴋɴᴡᴏɴ
ee0ea2c5fc lfs: add unit test for middleware (#6070)
* Add unit test for `authenticate` middleware

* Add more cases

* Add tests for verifyOID and internalServerError

* Add tests for verifyHeader

* Add tests for authroize
2020-04-06 18:35:10 +08:00
ᴜɴᴋɴᴡᴏɴ
4d7db6e1c1 locale: sync from Crowdin (#6071) 2020-04-06 16:23:46 +08:00
ᴜɴᴋɴᴡᴏɴ
559af54e66 build: require Go 1.14 for using t.Cleanup (#6069) 2020-04-06 15:15:03 +08:00
alpencrossi
083ecb7244 conf: clearer doc comments for mirror config options (#6058)
* conf: clearer doc comments for mirror config options

* conf: apply suggestions from code review

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* conf: clearer doc comments for mirror config options - added bindata

Co-authored-by: Gogs <gogs@fake.local>
Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
Co-authored-by: gkuehn001 <gkuehn@gmail.com>
2020-04-06 14:48:25 +08:00
ᴜɴᴋɴᴡᴏɴ
07818d5fa5 route: no session for routes without UI (#6066)
Not all routes need session, register session and CSRF middleware as global is a waste of resource, and creating a lot one-time off yet never used session records.
2020-04-05 06:36:08 +08:00
ᴜɴᴋɴᴡᴏɴ
bae1d6ccd8 lfs: only remove file on io error (#6062) 2020-04-05 01:29:51 +08:00
ᴜɴᴋɴᴡᴏɴ
3a5c93eeff db: use gorm function to check ErrRecordNotFound (#6060) 2020-04-05 00:56:31 +08:00
ᴜɴᴋɴᴡᴏɴ
4aff4d66ec lfs: support upload retry (#6061) 2020-04-05 00:45:08 +08:00
ᴜɴᴋɴᴡᴏɴ
53b91ef306 lfs: run e2e and fix minor issues (#6059) 2020-04-05 00:14:22 +08:00
ᴜɴᴋɴᴡᴏɴ
34145c990d lfs: implement HTTP routes (#6035)
* Bootstrap with GORM

* Fix lint error

* Set conn max lifetime to one minute

* Fallback to use gorm v1

* Define HTTP routes

* Finish authentication

* Save token updated

* Add docstring

* Finish authorization

* serveBatch rundown

* Define types in lfsutil

* Finish Batch

* authutil

* Finish basic

* Formalize response error

* Fix lint errors

* authutil: add tests

* dbutil: add tests

* lfsutil: add tests

* strutil: add tests

* Formalize 401 response
2020-04-04 21:14:15 +08:00
dependabot-preview[bot]
2bd9d0b9c8 build(deps): bump github.com/urfave/cli from 1.22.3 to 1.22.4 (#6055)
Bumps [github.com/urfave/cli](https://github.com/urfave/cli) from 1.22.3 to 1.22.4.
- [Release notes](https://github.com/urfave/cli/releases)
- [Changelog](https://github.com/urfave/cli/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/urfave/cli/compare/v1.22.3...v1.22.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-04-03 00:49:18 +08:00
ᴜɴᴋɴᴡᴏɴ
a603c0f1fc dep: bump github.com/gogs/git-module from 1.1.0 to 1.1.1 (#6051) 2020-04-01 02:03:02 +08:00
dependabot-preview[bot]
5b8ed0add9 build(deps): bump github.com/pkg/errors from 0.8.1 to 0.9.1 (#6047)
Bumps [github.com/pkg/errors](https://github.com/pkg/errors) from 0.8.1 to 0.9.1.
- [Release notes](https://github.com/pkg/errors/releases)
- [Commits](https://github.com/pkg/errors/compare/v0.8.1...v0.9.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-31 17:55:33 +08:00
ᴜɴᴋɴᴡᴏɴ
fd7931cd2b Update CHANGELOG (#6049)
* Update CHANGELOG.md

* Update CHANGELOG.md
2020-03-31 05:05:34 +08:00
ᴜɴᴋɴᴡᴏɴ
72111e698e template: better diff handling of rename and deleted files (#6048)
* dep: bump github.com/gogs/git-module from 1.0.2 to 1.1.0

* template: better diff handling or rename and deleted files
2020-03-31 04:50:59 +08:00
ᴜɴᴋɴᴡᴏɴ
dce70fe6d1 locale: sync from Crowdin (#6046) 2020-03-30 01:14:18 +08:00
dependabot-preview[bot]
63ab497f6f build(deps): bump github.com/prometheus/client_golang from 1.2.… (#6044)
Bumps [github.com/prometheus/client_golang](https://github.com/prometheus/client_golang) from 1.2.1 to 1.5.1.
- [Release notes](https://github.com/prometheus/client_golang/releases)
- [Changelog](https://github.com/prometheus/client_golang/blob/master/CHANGELOG.md)
- [Commits](https://github.com/prometheus/client_golang/compare/v1.2.1...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:38:36 +08:00
dependabot-preview[bot]
afe226cd16 build(deps): bump github.com/lib/pq from 1.2.0 to 1.3.0 (#6041)
Bumps [github.com/lib/pq](https://github.com/lib/pq) from 1.2.0 to 1.3.0.
- [Release notes](https://github.com/lib/pq/releases)
- [Commits](https://github.com/lib/pq/compare/v1.2.0...v1.3.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:31:47 +08:00
dependabot-preview[bot]
efa9ef78c8 build(deps): bump github.com/go-macaron/binding from 1.0.1 to 1… (#6045)
Bumps [github.com/go-macaron/binding](https://github.com/go-macaron/binding) from 1.0.1 to 1.1.0.
- [Release notes](https://github.com/go-macaron/binding/releases)
- [Commits](https://github.com/go-macaron/binding/compare/v1.0.1...v1.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:26:25 +08:00
dependabot-preview[bot]
b5a06618fa build(deps): bump gopkg.in/ini.v1 from 1.54.0 to 1.55.0 (#6039)
Bumps [gopkg.in/ini.v1](https://github.com/go-ini/ini) from 1.54.0 to 1.55.0.
- [Release notes](https://github.com/go-ini/ini/releases)
- [Commits](https://github.com/go-ini/ini/compare/v1.54.0...v1.55.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:25:55 +08:00
dependabot-preview[bot]
f0f3b8707b build(deps): bump github.com/sergi/go-diff from 1.0.0 to 1.1.0 (#6042)
Bumps [github.com/sergi/go-diff](https://github.com/sergi/go-diff) from 1.0.0 to 1.1.0.
- [Release notes](https://github.com/sergi/go-diff/releases)
- [Commits](https://github.com/sergi/go-diff/compare/v1.0.0...v1.1.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:25:12 +08:00
dependabot-preview[bot]
045e1670a4 build(deps): bump github.com/niklasfasching/go-org from 0.1.6 t… (#6043)
Bumps [github.com/niklasfasching/go-org](https://github.com/niklasfasching/go-org) from 0.1.6 to 0.1.9.
- [Release notes](https://github.com/niklasfasching/go-org/releases)
- [Commits](https://github.com/niklasfasching/go-org/compare/v0.1.6...v0.1.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:24:44 +08:00
dependabot-preview[bot]
6298e33b8b build(deps): bump github.com/json-iterator/go from 1.1.7 to 1.1… (#6036)
Bumps [github.com/json-iterator/go](https://github.com/json-iterator/go) from 1.1.7 to 1.1.9.
- [Release notes](https://github.com/json-iterator/go/releases)
- [Commits](https://github.com/json-iterator/go/compare/v1.1.7...v1.1.9)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:23:34 +08:00
dependabot-preview[bot]
a8a6325054 build(deps): bump github.com/go-sql-driver/mysql from 1.4.1 to… (#6037)
Bumps [github.com/go-sql-driver/mysql](https://github.com/go-sql-driver/mysql) from 1.4.1 to 1.5.0.
- [Release notes](https://github.com/go-sql-driver/mysql/releases)
- [Changelog](https://github.com/go-sql-driver/mysql/blob/master/CHANGELOG.md)
- [Commits](https://github.com/go-sql-driver/mysql/compare/v1.4.1...v1.5.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-30 00:22:45 +08:00
ᴜɴᴋɴᴡᴏɴ
4cbb43b860 gitutil: simplify mock with t.Cleanup (#6033)
* gitutil: simplify mock with t.Cleanup

* Scope mock to tests only
2020-03-29 20:15:42 +08:00
ᴜɴᴋɴᴡᴏɴ
933206f1fe gitutil: refactor the way to mock (#6032)
* Refactor the mock module store

* Only test on 1.14.x
2020-03-29 19:37:28 +08:00
ᴜɴᴋɴᴡᴏɴ
9356231e64 codecov: formalize coverage settings (#6031)
Co-authored-by: Sourcegraph Bot <campaigns@sourcegraph.com>
2020-03-29 15:34:12 +08:00
ᴜɴᴋɴᴡᴏɴ
a0651b62a7 dep: bump github.com/gogs/git-module from 1.0.1 to 1.0.2 (#6030) 2020-03-29 15:24:10 +08:00
Philidor Green
470274204e api: support get releases endpoint (#6026) 2020-03-28 21:56:11 +08:00
ᴜɴᴋɴᴡᴏɴ
af0cfe112b web: rename CSRF header (#6027) 2020-03-28 19:17:15 +08:00
ᴜɴᴋɴᴡᴏɴ
0b80578e62 Revert "build(deps): bump xorm.io/builder from 0.3.6 to 0.3.7" (#6025)
This reverts commit f58ffb3fd4.
2020-03-27 22:34:06 +08:00
dependabot-preview[bot]
f58ffb3fd4 build(deps): bump xorm.io/builder from 0.3.6 to 0.3.7 (#6021)
Bumps xorm.io/builder from 0.3.6 to 0.3.7.

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:31:54 +08:00
dependabot-preview[bot]
a0f239495d build(deps): bump github.com/editorconfig/editorconfig-core-go/… (#6020)
Bumps [github.com/editorconfig/editorconfig-core-go/v2](https://github.com/editorconfig/editorconfig-core-go) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/editorconfig/editorconfig-core-go/releases)
- [Changelog](https://github.com/editorconfig/editorconfig-core-go/blob/master/CHANGELOG.md)
- [Commits](https://github.com/editorconfig/editorconfig-core-go/compare/v2.3.0...v2.3.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:16:06 +08:00
dependabot-preview[bot]
870746791a build(deps): bump github.com/stretchr/testify from 1.4.0 to 1.5… (#6019)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.4.0 to 1.5.1.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.4.0...v1.5.1)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:13:42 +08:00
ᴜɴᴋɴᴡᴏɴ
71edd615ce README: remove unused badge (#6024) 2020-03-27 22:12:26 +08:00
ᴜɴᴋɴᴡᴏɴ
a9dcf4ce74 github: use Actions for CI (#6022)
* Update golint.yml

* Update README.md

* Update README.md

* Update golint.yml

* Update golint.yml

* Rename golint.yml to go.yml

* Update go.yml

* Update go.yml

* Update go.yml

* Improve tests on Windows

* Delete files
2020-03-27 22:06:29 +08:00
dependabot-preview[bot]
30c047fedd build(deps): bump github.com/mattn/go-sqlite3 from 1.11.0 to 1.… (#6017)
Bumps [github.com/mattn/go-sqlite3](https://github.com/mattn/go-sqlite3) from 1.11.0 to 1.13.0.
- [Release notes](https://github.com/mattn/go-sqlite3/releases)
- [Commits](https://github.com/mattn/go-sqlite3/compare/v1.11.0...v1.13.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:02:21 +08:00
dependabot-preview[bot]
bc309b3ddd build(deps): bump gopkg.in/macaron.v1 from 1.3.4 to 1.3.5 (#6016)
Bumps [gopkg.in/macaron.v1](https://github.com/go-macaron/macaron) from 1.3.4 to 1.3.5.
- [Release notes](https://github.com/go-macaron/macaron/releases)
- [Commits](https://github.com/go-macaron/macaron/compare/v1.3.4...v1.3.5)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:01:51 +08:00
dependabot-preview[bot]
a041601f1f build(deps): bump github.com/urfave/cli from 1.22.1 to 1.22.3 (#6015)
Bumps [github.com/urfave/cli](https://github.com/urfave/cli) from 1.22.1 to 1.22.3.
- [Release notes](https://github.com/urfave/cli/releases)
- [Changelog](https://github.com/urfave/cli/blob/master/docs/CHANGELOG.md)
- [Commits](https://github.com/urfave/cli/compare/v1.22.1...v1.22.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 22:00:46 +08:00
dependabot-preview[bot]
60e93521d5 build(deps): bump github.com/google/go-cmp from 0.3.0 to 0.4.0 (#6014)
Bumps [github.com/google/go-cmp](https://github.com/google/go-cmp) from 0.3.0 to 0.4.0.
- [Release notes](https://github.com/google/go-cmp/releases)
- [Commits](https://github.com/google/go-cmp/compare/v0.3.0...v0.4.0)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

Co-authored-by: dependabot-preview[bot] <27856297+dependabot-preview[bot]@users.noreply.github.com>
2020-03-27 20:21:56 +08:00
ᴜɴᴋɴᴡᴏɴ
14cd16f1f8 csrf: set cookie HttpOnly and Secure (#6013) 2020-03-27 00:08:46 +08:00
ᴜɴᴋɴᴡᴏɴ
5800d78b99 go.mod: update github.com/gogs/git-module (#6011) 2020-03-26 00:02:33 +08:00
Philidor Green
87053c5369 cmd: backup support exclude mirror repositories (#6003)
* cmd: backup support exclude mirror repositories

* Apply suggestions from code review

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-03-24 22:03:05 +08:00
ᴜɴᴋɴᴡᴏɴ
e14b6abf9d http: always set header X-Content-Type-Options to nosniff (#6008) 2020-03-23 22:18:05 +08:00
ᴜɴᴋɴᴡᴏɴ
740f814ce0 locale: sync from Crowdin (#6006) 2020-03-23 02:13:05 +08:00
imgbot[bot]
5bcf4292b6 [ImgBot] Optimize images (#6005)
*Total -- 13.23kb -> 10.21kb (22.85%)

/public/img/dingtalk.png -- 7.86kb -> 5.96kb (24.1%)
/public/img/slack.png -- 5.38kb -> 4.25kb (21.02%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: ImgBotApp <ImgBotHelp@gmail.com>
2020-03-22 22:36:59 +08:00
ᴜɴᴋɴᴡᴏɴ
ad7d1d4f29 github: rename job name (#6004)
* Update golint.yml

* Update lsif.yml
2020-03-22 22:23:52 +08:00
ᴜɴᴋɴᴡᴏɴ
22717a1c06 webhook: overhaul route handlers (#6002)
* Overual route handlers and fixes #5366

* Merge routes for repo and org

* Inject OrgRepoContext

* DRY validateWebhook

* DRY c.HasError

* Add tests

* Update CHANGELOG
2020-03-22 22:07:22 +08:00
ᴜɴᴋɴᴡᴏɴ
82e511ddb1 cmd: init logging before SetEngine (#6001) 2020-03-22 14:11:52 +08:00
ᴜɴᴋɴᴡᴏɴ
5843038a08 workflows: enable golangci-lint (#5998)
* Create golint.yml

* Update golint.yml

* Update golint.yml

* Fix errcheck

* Fix gosimple

* Fix staticcheck
2020-03-21 13:39:32 +08:00
ᴜɴᴋɴᴡᴏɴ
958d8b6bb4 admin: use POST to run operations (#5997)
* admin: use POST to run operations

Fixed CSRF reported by Wenxu Wu of Tencent's Xuanwu Lab.

* Update CHANGELOG
2020-03-21 11:47:42 +08:00
ᴜɴᴋɴᴡᴏɴ
a43fc9ad17 ipynb: sanitize rendered HTML (#5996)
* ipynb: sanitize rendered HTML

Fixes #5170

* Remove hardcode URL

* Add tests
2020-03-21 00:12:38 +08:00
ᴜɴᴋɴᴡᴏɴ
c69a38652d locale: sync from Crowdin (#5991) 2020-03-16 13:57:46 +08:00
ᴜɴᴋɴᴡᴏɴ
a4de85dc80 util: add tests (#5989) 2020-03-16 01:54:08 +08:00
ᴜɴᴋɴᴡᴏɴ
9e9ca66467 refactor: unify error handling in routing layer 2020-03-16 01:22:27 +08:00
ᴜɴᴋɴᴡᴏɴ
82ff0c5852 email: check the owner when set as primary (#5988)
* email: check the owner when set as primary

Fixes a security issue reported by muxishuihan.

* Update CHANGELOG
2020-03-15 18:58:56 +08:00
ᴜɴᴋɴᴡᴏɴ
07f71e2034 README: update link to local development
[CI SKIP]
2020-03-15 03:49:09 +08:00
ᴜɴᴋɴᴡᴏɴ
328c23c5d4 public: make lessc compile minimize CSS (#5987) 2020-03-15 03:47:07 +08:00
Bharat Nallan
268c692efd api: group "/contents" with "" and "/*" #5985 (#5986)
This PR groups the contents api endpoint with both `""` and `/*` as
valid URL patterns.

When `""` is the URL pattern, this means that no repo path has'nt been
provided, in which case the path would be the default repo path.

When  `"/*"` is the URL pattern, then this would return the contents at
the specified path if it's valid.

Github API v3 is conformant to this behavior and have verified it
locally.
2020-03-13 22:37:42 +08:00
ᴜɴᴋɴᴡᴏɴ
434f1ec542 all: clean up dot files (#5983) 2020-03-11 03:02:18 +08:00
ᴜɴᴋɴᴡᴏɴ
927ffef864 api: minor changes to /repo/owner/repo/git/trees (#5982) 2020-03-11 01:28:26 +08:00
ᴜɴᴋɴᴡᴏɴ
047bf94908 ci: enable go vet check (#5981)
* ci: enable go vet check

* Improve .travis.yml
2020-03-11 00:30:51 +08:00
ᴜɴᴋɴᴡᴏɴ
880d0ec19f api: overhaul /repos/owner/repos/contents (#5980)
* Fix import path renaming

* api: overhaul /repos/owner/repos/contents
2020-03-10 22:15:55 +08:00
ᴜɴᴋɴᴡᴏɴ
2430612ad4 templates: fix not able to upload issue attachments (#5978) 2020-03-10 01:33:16 +08:00
ᴜɴᴋɴᴡᴏɴ
e87f1107ca commit: fix unexpected truncation in title
The commit message should not be treated as locale at all.
2020-03-09 02:08:53 +08:00
ᴜɴᴋɴᴡᴏɴ
bebaf4c112 diff: remove misaligned space 2020-03-09 02:06:45 +08:00
ᴜɴᴋɴᴡᴏɴ
d32add9938 go.mod: update to Go 1.13 (#5976) 2020-03-09 01:59:44 +08:00
Kostya Esmukov
975a2b3f59 templates: fix copypaste of email verification in reset_passwd (#5975) 2020-03-09 01:16:50 +08:00
ᴜɴᴋɴᴡᴏɴ
6437d0180b git: migrate to github.com/gogs/git-module@v1.0.0 (#5958)
* WIP

* Finish `internal/db/git_diff.go`

* FInish internal/db/mirror.go

* Finish internal/db/pull.go

* Finish internal/db/release.go

* Finish internal/db/repo.go

* Finish internal/db/repo_branch.go

* Finish internal/db/repo_editor.go

* Finish internal/db/update.go

* Save my work

* Add license header

* Compile!

* Merge master

* Finish internal/cmd/hook.go

* Finish internal/conf/static.go

* Finish internal/context/repo.go

* Finish internal/db/action.go

* Finish internal/db/git_diff.go

* Fix submodule URL inferring

* Finish internal/db/mirror.go

* Updat to beta.4

* css: update fonts

* Finish internal/db/pull.go

* Finish internal/db/release.go

* Finish internal/db/repo_branch.go

* Finish internal/db/wiki.go

* gitutil: enhance infer submodule UR

* Finish internal/route/api/v1/repo/commits.go

* mirror: only collect branch commits after sync

* mirror: fix tag support

* Finish internal/db/repo.go

* Finish internal/db/repo_editor.go

* Finish internal/db/update.go

* Finish internal/gitutil/pull_request.go

* Make it compile

* Finish internal/route/repo/setting.go

* Finish internal/route/repo/branch.go

* Finish internal/route/api/v1/repo/file.go

* Finish internal/route/repo/download.go

* Finish internal/route/repo/editor.go

* Use helper

* Finish internal/route/repo/issue.go

* Finish internal/route/repo/pull.go

* Finish internal/route/repo/release.go

* Finish internal/route/repo/repo.go

* Finish internal/route/repo/wiki.go

* Finish internal/route/repo/commit.go

* Finish internal/route/repo/view.go

* Finish internal/gitutil/tag.go

* go.sum
2020-03-08 19:09:31 +08:00
ᴜɴᴋɴᴡᴏɴ
c65b5b9f84 lsif: enable upload 2020-03-08 00:08:05 +08:00
ᴜɴᴋɴᴡᴏɴ
bf373f9da1 templates: show brand name in the footer (#5974) 2020-03-07 13:15:20 +08:00
ᴜɴᴋɴᴡᴏɴ
2064fc89c0 README: stop advertising using MSSQL (#5973) 2020-03-06 17:56:39 +08:00
ᴜɴᴋɴᴡᴏɴ
5a4c7c75c0 go.mod: update to unknwon.dev/clog/v2@v2.1.2 (#5970)
Fixed a critical bug
2020-03-06 01:16:49 +08:00
ᴜɴᴋɴᴡᴏɴ
5ad2fdcf0b api: GET /repos/:owner/:repo/contents/:path (#5963)
* support API `GET /repos/:owner/:repo/contents/:path`

This PR adds support to #5949:
`GET /repos/:owner/:repo/contents/:path`

Curl:

```bash
curl -H "Authorization: token REDACTED"
http://localhost:3000/api/v1/repos/root/testrepo/contents//master/README.md
-X GET  | jq .
```

Curl  Response:

```bash
{
  "type": "blob",
  "size": 12,
  "name": "README.md",
  "path": "README.md",
  "sha": "70fcb456d436f08462602f26df6fb7e167e7a916",
  "url": "http://localhost:3000/api/v1/repos/root/testrepo/contents/README.md",
  "git_url": "70fcb456d4",
  "html_url": "70fcb456d4",
  "download_url": "http://localhost:3000/api/v1/root/testrepo/raw/README.md",
  "_links": {
    "git": "70fcb456d4",
    "self": "http://localhost:3000/api/v1/repos/root/testrepo/contents/README.md",
    "html": "70fcb456d4"
  },
  "content": "IyB0ZXN0cmVwbwoK"
}

```

* rename - path.go to contents.go

* reorder imports

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* rename struct to repoContents and fix field order

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* rename variable

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* rename GetPathContents to GetContents

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* return on server error

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* resolve conflicts introduced via git web ui

* make constants as method variables

* handle dir type case last

* fix func and var names

* implement suggested changes in review

* refactor smaller funcs to be part of GetContent

* fix content type check for blob after refactoring

* changes based on suggestions

* read full file, return empty json array

* don't set submoduleURL

* set server err msg to method name

* set target to be blob data for symlinks

* Update contents.go

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-03-05 16:15:38 +08:00
ᴜɴᴋɴᴡᴏɴ
8d37d418e7 locale: sync from Crowdin (#5965) 2020-03-04 02:28:13 +08:00
ᴜɴᴋɴᴡᴏɴ
8df3350252 auth: redirect landing URL with subpath prepended (#5964) 2020-03-04 02:02:12 +08:00
ᴜɴᴋɴᴡᴏɴ
931da04dc2 cmd/serv: improve hookMode handling (#5960)
- Allow remove primary logger at better location
- Use more appropriate log.Error to replace log.Fatal
2020-03-02 22:25:28 +08:00
ᴜɴᴋɴᴡᴏɴ
7efa946b02 git: explicitly disable debug in prod mode (#5959)
After first time running the application and went through the installation, the flag was always true until restarted.
2020-03-02 22:09:09 +08:00
ᴜɴᴋɴᴡᴏɴ
fe7b094b9e log: fix tests 2020-03-02 01:14:26 +08:00
ᴜɴᴋɴᴡᴏɴ
7382c23a17 cmd: init minimal logging config in hook mode 2020-03-02 01:01:52 +08:00
ᴜɴᴋɴᴡᴏɴ
0b86aa5d29 pkgr: update heroku-buildpack to latest (#5957) 2020-03-01 22:46:39 +08:00
ᴜɴᴋɴᴡᴏɴ
f04b2d4350 lint: fix some Golang CI lint issues (#5955) 2020-03-01 14:55:03 +08:00
ᴜɴᴋɴᴡᴏɴ
9c65798902 conf: enhance app.ini comments 2020-03-01 13:23:59 +08:00
ᴜɴᴋɴᴡᴏɴ
d8f56de258 Delete unused file
[CI SKIP]
2020-03-01 03:31:25 +08:00
ᴜɴᴋɴᴡᴏɴ
18e45aab98 template: improve admin config page 2020-03-01 03:21:13 +08:00
ᴜɴᴋɴᴡᴏɴ
344b784d69 js: fix jQuery error 2020-02-29 23:52:35 +08:00
ᴜɴᴋɴᴡᴏɴ
333998509f css: fix /admin/config pre overflow 2020-02-29 23:34:03 +08:00
ᴜɴᴋɴᴡᴏɴ
8796df8218 conf: add unit tests (#5954)
* conf: add tests for utils.go

* conf: add tests for static.go

* mock os/exec

* Run tests on Windows

* appveyor: fix gcc not found

* computed: add unit tests

* log: add unit tests

* log: fix tests on Windows

* conf: add some tests

* Finish adding tests

* Cover more cases

* Add tests for testutil

* Add more tests
2020-02-29 22:24:20 +08:00
ᴜɴᴋɴᴡᴏɴ
17ae0ed3ee conf: overhaul settings (#5953)
* Overhaul cache settings

* Overhaul HTTP settings

* conf: overhaul more settings

* log: make LGTM happy

* travis: upload report to Codecov

* Add codecov.yml
2020-02-29 16:29:17 +08:00
ᴜɴᴋɴᴡᴏɴ
d59b0f6ff7 conf: overhaul sessions settings (#5952) 2020-02-29 00:26:03 +08:00
ᴜɴᴋɴᴡᴏɴ
1898201b8b build: requires Go 1.13 2020-02-28 23:43:19 +08:00
guan
40214ef109 public: fix jquery3.x syntax error (#5951)
$.post().success -> $.post().done
2020-02-28 22:52:26 +08:00
imgbot[bot]
4f70ab8e27 [ImgBot] Optimize images (#5943)
*Total -- 115.45kb -> 73.67kb (36.19%)

/public/img/gogs-hero.png -- 58.29kb -> 34.18kb (41.37%)
/public/img/favicon.png -- 57.15kb -> 39.48kb (30.91%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: Imgbot <help@imgbot.net>

[CI SKIP]
2020-02-27 21:56:03 +08:00
ᴜɴᴋɴᴡᴏɴ
416f245e6c README: update acknowledgments
[CI SKIP]
2020-02-27 20:24:40 +08:00
ᴜɴᴋɴᴡᴏɴ
177806068d public: update to new logo 2020-02-27 20:21:41 +08:00
ᴜɴᴋɴᴡᴏɴ
7950f2d17d conf: overhaul auth and user settings (#5942)
* conf: overhaul auth and user settings

* ci: update travis Go versions
2020-02-27 18:06:38 +08:00
Bharat Nallan
cf3d55fa10 api: support getting repository Git tree (#5934) (#5937)
* add basic git repository tree api (#5934)

This PR adds the tree  api endpoint to gogs api:
`GET/repos/:owner/:repo/git/trees/:tree_sha`

This new api endpoint that is being added is in conformance to
the GitHub REST API v3 specification. Documentation can be found
here: developer.github.com/v3/git/trees/#get-a-tree

For a given user, repo and sha value, this api (currently) returns
a single tree using the SHA1 value for that tree.

- Recursive implementation is yet to be implemented.
- Creating a Tree using POST is yet to be implemented.

Example curl:

```

l curl -H "Authorization: token REDACTED" c59441ded1 -X GET  | jq .
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100   940  100   940    0     0  12034      0 --:--:-- --:--:-- --:--:-- 12051

[
  {
    "sha": "c59441ded1549b149def0d4c54594d31a7f3718f",
    "tree": [
      {
        "mode": "120000",
        "path": "/home/bharatnc/gogs-repositories/root/testrepo.git",
        "sha": "472ac2361b65136b393d652de25341e2ea44f299",
        "size": 1077,
        "type": "blob",
        "url": "472ac2361b"
      },
      {
        "mode": "120000",
        "path": "/home/bharatnc/gogs-repositories/root/testrepo.git",
        "sha": "70fcb456d436f08462602f26df6fb7e167e7a916",
        "size": 12,
        "type": "blob",
        "url": "70fcb456d4"
      },
      {
        "mode": "120000",
        "path": "/home/bharatnc/gogs-repositories/root/testrepo.git",
        "sha": "092c58d4b63df5779a4d020b1fdbb762421bbb4f",
        "size": 380,
        "type": "blob",
        "url": "092c58d4b6"
      }
    ],
    "url": "c59441ded1"
  }
]

```

* remove vertical space

* make go.mod to be same as in master

* rename structs to sound better

* simplify expressions and fix error msg

* Update tree.go

* Update tree.go

* display file name instead of repo path

* Update tree.go

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-02-25 22:19:42 +08:00
ᴜɴᴋɴᴡᴏɴ
85f94676ba docs: improve local development guide
[CI SKIP]
2020-02-25 02:12:11 +08:00
ᴜɴᴋɴᴡᴏɴ
52ffb67b33 conf: overhaul email settings (#5940) 2020-02-25 00:35:35 +08:00
ᴜɴᴋɴᴡᴏɴ
0d6c405ccb cmd/web: fix wrong ExternalURL when specify port via CLI flag
Fixes #5936.
2020-02-24 21:21:48 +08:00
ᴜɴᴋɴᴡᴏɴ
0c064b1b79 cmd/web: fix error when Unix socket not exists 2020-02-24 21:13:56 +08:00
ᴜɴᴋɴᴡᴏɴ
63e56facbf README: add emoji to headings
[CI SKIP]
2020-02-23 11:53:12 +08:00
ᴜɴᴋɴᴡᴏɴ
f2dc0d3115 css: add img margin-right
[CI SKIP]
2020-02-23 11:38:50 +08:00
ᴜɴᴋɴᴡᴏɴ
286fbc07e9 conf: overhaul security settings 2020-02-22 20:46:16 +08:00
ᴜɴᴋɴᴡᴏɴ
a7e53b8134 go.mod: update unknwon.dev/clog/v2 to v2.1.1 2020-02-22 20:43:58 +08:00
ᴜɴᴋɴᴡᴏɴ
afc2500aee docker: fix link to Docker Hub
[CI SKIP]
2020-02-22 19:30:17 +08:00
ᴜɴᴋɴᴡᴏɴ
c4062f495a README: fix image and link
[CI SKIP]
2020-02-22 19:16:33 +08:00
ᴜɴᴋɴᴡᴏɴ
d3ecd22dba cmd: fix unable to find correct custom config 2020-02-22 19:12:31 +08:00
ᴜɴᴋɴᴡᴏɴ
5efbde4fe9 conf: overhaul database settings 2020-02-22 18:58:16 +08:00
ᴜɴᴋɴᴡᴏɴ
c4a0a40473 conf: overhaul repository settings (#5932) 2020-02-22 15:22:32 +08:00
ᴜɴᴋɴᴡᴏɴ
f59a68c531 README: update headline and preview
[CI SKIP]
2020-02-22 13:07:17 +08:00
ᴜɴᴋɴᴡᴏɴ
5282699f19 admin/config: show all server and SSH options 2020-02-22 11:40:23 +08:00
ᴜɴᴋɴᴡᴏɴ
648d9e253c conf: overhaul server settings (#5928)
* conf: rename package

* Requires Go 1.12

* Fix lint

* Fix lint

* Overhaul

* db: fix tests

* Save my work

* Fix tests

* Server.UnixSocketPermission

* Server.LocalRootURL

* SSH settings

* Server.OfflineMode

* Save my work

* App.Version

* Remove [server] STATIC_ROOT_PATH

* Server.LandingURL
2020-02-22 09:05:26 +08:00
ᴜɴᴋɴᴡᴏɴ
5b14cc6f0b docker: update link to Docker Hub and add info for gogs-rpi
[CI SKIP]
2020-02-21 20:18:31 +08:00
ᴜɴᴋɴᴡᴏɴ
e575405d7b go.mod: update golang.org/x/crypto/ssh for security fixes 2020-02-21 10:08:00 +08:00
ᴜɴᴋɴᴡᴏɴ
2e819a360c build: rename build tag miniwinsvc -> minwinsvc
This was in fact a typo.
2020-02-20 16:33:03 +08:00
ᴜɴᴋɴᴡᴏɴ
1c09373b4f log: migrate to unknwon.dev/clog/v2 (#5927)
* Add unknwon.dev/clog/v2

* Update all places
2020-02-20 02:25:02 +08:00
ᴜɴᴋɴᴡᴏɴ
422a206484 conf: remove unused config option SHOW_FOOTER_VERSION 2020-02-20 00:20:42 +08:00
ᴜɴᴋɴᴡᴏɴ
e545c310ee CHANGELOG: add missing entry for ce1ec81d6f
[CI SKIP]
2020-02-19 23:48:35 +08:00
ᴜɴᴋɴᴡᴏɴ
ce1ec81d6f repo/editor: clean up tree path
Fixes a security issue reported by @zeripath.
2020-02-19 23:45:02 +08:00
ᴜɴᴋɴᴡᴏɴ
33c6341ccd osutil: add unit tests 2020-02-19 23:15:57 +08:00
ᴜɴᴋɴᴡᴏɴ
b74ecd8a75 CHANGELOG: add missing entry for ea75f01ba2
[CI SKIP]
2020-02-19 17:45:40 +08:00
ᴜɴᴋɴᴡᴏɴ
bcc1ec65f9 .travis: fix config warning
[CI SKIP]
2020-02-19 17:37:52 +08:00
ᴜɴᴋɴᴡᴏɴ
e82c96dab1 log: use trace level for some logs 2020-02-19 17:33:45 +08:00
ᴜɴᴋɴᴡᴏɴ
ea75f01ba2 admin: show all version in dashboard
And removed version info from footer.
2020-02-19 17:32:56 +08:00
ᴜɴᴋɴᴡᴏɴ
3a2b2de814 Makefile: generate Sourcemap for less files
[CI SKIP]
2020-02-19 16:53:51 +08:00
ᴜɴᴋɴᴡᴏɴ
7b5b070900 docs: add steps to install npm and lessc
[CI SKIP]
2020-02-19 16:53:10 +08:00
ᴜɴᴋɴᴡᴏɴ
8d73608672 docs: improve set up guide
[CI SKIP]
2020-02-19 00:26:02 +08:00
ᴜɴᴋɴᴡᴏɴ
9f7433d4f3 docs: add local development
[CI SKIP]
2020-02-18 22:34:21 +08:00
ᴜɴᴋɴᴡᴏɴ
bbffd1b5b6 docker: fix Docker Hub build failure 2020-02-18 20:19:12 +08:00
ᴜɴᴋɴᴡᴏɴ
31d17de26c README: clean up 2020-02-18 20:08:48 +08:00
ᴜɴᴋɴᴡᴏɴ
3797a4839d README: update Features list
[CI SKIP]
2020-02-18 19:24:39 +08:00
ᴜɴᴋɴᴡᴏɴ
f85b17a00e mailer: fix template not found error 2020-02-18 17:48:36 +08:00
ᴜɴᴋɴᴡᴏɴ
33b6478cc7 go.mod: update github.com/go-macaron/i18n to v0.5.0
Fixes a security issue reported by Dor Tumarkin, Security Researcher at Checkmarx.
2020-02-18 17:22:11 +08:00
ᴜɴᴋɴᴡᴏɴ
317bca1008 Add CHANGELOG and adopt new release workflow
In development, the version now has +dev suffix indicates it is not a binary release.
2020-02-18 12:31:08 +08:00
Michael Li
4d83fd4238 Use go-bindata to embed public and templates files into binary (#5920)
* fixed private repositories are hidden in the organization's view

* use go-bindata integrate public and templates files to gogs binary

* optimize Dockerfile don't COPY public and templates files

* use kevinburke's go-bindata to generate assets code

* reset develepment as default run mode in configure file

* optimize generated assets code relayout and help function

* fixed code format

* Update conf/app.ini

* assets: add LICENSE headers

* Some housekeeping

* assets/public: simplify code logic

* assets/templates: simplify code logic

* cmd/web: more concise variable names

* Minor changes

* Add custom public and templates support back

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-02-17 22:48:24 +08:00
Unknwon
fd14ad6ce9 README: fix phonemic transcription (#5916)
[CI SKIP]
2020-02-07 15:22:51 +08:00
Unknwon
31590afc5f README: add new sponsor BitLaunch
[CI SKIP]
2020-02-07 03:42:02 +08:00
Unknwon
85281d8efa db/repo: fix Git version check to 1.8.3 2020-02-04 20:50:37 +08:00
Unknwon
7a2af4a2a2 locale: sync from Crowdin 2020-02-04 20:41:35 +08:00
imgbot[bot]
465be9b16e [ImgBot] Optimize images (#5913)
*Total -- 2,264.72kb -> 2,093.92kb (7.54%)

/public/plugins/pdfjs-1.4.20/web/images/annotation-noicon.svg -- 0.15kb -> 0.08kb (46.84%)
/public/img/emoji/back.png -- 3.97kb -> 2.46kb (37.95%)
/public/img/gogs-large-resize.png -- 80.67kb -> 54.16kb (32.86%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-note.svg -- 1.02kb -> 0.69kb (32.08%)
/public/img/404.png -- 8.43kb -> 5.94kb (29.47%)
/public/img/500.png -- 9.76kb -> 7.27kb (25.47%)
/public/img/favicon.png -- 28.47kb -> 21.58kb (24.21%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-check.svg -- 0.41kb -> 0.31kb (23.37%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-newparagraph.svg -- 0.42kb -> 0.32kb (23%)
/public/img/gogs.svg -- 14.66kb -> 11.34kb (22.66%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-insert.svg -- 0.40kb -> 0.31kb (22.55%)
/public/img/gogs-lg.png -- 164.32kb -> 133.07kb (19.02%)
/public/img/dingtalk.png -- 30.02kb -> 24.91kb (17.02%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-comment.svg -- 0.86kb -> 0.74kb (14.72%)
/public/img/avatar_default.png -- 502.04kb -> 442.97kb (11.77%)
/public/img/emoji/black_circle.png -- 2.31kb -> 2.07kb (10.68%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-paragraph.svg -- 1.12kb -> 1.00kb (10.15%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-help.svg -- 2.12kb -> 1.96kb (7.29%)
/public/plugins/pdfjs-1.4.20/web/images/annotation-key.svg -- 1.42kb -> 1.32kb (6.68%)
/public/assets/octicons-4.3.0/octicons.svg -- 43.89kb -> 41.59kb (5.23%)
/public/img/emoji/envelope.png -- 1.62kb -> 1.53kb (5.08%)
/public/css/themes/default/assets/fonts/icons.svg -- 381.68kb -> 369.58kb (3.17%)
/public/css/themes/default/assets/fonts/outline-icons.svg -- 104.69kb -> 101.59kb (2.96%)
/public/css/themes/default/assets/fonts/brand-icons.svg -- 495.73kb -> 487.61kb (1.64%)
/public/img/emoji/page_facing_up.png -- 2.13kb -> 2.09kb (1.56%)
/public/assets/font-awesome-4.6.3/fonts/fontawesome-webfont.svg -- 382.44kb -> 377.43kb (1.31%)

Signed-off-by: ImgBotApp <ImgBotHelp@gmail.com>

Co-authored-by: Imgbot <help@imgbot.net>
2020-02-01 06:35:59 +08:00
Unknwon
19ae04da66 public/plugins: upgrade highlight.js 9.16.2 to 9.18.0 2020-01-31 23:33:47 +08:00
Unknwon
2e00f00ab0 public/plugins: upgrade Dropzone 4.2.0 to 5.5.0 2020-01-31 23:27:56 +08:00
Unknwon
e99f43f59c public/js: upgrade jQuery 1.12.4 to 3.4.1 2020-01-31 23:26:44 +08:00
Unknwon
2637931102 public: upgrade Semantic UI 2.3.1 to 2.4.2 2020-01-31 21:37:30 +08:00
Unknwon
54067d105b public/js: upgrade clipboard 1.5.9 to 2.0.4 2020-01-31 21:21:30 +08:00
Unknwon
4c415aefed public/js: upgrade jQuery 1.11.3 to 1.12.4 2020-01-31 21:20:47 +08:00
ᴜɴᴋɴᴡᴏɴ
b28fb90851 all: use lazyregexp (#5911)
* Use lazyregexp

* all: fix imports and usages
2020-01-29 19:36:57 +08:00
Unknwon
8b7fa6627f conf: fix wrong default example value 2020-01-29 16:42:07 +08:00
Unknwon
f148b7bfc0 conf: update instructions for installing go-bindata 2020-01-29 16:42:06 +08:00
ivan
a0342d9527 repo: able fill pull request title by template from md file (#5901)
* able fill pull request title by template from md file

* fix: unusedresult: result of fmt.Sprintf call not used (from govet)

* fix: remove import fmt -> not used

* after review / PullRequestTitleTemplateCandidates moved to after line 39

* Update pull.go

* Update pull.go

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-01-29 16:28:59 +08:00
ᴜɴᴋɴᴡᴏɴ
2f4cc5480e api/misc/markdown: remove Mode option (#5910)
We already have a separate `/markdown/raw` API, remove redundant functionality here.
2020-01-29 02:41:31 +08:00
ᴜɴᴋɴᴡᴏɴ
5e6c3b9d0e api: sanitize raw markdown content (#5907)
Fixed a security issue reported by bluebird.
2020-01-27 00:18:46 +08:00
Andrey Filippov
0a461b829a repo: fix redirect after opening/closing milestone (#5903)
* Fix milestone redirect

* gosimple

* Apply suggestions from code review

Co-Authored-By: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>

* fix typo

* Update docstring of MakeURL

Co-authored-by: ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
2020-01-26 05:42:38 +08:00
Achilleas Koutsou
91e9495148 docker: check "/app/gogs" separately on startup (#5895)
When running gogs after the first time, if the image has changed (update
rebuild), the /app/gogs directory will have changed owner back to
root:root, but /data will likely not be since the data directories are
likely to be persistent.

Checking /app/gogs separately fixes this.
2020-01-23 02:22:30 +08:00
Achilleas Koutsou
873966aa86 user/setting: check for IsErrEmailAlreadyUsed when updating user (#5900)
Check for email collisions when updating the entire user information,
not when the username is being changed.

Fixes #5899
2020-01-23 02:05:31 +08:00
Michael Li
6bd08a0b6f internal/db/org: fix private repositories are hidden in the organization view (#5890) 2020-01-21 21:11:00 +08:00
Yoan Blanc
76b87b1bbd repo: use editorconfig v2 (#5888)
* repo: editorconfig v2

Signed-off-by: Yoan Blanc <yoan@dosimple.ch>

* fixup! repo: editorconfig v2

Signed-off-by: Yoan Blanc <yoan@dosimple.ch>

* Update repo.go

* Update repo.go

Co-authored-by: Unknwon <u@gogs.io>
2019-12-25 10:26:57 +08:00
Kevin Gentile
1b929e3afc repo: fix stale webhook documentation link (#5883) 2019-12-09 14:20:04 -08:00
Unknwon
6b9b42bbdf locale: sync from Crowdin 2019-12-09 00:25:34 -05:00
Unknwon
67cc242820 .github: add refine feature_request and add security templates
[SKIP CI]
2019-11-25 23:26:04 -08:00
Unknwon
b5a85b51b6 .github: add config.yml and update bug_report template
[SKIP CI]
2019-11-25 23:11:27 -08:00
Unknwon
2b5639d503 Dockefile: format and use tagged version
[SKIP CI]
2019-11-25 22:49:25 -08:00
Unknwon
db4bf20df3 README: add phonetic symbol
[SKIP CI]
2019-11-25 15:27:20 -08:00
Unknwon
59e9a87d95 README: add Syncloud to Product Support
[SKIP CI]
2019-11-18 20:12:12 -08:00
Unknwon
bbc12378d4 mirror: use Git command to update origin remote address (#5767) (#5865)
Fixes a RCE reported by @ManassehZhou and @zeripath.
2019-11-16 21:26:06 -08:00
Unknwon
5bec61b824 go.mod: update github.com/go-macaron/binding@v1.0.1
Addresses gogs/go-gogs-client#111.
2019-11-12 22:54:09 -08:00
Johannes
7a0fbd0eb1 public: makes CodeMirror mode by filename lookups case-insensitive (#5857)
* updated the highlight.js plugin

* added some explicit mappings for syntax highlighting

* public: makes CodeMirror mode by filename extension lookup case-insensitive
2019-11-08 15:23:08 -08:00
Unknwon
53d30ccde9 templates: fix line wrap for very long commit message 2019-11-07 11:18:21 -08:00
johannes69ki
7d9f408d3a public: update highlights.js to 9.16.2 (#5856)
* updated the highlight.js plugin

* added some explicit mappings for syntax highlighting
2019-11-07 10:43:01 -08:00
Unknwon
260c4e8503 go.mod: update github.com/gogs/go-libravatar (#5851) 2019-11-05 23:12:06 -08:00
Kasei
dbc66d0405 tls: update default CurvePreferences and CipherSuites (#5850)
* Enable X25519 curve and reorder curve list to improve key exchange performance
* Enable ECDSA ciphers for EC certs
* Enable CHACHA20_POLY1305 ciphers
* Disable RSA key exchange algorithm which don't provide PFS
* Disable non-AEAD ciphers

Signed-off-by: Kasei Wang <kasei@kasei.im>
2019-11-05 23:09:29 -08:00
Unknwon
9578a3cc31 templates: update version info 2019-11-05 22:25:47 -08:00
Unknwon
83b480761f db/repo: print more error info 2019-11-05 11:01:11 -08:00
Guy Smoilov
b40b85e006 repo: delete local copies on owner name change (#5843)
* Protect local repo copy deletion with repoWorkingPool, and delete the local
copy on owner name change.

* Update internal/db/user.go

Co-Authored-By: Unknwon <u@gogs.io>

* Error format on local repo and wiki deletion
2019-11-03 11:07:40 -08:00
Unknwon
97772f406d README: remove unstable badge
[CI SKIP]
2019-11-02 20:27:03 -07:00
Unknwon
8c75b65475 README: use modern style of badges
[CI SKIP]
2019-11-02 20:26:09 -07:00
Unknwon
0f81490830 locale: sync from Crowdin 2019-11-02 12:44:15 -07:00
Unknwon
7da5d83d6e locale: amend source locale
[CI SKIP]
2019-10-30 20:18:20 -07:00
Unknwon
1cfdd1283a cmd/import: improve error message
- Print app.Run() error
2019-10-26 01:48:19 -07:00
Unknwon
762e1167c7 locale: sync from Crowdin 2019-10-26 01:47:27 -07:00
Unknwon
2d55c94c7b pkgr: slow but fix builds on packager.io (#5840)
* Test

* Test

* My last try

* Avoid cleaning old Go version
2019-10-25 21:58:40 -07:00
Unknwon
c9e712d07b Makefile: set -trimpath on build
[ci skip]
2019-10-25 13:16:34 -07:00
Unknwon
a887bed25b appveyor: remove direct from GOPROXY 2019-10-24 22:53:40 -07:00
Unknwon
3fc783617a appveyor: print Go version 2019-10-24 22:52:16 -07:00
Unknwon
34d9a17aad appveyor: use stack: go 1.13.3 2019-10-24 22:51:08 -07:00
Unknwon
40ee8de171 appveyor: add GOPROXY env 2019-10-24 22:47:10 -07:00
Unknwon
feb7d57333 pkgr: use lower version of buildpack 2019-10-24 22:27:39 -07:00
Unknwon
390b903c55 web: fix panic when download attachments (#5838) 2019-10-24 19:58:30 -07:00
Unknwon
1ba27853bd Remove use of develop branch 2019-10-24 18:37:00 -07:00
Unknwon
de61bb6a35 packager.io: update scripts (#5837)
* Test new buildpack and distro

* Try another buildpack version

* Give another try

* Try another one

* Best effort
2019-10-24 02:01:43 -07:00
Unknwon
01c8df01ec internal: move packages under this directory (#5836)
* Rename pkg -> internal

* Rename routes -> route

* Move route -> internal/route

* Rename models -> db

* Move db -> internal/db

* Fix route2 -> route

* Move cmd -> internal/cmd

* Bump version
2019-10-24 01:51:46 -07:00
Unknwon
613139e7be Enable Go modules (#5835)
* Remove vendor

* Enable Go modules

* ci: add command to fetch dependencies

* ci: update setting

* ci: update settings

* Require Go 1.11

* Rename module name to gogs.io/gogs
2019-10-23 23:03:17 -07:00
Unknwon
fb100dbf98 locale: sync from Crowdin
- Also amended some source translations.
2019-10-20 13:00:41 -07:00
Unknwon
ecf61be633 ci: add Go 1.13 2019-10-19 17:29:03 -07:00
Frode Aannevik
1619317c3b repo/download: add Last-Modified response header (#5827)
* repo/download: Add Last-Modified response header

ref: https://github.com/gogs/gogs/issues/5811

* Update download.go


Co-authored-by: Unknwon <u@gogs.io>
2019-10-19 17:26:56 -07:00
Unknwon
76fabe8785 locale: sync from Crowdin 2019-10-19 17:01:57 -07:00
Unknwon
1a17c2ba1f Makefile: use go build to replace go install 2019-10-15 14:37:42 -07:00
Unknwon
a04de87584 models/token: generate bindata and simplify code (#5820) 2019-10-15 14:36:52 -07:00
Frode Aannevik
ffbb0f6a60 token: disallow multiple tokens with same name (#5820)
* api/v1: don't allow multiple tokens with same name

Fail with 422 Unprocessable Entity if the token name
already exist

ref: https://github.com/gogs/gogs/issues/5587

* Move new token error type to models/errors/token

* Remove "useless" ListAccessTokensByName function

* Add an i18n entry for token_name_exists
2019-10-15 14:09:47 -07:00
unknwon
1c82c42cb3 locale: sync from Crowdin 2019-10-03 20:35:32 -07:00
Sauyon Lee
11f79a2095 api/v1: fix status response in checkUserFollowing (#5812) 2019-10-02 19:00:26 -07:00
unknwon
847c06d88b templates/repo: remove unnecessary wrap div 2019-09-21 20:48:09 -07:00
Alexey Agafonov
209569a035 repo: allow admin to remove observers from the repository (#5782) (#5803)
* admin can remove observers from the repository (#5782)

* admin can remove observers from the repository (#5782)

* admin can remove observers from the repository (#5782)

* admin can remove observers from the repository (#5782)

* admin can remove observers from the repository (#5782)
2019-09-21 20:37:20 -07:00
mb
0852e83eec scripts/init/ddwrt: removed reliance on sudo, daemonize deals with forking as user. (#5806)
Added wait for SQL as it may take more time to start up on a router: make sure you configure this before using.
Proper Start/Stop/Reset is now implemented.
2019-09-19 15:50:57 -07:00
mb
ca084ab1a2 scripts: ddwrt / entware init script (#5795) 2019-09-18 18:39:19 -07:00
Marco van Zwetselaar
cab2b96871 ldap: log two non-errors on Trace level (#5804) 2019-09-18 18:35:42 -07:00
unknwon
8675dff045 locale: sync from Crowdin 2019-09-15 11:04:40 -07:00
张怡秋
ed2adc7025 templates/mail: modify the year at the footer (#5793) 2019-09-13 13:28:57 -07:00
Alexey Agafonov
ddc7a2dd4d models/issue_mail: don't send email to non-active users (#5788)
Fixes #5782
2019-08-24 15:12:25 +08:00
Shiki-H
2f0cdfd564 scripts/mysql: fix compatibility issue (#5786) 2019-08-19 07:06:48 +08:00
unknwon
c154721f4a Bump version 2019-08-11 18:59:46 -07:00
unknwon
48cdae2829 Dockerfile: always use alpine:latest (#5714) 2019-08-10 20:23:18 -07:00
Atsushi Midorikawa
9571a9b53d docker: change how to check whether initial or not (#5766) 2019-08-10 20:05:11 -07:00
unknwon
f1e0ebfe93 routes/api/v1: codemod 2019-08-10 13:40:48 -07:00
unknwon
c7ba519af2 routes/api/v1: codemod 2019-08-08 23:53:43 -07:00
Pablo Alcantara
04de977855 dockerfile: add rsync (#5773)
* Add rsync to docker.

Add rsync to docker.
Rsync is nearly a necessity to optimize backup inside Openshift container.
Using TAR (default without Rsync), the process of external backup constantly stops at the middle.

* Add rsync to docker

Add rsync to docker.
Rsync is nearly a necessity to optimize backup inside Openshift container.
Using TAR (default without Rsync), the process of external backup constantly stops at the middle.

* Add rsync to docker

Add rsync to docker.
Rsync is nearly a necessity to optimize backup inside Openshift container.
Using TAR (default without Rsync), the process of external backup constantly stops at the middle.

* Add rsync to docker

Add rsync to docker.
Rsync is nearly a necessity to optimize backup inside Openshift container.
Using TAR (default without Rsync), the process of external backup constantly stops at the middle.
2019-08-06 19:25:04 -07:00
Mathias Rangel Wulff
591a05caa3 Update TRANSLATORS (#5774) 2019-08-06 19:24:09 -07:00
unknwon
82700ea95a README: add Builtkite to sponsors 2019-08-04 17:20:51 -07:00
unknwon
a36b29c25c Bump version 2019-08-01 18:41:45 -07:00
unknwon
c3af3ff1d0 routes/api: fix permission checks for routes
Reported by @ManassehZhou #5764
2019-08-01 18:36:05 -07:00
unknwon
1592e578ed routes/api: add missing permission checks for routes
Permission check not enforced for deploy keys, collaborators, and hooks.

Reported by @ManassehZhou #5764
2019-08-01 18:26:05 -07:00
unknwon
e640683c97 README: add new VPS sponsor
[CI SKIP]
2019-07-29 19:17:50 -07:00
mal
e6bddd3ed2 packager.io: fix and update build files (#5760)
* Update pkgr distros and dependencies

* Configure govendor for heroku builds
2019-07-28 18:37:44 -07:00
unknwon
bd0549caea vendor: update missing test deps for ci 2019-07-28 16:08:47 -07:00
unknwon
08a53e5eca pkg/context/notice: use path.Join to concatenate path 2019-07-28 16:08:00 -07:00
unknwon
025972ef64 vendor: update missing test deps for ci 2019-07-28 16:03:54 -07:00
unknwon
00a3e368b4 vendor: update to fix tests with Go 1.12.x
- github.com/smartystreets/goconvey
- github.com/jtolds/gls
2019-07-28 15:56:22 -07:00
unknwon
6b2465746a ci: add Go 1.12.x 2019-07-28 15:14:28 -07:00
unknwon
35e2cee5c5 pkg/template: use template function Year to get number of year
To avoid update in each year
2019-07-28 15:10:44 -07:00
unknwon
d775fe7936 pkg/context: change banner file path (#5750) 2019-07-28 14:59:51 -07:00
Achilleas Koutsou
dc13eb6df0 pkg/context: Render live notice banner from file (#5750)
* pkg/context: Render live notice banner from file

- Contexter checks if there is a file called 'notice' under the
GOGS_CUSTOM directory and loads it.
- The first line is treated as a header/title and everything else as the
message body.
- Message body is rendered as HTML (tags allowed).
- File size is limited to 1024 bytes.
- File mime type must be text.
- Notice is rendered in head.tmpl for all pages.

* pkg/context: Rename maxlen to maxSize

Rename maxlen to maxSize for the maximum size (in bytes) of the notice
file to render.
Define the variable when needed to avoid instantiating it when the file
doesn't exist.

Co-Authored-By: ᴊ. ᴄʜᴇɴ <u@gogs.io>

* pkg/context: Package name after license header

Co-Authored-By: ᴊ. ᴄʜᴇɴ <u@gogs.io>

* pkg/context: Don't print 'Found notice file'

Becomes too verbose as it prints on every page load when the file
exists.

* pkg/context: Match project conventions

Import order and grouping

Variable names:
    fileloc -> fpath
    fp -> f
    finfo -> fi

* pkg/context: Remove empty line

Co-Authored-By: ᴊ. ᴄʜᴇɴ <u@gogs.io>

* pkg/context: Render notice as markdown

Server notice file should be named 'notice.md'.  The contents of the
file are treated as markdown and rendered as a warning message at the
top of every page.

* Update notice.go


Co-authored-by: ᴊ. ᴄʜᴇɴ <u@gogs.io>
2019-07-27 23:47:35 -07:00
Robin van Boven
798636c95b Include the Sha in webhook create payloads. (#5689) 2019-07-09 17:26:19 -07:00
Unknwon
25fdf6cb16 locale: sync from Crowdin 2019-06-27 08:32:59 -04:00
Paul Spieker
044a45db2e docker: prevent Gogs from running a recursive chown on each boot (#5724)
The chown command in the setup file of Gogs is supposed to be executed just once. As soon as the app.ini file exists, this step should be skipped. However, the test was checking if a directory with the name app.ini exists instead of a file. Therefore, the chown command was executed on each boot.
2019-06-16 13:42:56 -04:00
Tekaoh
0aec2df74f models/repo: idiomatic English (#5678)
* Idiomatic English

* Even better English
2019-04-11 22:22:49 -04:00
Unknwon
4f9c5b60c5 locale: sync from Crowdin 2019-03-25 03:08:25 -04:00
Menno van Rahden
bd13df972e docker: remove deprecated option (#5650)
This line has been removed in respect to the OpenSSH spec update with Version 7.5 (https://www.openssh.com/txt/release-7.5)
2019-03-16 21:53:18 -04:00
boson.cat
a971910723 README: fix tutorial links (#5641)
* Update README_ZH.md

* Update README.md
2019-02-28 19:54:07 -05:00
Unknwon
b8a6fee6d6 README: sync translation
[CI SKIP]
2019-02-25 17:57:53 -05:00
Zou Nengren
0bfa981e70 README: introduce a deployment method which using helm (#5638) 2019-02-25 17:56:07 -05:00
Unknwon
070bdda011 locale: sync from Crowdin 2019-02-25 11:29:49 -05:00
Andy Hochhaus
e19c026083 models/issue_mail: add assignee to issue related emails (#5628)
Reference #4220
2019-02-20 18:04:38 -05:00
Unknwon
8b383f86de pkg/bindata: regenerate for PR #5623 2019-02-20 17:56:43 -05:00
Andy Hochhaus
9ebd62f676 pkg/mailer/mail: render markdown in issue related emails (#5629)
Reference #4552
2019-02-20 17:54:27 -05:00
Stephen Lane-Walsh
2c3e2b701e conf/gitignore: add Unreal Engine (#5623) 2019-02-17 02:14:37 -05:00
Unknwon
16f95123cd models/models: formalize error messages 2019-02-06 18:50:02 -05:00
Unknwon
0a176df6fb models: disable idle connection and set connection max life time (#5532) 2019-02-06 18:46:15 -05:00
Unknwon
d862c43be0 README: add new sponsor
[CI SKIP]
2019-02-01 19:38:08 -05:00
Unknwon
a452767e34 README: update LunaNode link
[CI SKIP]
2019-01-30 23:22:50 -05:00
Favyen Bastani
f0aeef82a1 README: add LunaNode cloud deployment URL (#5584) 2019-01-30 23:21:18 -05:00
Unknwon
06b6eaba06 locale: sync from Crowdin
- Add Portuguese
2019-01-30 21:59:10 -05:00
Unknwon
713a7d518d locale: sync from Crowdin 2019-01-21 15:19:27 -05:00
Guy Smoilov
5702e4bc24 pkg/mailer: support plaintext alt for HTML emails (#5568)
* Added option to use plain text alt to HTML emails. Should make the messages friendlier for spam filters.

* Check that plaintext conversion worked before adding the HTML alt

* Add description of ADD_PLAIN_TEXT_ALT to app.ini

* Added comment clarifying html AddAlternative
2018-12-25 10:08:00 -05:00
Unknwon
9b37b1569c models/repo_editor: add isRepositoryGitPath to detect invalid file path (#5558) 2018-12-25 10:01:52 -05:00
Unknwon
5f1f1bb5ed pkg/tool/path: use IsMaliciousPath to replace SanitizePath (#5558) 2018-12-25 09:47:33 -05:00
Unknwon
9ff2df78f0 public/css: make less (#5317) 2018-12-25 08:58:59 -05:00
Kyumyeong Han
74f26bb667 public/less: fix layout misalignment in Firefox for Linux (#5317)
* Update _repository.less

* Update _repository.less
2018-12-25 08:56:41 -05:00
Unknwon
1f11c1f71a models/repo_editor: ignore copying files with '.git/' path prefix (#5558) 2018-12-19 23:09:32 -05:00
Unknwon
8c8c37a66b pkg/tool/path: handle Windows path separators (#5558) 2018-12-19 22:56:36 -05:00
Unknwon
d4f9fd7204 *: remove Go 1.7 support 2018-12-19 08:38:10 -05:00
Unknwon
e70e72e025 pkg/ssh: specify ssh-keygen to always generate PEM format 2018-12-19 08:31:22 -05:00
Unknwon
e2ce6a0dab vendor: update github.com/go-sql-driver/mysql
Fix MySQL 1046 error
2018-12-19 08:26:32 -05:00
Unknwon
657ea2686f auth: coding style and glitches fixes for GitHub login source (#5340) 2018-12-18 16:46:50 -05:00
haixunlu
311df9c521 auth: add new authentication source: GitHub, including GitHub Enterprise (#5340)
* Add new Authentication Source: GitHub, including GitHub Enterprise.

* Add vendor dependencies.
2018-12-18 15:49:30 -05:00
Unknwon
ff93d9dbda pkg/tool: improve SanitizePath (#5558) 2018-12-18 01:38:08 -05:00
Unknwon
86ada87529 models/repo_editor: sanitize user-defined file name to prevent RCE (#5558)
Reported by PentesterLab (https://pentesterlab.com).
2018-12-18 01:31:04 -05:00
Unknwon
d74437af57 models/action: skip issue index parsing while using external issue tracker (#5551) 2018-12-17 22:52:58 -05:00
Unknwon
c82ac420fc vendor: update
- github.com/gogs/go-gogs-client
- gopkg.in/macaron.v1
2018-12-16 19:48:34 -05:00
Unknwon
f91cb9321e api: add GetReferenceSHA (#5546) 2018-12-16 19:47:32 -05:00
Unknwon
cc1a168aa0 vendor: update github.com/gogs/go-gogs-client 2018-12-15 00:24:53 -05:00
Unknwon
ee82d35ed8 api: add GetSingleCommit (#5546) 2018-12-15 00:24:41 -05:00
Unknwon
8bca30cfe4 vendor: update github.com/gogs/git-module 2018-12-15 00:05:06 -05:00
Unknwon
fe9a5d3159 .github: adjust issue templates
[skip ci]
2018-12-14 18:35:01 -05:00
Unknwon
f43d21d0af locale: sync from Crowdin 2018-12-11 22:17:09 -05:00
Unknwon
8e2c3b315b models: remove legacy support 2018-12-11 22:00:01 -05:00
Nikita
9079fb6a0d pkg/markup: support data URL of base64 encoded images (#5391) 2018-12-10 23:53:08 -05:00
Unknwon
db3f0048d8 templates: rename template function Str2html -> Str2HTML 2018-12-10 22:23:56 -05:00
Unknwon
d3d8284985 templates: sanitize special links in commit message (#5545)
Reported by @cezar97.
2018-12-10 22:21:42 -05:00
Unknwon
f545faa06d templates: make state changing routes to POST method (#5541)
- pkg/context: add ParamsUser to unify the injection process
2018-12-06 22:58:02 -05:00
Unknwon
458aadbb10 vendor: update github.com/go-macaron/session 2018-12-04 19:36:05 -05:00
Unknwon
f2ec0d80a8 user/auth: flush and destroy session at logout (#5540)
Reported by @cezar97.
2018-12-04 19:35:44 -05:00
Unknwon
be6bb5314e ci: update appveyor.yml 2018-12-03 20:00:28 -05:00
Unknwon
98114944fc vendor: update github.com/gogs/go-gogs-client
Bring fixes for #5538
2018-12-03 14:45:19 -05:00
Unknwon
6690023555 pkg/context: use host address and apply insecure flag for go-get=1 when needed (#5305) 2018-12-03 13:36:11 -05:00
Unknwon
a7e8187a0d pkg/context: expose port in import path for 'go-get=1' (#5305) 2018-12-03 13:24:31 -05:00
Unknwon
0c1b72616a locale: sync from Crowdin 2018-12-02 20:02:09 -05:00
Unknwon
945a378e55 public/css: adjust width of label color in dropdown
models/issue: unify Issue receiver name to 'issue'
2018-12-02 17:54:55 -05:00
Unknwon
29c5be47ed models/issue: fix panic when clear labels (#5445) 2018-12-02 17:51:24 -05:00
无闻
e0f18b2255 github: update issue templates (#5537) 2018-12-02 15:25:06 -05:00
Unknwon
e755aafe29 vendor: update github.com/gogs/go-gogs-client 2018-12-02 12:55:16 -05:00
Unknwon
e1b3a25008 api/repo: support edit repository issue tracker (gogs/go-gogs-client#94) 2018-12-02 12:55:05 -05:00
Unknwon
69c1cd3f38 routes/api: change status handle to new style
Also fixed one bug that did not catch team not found error.
2018-12-01 21:41:30 -05:00
Unknwon
ce13fbb98a routes/api: allow get repository without login (#5475) 2018-12-01 21:40:19 -05:00
Samuel Cochran
084d9e0009 templates/user/dashboard: include 'org' query parameter in new mirror URL (#5534) 2018-11-29 07:21:16 -05:00
Unknwon
3db9b06a6e api: fix critical CSRF vulnerabilities on API routes (#5355)
By explicitly requires token authentication.
2018-11-28 21:05:58 -05:00
Unknwon
e9be8016e6 README: add new sponsor 2018-11-27 10:46:46 -05:00
Unknwon
1f9e21ebd5 templates/wiki: fix emoji rendering (#4869) 2018-11-26 07:02:21 -05:00
Unknwon
a91d9054ad conf: fix unexpected behavior of config inheritance (#5007) 2018-11-26 06:44:06 -05:00
Charles Kenney
6c90d12a0c routes/repo/issue: implement issue pre-filling (#5521)
Signed-off-by: Charles Kenney <charlesc.kenney@gmail.com>
2018-11-20 13:16:42 -05:00
Unknwon
38e8ccac92 conf: add go-bindata install command in README
[ci skip]
2018-11-20 02:37:16 -05:00
Unknwon
1d19a58424 locale: sync from Crowdin 2018-11-19 18:58:00 -05:00
Danilo Riecken P. de Morais
f47f9ceade mirror: trigger additional push webhook on new branch (#5508)
This commit fixes issue #5473 and makes a new branch behave like a
      push event and trigger the appropriate webhook.
2018-11-14 23:03:03 -05:00
Federico Culloca
81effe674d templates/user/profile: added rel="me" to website link on user profile (#5485)
* Added rel="me" to website link on user profile

See issue #5008

* Added `nofollow` as per feedback
2018-11-12 20:49:30 -05:00
Unknwon
831251bcaa ci: remove Go master for the moment 2018-11-08 18:03:16 -05:00
A.J. Ruckman
f4630f9044 public/css: add 'overflow-wrap: break-word' to dashboard news feeds (#5507) 2018-11-08 17:51:56 -05:00
William Hilton
dae311ea9d repo/http: update CORS headers to allow custom user-agent (#5498)
At some point after #4970 was merged, isomorphic-git started sending a custom User-Agent in its HTTP requests to deal with some services (\*cough\* gists \*cough\*) which filtered git traffic by User-Agent. Sadly, this broke cloning from Gogs using isomorphic-git in the browser (https://github.com/isomorphic-git/isomorphic-git/issues/555). This PR fixes it by telling browsers it is OK for CORS requests to send a custom User-Agent header.
2018-11-07 18:14:15 -05:00
Unknwon
4677b46904 vendor: update github.com/go-macaron/session (#5469)
Fix security flaw reported by c957861129d62331c5704d2f04d11e41.
2018-11-06 22:22:02 -05:00
Unknwon
a4dd2b1916 Merge branch 'master' of github.com:gogs/gogs into develop 2018-11-05 16:48:31 -05:00
Masen Furer
3d117b8964 Dockerfile.aarch64hub: install shadow package (#5481)
the shadow package contains the usermod(8) utility which is used by
start.sh and finalize.sh to configure the git user
2018-11-05 16:46:53 -05:00
hopegolden
6a083e9561 ldap: grammar fix (#5493) 2018-11-05 16:44:28 -05:00
hopegolden
044d359a7e docker: grammar fix (#5492) 2018-11-05 16:44:01 -05:00
Unknwon
f35d4164d6 pkg/bindata: update content 2018-11-04 18:37:01 -05:00
Unknwon
3058f8fd69 conf: change default session cookie name
[CI SKIP]
2018-10-24 10:05:35 -04:00
Unknwon
5129ed215e vendor: update github.com/go-macaron/session (#5469)
Fix security flaw reported by c957861129d62331c5704d2f04d11e41.
2018-10-24 09:59:07 -04:00
Unknwon
b93079f1c1 vendor: update github.com/go-macaron/session (#5469)
Fix security flaw reported by c957861129d62331c5704d2f04d11e41.
2018-10-24 09:43:59 -04:00
Unknwon
a1098384c0 vendor: update github.com/gogs/git-module 2018-10-23 07:02:13 -04:00
aboron
43bca4df40 ldap: fix group membership search handling when the group members are listed by 'dn' (#4684) (#4688)
Also, fixed typo in group member list return size check.
2018-10-23 04:16:39 -04:00
Unknwon
82269e4b8c locale: sync from Crowdin 2018-10-16 16:58:18 -04:00
Unknwon
14e49614e6 gogs: rise Go requirement to 1.7 2018-10-03 20:49:49 -04:00
Unknwon
a221b2807f routes/repo/issue: fix redirect with unexpected escape (#5443) 2018-09-30 13:55:40 -04:00
Unknwon
0d66b1cc1c pkg/context: apply EscapePound at context level
Always escape template variable {{.Link}} variable and  redirect calls.

Relates to #5442
2018-09-28 23:56:45 -04:00
Unknwon
1843354d88 templates/repo/setting: fix missing EscapePound (#5442) 2018-09-28 23:32:00 -04:00
Unknwon
bd7d1e2f16 routes: fix open redirect vulnerability (#5355)
Reported by @cezar97.
2018-09-28 23:19:29 -04:00
Unknwon
aff0bbcc32 pkg/ssh: print actual error in panic (#5435) 2018-09-28 15:37:34 -04:00
Unknwon
33e009bedb README: add FOSSA badge
[ci skip]
2018-09-26 19:04:41 -04:00
Unknwon
f94dc67a43 librejs: add jQuery
[ci skip]
2018-09-19 13:24:49 -04:00
Unknwon
091f63fd4e Makefile: only read GOPATH from env var
[ci skip]
2018-09-18 12:33:14 -04:00
Unknwon
3a4c981e31 locale: sync from Crowdin 2018-09-16 11:53:32 -04:00
Unknwon
0d48344f93 docker: chown only for the frist time (#5422) 2018-09-15 13:57:41 -04:00
Unknwon
21ceba6cfd Revert "docker: remove chown the git repos on startup (refs #4996). (#5390)"
This reverts commit 068e6ce2c9.
2018-09-15 13:46:14 -04:00
Unknwon
f8302c5470 ci: fix go vet and add Go 1.11.x 2018-09-14 22:48:35 -04:00
Unknwon
7a7e07a57c vendor: add dependencies of Prometheus client 2018-09-14 22:38:06 -04:00
Unknwon
520530dfcf metrics: add initial Prometheus support (#4141) 2018-09-14 22:29:43 -04:00
Unknwon
31c18b4bc7 repo: adjust pull request setting description (#5359) 2018-09-14 20:10:54 -04:00
Unknwon
1ec365de25 repo: trigger webhook when delete branch after merged pull request (#5331) 2018-09-14 20:04:31 -04:00
Unknwon
99f3eabb1b README: update vision
[ci skip]
2018-09-14 15:25:15 -04:00
Unknwon
32479744f6 templates/admin/monitor: fix field error
[ci skip]
2018-09-13 23:30:59 -04:00
Unknwon
b68de2330d auth: support set default login source (#5274) 2018-09-13 14:06:04 -04:00
haixunlu
68a6579852 login_source: add default authentication switch (#5338)
* Add default Authentication Switch.

* adjust the code accroding to reviews

* #1. Remove redudant logic.
#2, Fix a bug in "Edit" panel.

* Remove unused logic

* Fix local authentication files are not flushed.

* refactor according to review.
2018-09-13 13:49:07 -04:00
Jakob Lykke Andersen
798798f7ab templates: hide dashboard org creation when not allowed (#5393)
The admin -> DISABLE_REGULAR_ORG_CREATION setting
hides organization creation in the header, but not
in the dashboard.
2018-09-11 14:10:09 -04:00
leonunix
54e9442a14 docker: fix aarch64 dockerfile make docker image error (#5411) 2018-09-10 15:38:35 -04:00
Unknwon
f7b9f35ce1 locale: sync from Crowdin 2018-09-10 10:41:00 -04:00
Ross Golder
068e6ce2c9 docker: remove chown the git repos on startup (refs #4996). (#5390) 2018-09-08 08:07:30 -04:00
PiPc2
5d4bb4d6f8 librejs.html: fix semantic version (#5404)
currently incompatible with librejs
2018-09-06 20:16:21 -04:00
Unknwon
a05c19682e locale: sync from Crowdin 2018-08-23 12:45:53 +08:00
Stefan Liu
5caa7436d8 gogs: remove app flags line (#5388)
No meaning for this line
2018-08-23 12:35:36 +08:00
Unknwon
512a900202 repo/editor: hide internal error detail
Prevent exposure of server path
2018-08-17 23:35:53 +08:00
Unknwon
ba7b2cc1f6 vendor: update github.com/gogs/git-module 2018-08-17 23:15:26 +08:00
Unknwon
ac73d43444 repo_editor: able to trigger Git hooks (#4338) 2018-08-17 23:15:20 +08:00
Unknwon
33434a40d7 vendor: update github.com/gogs/git-module 2018-08-17 20:03:00 +08:00
Unknwon
844d69143f pkg/markup: allow match SHA1 length 7-40 (#3321) 2018-08-17 20:02:43 +08:00
Unknwon
77275a9b31 models: rename Id to ID 2018-08-16 20:26:09 +08:00
Unknwon
de10d9be08 models: fix delete undesired release attachments when delete a comment (#4627)
Apparently, AfterDelete has ID=0
2018-08-16 20:17:19 +08:00
Steven Haigh
3c227af508 scripts: add NoNewPrivileges=true to systemd unit file (#5381)
Also add comment about unsupported options in different systemd versions.
2018-08-16 19:07:36 +08:00
Unknwon
4c1a479a60 models: fix delete public keys ORM syntax (#5376) 2018-08-14 22:10:44 +08:00
Michael Li
cc95d251d6 docker: add new Dockerfile.docker-ce for docker-ce(>=v17.06) to build docker image (#5322)
* add new Dockerfile.docker-ce for docker-ce(>=v17.06) to  build docker image

* change default Dockerfile to support docker-ce(>=v17.06) multi-stage build
2018-08-13 20:50:25 +08:00
chromium1337
1f247cf813 routes: fix open redirect vulnerability #5364 (#5365) 2018-08-06 17:10:16 +08:00
GeekComb
c9bb33afc3 repo: fix issue of fork repository no check the limit of users' repository (#5346) 2018-07-18 20:03:09 +08:00
Unknwon
97fb9d283f locale: sync from Crowdin 2018-07-16 06:14:54 +08:00
Bogdan Khomutsky
66016b8499 scripts: apply hardening for systemd service (#5332) 2018-07-09 16:13:28 +08:00
PHANI
8bbf0293f5 webhook: add headers to support spring config server (#5325)
Spring cloud config server dependency spring cloud config monitor looks for X-Github-Event condition PropertyPathEndpoint.class -> GithubPropertyPathNotificationExtractor.class if ("push".equals(headers.getFirst("X-Github-Event"))) {...}
2018-07-09 16:12:30 +08:00
cezar97
87b229d280 templates: add 'rel=noopener noreferrer' to <a> tags (#5319)
Signed-off-by: cezar97 <cezar97@protonmail.com>
2018-07-02 19:33:14 +08:00
Unknwon
2a86b3e31d restore: reset milestone deadline_unix and closed_date_unix (#5264) 2018-06-27 22:08:24 +08:00
Steve Chung
436dd6c0a4 routes/repo/setting: require autosize when repo/settings/options is rendered (#5315) 2018-06-26 21:40:09 +08:00
Unknwon
f6bdefe3f3 public: minor fix for PR #5276 2018-06-26 21:16:29 +08:00
ususdei
cd71077c6a pull request: able to add custom commit description (#5276)
* pull request merges now allow for custom commit messages

* allow i18n on commit_message label

* place label above textarea for commit message

* rename commit message for pull requests into commit description and pass to git separately
2018-06-26 20:49:46 +08:00
Unknwon
029b33c650 restore: ignore created_unix for milestone table (#5264) 2018-06-25 20:33:21 +08:00
Unknwon
f4f4edf276 vendor: update github.com/gogs/git-module 2018-06-25 19:58:40 +08:00
Unknwon
992ea5802a locale: sync from Crowdin 2018-06-18 12:21:51 +08:00
Unknwon
376a629c9f repo: add changes to repository avatar feature (#5221) 2018-06-17 22:18:41 +08:00
Sergey Dryabzhinsky
303fa37b60 repo: support avatars (#5221)
* First code for repository avatars

* Last code for repository avatars

- add new option for repo avatars location on filesystem
- add route catch in web
- add new fields to repo model
- add migration
- update settings handlers
- update repo header template

* Update locale messages

* Add repo avatars to home page

* Add repo avatars to organization right panel

* Show repo avatars in repo list

* Remove AvatarEamil field, remove Gravatar support, use generic locale messages

* Fix migration

* Fix seed and not used tool

* Revert public css changes, add them to less files

* Latest lessc (2.6.0) don't put result into file but output to stdout

So redirect output to file

* Simplify things:

- migration don't needed, and table changes too
- just upload file to repo avatar storage
- or generate random image

* Fix repo image seed - name not unique

* Get rid of not needed model fields

* Class value is enough, remove height attribute

* Don't generate random avatar for repository

- use html and semantic ui icons if no avatar found

* Update styles and templates for repo

- use repo icon as default avatar
- use globe icon for public repos
- add micro style for repo avatars at dashboard

* Remvoe redundant empty line

* Fix nl2br filter - must return string

* Fix css style for micro-repo-avatar in dashboard list

* Remove `|len`, works fine w/o it.

* Update after review 2:

- use static route for repository avatar
- format images settings block in settings

* Update after review 2:

- no random avatar for repo

* Update after review 2:

- no random avatar for repo 2
- update imports
- update UploadAvatar* functions

* Update after review 2:

- update templates

* Fix trace call

* Remove unused immport since we use static route for repo avatars.
2018-06-17 20:21:52 +08:00
Unknwon
ef02414d7e pkg/setting: ignore config inline comment by default 2018-06-17 09:10:18 +08:00
Unknwon
bcf83ea792 vendor: update gopkg.in/ini.v1 2018-06-17 09:08:21 +08:00
Unknwon
86a27cf16d modes/repo: syntax fix for PR #5234 2018-06-16 16:48:47 +08:00
James
08ae0dd74b repo: show in search if any part is public (#5234)
if repo is private but wiki and/or issue are public show repo in search
2018-06-16 16:34:55 +08:00
Unknwon
93f3a7f96a vendor: update github.com/go-sql-driver/mysql 2018-06-15 13:33:08 +08:00
Unknwon
7856b1202d *: fix wrong format type 2018-06-13 22:26:56 +08:00
Unknwon
e5ddbcab7d routes/repo/http: fix wrong format type 2018-06-13 21:58:46 +08:00
oOOps
f9bc980b0b api: correct pagination in repository search api (#5293) 2018-06-13 21:55:09 +08:00
奶爸
806754b512 repo: clean up webhook and hook_task when delete repository (#5239) 2018-06-11 21:35:38 +08:00
Unknwon
4d18df204a Merge branch 'pr-5277' into develop
# Conflicts:
#	models/migrations/migrations.go
2018-06-11 21:32:57 +08:00
奶爸
04b4431bc0 migrations: clean unlinked webhook and hook_tasks 2018-06-11 21:29:24 +08:00
Unknwon
dfd494c113 repo: minor improve for PR #5219 and support UTF-8 byte count 2018-06-11 21:06:24 +08:00
Sergey Dryabzhinsky
57897cc8c2 repo: update repository description field to contain more than 256 symbols (#5219)
* Update repository description field to contain more than 256 symbols

- update repository model - description field now is `TEXT` and limited by 4000 symbols
- new migration
- add description to html forms - repo creation and repo settings
- add translation for description

* Update for description field, new features

- add autosize (height) for description textarea, new plugin
- set max description length to 512 symbols
- update locales

* Fix migration - typo in var

* Update repo description behaviour

- add textarea autosize for /repo/create
- add symbols counter under description testarea (create/edit)

* Fix function definition - it a var

* Revert ru-RU locale

* Update by review

- Use type `varchar(512)` in migration
- Remove unused files from autosize plugin

* Fix migration - new project paths

* Fixes after review 2

- copyright year
- format includes
- use switch instead of multi-if

* Remove unused `default:` option.
2018-06-11 20:34:26 +08:00
Unknwon
459c8be94f ci: remove Go 1.6.x 2018-06-09 17:43:26 +08:00
Unknwon
5e158b51db vendor: add new dependencies 2018-06-09 17:34:38 +08:00
Unknwon
fbecc18e2e *: use jsoniter to replace encoding/json 2018-06-09 17:32:58 +08:00
Unknwon
b538c5345e restore: reset original created_unix after insert (#5264) 2018-06-09 17:21:58 +08:00
Unknwon
694208865b vendor: add github.com/json-iterator/go 2018-06-09 17:20:38 +08:00
Unknwon
a75c435245 vendor: update github.com/go-xorm/… 2018-06-09 16:28:52 +08:00
Unknwon
53c8e4263b models: skip JSON for fields skipped by XORM
Reduce output JSON size by backup command
2018-06-09 16:06:47 +08:00
Unknwon
078549518d vendor: update github.com/gogs/git-module 2018-06-09 10:00:45 +08:00
Alexey Terentyev
4c844081f3 routes/repo: added deletion of an empty line at the end of file (#5261) (#5270)
* Added deletion of an empty line at the end of file (#5261)

Signed-off-by: Alexey Terentyev <axifnx@gmail.com>

* Fix after feedback

Signed-off-by: Alexey Terentyev <axifnx@gmail.com>
2018-06-06 21:32:54 +08:00
Unknwon
91441c3fb2 locale: sync from Crowdin 2018-06-05 07:31:34 +08:00
Michael Li
b152cbe45a Makefile: fix make build failure when environment of GOPATH have multiple items (#5262)
* fixed make build failure when enviroment of GOPATH have Multiple items

gogs source in /other/path/to/go/src/github.com/gogs/gogs and then

>cd /other/path/go/go/src/github.com/gogs/gogs
>GOPATH=/path/to/go:/other/path/to/go make

will also build success in this fixed code

* in makefile rename gogits to gogs
2018-06-04 18:41:54 +08:00
Unknwon
c08aab90ec models/mirror: shot push webhook after synced commits (#4528) 2018-06-03 20:32:44 +08:00
Unknwon
8d091ec062 vendor: update github.com/gogs/git-module 2018-06-03 20:26:29 +08:00
Unknwon
0376e59520 pkg/setting: fix '[git] GC_ARGS' is not loaded 2018-06-03 16:02:17 +08:00
Unknwon
e25fe22f9d pkg/template: fix NewLine2br return type to string 2018-06-02 08:15:56 +08:00
Unknwon
bef7f6745c templates/repo/settings: fix mirror setting error 2018-05-30 21:32:40 +08:00
Unknwon
775919c129 mirror: show sync feeds on dashboard (#2017) 2018-05-30 21:26:03 +08:00
Unknwon
702acc06d8 vendor: update github.com/gogs/git-module 2018-05-29 06:43:19 +08:00
Sergey Dryabzhinsky
b5a1daa756 template: simple html filter for repository description (#5242)
* Add markdown renderer function to templates, use it for description in repo template

* Fix function call

* Define function Md2html in template namespace

* Change filter from Md2html to nl2br

* Change filter name to NewLine2br as suggested

* Update description output:

- just replace `\n` by `<br>`
- sanitize html after replace
2018-05-29 06:42:27 +08:00
Unknwon
5a47301dbd docker: rename "gogits" to "gogs" 2018-05-27 09:29:34 +08:00
Unknwon
e33d9e77f4 vendor: rename "gogits" to "gogs" 2018-05-27 09:07:15 +08:00
Unknwon
aff4208244 *: rename "gogits" to "gogs" 2018-05-27 08:53:48 +08:00
Wei He
73dbaefec5 routes/user/setting: fix avatar email update error (#5245) 2018-05-26 09:19:04 +08:00
Unknwon
05edcde6c9 routes/user/auth: improve coding style 2018-05-21 14:45:47 +08:00
Unknwon
01ccc2cc96 security: prevent same passcode from being reused
Reported by @cezar97.
2018-05-21 14:24:06 +08:00
Madzahttr
cd093a07a3 templates/mail/auth: update copyright year (#5224)
* Update activate.tmpl

* Update activate_email.tmpl

* Update register_notify.tmpl

* Update reset_passwd.tmpl
2018-05-13 05:25:51 -04:00
Sergey Dryabzhinsky
7e450542d9 templates/repo: use correct Semantic UI icon styles to fix star and watch icons (#5218)
* Update font-awesome to 4.7.0

* Fix font-awesome styles overrided by semantic

* Revert back

* Revert back 2

* Just use right `semantic` icon styles
2018-05-10 04:58:04 -04:00
Michael Li
45545e897c templates/user/dashboard: make page more concise for user's activity/issues/PR information (#5209) 2018-05-08 14:43:23 -04:00
Lauris BH
eccc8109c1 security: fix path cleanup for repository init and editor (#5207)
Reported by Kacper Szurek https://security.szurek.pl/.
2018-05-08 14:32:49 -04:00
Unknwon
2fabcd0455 locale: sync from Crowdin 2018-05-02 20:46:54 -04:00
Unknwon
e3ce295215 public/css: generate CSS for PR #5169 2018-04-26 17:05:30 -04:00
Florian Wiech
8df59c01d5 public/css: fix file view responsiveness (#5169) 2018-04-26 17:00:55 -04:00
Unknwon
15f9a83618 templates/repo: escape branch name (#4601) 2018-04-25 22:35:50 -04:00
Unknwon
d572381a37 vendor: update gopkg.in/clog.v1 2018-04-25 22:13:16 -04:00
Unknwon
9127001f11 pkg/setting: support Discord logger 2018-04-25 22:13:01 -04:00
Unknwon
742420a5e2 .github: update link to ISSUE_TEMPLATE.md (#5193) 2018-04-25 18:28:41 -04:00
Unknwon
f439df4441 locale: sync from Crowdin 2018-04-25 13:50:48 -04:00
rokuu
c92e8940dc pkg/form: fix bad locale reference (#5196) 2018-04-24 09:57:42 -04:00
rokuu
c68fc4f31a templates: fixes broken UI under supported resolution (1024x768) #5179 (#5182)
* Update view_list.tmpl

* Update commits_table.tmpl

* Update dashboard.tmpl

* Update list.tmpl

* Update list.tmpl

* Update list.tmpl

* Update list.tmpl

* Update notice.tmpl

* Update monitor.tmpl

* Update view_file.tmpl

* Update diff_preview.tmpl

* Update box.tmpl
2018-04-24 09:54:22 -04:00
rokuu
0e80e47592 public/{less,css}: fix overflow of brand logo hyperlink (#5189)
* Update gogs.css

* Update _base.less
2018-04-21 12:11:24 -04:00
Cosmin Stroe
54b9311344 pkg/markup/markdown: Issue mentions should also render with square brackets (#4707)
* gofmt reformat of markdown.go
2018-04-21 12:08:11 -04:00
rokuu
9387b79b98 templates: delete legacy file (#5180) 2018-04-19 01:27:59 -04:00
Unknwon
5c2de3a9ea pkg/template: fix Gravatar URLs are badly generated (#5157) 2018-04-18 19:40:35 -04:00
Changwoo Ryu
eac5b48da0 locale: Add myself to TRANSLATORS (#5177) 2018-04-18 11:09:38 -04:00
Unknwon
f89d948c06 templates/repo/issue: rework escape delete branch link after merged pull request (#4601) 2018-04-16 23:08:09 -04:00
Unknwon
45a0988833 templates/repo/issue: escape delete branch link after merged pull request (#4601) 2018-04-16 23:02:20 -04:00
Nicolas Ettlin
afbb31c05e MISC: fix Mac OS X → macOS (#5168) 2018-04-16 19:29:11 -04:00
Unknwon
e6af6487e1 locale: sync from Crowdin
Add Vietnamese
2018-04-16 17:48:23 -04:00
Josef Kemetmüller
c0b45fa36f ldap: return valid LDAP string if user input lacks "%s" (#5171)
If the user provides a string that does not contain "%s", fmt.Sprintf
silently appends "%!(EXTRA type=value)" instead of failing loudly.
This fixes #4375.
2018-04-16 17:19:45 -04:00
Unknwon
cb47595f13 Bump version 2018-04-12 10:57:43 -04:00
Unknwon
c59704a24b public: update Semantic UI 2.2.13 -> 2.3.1 2018-04-12 09:57:27 -04:00
Unknwon
f2ecfdc96a auth: support authentication source config file (#3142) 2018-04-12 09:55:58 -04:00
Unknwon
717d409b72 templates/admin/auth/list: rename list title 2018-04-11 19:39:17 -04:00
Unknwon
6e207c823e templates/admin/auth/list: move "new" button to table foot 2018-04-11 19:38:52 -04:00
Unknwon
b69294b6d6 locale: sync from Crowdin 2018-04-09 12:38:39 -04:00
Unknwon
6cbaa4787b MISC: update docker build script 2018-04-09 07:26:55 -04:00
Unknwon
8b66c433c5 models/pull: fix error on merge pull requests to non-default branch (#5138) 2018-04-09 07:26:38 -04:00
Unknwon
3329bfa5b2 .github: adjust ISSUE_TEMPLATE 2018-04-05 17:23:03 -04:00
Unknwon
f41f5785bf docker: update README about "custom" directory (#5150) 2018-04-05 17:19:45 -04:00
Unknwon
55f148f499 template: delete legacy file 2018-04-02 00:03:07 -04:00
2395 changed files with 249685 additions and 838127 deletions

View File

@@ -1,21 +0,0 @@
[run]
init_cmds = [
["make", "build-dev"],
["./gogs", "web"]
]
watch_all = true
watch_dirs = [
"$WORKDIR/cmd",
"$WORKDIR/models",
"$WORKDIR/pkg",
"$WORKDIR/routes"
]
watch_exts = [".go"]
ignore_files = [".+_test.go"]
build_delay = 1500
interrupt_timout = 1
graceful_kill = true
cmds = [
["make", "build-dev"], # TAGS=sqlite cert pam tidb
["./gogs", "web"]
]

13
.claude/commands/ghsa.md Normal file
View File

@@ -0,0 +1,13 @@
Analyze and help fix the GitHub Security Advisory (GHSA) at: $ARGUMENTS
Steps:
1. Fetch the GHSA page using `gh api repos/gogs/gogs/security-advisories` and understand the vulnerability details (description, severity, affected versions, CWE).
2. Verify the reported vulnerability actually exists, and why.
3. Identify the affected code in this repository.
4. Propose a fix with a clear explanation of the root cause and how the fix addresses it. Check for prior art in the codebase to stay consistent with existing patterns.
5. Implement the fix. Only add tests when there is something meaningful to test at our layer.
6. Run all the usual build and test commands.
7. If a changelog entry is warranted (user will specify), add it to CHANGELOG.md with a placeholder for the PR link.
8. Create a branch named after the GHSA ID, commit, and push.
9. Create a pull request with a proper title and description, do not reveal too much detail and link the GHSA.
10. If a changelog entry was added, update it with the PR link, then commit and push again.

View File

@@ -1,7 +0,0 @@
conf/**
docker/**
modules/bindata/**
packager/**
public/**
scripts/**
templates/**

View File

@@ -1,7 +0,0 @@
{
"GOLANG": {
"TOTAL_LOC": [500, 999, 1999, 9999],
"TOO_MANY_FUNCTIONS": [50, 99, 199, 999],
"TOO_MANY_IVARS": [20, 50, 70, 99]
}
}

26
.deepsource.toml Normal file
View File

@@ -0,0 +1,26 @@
version = 1
exclude_patterns = ["**/mocks_test.go"]
[[analyzers]]
name = "docker"
enabled = true
[[analyzers]]
name = "shell"
enabled = true
[[analyzers]]
name = "go"
enabled = true
[analyzers.meta]
import_root = "github.com/gogs/gogs"
[[transformers]]
name = "gofumpt"
enabled = true
[[transformers]]
name = "gofmt"
enabled = true

View File

@@ -1,17 +1,15 @@
.git .packager
.git/** .packager/**
packager
packager/**
scripts scripts
scripts/** scripts/**
.github/ .github/
.github/** .github/**
config.codekit
.dockerignore .dockerignore
*.yml *.yml
*.md *.md
.bra.toml
.editorconfig .editorconfig
.gitignore .gitignore
Dockerfile* Dockerfile*
gogs gogs
!Taskfile.yml

View File

@@ -4,7 +4,6 @@ root = true
[*] [*]
charset = utf-8 charset = utf-8
end_of_line = lf
insert_final_newline = true insert_final_newline = true
trim_trailing_whitespace = true trim_trailing_whitespace = true
@@ -16,10 +15,9 @@ indent_size = 4
indent_style = tab indent_style = tab
indent_size = 2 indent_size = 2
[*.{less,yml}] [*.{less, yml}]
indent_style = space indent_style = space
indent_size = 2 indent_size = 2
[*.js] [*.js]
indent_style = tab indent_size = 2
indent_size = 4

18
.gitattributes vendored
View File

@@ -1,10 +1,8 @@
conf/gitignore/* linguist-vendored conf/gitignore/** linguist-vendored
conf/license/* linguist-vendored conf/license/** linguist-vendored
public/assets/* linguist-vendored public/assets/** linguist-vendored
public/plugins/* linguist-vendored public/plugins/** linguist-vendored
public/css/themes/* linguist-vendored public/css/themes/** linguist-vendored
public/css/github.min.css linguist-vendored public/css/semantic-* linguist-vendored
public/css/semantic-2.2.10.min.css linguist-vendored public/js/libs/** linguist-vendored
public/js/libs/* linguist-vendored public/js/semantic-* linguist-vendored
public/js/jquery-1.11.3.min.js linguist-vendored
public/js/semantic-2.2.10.min.js linguist-vendored

2
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1,2 @@
# Default
* @unknwon

View File

@@ -1,63 +1,78 @@
# Contributing to Gogs # Welcome to Gogs contributing guide
> This guidelines sheet is forked from [CONTRIBUTING.md](https://github.com/drone/drone/blob/8d9c7cee56d6c2eac81dc156ce27be6716d97e68/CONTRIBUTING.md). Thank you for investing your time in contributing to our projects!
Gogs is not perfect, and it has bugs or incomplete features in rare cases. You're welcome to tell us, or to contribute some code. This document describes details about how can you contribute to Gogs project. Read our [Code of Conduct](https://go.dev/conduct) to keep our community approachable and respectable.
## Contribution guidelines In this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.
Depends on the situation, you will: Use the table of contents icon <img src="https://github.com/github/docs/raw/50561895328b8f369694973252127b7d93899d83/assets/images/table-of-contents.png" width="25" height="25" /> on the top left corner of this document to get to a specific section of this guide quickly.
- Find a bug and create an issue ## New contributor guide
- Need more functionality and make a feature request
- Want to contribute code and open a pull request
- Run into issue and need help
### Bug Report To get an overview of the project, read the [README](/README.md). Here are some resources to help you get started with open source contributions:
If you find something you consider a bug, please create a issue on [GitHub](https://github.com/gogits/gogs/issues). To avoid wasting time and reduce back-and-forth communication with team members, please include at least the following information in a form comfortable for you: - [Finding ways to contribute to open source on GitHub](https://docs.github.com/en/get-started/exploring-projects-on-github/finding-ways-to-contribute-to-open-source-on-github)
- [Set up Git](https://docs.github.com/en/get-started/quickstart/set-up-git)
- [GitHub flow](https://docs.github.com/en/get-started/quickstart/github-flow)
- [Collaborating with pull requests](https://docs.github.com/en/github/collaborating-with-pull-requests)
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
- [Talk, then code](https://www.craft.do/s/kyHVs6OoE4Dj5V)
- Bug Description In addition to the general guides with open source contributions, you would also need to:
- Gogs Version
- Git Version
- System Type
- Error Log
- Other information
Please take a moment to check that an issue on [GitHub](https://github.com/gogits/gogs/issues) doesn't already exist documenting your bug report or improvement proposal. If it does, it never hurts to add a quick "+1" or "I have this problem too". This will help prioritize the most common problems and requests. - Have basic knowledge about web applications development, database management systems and programming in [Go](https://go.dev/).
- Have a working local development setup with a reasonable good IDE or editor like [Visual Studio Code](https://code.visualstudio.com/docs/languages/go), [GoLand](https://www.jetbrains.com/go/) or [Vim](https://github.com/fatih/vim-go).
- [Set up your development environment](/docs/dev/local_development.md).
#### Bug Report Example ## Issues
Gogs crashed when creating a repository with a license, using v0.5.13.0207, SQLite3, Git 1.9.0, Ubuntu 12.04. ### Ask for help
Error log: Before opening an issue, please make sure the problem you're encountering isn't already addressed on the [Troubleshooting](https://gogs.io/asking/troubleshooting) and [FAQs](https://gogs.io/asking/faq) pages.
``` ### Create a new issue
2014/09/01 07:21:49 [E] nil pointer
```
### Feature Request - For questions, ask in [Discussions](https://github.com/gogs/gogs/discussions).
- [Check to make sure](https://docs.github.com/en/github/searching-for-information-on-github/searching-on-github/searching-issues-and-pull-requests#search-by-the-title-body-or-comments) someone hasn't already opened a similar [issue](https://github.com/gogs/gogs/issues).
- If a similar issue doesn't exist, open a new issue using a relevant [issue form](https://github.com/gogs/gogs/issues/new/choose).
- Blank issues that are not coming from maintainers will be closed without a response.
There is no standard form of making a feature request. Just try to describe the feature as clearly as possible, because team members may not have experience with the functionality you're talking about. ### Pick up an issue to solve
### Pull Request - Scan through our [existing issues](https://github.com/gogs/gogs/issues) to find one that interests you.
- The [👋 good first issue](https://github.com/gogs/gogs/issues?q=is%3Aissue+is%3Aopen+label%3A%22%F0%9F%91%8B+good+first+issue%22) is a good place to start exploring issues that are well-groomed for newcomers.
- Do not hesitate to ask for more details or clarifying questions on the issue!
- Communicate on the issue you are intended to pick up _before_ starting working on it.
- Every issue that gets picked up will have an expected timeline for the implementation, the issue may be reassigned after the expected timeline. Please be responsible and proactive on the communication 🙇‍♂️
Please read detailed information on [Wiki](https://github.com/gogits/gogs/wiki/Contributing-Code). ## Add new features or make big changes
### Ask For Help New features or big changes require proposals before we may be able to accept any contribution. Proposals should be posted to the [Discussions - Proposal](https://github.com/gogs/gogs/discussions/categories/proposal) category for review and discussions. GitHub Discussions provides sub-threading which is much more suitable than GitHub Issues for discussions to happen. Please read [Write a proposal for open source contributions](https://unknwon.io/posts/220210-write-a-proposal-for-open-source-contributions/) to begin with.
Before opening an issue, please make sure your problem isn't already addressed on the [Troubleshooting](https://gogs.io/docs/intro/troubleshooting.html) and [FAQs](https://gogs.io/docs/intro/faqs.html) pages. ## Pull requests
## Code of conduct When you're finished with the changes, create a pull request, or a series of pull requests if necessary.
As contributors and maintainers of this project, we pledge to respect all people who contribute through reporting issues, posting feature requests, updating documentation, submitting pull requests or patches, and other activities. Contributing to another codebase is not as simple as code changes, it is also about contributing influence to the design. Therefore, we kindly ask you that:
We are committed to making participation in this project a harassment-free experience for everyone, regardless of level of experience, gender, gender identity and expression, sexual orientation, disability, personal appearance, body size, race, age, or religion. - Please acknowledge that no pull request is guaranteed to be merged.
- Please always do a self-review before requesting reviews from others.
- Please expect code review to be strict and may have multiple rounds.
- Please make self-contained incremental changes, pull requests with huge diff may be rejected for review.
- Please use English in code comments and docstring.
- Please do not force push unless absolutely necessary. Force pushes make review much harder in multiple rounds, and we use [Squash and merge](https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/incorporating-changes-from-a-pull-request/about-pull-request-merges#squash-and-merge-your-pull-request-commits) so you don't need to worry about messy commits and just focus on the changes.
Examples of unacceptable behavior by participants include the use of sexual language or imagery, derogatory comments or personal attacks, trolling, public or private harassment, insults, or other unprofessional conduct. ### Things we do not accept
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct. Project maintainers who do not follow the Code of Conduct may be removed from the project team. 1. Updates to locale files (`conf/locale_xx-XX.ini`) other than the `conf/locale_en-US.ini`. Please read the [guide for localizing Gogs](https://gogs.io/advancing/localization).
1. Docker compose files.
Instances of abusive, harassing, or otherwise unacceptable behavior can be reported by emailing u@gogs.io ### Coding guidelines
This Code of Conduct is adapted from the [Contributor Covenant](http:contributor-covenant.org), version 1.0.0, available at [http://contributor-covenant.org/version/1/0/0/](http://contributor-covenant.org/version/1/0/0/) 1. Please read the Sourcegraph's [Go style guide](https://github.com/sourcegraph/sourcegraph-public-snapshot/blob/main/doc/dev/background-information/languages/go.md).
1. **NO** direct modifications to `.css` files, `.css` files are all generated by `.less` files. You can regenerate `.css` files by executing `task less`.
## Your PR is merged!
Congratulations 🎉🎉 Thanks again for taking the effort to have this journey with us 🌟

View File

@@ -1,26 +0,0 @@
The issue will be closed without any reasons if it does not satisfy any of following requirements:
1. Please speak English, we have forum in [Chinese](https://discuss.gogs.io/c/getting-help/getting-help-chinese).
2. Please post questions or config/deploy problems on our forum: https://discuss.gogs.io, here are bugs and feature requests only.
3. Please take a moment to search that an issue doesn't already exist.
4. Please give all relevant information below for bug reports; incomplete details considered invalid report.
**You MUST delete above content including this line before posting; too lazy to take this action considered invalid report.**
- Gogs version (or commit ref):
- Git version:
- Operating system:
- Database (use `[x]`):
- [ ] PostgreSQL
- [ ] MySQL
- [ ] MSSQL
- [ ] SQLite
- Can you reproduce the bug at https://try.gogs.io:
- [ ] Yes (provide example URL)
- [ ] No
- [ ] Not relevant
- Log gist (usually found in `log/gogs.log`):
## Description
...

82
.github/ISSUE_TEMPLATE/bug_report.yml vendored Normal file
View File

@@ -0,0 +1,82 @@
name: Bug report
description: File a bug report to help us improve
labels: ["\U0001F48A bug"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- Please use English :)
- For questions, ask in [Discussions](https://github.com/gogs/gogs/discussions).
- Before you file an issue read the [Contributing guide](https://github.com/gogs/gogs/blob/main/.github/CONTRIBUTING.md).
- Check to make sure someone hasn't already opened a similar [issue](https://github.com/gogs/gogs/issues).
- type: input
attributes:
label: Gogs version
description: |
Please specify the exact Gogs version you're reporting for, e.g. "0.12.3". You can find the version information in the admin dashboard (`/admin`).
_Note that "gogs/gogs:latest" is not a Gogs version, it does not mean anything._
validations:
required: true
- type: textarea
attributes:
label: Git version
description: |
Please specify the exact Git version you're using of both server and client. You can find the version information by running `git version`.
value: |
- Server:
- Client:
validations:
required: true
- type: input
attributes:
label: Operating system
description: |
Please specify the exact operating system name and version you're reporting for, e.g. "Windows 10", "CentOS 7", "Ubuntu 20.04".
validations:
required: true
- type: input
attributes:
label: Database
description: |
Please specify the exact database and version you're reporting for, e.g. "PostgreSQL 9.6", "MySQL 5.7", "SQLite 3".
validations:
required: true
- type: textarea
attributes:
label: Describe the bug
description: A clear and concise description of what the bug is.
validations:
required: true
- type: textarea
attributes:
label: To reproduce
description: The steps to reproduce the problem described above.
validations:
required: true
- type: textarea
attributes:
label: Expected behavior
description: A clear and concise description of what you expected to happen.
validations:
required: true
- type: textarea
attributes:
label: Additional context
description: |
Links? References? Suggestions? Anything that will give us more context about the issue you are encountering!
Please include any error logs found in the `log/gogs.log` file. Otherwise, we probably won't be able to help you much.
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: checkboxes
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://go.dev/conduct)
options:
- label: I agree to follow this project's Code of Conduct
required: true

8
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Ask questions
url: https://github.com/gogs/gogs/discussions
about: Please ask questions in Discussions.
- name: Make a proposal
url: https://github.com/gogs/gogs/discussions/categories/proposal
about: Please make proposals in Discussions.

View File

@@ -0,0 +1,46 @@
---
name: "Dev: Release a minor version"
about: ONLY USED BY MAINTAINERS.
assignees: "unknwon"
title: "Release [VERSION]"
labels: 📸 release
---
_This is generated from the [minor release template](https://github.com/gogs/gogs/blob/main/.github/ISSUE_TEMPLATE/dev_release_minor_version.md)._
## Before release
On the `main` branch:
- [ ] Close stale issues with the label [status: needs feedback](https://github.com/gogs/gogs/issues?q=is%3Aissue+is%3Aopen+label%3A%22status%3A+needs+feedback%22).
- [ ] [Sync locales from Crowdin](https://github.com/gogs/gogs/blob/main/docs/dev/import_locale.md).
- [ ] [Update CHANGELOG](https://github.com/gogs/gogs/commit/f1102a7a7c545ec221d2906f02fa19170d96f96d) to include entries for the current minor release.
- Do not forget adding entries for GHSA patches.
- [ ] Cut a new release branch `release/<MAJOR>.<MINOR>`, e.g. `release/0.14`.
## During release
On the release branch:
- [ ] [Update the hard-coded version](https://github.com/gogs/gogs/commit/f0e3cd90f8d7695960eeef2e4e54b2e717302f6c) to the current release, e.g. `0.14.0+dev` -> `0.14.0`.
- [ ] Wait for GitHub Actions to complete and no failed jobs.
- [ ] Publish new RC releases (e.g. `v0.14.0-rc.1`, `v0.14.0-rc.2`) ⚠️ **on the release branch** ⚠️ and ensure Docker and release workflows both succeed.
- [ ] Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
- [ ] Download one of the release archives and run through application setup to make sure nothing blows up.
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) ⚠️ **on the release branch** ⚠️ with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md) for the current minor release.
- [ ] [Wait for new image tags for the current release](https://github.com/gogs/gogs/actions/workflows/docker.yml?query=event%3Arelease) to be created automatically on both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs).
- Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
- [ ] Download all release archives and [generate SHA256 checksum](https://github.com/gogs/gogs/blob/main/docs/dev/release/sha256.sh) for all binaries to the file `checksum_sha256.txt`.
- [ ] Upload all archives and `checksum_sha256.txt` to https://dl.gogs.io.
## After release
On the `main` branch:
- [ ] Update the repository mirror on [Gitee](https://gitee.com/unknwon/gogs).
- [ ] Create a new release announcement in [Discussions](https://github.com/gogs/gogs/discussions/categories/announcements).
- [ ] Send a tweet on the [official Twitter account](https://twitter.com/GogsHQ) for the minor release.
- [ ] Close the milestone for the minor release.
- [ ] [Bump the hard-coded version](https://github.com/gogs/gogs/commit/a98968436cd5841cf691bb0b80c54c81470d1676) to the new develop version, e.g. `0.14.0+dev` -> `0.15.0+dev`.
- [ ] Run `task legacy` to identify deprecated code that is aimed to be removed in current develop version.
- [ ] **After 14 days**, publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.

View File

@@ -0,0 +1,49 @@
---
name: "Dev: Release a patch version"
about: ONLY USED BY MAINTAINERS.
assignees: "unknwon"
title: "Release [VERSION]"
labels: 📸 release
---
_This is generated from the [patch release template](https://github.com/gogs/gogs/blob/main/.github/ISSUE_TEMPLATE/dev_release_patch_version.md)._
## Before release
On the release branch:
- [ ] Make sure all commits are cherry-picked from the `main` branch by checking the patch milestone.
- Run `task build` for every cherry-picked commit to make sure there is no compilation error.
- [ ] [Update CHANGELOG on the `main` branch](https://github.com/gogs/gogs/commit/f1102a7a7c545ec221d2906f02fa19170d96f96d) to include entries for the current patch release.
## During release
On the release branch:
- [ ] [Update the hard-coded version](https://github.com/gogs/gogs/commit/f0e3cd90f8d7695960eeef2e4e54b2e717302f6c) to the current release, e.g. `0.12.0` -> `0.12.1`.
- [ ] Wait for GitHub Actions to complete and no failed jobs.
- [ ] Publish new RC releases in [GitHub release](https://github.com/gogs/gogs/releases) (e.g. `v0.12.0-rc.1`, `v0.12.0-rc.2`) ⚠️ **on the release branch** ⚠️ and ensure Docker workflow succeeds.
- [ ] Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
- [ ] Download one of the release archives and run through application setup to make sure nothing blows up.
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) ⚠️ **on the release branch** ⚠️ with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md) for the current patch release and all previous releases with same minor version.
- [ ] Update all previous GitHub releases with same minor version with the warning:
```
** Heads up! There is a new patch release [0.12.1](https://github.com/gogs/gogs/releases/tag/v0.12.1) available, we recommend directly installing or upgrading to that version.**
```
- [ ] [Wait for new image tags for the current release](https://github.com/gogs/gogs/actions/workflows/docker.yml?query=event%3Arelease) to be created automatically on both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs).
- Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
- [ ] Download all release archives and [generate SHA256 checksum](https://github.com/gogs/gogs/blob/main/docs/dev/release/sha256.sh) for all binaries to the file `checksum_sha256.txt`.
- [ ] Upload all archives and `checksum_sha256.txt` to https://dl.gogs.io.
## After release
On the `main` branch:
- [ ] Post the following message on issues that are included in the patch milestone:
```
The <MAJOR>.<MINOR>.<PATCH> has been released that includes the patch of the reported issue.
```
- [ ] Create a new release announcement in [Discussions](https://github.com/gogs/gogs/discussions/categories/announcements).
- [ ] Send a tweet on the [official Twitter account](https://twitter.com/GogsHQ) for the patch release.
- [ ] Close the milestone for the patch release.
- [ ] **After 14 days**, publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.

View File

@@ -0,0 +1,32 @@
name: Improve documentation
description: Suggest an idea or a patch for documentation
labels: ["📖 documentation"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this form!
- Please use English :)
- For questions, ask in [Discussions](https://github.com/gogs/gogs/discussions).
- Before you file an issue read the [Contributing guide](https://github.com/gogs/gogs/blob/main/.github/CONTRIBUTING.md).
- Check to make sure someone hasn't already opened a similar [issue](https://github.com/gogs/gogs/issues).
- type: textarea
attributes:
label: What needs to be improved? Please describe
description: A clear and concise description of what is wrong or missing.
validations:
required: true
- type: textarea
attributes:
label: Why do you think it is important?
description: A clear and concise explanation of the rationale.
validations:
required: true
- type: checkboxes
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://go.dev/conduct)
options:
- label: I agree to follow this project's Code of Conduct
required: true

View File

@@ -0,0 +1,47 @@
name: Feature request
description: Suggest an idea for this project
labels: ["\U0001F3AF feature"]
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this form!
- Please use English :)
- For questions, ask in [Discussions](https://github.com/gogs/gogs/discussions).
- Before you file an issue read the [Contributing guide](https://github.com/gogs/gogs/blob/main/.github/CONTRIBUTING.md).
- Check to make sure someone hasn't already opened a similar [issue](https://github.com/gogs/gogs/issues).
- type: textarea
attributes:
label: Describe the feature
description: A clear and concise description of what the feature is, e.g. I think it is reasonable to have [...]
validations:
required: true
- type: textarea
attributes:
label: Describe the solution you'd like
description: A clear and concise description of what you want to happen.
validations:
required: true
- type: textarea
attributes:
label: Describe alternatives you've considered
description: A clear and concise description of any alternative solutions or features you've considered.
validations:
required: true
- type: textarea
attributes:
label: Additional context
description: |
Links? References? Suggestions? Anything that will give us more context about the feature you are requesting!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
- type: checkboxes
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://go.dev/conduct)
options:
- label: I agree to follow this project's Code of Conduct
required: true

View File

@@ -1,9 +0,0 @@
The pull request will be closed without any reasons if it does not satisfy any of following requirements:
1. Please make sure you are targeting the `develop` branch.
2. Please read contributing guidelines:
https://github.com/gogits/gogs/wiki/Contributing-Code
3. Please describe what your pull request does and which issue you're targeting
4. ... if it is not related to any particular issues, explain why we should not reject your pull request.
**You MUST delete above content including this line before posting; too lazy to take this action considered invalid pull request.**

9
.github/dependabot.yml vendored Normal file
View File

@@ -0,0 +1,9 @@
# Docs: https://git.io/JCUAY
version: 2
updates:
- package-ecosystem: "gomod"
directory: "/"
schedule:
interval: "monthly"
commit-message:
prefix: "mod:"

16
.github/pull_request_template.md vendored Normal file
View File

@@ -0,0 +1,16 @@
## Describe the pull request
A clear and concise description of what the pull request is about, i.e. what problem should be fixed?
Link to the issue: <!-- paste the issue link here, or put "n/a" if not applicable -->
## Checklist
- [ ] I agree to follow the [Code of Conduct](https://go.dev/conduct) by submitting this pull request.
- [ ] I have read and acknowledge the [Contributing guide](https://github.com/gogs/gogs/blob/main/.github/CONTRIBUTING.md).
- [ ] I have added test cases to cover the new code or have provided the test plan. (if applicable)
- [ ] I have added an entry to [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md). (if applicable)
## Test plan
<!-- Please provide concrete but concise steps to proof things are working as stated, see an example in https://github.com/gogs/gogs/pull/7345 -->

75
.github/workflows/codeql.yml vendored Normal file
View File

@@ -0,0 +1,75 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"
on:
push:
branches: [ main ]
pull_request:
paths:
- '.github/workflows/codeql.yml'
schedule:
- cron: '0 19 * * 0'
permissions:
contents: read
security-events: write
jobs:
analyze:
name: Analyze
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
language: [ 'go' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
# Learn more:
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
steps:
- name: Check out repository
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
with:
# We must fetch at least the immediate parents so that if this is
# a pull request then we can checkout the head.
fetch-depth: 2
# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3
# Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl
# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language
#- run: |
# make bootstrap
# make release
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3

26
.github/workflows/digitalocean_gc.yml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: DigitalOcean
on:
workflow_dispatch:
workflow_call:
jobs:
garbage-collection:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Install doctl
uses: digitalocean/action-doctl@5727c67aa3c2c34ae9462d5a0ecfea8a1b31e5ce # v2
with:
token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
- name: Run garbage collection
run: |
# --force: Required for CI to skip confirmation prompts
# --include-untagged-manifests: Deletes unreferenced manifests to maximize space
doctl registry garbage-collection start --force --include-untagged-manifests
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}

402
.github/workflows/docker.yml vendored Normal file
View File

@@ -0,0 +1,402 @@
name: Docker
on:
push:
branches:
- main
pull_request:
paths:
- '.trivy.yaml'
- 'Dockerfile'
- 'Dockerfile.next'
- 'docker/**'
- 'docker-next/**'
- '.github/workflows/docker.yml'
release:
types: [ published ]
jobs:
buildx:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
packages: write
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up QEMU
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Login to Docker Hub
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: |
gogs/gogs:latest
ghcr.io/gogs/gogs:latest
- name: Scan for container vulnerabilities
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
with:
image-ref: gogs/gogs:latest
exit-code: '1'
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
buildx-next:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
concurrency:
group: ${{ github.workflow }}-next-${{ github.ref }}
cancel-in-progress: true
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
packages: write
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up QEMU
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Login to Docker Hub
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Login to DigitalOcean Container registry
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
registry: registry.digitalocean.com
username: ${{ secrets.DIGITALOCEAN_USERNAME }}
password: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
- name: Build and push next-gen images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
file: Dockerfile.next
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: |
gogs/gogs:next-latest
ghcr.io/gogs/gogs:next-latest
registry.digitalocean.com/gogs/gogs:next-latest
- name: Scan for container vulnerabilities
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
with:
image-ref: gogs/gogs:next-latest
exit-code: '1'
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
deploy-demo:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
needs: buildx-next
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Configure kubectl
run: |
mkdir -p ~/.kube
echo "${KUBECONFIG}" | base64 -d > ~/.kube/config
env:
KUBECONFIG: ${{ secrets.DIGITALOCEAN_K8S_CLUSTER_KUBECONFIG }}
- name: Restart gogs-demo deployment
timeout-minutes: 5
run: |
set -ex
kubectl rollout restart deployment gogs-demo -n gogs
kubectl rollout status deployment gogs-demo -n gogs
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
buildx-pull-request:
if: ${{ github.event_name == 'pull_request'}}
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
with:
config-inline: |
[worker.oci]
max-parallelism = 2
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Compute short commit SHA
id: short-sha
uses: benjlevesque/short-sha@599815c8ee942a9616c92bcfb4f947a3b670ab0b # v3.0
- name: Build and push images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
platforms: linux/amd64
push: true
tags: |
ttl.sh/gogs/gogs-${{ steps.short-sha.outputs.sha }}:7d
- name: Scan for container vulnerabilities
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
with:
image-ref: ttl.sh/gogs/gogs-${{ steps.short-sha.outputs.sha }}:7d
exit-code: '1'
buildx-next-pull-request:
if: ${{ github.event_name == 'pull_request'}}
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
with:
config-inline: |
[worker.oci]
max-parallelism = 2
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Compute short commit SHA
id: short-sha
uses: benjlevesque/short-sha@599815c8ee942a9616c92bcfb4f947a3b670ab0b # v3.0
- name: Build and push next-gen images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
file: Dockerfile.next
platforms: linux/amd64
push: true
tags: |
ttl.sh/gogs/gogs-next-${{ steps.short-sha.outputs.sha }}:7d
- name: Scan for container vulnerabilities
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
with:
image-ref: ttl.sh/gogs/gogs-next-${{ steps.short-sha.outputs.sha }}:7d
exit-code: '1'
# Updates to the following section needs to be synced to all release branches within their lifecycles.
buildx-release:
if: ${{ github.event_name == 'release' }}
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
packages: write
steps:
- name: Compute image tags
run: |
IMAGE_TAG=$(echo $GITHUB_REF_NAME | cut -c 2-)
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
TAGS="gogs/gogs:$IMAGE_TAG
ghcr.io/gogs/gogs:$IMAGE_TAG"
# Add minor version tag for stable releases (no prerelease suffix per semver).
if [[ ! "$IMAGE_TAG" =~ - ]]; then
MINOR_TAG=$(echo "$IMAGE_TAG" | cut -d. -f1,2)
TAGS="$TAGS
gogs/gogs:$MINOR_TAG
ghcr.io/gogs/gogs:$MINOR_TAG"
fi
echo "TAGS<<EOF" >> $GITHUB_ENV
echo "$TAGS" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up QEMU
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Login to Docker Hub
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: ${{ env.TAGS }}
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
# Updates to the following section needs to be synced to all release branches within their lifecycles.
buildx-next-release:
if: ${{ github.event_name == 'release' }}
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
packages: write
steps:
- name: Compute image tags
run: |
IMAGE_TAG=$(echo $GITHUB_REF_NAME | cut -c 2-)
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
TAGS="gogs/gogs:next-$IMAGE_TAG
ghcr.io/gogs/gogs:next-$IMAGE_TAG"
# Add minor version tag for stable releases (no prerelease suffix per semver).
if [[ ! "$IMAGE_TAG" =~ - ]]; then
MINOR_TAG=$(echo "$IMAGE_TAG" | cut -d. -f1,2)
TAGS="$TAGS
gogs/gogs:next-$MINOR_TAG
ghcr.io/gogs/gogs:next-$MINOR_TAG"
fi
echo "TAGS<<EOF" >> $GITHUB_ENV
echo "$TAGS" >> $GITHUB_ENV
echo "EOF" >> $GITHUB_ENV
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up QEMU
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
with:
platforms: linux/amd64,linux/arm64,linux/arm/v7
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
- name: Inspect builder
run: |
echo "Name: ${{ steps.buildx.outputs.name }}"
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
echo "Status: ${{ steps.buildx.outputs.status }}"
echo "Flags: ${{ steps.buildx.outputs.flags }}"
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
- name: Login to Docker Hub
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push next-gen images
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
with:
context: .
file: Dockerfile.next
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: ${{ env.TAGS }}
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
digitalocean-gc:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
needs: buildx-next
permissions:
contents: read
uses: ./.github/workflows/digitalocean_gc.yml
secrets: inherit
digitalocean-gc-pull-request:
if: ${{ github.event_name == 'pull_request' && github.repository == 'gogs/gogs' }}
needs: buildx-next-pull-request
permissions:
contents: read
uses: ./.github/workflows/digitalocean_gc.yml
secrets: inherit

176
.github/workflows/go.yml vendored Normal file
View File

@@ -0,0 +1,176 @@
name: Go
on:
push:
branches:
- main
- 'release/**'
paths:
- '**.go'
- 'go.mod'
- '.golangci.yml'
- '.github/workflows/go.yml'
pull_request:
paths:
- '**.go'
- 'go.mod'
- '.golangci.yml'
- '.github/workflows/go.yml'
env:
GOPROXY: "https://proxy.golang.org"
permissions:
contents: read
jobs:
lint:
permissions:
contents: read # for actions/checkout to fetch code
pull-requests: read # for golangci/golangci-lint-action to fetch pull requests
name: Lint
runs-on: ubuntu-latest
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Install Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: 1.26.x
- name: Install Task
uses: arduino/setup-task@b91d5d2c96a56797b48ac1e0e89220bf64044611 # v2.0.0
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
- name: Check Go module tidiness and generated files
shell: bash
run: |
go mod tidy
task generate
STATUS=$(git status --porcelain)
if [ ! -z "$STATUS" ]; then
echo "Unstaged files:"
echo $STATUS
echo "Run 'go mod tidy' or 'task generate' commit them"
exit 1
fi
- name: Run golangci-lint
uses: golangci/golangci-lint-action@9fae48acfc02a90574d7c304a1758ef9895495fa # v7.0.1
with:
version: latest
args: --timeout=30m
test:
name: Test
strategy:
matrix:
go-version: [ 1.26.x ]
platform: [ ubuntu-latest, macos-latest ]
runs-on: ${{ matrix.platform }}
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Install Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: ${{ matrix.go-version }}
- name: Run tests with coverage
run: |
go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic -json ./... > test-report.json
go install github.com/mfridman/tparse@latest
tparse -all -file=test-report.json
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
# Running tests with race detection consumes too much memory on Windows,
# see https://github.com/golang/go/issues/46099 for details.
test-windows:
name: Test Windows
strategy:
matrix:
go-version: [ 1.26.x ]
platform: [ windows-latest ]
runs-on: ${{ matrix.platform }}
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Install Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: ${{ matrix.go-version }}
- name: Run tests with coverage
run: go test -shuffle=on -v -coverprofile=coverage -covermode=atomic ./...
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}
postgres:
name: Postgres
strategy:
matrix:
go-version: [ 1.26.x ]
platform: [ ubuntu-latest ]
runs-on: ${{ matrix.platform }}
services:
postgres:
image: postgres:9.6
env:
POSTGRES_PASSWORD: postgres
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- 5432:5432
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Install Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: ${{ matrix.go-version }}
- name: Run tests with coverage
run: |
go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic -json ./internal/database/... > test-report.json
go install github.com/mfridman/tparse@latest
tparse -all -file=test-report.json
env:
GOGS_DATABASE_TYPE: postgres
PGPORT: 5432
PGHOST: localhost
PGUSER: postgres
PGPASSWORD: postgres
PGSSLMODE: disable
mysql:
name: MySQL
strategy:
matrix:
go-version: [ 1.26.x ]
platform: [ ubuntu-22.04 ] # Use the lowest version possible for backwards compatibility
runs-on: ${{ matrix.platform }}
steps:
- name: Start MySQL server
run: sudo systemctl start mysql
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Install Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: ${{ matrix.go-version }}
- name: Run tests with coverage
run: |
go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic -json ./internal/database/... > test-report.json
go install github.com/mfridman/tparse@latest
tparse -all -file=test-report.json
env:
GOGS_DATABASE_TYPE: mysql
MYSQL_USER: root
MYSQL_PASSWORD: root
MYSQL_HOST: localhost
MYSQL_PORT: 3306

25
.github/workflows/lock.yml vendored Normal file
View File

@@ -0,0 +1,25 @@
name: 'Lock Threads'
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
permissions:
issues: write
pull-requests: write
concurrency:
group: lock
jobs:
action:
runs-on: ubuntu-latest
steps:
- uses: dessant/lock-threads@1bf7ec25051fe7c00bdd17e6a7cf3d7bfb7dc771 # v5.0.1
with:
github-token: ${{ github.token }}
issue-inactive-days: '90'
issue-lock-reason: 'resolved'
pr-inactive-days: '365'
pr-lock-reason: 'resolved'

146
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,146 @@
name: Release
on:
release:
types: [published]
push:
branches:
- main
pull_request:
paths:
- '.github/workflows/release.yml'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
env:
GOPROXY: "https://proxy.golang.org"
permissions:
contents: write
jobs:
build:
name: Build ${{ matrix.goos }}/${{ matrix.goarch }}${{ matrix.suffix }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
include:
- {goos: linux, goarch: amd64}
- {goos: linux, goarch: arm64}
- {goos: linux, goarch: "386"}
- {goos: darwin, goarch: amd64}
- {goos: darwin, goarch: arm64}
- {goos: windows, goarch: amd64}
- {goos: windows, goarch: arm64}
- {goos: windows, goarch: "386"}
- {goos: windows, goarch: amd64, suffix: "_mws", tags: minwinsvc}
- {goos: windows, goarch: arm64, suffix: "_mws", tags: minwinsvc}
- {goos: windows, goarch: "386", suffix: "_mws", tags: minwinsvc}
steps:
- name: Check out code
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Set up Go
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
with:
go-version: 1.26.x
- name: Determine version
id: version
run: |
if [ "${{ github.event_name }}" = "release" ]; then
echo "version=${{ github.event.release.tag_name }}" | sed 's/version=v/version=/' >> "$GITHUB_OUTPUT"
echo "release_tag=${{ github.event.release.tag_name }}" >> "$GITHUB_OUTPUT"
elif [ "${{ github.event_name }}" = "push" ] && [ "${{ github.ref }}" = "refs/heads/main" ]; then
echo "version=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT"
echo "release_tag=latest-commit-build" >> "$GITHUB_OUTPUT"
else
echo "version=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT"
echo "release_tag=release-archive-testing" >> "$GITHUB_OUTPUT"
fi
- name: Build binary
env:
GOOS: ${{ matrix.goos }}
GOARCH: ${{ matrix.goarch }}
CGO_ENABLED: "0"
run: |
BINARY_NAME="gogs"
if [ "${{ matrix.goos }}" = "windows" ]; then
BINARY_NAME="gogs.exe"
fi
TAGS_FLAG=""
if [ -n "${{ matrix.tags }}" ]; then
TAGS_FLAG="-tags ${{ matrix.tags }}"
fi
go build -v \
-ldflags "
-X \"gogs.io/gogs/internal/conf.BuildTime=$(date -u '+%Y-%m-%d %I:%M:%S %Z')\"
-X \"gogs.io/gogs/internal/conf.BuildCommit=$(git rev-parse HEAD)\"
" \
$TAGS_FLAG \
-trimpath -o "$BINARY_NAME" ./cmd/gogs
- name: Prepare archive contents
run: |
mkdir -p dist/gogs
BINARY_NAME="gogs"
if [ "${{ matrix.goos }}" = "windows" ]; then
BINARY_NAME="gogs.exe"
fi
cp "$BINARY_NAME" dist/gogs/
cp LICENSE README.md dist/gogs/
cp -r scripts dist/gogs/
- name: Create archives
working-directory: dist
run: |
VERSION="${{ steps.version.outputs.version }}"
ARCHIVE_BASE="gogs_${VERSION}_${{ matrix.goos }}_${{ matrix.goarch }}${{ matrix.suffix }}"
zip -r "${ARCHIVE_BASE}.zip" gogs
if [ "${{ matrix.goos }}" = "linux" ]; then
tar -czvf "${ARCHIVE_BASE}.tar.gz" gogs
fi
- name: Upload to release
env:
GH_TOKEN: ${{ github.token }}
run: |
RELEASE_TAG="${{ steps.version.outputs.release_tag }}"
if [ "${{ github.event_name }}" != "release" ]; then
git tag -f "$RELEASE_TAG"
git push origin "$RELEASE_TAG" --force || true
RELEASE_TITLE="Release Archive Testing"
RELEASE_NOTES="Automated testing release for workflow development."
if [ "$RELEASE_TAG" = "latest-commit-build" ]; then
RELEASE_TITLE="Latest Commit Build"
RELEASE_NOTES="Automated build from the latest commit on main branch. This release is updated automatically with every push to main."
fi
gh release view "$RELEASE_TAG" || gh release create "$RELEASE_TAG" --title "$RELEASE_TITLE" --notes "$RELEASE_NOTES" --prerelease
fi
PATTERN="_${{ matrix.goos }}_${{ matrix.goarch }}${{ matrix.suffix }}\."
gh release view "$RELEASE_TAG" --json assets --jq ".assets[].name" | grep "$PATTERN" | while read -r asset; do
gh release delete-asset "$RELEASE_TAG" "$asset" --yes || true
done
gh release upload "$RELEASE_TAG" dist/gogs_*.zip --clobber
if [ "${{ matrix.goos }}" = "linux" ]; then
gh release upload "$RELEASE_TAG" dist/gogs_*.tar.gz --clobber
fi
notify-failure:
name: Notify on failure
runs-on: ubuntu-latest
needs: [build]
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
steps:
- name: Send email on failure
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
with:
smtp_username: ${{ secrets.SMTP_USERNAME }}
smtp_password: ${{ secrets.SMTP_PASSWORD }}

17
.github/workflows/shell.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
name: Shell
on:
push:
branches: [ main ]
pull_request:
permissions:
contents: read
jobs:
shellcheck:
name: Shellcheck
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
- name: Run ShellCheck
uses: ludeeus/action-shellcheck@00cae500b08a931fb5698e11e79bfbd38e612a38 # 2.0.0

27
.gitignore vendored
View File

@@ -1,19 +1,16 @@
.DS_Store # Build artifacts
*.db .bin/
*.log dist/
# Runtime data
log/ log/
custom/ custom/
data/ data/
.vendor/
# Configuration and application files
.idea/ .idea/
*.iml .task/
public/img/avatar/ .envrc
*.exe
*.exe~ # System junk
/gogs .DS_Store
profile/
*.pem
output*
*.sublime-project
*.sublime-workspace
/release

42
.golangci.yml Normal file
View File

@@ -0,0 +1,42 @@
version: "2"
linters:
enable:
- nakedret
- rowserrcheck
- unconvert
- unparam
settings:
govet:
disable:
# printf: non-constant format string in call to fmt.Errorf (govet)
# showing up since golangci-lint version 1.60.1
- printf
staticcheck:
checks:
- all
- "-SA1019" # This project is under active refactoring and not all code is up to date.
- "-QF1001" # I'm a math noob
- "-ST1016" # Some legit code uses this pattern
nakedret:
max-func-lines: 0 # Disallow any unnamed return statement
exclusions:
generated: lax
presets:
- comments
- common-false-positives
- legacy
- std-error-handling
paths:
- third_party$
- builtin$
- examples$
formatters:
enable:
- gofmt
- goimports
exclusions:
generated: lax
paths:
- third_party$
- builtin$
- examples$

View File

@@ -1,2 +1,4 @@
Unknwon <u@gogs.io> <joe2010xtmf@163.com> Joe Chen <jc@unknwon.io> Unknwon <u@gogs.io>
Unknwon <u@gogs.io> 无闻 <u@gogs.io> Joe Chen <jc@unknwon.io> 无闻 <u@gogs.io>
Joe Chen <jc@unknwon.io> ᴜɴᴋɴᴡᴏɴ <u@gogs.io>
Joe Chen <jc@unknwon.io> ᴜɴᴋɴᴡᴏɴ <jc@unknwon.io>

View File

@@ -8,10 +8,10 @@ APP_USER=$(${CLI} config:get APP_USER)
APP_GROUP=$(${CLI} config:get APP_GROUP) APP_GROUP=$(${CLI} config:get APP_GROUP)
APP_CONFIG="/etc/${APP_NAME}/conf/app.ini" APP_CONFIG="/etc/${APP_NAME}/conf/app.ini"
mkdir -p $(dirname ${APP_CONFIG}) mkdir -p "$(dirname ${APP_CONFIG})"
chown ${APP_USER}.${APP_GROUP} $(dirname ${APP_CONFIG}) chown "${APP_USER}"."${APP_GROUP}" "$(dirname ${APP_CONFIG})"
[ -f ${APP_CONFIG} ] || ${CLI} run cp conf/app.ini ${APP_CONFIG} [ -f ${APP_CONFIG} ] || ${CLI} run cp conf/app.ini ${APP_CONFIG}
${CLI} config:set USER=${APP_USER} ${CLI} config:set USER="${APP_USER}"
sed -i "s|RUN_USER = git|RUN_USER = ${APP_USER}|" ${APP_CONFIG} sed -i "s|RUN_USER = git|RUN_USER = ${APP_USER}|" ${APP_CONFIG}
sed -i "s|RUN_MODE = dev|RUN_MODE = prod|" ${APP_CONFIG} sed -i "s|RUN_MODE = dev|RUN_MODE = prod|" ${APP_CONFIG}

View File

@@ -1,36 +1,35 @@
targets: targets:
debian-7: &debian debian-11: &debian
build_dependencies: build_dependencies:
- libpam0g-dev - libpam0g-dev
dependencies: dependencies:
- libpam0g - libpam0g
- git - git
debian-8: debian-12:
<<: *debian <<: *debian
debian-9: debian-13:
<<: *debian <<: *debian
ubuntu-12.04: debian-14:
<<: *debian <<: *debian
ubuntu-14.04: ubuntu-18.04:
<<: *debian <<: *debian
ubuntu-16.04: ubuntu-20.04:
<<: *debian <<: *debian
build_dependencies: ubuntu-22.04:
- bzr <<: *debian
- mercurial ubuntu-24.04:
centos-6: &el <<: *debian
centos-9:
build_dependencies: build_dependencies:
- pam-devel - pam-devel
# required for go buildpack # required for Go buildpack
- perl-Digest-SHA - perl-Digest-SHA
dependencies: dependencies:
- pam - pam
- git - git
centos-7:
<<: *el
before: before:
- mv packager/Procfile . - mv .packager/Procfile .
after: after:
- mv bin/gogs gogs - mv bin/gogs gogs
after_install: ./packager/hooks/postinst after_install: ./.packager/hooks/postinst
buildpack: https://github.com/heroku/heroku-buildpack-go.git#v62 buildpack: https://github.com/heroku/heroku-buildpack-go.git#main

View File

@@ -1,19 +0,0 @@
language: go
go:
- 1.6.x
- 1.7.x
- 1.8.x
- 1.9.x
- 1.10.x
- master
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libpam-dev
env:
- GO15VENDOREXPERIMENT=1
script:
- go build -v -tags "pam"
- go test -v -cover -race ./...

33
AGENTS.md Normal file
View File

@@ -0,0 +1,33 @@
## Core principles
- Stop telling me "You're right", it just shows how incompetent you are. Do it right on your first try, fact-check and review after changes. If you are not sure, ask for help.
- When you see changes made outside your knowledge, use the current version as your new starting point. Do not blindly overwrite those changes or you suck. Even if you have to update the code, always respect the pattern in the surrounding context!
## Style and mechanics
This applies to all texts, including but not limited to UI, documentation, code comments.
- Use sentence case. Preserve original casing for brand names.
- End with a period for a full sentence.
- Do not add comments that repeat what the code is doing, always prefer more descriptive names. Do add comments for intentions that aren't obvious via reading the code alone. This rule takes precedence over matching existing patterns.
## Coding guidelines
- Use `github.com/cockroachdb/errors` for error handling.
- Use `github.com/stretchr/testify` for assertions in tests. Be mindful about the choice of `require` and `assert`, the former should be used when the test cannot proceed meaningfully after a failed assertion.
## Build instructions
- Prefer `task` command over vanilla `go` command when available. Use `--force` flag when necessary.
- Run `task lint` after every time you finish changing code, and fix all linter errors.
- Run `go mod tidy` after every time you change `go.mod`, do not manually edit `go.sum` file.
## Tool-use guidance
- Use `gh` CLI to access information on github.com that is not publicly available.
## Source code control
- When pushing changes to a pull request from a fork, use SSH address and do not add remote.
- Never commit on the `main` branch directly unless being explicitly asked to do so. A single ask only grants a single commit action on the `main` branch.
- Never amend commits unless being explicitly asked to do so.

311
CHANGELOG.md Normal file
View File

@@ -0,0 +1,311 @@
# Changelog
All notable changes to Gogs are documented in this file.
## 0.15.0+dev (`main`)
### Fixed
- _Security:_ Cross-repository LFS object overwrite via missing content hash verification. [#8166](https://github.com/gogs/gogs/pull/8166) - [GHSA-gmf8-978x-2fg2](https://github.com/gogs/gogs/security/advisories/GHSA-gmf8-978x-2fg2)
- _Security:_ DOM-based XSS via issue meta selection on the issue page. [#8178](https://github.com/gogs/gogs/pull/8178) - [GHSA-vgjm-2cpf-4g7c](https://github.com/gogs/gogs/security/advisories/GHSA-vgjm-2cpf-4g7c)
- Unable to update files via web editor and API. [#8184](https://github.com/gogs/gogs/pull/8184)
### Removed
- Support for passing API access tokens via URL query parameters (`token`, `access_token`). Use the `Authorization` header instead. [#8177](https://github.com/gogs/gogs/pull/8177) - [GHSA-x9p5-w45c-7ffc](https://github.com/gogs/gogs/security/advisories/GHSA-x9p5-w45c-7ffc)
- The `gogs cert` subcommand. [#8153](https://github.com/gogs/gogs/pull/8153)
- The `[email] DISABLE_HELO` configuration option. HELO/EHLO is now always sent during SMTP handshake. [#8164](https://github.com/gogs/gogs/pull/8164)
- Support for MSSQL as a database backend. Stay on 0.14 for continued usage. [#8173](https://github.com/gogs/gogs/pull/8173)
## 0.14.1
### Added
- Support comparing tags in addition to branches. [#6141](https://github.com/gogs/gogs/issues/6141)
- Show file name in browser tab title when viewing files. [#5896](https://github.com/gogs/gogs/pull/5896)
- Support using TLS for Redis session provider using `[session] PROVIDER_CONFIG = ...,tls=true`. [#7860](https://github.com/gogs/gogs/pull/7860)
- Support expanading values in `app.ini` from environment variables, e.g. `[database] PASSWORD = ${DATABASE_PASSWORD}`. [#8057](https://github.com/gogs/gogs/pull/8057)
- Support custom logout URL that users get redirected to after sign out using `[auth] CUSTOM_LOGOUT_URL`. [#8089](https://github.com/gogs/gogs/pull/8089)
- Start publishing next-generation, security-focused Docker image via `gogs/gogs:next-latest`, which will become the default image distribution (`gogs/gogs:latest`) starting 0.16.0. While not all container options support have been added in the next-generation image, the use of current legacy Docker image is deprecated, it will be published as `gogs/gogs:legacy-latest` starting 0.16.0, and be completely removed no earlier than 0.17.0. [#8061](https://github.com/gogs/gogs/pull/8061)
### Changed
- The required Go version to compile source code changed to 1.25.
- The build tag `cert` has been removed, and the `gogs cert` subcommand is now always available. [#7883](https://github.com/gogs/gogs/pull/7883)
- Switched to pure-Go SQLite driver, CGO is no longer required to compile Gogs. [#7882](https://github.com/gogs/gogs/issues/7882)
- Updated Mermaid JS to 11.9.0. [#8009](https://github.com/gogs/gogs/pull/8009)
- Halt the repository creation and leave the directory untouched if the repository root already exists. [#8091](https://github.com/gogs/gogs/pull/8091)
### Fixed
- _Security:_ Unauthenticated file upload. [#8128](https://github.com/gogs/gogs/pull/8128) - [GHSA-fc3h-92p8-h36f](https://github.com/gogs/gogs/security/advisories/GHSA-fc3h-92p8-h36f)
- _Security:_ Protected branch bypass in web UI. [#8124](https://github.com/gogs/gogs/pull/8124) - [GHSA-2c6v-8r3v-gh6p](https://github.com/gogs/gogs/security/advisories/GHSA-2c6v-8r3v-gh6p)
- _Security:_ Authorization bypass allows cross-repository label modification. [#8123](https://github.com/gogs/gogs/pull/8123) - [GHSA-cv22-72px-f4gh](https://github.com/gogs/gogs/security/advisories/GHSA-cv22-72px-f4gh)
- _Security:_ Cross-repository comment deletion. [#8119](https://github.com/gogs/gogs/pull/8119) - [GHSA-jj5m-h57j-5gv7](https://github.com/gogs/gogs/security/advisories/GHSA-jj5m-h57j-5gv7)
- 500 error on repository watchers and stargazers pages when using MSSQL. [#5482](https://github.com/gogs/gogs/issues/5482)
- Submodules using `ssh://` protocol and a port number are not rendered correctly. [#4941](https://github.com/gogs/gogs/issues/4941)
- Missing link to user profile on the first commit in commits history page. [#7404](https://github.com/gogs/gogs/issues/7404)
- Unable to delete or display files with special characters in their names. [#7596](https://github.com/gogs/gogs/issues/7596)
- Docker healthcheck fails when `HTTP_PROXY` or `HTTPS_PROXY` environment variables are set. [#7529](https://github.com/gogs/gogs/issues/7529)
## 0.13.4
### Fixed
- _Security:_ DoS in repository mirror sync. [#8065](https://github.com/gogs/gogs/pull/8065) - [GHSA-cr88-6mqm-4g57](https://github.com/gogs/gogs/security/advisories/GHSA-cr88-6mqm-4g57)
- _Security:_ RCE in repository put contents API. [#8082](https://github.com/gogs/gogs/pull/8082) - [GHSA-gg64-xxr9-qhjp](https://github.com/gogs/gogs/security/advisories/GHSA-gg64-xxr9-qhjp)
- _Security:_ Arbitrary file deletion via path traversal in wiki page update. [#8099](https://github.com/gogs/gogs/pull/8099) - [GHSA-jp7c-wj6q-3qf2](https://github.com/gogs/gogs/security/advisories/GHSA-jp7c-wj6q-3qf2)
- _Security:_ 2FA bypass via recovery code. [#8100](https://github.com/gogs/gogs/pull/8100) - [GHSA-p6x6-9mx6-26wj](https://github.com/gogs/gogs/security/advisories/GHSA-p6x6-9mx6-26wj)
- _Security:_ Authorization bypass in repository deletion API. [#8101](https://github.com/gogs/gogs/pull/8101) - [GHSA-rjv5-9px2-fqw6](https://github.com/gogs/gogs/security/advisories/GHSA-rjv5-9px2-fqw6)
- _Security:_ Update repository content via API with read-only permission. [#8102](https://github.com/gogs/gogs/pull/8102) - [GHSA-5qhx-gwfj-6jqr](https://github.com/gogs/gogs/security/advisories/GHSA-5qhx-gwfj-6jqr)
- _Security:_ Arbitrary file read/write via path traversal in Git hook editing. [#8103](https://github.com/gogs/gogs/pull/8103) - [GHSA-mrph-w4hh-gx3g](https://github.com/gogs/gogs/security/advisories/GHSA-mrph-w4hh-gx3g)
- _Security:_ Stored XSS via Mermaid diagrams. [`2c88cd4`](https://github.com/gogs/gogs/commit/2c88cd4d9fdc346d8e06d82f5368d657c10e79c2) - [GHSA-26gq-grmh-6xm6](https://github.com/gogs/gogs/security/advisories/GHSA-26gq-grmh-6xm6)
- Route `GET /api/v1/user/repos` responses 500 when accessible repositories contain forks. [#8069](https://github.com/gogs/gogs/pull/8069)
- Newer Git versions that uses default branch `main` cause wiki initialization to fail. [#8094](https://github.com/gogs/gogs/pull/8094)
## 0.13.3
### Fixed
- _Security:_ Stored XSS in PDF renderer. [GHSA-xh32-cx6c-cp4v](https://github.com/gogs/gogs/security/advisories/GHSA-xh32-cx6c-cp4v)
- _Security:_ Path Traversal in file editing UI. [GHSA-wj44-9vcg-wjq7](https://github.com/gogs/gogs/security/advisories/GHSA-wj44-9vcg-wjq7)
- Randomly timeout on repository file uploads. [#7890](https://github.com/gogs/gogs/pull/7890)
- Unable to override email templates in custom directory. [#7905](https://github.com/gogs/gogs/pull/7905)
## 0.13.2
### Fixed
- _Security:_ Path Traversal in file editing UI. [GHSA-r7j8-5h9c-f6fx](https://github.com/gogs/gogs/security/advisories/GHSA-r7j8-5h9c-f6fx)
- _Security:_ Path Traversal in file update API. [GHSA-qf5v-rp47-55gg](https://github.com/gogs/gogs/security/advisories/GHSA-qf5v-rp47-55gg)
- _Security:_ Argument Injection in the built-in SSH server. [GHSA-vm62-9jw3-c8w3](https://github.com/gogs/gogs/security/advisories/GHSA-vm62-9jw3-c8w3)
- _Security:_ Deletion of internal files. [GHSA-ccqv-43vm-4f3w](https://github.com/gogs/gogs/security/advisories/GHSA-ccqv-43vm-4f3w)
- _Security:_ Argument Injection during changes preview. [GHSA-9pp6-wq8c-3w2c](https://github.com/gogs/gogs/security/advisories/GHSA-9pp6-wq8c-3w2c)
- _Security:_ Argument Injection when tagging new releases. [GHSA-m27m-h5gj-wwmg](https://github.com/gogs/gogs/security/advisories/GHSA-m27m-h5gj-wwmg)
- Use the non-deprecated section name `[email]` during installation for email settings. [#7704](https://github.com/gogs/gogs/pull/7704)
- Use the non-deprecated section name `[email] PASSWORD` during installation for email password. [#7807](https://github.com/gogs/gogs/pull/7807)
- Make purple template label color to actually use the hexcode of purple. [#7722](https://github.com/gogs/gogs/pull/7722)
## 0.13.0
### Added
- Support using personal access token in the password field. [#3866](https://github.com/gogs/gogs/issues/3866)
- An unlisted option is added when create or migrate a repository. Unlisted repositories are public but not being listed for users without direct access in the UI. [#5733](https://github.com/gogs/gogs/issues/5733)
- New API endpoint `PUT /repos/:owner/:repo/contents/:path` for creating and update repository contents. [#5967](https://github.com/gogs/gogs/issues/5967)
- New configuration option `[git.timeout] DIFF` for customizing operation timeout of `git diff`. [#6315](https://github.com/gogs/gogs/issues/6315)
- New configuration option `[server] SSH_SERVER_MACS` for setting list of accepted MACs for connections to builtin SSH server. [#6434](https://github.com/gogs/gogs/issues/6434)
- New configuration option `[repository] DEFAULT_BRANCH` for setting default branch name for new repositories. [#7291](https://github.com/gogs/gogs/issues/7291)
- New configuration option `[server] SSH_SERVER_ALGORITHMS` for specifying the list of accepted key exchange algorithms for connections to builtin SSH server. [#7345](https://github.com/gogs/gogs/pull/7345)
- Support specifying custom schema for PostgreSQL. [#6695](https://github.com/gogs/gogs/pull/6695)
- Support rendering Mermaid diagrams in Markdown. [#6776](https://github.com/gogs/gogs/pull/6776)
- Docker: Allow passing extra arguments to the `backup` command. [#7060](https://github.com/gogs/gogs/pull/7060)
- New languages support: Mongolian, Romanian. [#6510](https://github.com/gogs/gogs/pull/6510) [#7082](https://github.com/gogs/gogs/pull/7082)
### Changed
- The default branch has been changed to `main`. [#6285](https://github.com/gogs/gogs/pull/6285)
- MSSQL as database backend is deprecated, installation page no longer shows it as an option. Existing installations and manually craft configuration file continue to work. [#6295](https://github.com/gogs/gogs/pull/6295)
- Use [Task](https://github.com/go-task/task) as the build tool. [#6297](https://github.com/gogs/gogs/pull/6297)
- The required Go version to compile source code changed to 1.18.
- Access tokens are now stored using their SHA256 hashes instead of raw values. [#7008](https://github.com/gogs/gogs/pull/7008)
### Fixed
- Unable to use LDAP authentication on ARM machines. [#6761](https://github.com/gogs/gogs/issues/6761)
- Unable to choose "Lookup Avatar by mail" in user settings without deleting custom avatar. [#7267](https://github.com/gogs/gogs/pull/7267)
- Mistakenly include the "data" directory under the custom directory in the Docker setup. [#7343](https://github.com/gogs/gogs/pull/7343)
- Unable to start after data recovery with an outdated migration version. [#7125](https://github.com/gogs/gogs/issues/7125)
### Removed
- ⚠️ Migrations before 0.12 are removed, installations not on 0.12 should upgrade to it to run the migrations and then upgrade to 0.13.
- Configuration section `[mailer]` is no longer used, please use `[email]`.
- Configuration section `[service]` is no longer used, please use `[auth]`.
- Configuration option `APP_NAME` is no longer used, please use `BRAND_NAME`.
- Configuration option `[security] REVERSE_PROXY_AUTHENTICATION_USER` is no longer used, please use `[auth] REVERSE_PROXY_AUTHENTICATION_HEADER`.
- Configuration option `[auth] ACTIVE_CODE_LIVE_MINUTES` is no longer used, please use `[auth] ACTIVATE_CODE_LIVES`.
- Configuration option `[auth] RESET_PASSWD_CODE_LIVE_MINUTES` is no longer used, please use `[auth] RESET_PASSWORD_CODE_LIVES`.
- Configuration option `[auth] ENABLE_CAPTCHA` is no longer used, please use `[auth] ENABLE_REGISTRATION_CAPTCHA`.
- Configuration option `[auth] ENABLE_NOTIFY_MAIL` is no longer used, please use `[user] ENABLE_EMAIL_NOTIFICATION`.
- Configuration option `[auth] REGISTER_EMAIL_CONFIRM` is no longer used, please use `[auth] REQUIRE_EMAIL_CONFIRMATION`.
- Configuration option `[session] GC_INTERVAL_TIME` is no longer used, please use `[session] GC_INTERVAL`.
- Configuration option `[session] SESSION_LIFE_TIME` is no longer used, please use `[session] MAX_LIFE_TIME`.
- Configuration option `[server] ROOT_URL` is no longer used, please use `[server] EXTERNAL_URL`.
- Configuration option `[server] LANDING_PAGE` is no longer used, please use `[server] LANDING_URL`.
- Configuration option `[database] DB_TYPE` is no longer used, please use `[database] TYPE`.
- Configuration option `[database] PASSWD` is no longer used, please use `[database] PASSWORD`.
- Remove option to use Makefile as the build tool. [#6980](https://github.com/gogs/gogs/pull/6980)
## 0.12.11
### Fixed
- _Security:_ Stored XSS for issue assignees. [#7145](https://github.com/gogs/gogs/issues/7145)
- _Security:_ OS Command Injection in repo editor on case-insensitive file systems. [#7030](https://github.com/gogs/gogs/issues/7030)
- Unable to render repository pages with implicit submodules (e.g. `get submodule "REDACTED": revision does not exist`). [#6436](https://github.com/gogs/gogs/issues/6436)
## 0.12.10
### Changed
- Support using `[security] LOCAL_NETWORK_ALLOWLIST = *` to allow all hostnames. [#7111](https://github.com/gogs/gogs/pull/7111)
### Fixed
- Unable to send webhooks to local network addresses after configured `[security] LOCAL_NETWORK_ALLOWLIST`. [#7074](https://github.com/gogs/gogs/issues/7074)
## 0.12.9
### Fixed
- _Security:_ OS Command Injection in file editor. [#7000](https://github.com/gogs/gogs/issues/7000)
- _Security:_ Sanitize `DisplayName` in repository issue list. [#7009](https://github.com/gogs/gogs/pull/7009)
- _Security:_ Path Traversal in file editor on Windows. [#7001](https://github.com/gogs/gogs/issues/7001)
- _Security:_ Path Traversal in Git HTTP endpoints. [#7002](https://github.com/gogs/gogs/issues/7002)
- Unable to init repository during creation on Windows. [#6967](https://github.com/gogs/gogs/issues/6967)
- Mysterious panic on `Value not found for type *repo.HTTPContext`. [#6963](https://github.com/gogs/gogs/issues/6963)
## 0.12.8
### Changed
- All users (including admins) need to use the configuration option `[security] LOCAL_NETWORK_ALLOWLIST` to allow repository migration and webhooks to be able to access local network addresses, which is a comma separated list of hostnames. [#6988](https://github.com/gogs/gogs/pull/6988)
### Fixed
- _Security:_ SSRF in webhook. [#6901](https://github.com/gogs/gogs/issues/6901)
- _Security:_ XSS in cookies. [#6953](https://github.com/gogs/gogs/issues/6953)
- _Security:_ OS Command Injection in file uploading. [#6968](https://github.com/gogs/gogs/issues/6968)
- _Security:_ Remote Command Execution in file editing. [#6555](https://github.com/gogs/gogs/issues/6555)
## 0.12.7
### Fixed
- _Security:_ Stored XSS in issues. [#6919](https://github.com/gogs/gogs/issues/6919)
- Invalid character in `Access-Control-Allow-Credentials` response header. [#4983](https://github.com/gogs/gogs/issues/4983)
- Mysterious `ssh: overflow reading version string` errors from builtin SSH server. [#6882](https://github.com/gogs/gogs/issues/6882)
## 0.12.6
### Fixed
- _Security:_ Remote command execution in file uploading. [#6833](https://github.com/gogs/gogs/issues/6833)
- _Regression:_ Unable to migrate repository from other local Git hosting. Added a new configuration option `[security] LOCAL_NETWORK_ALLOWLIST`, which is a comma separated list of hostnames that are explicitly allowed to be accessed within the local network. [#6841](https://github.com/gogs/gogs/issues/6841)
- Slow start of Docker containers using NAS devices. [#6554](https://github.com/gogs/gogs/issues/6554)
## 0.12.5
### Fixed
- _Security:_ Potential SSRF in repository migration. [#6754](https://github.com/gogs/gogs/issues/6754)
- _Security:_ Improper PAM authorization handling. [#6810](https://github.com/gogs/gogs/issues/6810)
## 0.12.4
### Fixed
- _Security:_ Potential SSRF attack by CRLF injection via repository migration. [#6413](https://github.com/gogs/gogs/issues/6413)
- _Regression:_ Fixed smart links for issues stops rendering. [#6506](https://github.com/gogs/gogs/issues/6506)
- Added `X-Frame-Options` header to prevent Clickjacking. [#6409](https://github.com/gogs/gogs/issues/6409)
## 0.12.3
### Fixed
- _Regression:_ When running Gogs on Windows, push commits no longer fail on a daily basis with the error "pre-receive hook declined". [#6316](https://github.com/gogs/gogs/issues/6316)
- Auto-linked commit SHAs now have correct links. [#6300](https://github.com/gogs/gogs/issues/6300)
- Git LFS client (with version >= 2.5.0) wasn't able to upload files with known format (e.g. PNG, JPEG), and the server is expecting the HTTP Header `Content-Type` to be `application/octet-stream`. The server now tells the LFS client to always use `Content-Type: application/octet-stream` when upload files.
## 0.12.2
### Fixed
- _Regression:_ Pages are correctly rendered when requesting `?go-get=1` for subdirectories. [#6314](https://github.com/gogs/gogs/issues/6314)
- _Regression:_ Submodule with a relative path is linked correctly. [#6319](https://github.com/gogs/gogs/issues/6319)
- Backup can be processed when `--target` is specified on Windows. [#6339](https://github.com/gogs/gogs/issues/6339)
- Commit message contains keywords look like an issue reference no longer fails the push entirely. [#6289](https://github.com/gogs/gogs/issues/6289)
## 0.12.1
### Fixed
- The `updated_at` field is now correctly updated when updates an issue. [#6209](https://github.com/gogs/gogs/issues/6209)
- Fixed a regression which created `login_source.cfg` column to have `VARCHAR(255)` instead of `TEXT` in MySQL. [#6280](https://github.com/gogs/gogs/issues/6280)
## 0.12.0
### Added
- Support for Git LFS, you can read documentation for both [user](https://github.com/gogs/gogs/blob/main/docs/user/lfs.md) and [admin](https://github.com/gogs/gogs/blob/main/docs/admin/lfs.md). [#1322](https://github.com/gogs/gogs/issues/1322)
- Allow admin to remove observers from the repository. [#5803](https://github.com/gogs/gogs/pull/5803)
- Use `Last-Modified` HTTP header for raw files. [#5811](https://github.com/gogs/gogs/issues/5811)
- Support syntax highlighting for SAS code files (i.e. `.r`, `.sas`, `.tex`, `.yaml`). [#5856](https://github.com/gogs/gogs/pull/5856)
- Able to fill in pull request title with a template. [#5901](https://github.com/gogs/gogs/pull/5901)
- Able to override static files under `public/` directory, please refer to [documentation](https://gogs.io/docs/features/custom_template) for usage. [#5920](https://github.com/gogs/gogs/pull/5920)
- New API endpoint `GET /admin/teams/:teamid/members` to list members of a team. [#5877](https://github.com/gogs/gogs/issues/5877)
- Support backup with retention policy for Docker deployments. [#6140](https://github.com/gogs/gogs/pull/6140)
### Changed
- The organization profile page has changed to display at most 12 members. [#5506](https://github.com/gogs/gogs/issues/5506)
- The required Go version to compile source code changed to 1.14.
- All assets are now embedded into binary and served from memory by default. Set `[server] LOAD_ASSETS_FROM_DISK = true` to load them from disk. [#5920](https://github.com/gogs/gogs/pull/5920)
- Application and Go versions are removed from page footer and only show in the admin dashboard.
- Build tag for running as Windows Service has been changed from `miniwinsvc` to `minwinsvc`.
- Configuration option `APP_NAME` is deprecated and will end support in 0.13.0, please start using `BRAND_NAME`.
- Configuration option `[server] ROOT_URL` is deprecated and will end support in 0.13.0, please start using `[server] EXTERNAL_URL`.
- Configuration option `[server] LANDING_PAGE` is deprecated and will end support in 0.13.0, please start using `[server] LANDING_URL`.
- Configuration option `[database] DB_TYPE` is deprecated and will end support in 0.13.0, please start using `[database] TYPE`.
- Configuration option `[database] PASSWD` is deprecated and will end support in 0.13.0, please start using `[database] PASSWORD`.
- Configuration option `[security] REVERSE_PROXY_AUTHENTICATION_USER` is deprecated and will end support in 0.13.0, please start using `[auth] REVERSE_PROXY_AUTHENTICATION_HEADER`.
- Configuration section `[mailer]` is deprecated and will end support in 0.13.0, please start using `[email]`.
- Configuration section `[service]` is deprecated and will end support in 0.13.0, please start using `[auth]`.
- Configuration option `[auth] ACTIVE_CODE_LIVE_MINUTES` is deprecated and will end support in 0.13.0, please start using `[auth] ACTIVATE_CODE_LIVES`.
- Configuration option `[auth] RESET_PASSWD_CODE_LIVE_MINUTES` is deprecated and will end support in 0.13.0, please start using `[auth] RESET_PASSWORD_CODE_LIVES`.
- Configuration option `[auth] REGISTER_EMAIL_CONFIRM` is deprecated and will end support in 0.13.0, please start using `[auth] REQUIRE_EMAIL_CONFIRMATION`.
- Configuration option `[auth] ENABLE_CAPTCHA` is deprecated and will end support in 0.13.0, please start using `[auth] ENABLE_REGISTRATION_CAPTCHA`.
- Configuration option `[auth] ENABLE_NOTIFY_MAIL` is deprecated and will end support in 0.13.0, please start using `[user] ENABLE_EMAIL_NOTIFICATION`.
- Configuration option `[session] GC_INTERVAL_TIME` is deprecated and will end support in 0.13.0, please start using `[session] GC_INTERVAL`.
- Configuration option `[session] SESSION_LIFE_TIME` is deprecated and will end support in 0.13.0, please start using `[session] MAX_LIFE_TIME`.
- The name `-` is reserved and cannot be used for users or organizations.
### Fixed
- [Security] Potential open redirection with i18n.
- [Security] Potential ability to delete files outside a repository.
- [Security] Potential ability to set primary email on others' behalf from their verified emails.
- [Security] Potential XSS attack via `.ipynb`. [#5170](https://github.com/gogs/gogs/issues/5170)
- [Security] Potential SSRF attack via webhooks. [#5366](https://github.com/gogs/gogs/issues/5366)
- [Security] Potential CSRF attack in admin panel. [#5367](https://github.com/gogs/gogs/issues/5367)
- [Security] Potential stored XSS attack in some browsers. [#5397](https://github.com/gogs/gogs/issues/5397)
- [Security] Potential RCE on mirror repositories. [#5767](https://github.com/gogs/gogs/issues/5767)
- [Security] Potential XSS attack with raw markdown API. [#5907](https://github.com/gogs/gogs/pull/5907)
- File both modified and renamed within a commit treated as separate files. [#5056](https://github.com/gogs/gogs/issues/5056)
- Unable to restore the database backup to MySQL 8.0 with syntax error. [#5602](https://github.com/gogs/gogs/issues/5602)
- Open/close milestone redirects to a 404 page. [#5677](https://github.com/gogs/gogs/issues/5677)
- Disallow multiple tokens with same name. [#5587](https://github.com/gogs/gogs/issues/5587) [#5820](https://github.com/gogs/gogs/pull/5820)
- Enable Federated Avatar Lookup could cause server to crash. [#5848](https://github.com/gogs/gogs/issues/5848)
- Private repositories are hidden in the organization's view. [#5869](https://github.com/gogs/gogs/issues/5869)
- Users have access to base repository cannot view commits in forks. [#5878](https://github.com/gogs/gogs/issues/5878)
- Server error when changing email address in user settings page. [#5899](https://github.com/gogs/gogs/issues/5899)
- Fall back to use RFC 3339 as time layout when misconfigured. [#6098](https://github.com/gogs/gogs/issues/6098)
- Unable to update team with server error. [#6185](https://github.com/gogs/gogs/issues/6185)
- Webhooks are not fired after push when `[service] REQUIRE_SIGNIN_VIEW = true`.
- Files with identical content are randomly displayed one of them.
### Removed
- Configuration option `[other] SHOW_FOOTER_VERSION`
- Configuration option `[server] STATIC_ROOT_PATH`
- Configuration option `[repository] MIRROR_QUEUE_LENGTH`
- Configuration option `[repository] PULL_REQUEST_QUEUE_LENGTH`
- Configuration option `[session] ENABLE_SET_COOKIE`
- Configuration option `[release.attachment] PATH`
- Configuration option `[webhook] QUEUE_LENGTH`
- Build tag `sqlite`, which means CGO is now required.
---
**Older change logs can be found on [GitHub](https://github.com/gogs/gogs/releases?after=v0.12.0).**

1
CLAUDE.md Symbolic link
View File

@@ -0,0 +1 @@
AGENTS.md

2
CODEOWNERS Normal file
View File

@@ -0,0 +1,2 @@
# Default
* @gogs/core

View File

@@ -1,38 +1,44 @@
FROM alpine:3.5 FROM golang:1.26-alpine3.23 AS binarybuilder
RUN apk --no-cache --no-progress add --virtual \
build-deps \
build-base \
git \
linux-pam-dev
# Install system utils & Gogs runtime dependencies WORKDIR /gogs.io/gogs
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-amd64 /usr/sbin/gosu
RUN chmod +x /usr/sbin/gosu \
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
&& apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh \
s6 \
shadow \
socat \
tzdata
ENV GOGS_CUSTOM /data/gogs
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
COPY docker /app/gogs/docker
COPY templates /app/gogs/templates
COPY public /app/gogs/public
WORKDIR /app/gogs/build
COPY . . COPY . .
RUN ./docker/build-go.sh \ RUN ./docker/build/install-task.sh
&& ./docker/build.sh \ RUN TAGS="cert pam" task build
&& ./docker/finalize.sh
# Configure Docker Container FROM alpine:3.23
VOLUME ["/data"] RUN apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh \
s6 \
shadow \
socat \
tzdata \
rsync
ENV GOGS_CUSTOM=/data/gogs
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
WORKDIR /app/gogs
COPY docker ./docker
COPY --from=binarybuilder /gogs.io/gogs/.bin/gogs .
RUN ./docker/build/finalize.sh
# Configure Docker Container
VOLUME ["/data", "/backup"]
EXPOSE 22 3000 EXPOSE 22 3000
HEALTHCHECK CMD (curl --noproxy localhost -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
ENTRYPOINT ["/app/gogs/docker/start.sh"] ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"] CMD ["/usr/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,38 +0,0 @@
FROM aarch64/alpine:3.5
# Install system utils & Gogs runtime dependencies
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-arm64 /usr/sbin/gosu
RUN chmod +x /usr/sbin/gosu \
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
&& apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh \
s6 \
shadow \
socat \
tzdata
ENV GOGS_CUSTOM /data/gogs
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
COPY docker /app/gogs/docker
COPY templates /app/gogs/templates
COPY public /app/gogs/public
WORKDIR /app/gogs/build
COPY . .
RUN ./docker/build-go.sh \
&& ./docker/build.sh \
&& ./docker/finalize.sh
# Configure Docker Container
VOLUME ["/data"]
EXPOSE 22 3000
ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,44 +0,0 @@
FROM arm64v8/alpine:3.6
ENV GOGS_CUSTOM /data/gogs
ENV QEMU_EXECVE 1
# For cross compile on dockerhub
################################
COPY ./docker/aarch64/qemu-aarch64-static /usr/bin/
COPY ./docker/aarch64/resin-xbuild /usr/bin/
RUN [ "/usr/bin/qemu-aarch64-static", "/bin/sh", "-c", "ln -s resin-xbuild /usr/bin/cross-build-start; ln -s resin-xbuild /usr/bin/cross-build-end; ln /bin/sh /bin/sh.real" ]
RUN [ "cross-build-start" ]
# Prepare the container
#######################
# Install system utils & Gogs runtime dependencies
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-arm64 /usr/sbin/gosu
RUN chmod +x /usr/sbin/gosu \
&& apk --no-cache --no-progress add ca-certificates bash git linux-pam s6 curl openssh socat tzdata go
COPY . /app/gogs/build
WORKDIR /app/gogs/build
RUN ./docker/build.sh \
&& ./docker/finalize.sh
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
# For cross compile on dockerhub
################################
RUN [ "cross-build-end" ]
# Configure Docker Container
############################
VOLUME ["/data"]
EXPOSE 22 3000
ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

50
Dockerfile.next Normal file
View File

@@ -0,0 +1,50 @@
FROM golang:1.26-alpine3.23 AS binarybuilder
RUN apk --no-cache --no-progress add --virtual \
build-deps \
build-base \
git \
linux-pam-dev
WORKDIR /gogs.io/gogs
COPY . .
RUN ./docker/build/install-task.sh
RUN TAGS="cert pam" task build
FROM alpine:3.23
# Create git user and group with fixed UID/GID at build time for better K8s security context support.
# Using 1000:1000 as it's a common non-root UID/GID that works well with most volume permission setups.
ARG GOGS_UID=1000
ARG GOGS_GID=1000
RUN addgroup -g ${GOGS_GID} -S git && \
adduser -u ${GOGS_UID} -G git -H -D -g 'Gogs Git User' -h /data/git -s /bin/sh git
RUN apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh-keygen
ENV GOGS_CUSTOM=/data/gogs
WORKDIR /app/gogs
COPY --from=binarybuilder /gogs.io/gogs/.bin/gogs .
COPY docker-next/start.sh .
RUN chmod +x start.sh && \
mkdir -p /data && \
ln -s /data/git /home/git && \
chown -R git:git /app/gogs /data
# Configure Docker Container
VOLUME ["/data", "/backup"]
EXPOSE 22 3000
HEALTHCHECK CMD (curl --noproxy localhost -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
# Run as non-root user by default for better K8s security context support.
USER git:git
ENTRYPOINT ["/app/gogs/start.sh"]
CMD ["/app/gogs/gogs", "web"]

View File

@@ -1,38 +0,0 @@
FROM armhf/alpine:3.5
# Install system utils & Gogs runtime dependencies
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-armhf /usr/sbin/gosu
RUN chmod +x /usr/sbin/gosu \
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
&& apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh \
s6 \
shadow \
socat \
tzdata
ENV GOGS_CUSTOM /data/gogs
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
COPY docker /app/gogs/docker
COPY templates /app/gogs/templates
COPY public /app/gogs/public
WORKDIR /app/gogs/build
COPY . .
RUN ./docker/build-go.sh \
&& ./docker/build.sh \
&& ./docker/finalize.sh
# Configure Docker Container
VOLUME ["/data"]
EXPOSE 22 3000
ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,58 +0,0 @@
FROM armhf/alpine:3.5
ENV GOGS_CUSTOM /data/gogs
ENV QEMU_EXECVE 1
# For cross compile on dockerhub
################################
COPY ./docker/armhf/qemu-arm-static /usr/bin/
COPY ./docker/armhf/resin-xbuild /usr/bin/
RUN [ "/usr/bin/qemu-arm-static", "/bin/sh", "-c", "ln -s resin-xbuild /usr/bin/cross-build-start; ln -s resin-xbuild /usr/bin/cross-build-end; ln /bin/sh /bin/sh.real" ]
RUN [ "cross-build-start" ]
# Prepare the container
#######################
# Install system utils & Gogs runtime dependencies
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-armhf /usr/sbin/gosu
RUN chmod +x /usr/sbin/gosu \
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
&& apk --no-cache --no-progress add \
bash \
ca-certificates \
curl \
git \
linux-pam \
openssh \
s6 \
shadow \
socat \
tzdata
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
COPY docker /app/gogs/docker
COPY templates /app/gogs/templates
COPY public /app/gogs/public
WORKDIR /app/gogs/build
COPY . .
RUN ./docker/build-go.sh \
&& ./docker/build.sh \
&& ./docker/finalize.sh
# For cross compile on dockerhub
################################
RUN [ "cross-build-end" ]
# Configure Docker Container
############################
VOLUME ["/data"]
EXPOSE 22 3000
ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,83 +0,0 @@
LDFLAGS += -X "github.com/gogits/gogs/pkg/setting.BuildTime=$(shell date -u '+%Y-%m-%d %I:%M:%S %Z')"
LDFLAGS += -X "github.com/gogits/gogs/pkg/setting.BuildGitHash=$(shell git rev-parse HEAD)"
DATA_FILES := $(shell find conf | sed 's/ /\\ /g')
LESS_FILES := $(wildcard public/less/gogs.less public/less/_*.less)
GENERATED := pkg/bindata/bindata.go public/css/gogs.css
OS := $(shell uname)
TAGS = ""
BUILD_FLAGS = "-v"
RELEASE_ROOT = "release"
RELEASE_GOGS = "release/gogs"
NOW = $(shell date -u '+%Y%m%d%I%M%S')
GOVET = go tool vet -composites=false -methods=false -structtags=false
.PHONY: build pack release bindata clean
.IGNORE: public/css/gogs.css
all: build
check: test
dist: release
web: build
./gogs web
govet:
$(GOVET) gogs.go
$(GOVET) models pkg routes
build: $(GENERATED)
go install $(BUILD_FLAGS) -ldflags '$(LDFLAGS)' -tags '$(TAGS)'
cp '$(GOPATH)/bin/gogs' .
build-dev: $(GENERATED) govet
go install $(BUILD_FLAGS) -tags '$(TAGS)'
cp '$(GOPATH)/bin/gogs' .
build-dev-race: $(GENERATED) govet
go install $(BUILD_FLAGS) -race -tags '$(TAGS)'
cp '$(GOPATH)/bin/gogs' .
pack:
rm -rf $(RELEASE_GOGS)
mkdir -p $(RELEASE_GOGS)
cp -r gogs LICENSE README.md README_ZH.md templates public scripts $(RELEASE_GOGS)
rm -rf $(RELEASE_GOGS)/public/config.codekit $(RELEASE_GOGS)/public/less
cd $(RELEASE_ROOT) && zip -r gogs.$(NOW).zip "gogs"
release: build pack
bindata: pkg/bindata/bindata.go
pkg/bindata/bindata.go: $(DATA_FILES)
go-bindata -o=$@ -ignore="\\.DS_Store|README.md|TRANSLATORS" -pkg=bindata conf/...
less: public/css/gogs.css
public/css/gogs.css: $(LESS_FILES)
lessc $< $@
clean:
go clean -i ./...
clean-mac: clean
find . -name ".DS_Store" -print0 | xargs -0 rm
test:
go test -cover -race ./...
fixme:
grep -rnw "FIXME" cmd routers models pkg
todo:
grep -rnw "TODO" cmd routers models pkg
# Legacy code should be remove by the time of release
legacy:
grep -rnw "LEGACY" cmd routes models pkg

162
README.md
View File

@@ -1,138 +1,100 @@
Gogs [![Build Status](https://travis-ci.org/gogits/gogs.svg?branch=master)](https://travis-ci.org/gogits/gogs) [![Build status](https://ci.appveyor.com/api/projects/status/b9uu5ejl933e2wlt/branch/master?svg=true)](https://ci.appveyor.com/project/Unknwon/gogs/branch/master) [![Crowdin](https://d322cqt584bo4o.cloudfront.net/gogs/localized.svg)](https://crowdin.com/project/gogs) [![Discord](https://img.shields.io/discord/382595433060499458.svg)](https://discord.gg/9aqdHU7) ![gogs-brand](https://user-images.githubusercontent.com/2946214/146899259-6a8b58ad-8d6e-40d2-ab02-79dc6aadabbf.png)
=====================
![](https://github.com/gogits/gogs/blob/master/public/img/gogs-large-resize.png?raw=true) [![GitHub Workflow Status](https://img.shields.io/github/checks-status/gogs/gogs/main?logo=github&style=for-the-badge)](https://github.com/gogs/gogs/actions?query=branch%3Amain) [![Sourcegraph](https://img.shields.io/badge/view%20on-Sourcegraph-brightgreen.svg?style=for-the-badge&logo=sourcegraph)](https://sourcegraph.com/github.com/gogs/gogs)
##### Current tip version: [`.VERSION`](templates/.VERSION) (see [Releases](https://github.com/gogits/gogs/releases) for binary versions) 👉 Deploy on DigitalOcean and [get $200 in free credits](https://m.do.co/c/5aeb02268b55)!
| Web | UI | Preview | ## 🔮 Vision
|:-------------:|:-------:|:-------:|
|![Dashboard](https://gogs.io/img/screenshots/1.png)|![Repository](https://gogs.io/img/screenshots/2.png)|![Editor](https://gogs.io/img/screenshots/3.png)|
|![Profile](https://gogs.io/img/screenshots/4.png)|![Diff](https://gogs.io/img/screenshots/5.png)|![Repository Settings](https://gogs.io/img/screenshots/6.png?ts=20170322)|
|![Webhook](https://gogs.io/img/screenshots/7.png)|![Organization](https://gogs.io/img/screenshots/8.png)|![Admin Dashboard](https://gogs.io/img/screenshots/9.png)|
### Important Notes The Gogs (`/gɑgz/`) project aims to build a simple, stable and extensible self-hosted Git service that can be set up in the most painless way. With Go, this can be done with an independent binary distribution across all platforms that Go supports, including Linux, macOS, Windows and ARM-based systems.
1. **YOU MUST READ [Contributing Code](https://github.com/gogits/gogs/wiki/Contributing-Code) BEFORE STARTING TO WORK ON A PULL REQUEST**. ## 📡 Overview
2. Due to testing purpose, data of [try.gogs.io](https://try.gogs.io) was reset in **Jan 28, 2015** and will reset multiple times after. Please do **NOT** put your important data on the site.
3. The demo site [try.gogs.io](https://try.gogs.io) is running under `develop` branch.
4. If you think there are vulnerabilities in the project, please talk privately to **u@gogs.io**, and the name you want to be credited as. Thanks!
5. If you're interested in using APIs, we have experimental support with [documentation](https://github.com/gogits/go-gogs-client/wiki).
6. If your team/company is using Gogs and would like to put your logo on [our website](https://gogs.io), contact us by any means.
[简体中文](README_ZH.md) - Please visit [our home page](https://gogs.io) for user documentation.
- Please refer to [CHANGELOG.md](CHANGELOG.md) for list of changes in each releases.
## Purpose
The goal of this project is to make the easiest, fastest, and most painless way of setting up a self-hosted Git service. With Go, this can be done with an independent binary distribution across **ALL platforms** that Go supports, including Linux, Mac OS X, Windows and ARM.
## Overview
- Please see the [Documentation](https://gogs.io/docs/intro) for common usages and change log.
- Want to try it before doing anything else? Do it [online](https://try.gogs.io/gogs/gogs)! - Want to try it before doing anything else? Do it [online](https://try.gogs.io/gogs/gogs)!
- Having trouble? Get help with [Troubleshooting](https://gogs.io/docs/intro/troubleshooting.html) or [User Forum](https://discuss.gogs.io/). - Having trouble? Help yourself with [troubleshooting](https://gogs.io/asking/troubleshooting) or ask questions in [Discussions](https://github.com/gogs/gogs/discussions).
- Want to help with localization? Check out the [guide](https://gogs.io/docs/features/i18n.html)! - Want to help with localization? Check out the [localization documentation](https://gogs.io/advancing/localization).
- Ready to get hands dirty? Read our [contributing guide](.github/CONTRIBUTING.md).
- Hmm... What about APIs? We have experimental support with [documentation](https://gogs.io/api-reference).
## Features ## 💌 Features
- Activity timeline - User dashboard, user profile and activity timeline.
- SSH and HTTP/HTTPS protocols - Access repositories via SSH, HTTP and HTTPS protocols.
- SMTP/LDAP/Reverse proxy authentication - User, organization and repository management.
- Reverse proxy with sub-path - Repository and organization webhooks, including Slack, Discord and Dingtalk.
- Account/Organization/Repository management - Repository Git hooks, deploy keys and Git LFS.
- Add/Remove repository collaborators - Repository issues, pull requests, wiki, protected branches and collaboration.
- Repository/Organization webhooks (including Slack and Discord) - Migrate and mirror repositories with wiki from other code hosts.
- Repository Git hooks/deploy keys - Web editor for quick editing repository files and wiki.
- Repository issues, pull requests, wiki and protected branches - Jupyter Notebook and PDF rendering.
- Migrate and mirror repository and its wiki - Authentication via SMTP, LDAP, reverse proxy, GitHub.com and GitHub Enterprise with 2FA.
- Web editor for repository files and wiki - Customize HTML templates, static files and many others.
- Jupyter Notebook - Rich database backend support, including PostgreSQL, MySQL, SQLite3 or any database backend that speaks one of those protocols.
- Two-factor authentication - Have localization over [31 languages](https://crowdin.com/project/gogs).
- Gravatar and Federated avatar with custom source
- Mail service
- Administration panel
- Supports MySQL, PostgreSQL, SQLite3, MSSQL and [TiDB](https://github.com/pingcap/tidb) (via MySQL protocol)
- Multi-language support ([28 languages](https://crowdin.com/project/gogs))
## Hardware Requirements ## 💾 Hardware requirements
- A Raspberry Pi or $5 Digital Ocean Droplet is more than enough to get you started. Some even use 64MB RAM Docker [CaaS](https://blog.docker.com/2016/02/containers-as-a-service-caas/). - A Raspberry Pi or $5 Digital Ocean Droplet is more than enough to get you started. Some even use 64MB RAM Docker [CaaS](https://www.docker.com/blog/containers-as-a-service-caas/).
- 2 CPU cores and 512MB RAM would be the baseline for teamwork. - 2 CPU cores and 512MB RAM would be the baseline for teamwork.
- Increase CPU cores when your team size gets significantly larger, memory footprint remains low. - Increase CPU cores when your team size gets significantly larger, memory footprint remains low.
## Browser Support ## 💻 Browser support
- Please see [Semantic UI](https://github.com/Semantic-Org/Semantic-UI#browser-support) for specific versions of supported browsers. - Please see [Semantic UI](https://github.com/Semantic-Org/Semantic-UI#browser-support) for specific versions of supported browsers.
- The smallest resolution officially supported is **1024*768**, however the UI may still look right in smaller resolutions, but no promises or fixes. - The smallest resolution officially supported is **1024*768**, however the UI may still look right in smaller resolutions, but no promises or fixes.
## Installation ## 📜 Installation
Make sure you install the [prerequisites](https://gogs.io/docs/installation) first. Please follow [the guide in our documentation](https://gogs.io/getting-started/installation).
There are 5 ways to install Gogs: ### Deploy to cloud
- [Install from binary](https://gogs.io/docs/installation/install_from_binary.html) - [Cloudron](https://www.cloudron.io/store/io.gogs.cloudronapp.html)
- [Install from source](https://gogs.io/docs/installation/install_from_source.html) - [YunoHost](https://github.com/YunoHost-Apps/gogs_ynh)
- [Install from packages](https://gogs.io/docs/installation/install_from_packages.html) - [alwaysdata](https://www.alwaysdata.com/en/marketplace/gogs/)
- [Ship with Docker](https://github.com/gogits/gogs/tree/master/docker)
- [Install with Vagrant](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
### Tutorials ### Tutorials
- [Private Git Web Portal in Raspberry PI With Gogs](https://peppe8o.com/private-git-web-portal-in-raspberry-pi-with-gogs/)
- [How To Set Up Gogs on Ubuntu 14.04](https://www.digitalocean.com/community/tutorials/how-to-set-up-gogs-on-ubuntu-14-04) - [How To Set Up Gogs on Ubuntu 14.04](https://www.digitalocean.com/community/tutorials/how-to-set-up-gogs-on-ubuntu-14-04)
- [Run your own GitHub-like service with the help of Docker](http://blog.hypriot.com/post/run-your-own-github-like-service-with-docker/) - [Run your own GitHub-like service with the help of Docker](https://blog.hypriot.com/post/run-your-own-github-like-service-with-docker/)
- [Dockerized Gogs git server and alpine postgres in 20 minutes or less](http://garthwaite.org/docker-gogs.html) - [Dockerized Gogs git server and alpine postgres in 20 minutes or less](https://garthwaite.org/docker-gogs.html)
- [Host Your Own Private GitHub with Gogs](https://eladnava.com/host-your-own-private-github-with-gogs-io/) - [Host Your Own Private GitHub with Gogs](https://eladnava.com/host-your-own-private-github-with-gogs-io/)
- [使用 Gogs 搭建自己的 Git 服务器](https://mynook.info/blog/post/host-your-own-git-server-using-gogs) (Chinese) - [使用 Gogs 搭建自己的 Git 服务器](https://blog.mynook.info/post/host-your-own-git-server-using-gogs/) (Chinese)
- [阿里云上 Ubuntu 14.04 64 位安装 Gogs](http://my.oschina.net/luyao/blog/375654) (Chinese) - [阿里云上 Ubuntu 14.04 64 位安装 Gogs](https://my.oschina.net/luyao/blog/375654) (Chinese)
- [Installing Gogs on FreeBSD](https://www.codejam.info/2015/03/installing-gogs-on-freebsd.html) - [Installing Gogs on FreeBSD](https://www.codejam.info/2015/03/installing-gogs-on-freebsd.html)
- [Gogs on Raspberry Pi](http://blog.meinside.pe.kr/Gogs-on-Raspberry-Pi/)
- [Cloudflare Full SSL with Gogs using NGINX](http://www.listekconsulting.com/articles/cloudflare-full-ssl-with-gogs-go-git-service-using-nginx/)
### Screencasts
- [How to install Gogs on a Linux Server (DigitalOcean)](https://www.youtube.com/watch?v=deSfX0gqefE) - [How to install Gogs on a Linux Server (DigitalOcean)](https://www.youtube.com/watch?v=deSfX0gqefE)
- [Instalando Gogs no Ubuntu](https://www.youtube.com/watch?v=4UkHAR1F7ZA) (Português)
### Deploy to Cloud ## 📦 Software, service and product support
- [OpenShift](https://github.com/tkisme/gogs-openshift)
- [Cloudron](https://cloudron.io/appstore.html#io.gogs.cloudronapp)
- [Scaleway](https://www.scaleway.com/imagehub/gogs/)
- [Sandstorm](https://github.com/cem/gogs-sandstorm)
- [sloppy.io](https://github.com/sloppyio/quickstarters/tree/master/gogs)
- [YunoHost](https://github.com/YunoHost-Apps/gogs_ynh)
- [DPlatform](https://github.com/j8r/DPlatform)
## Software and Service Support
- [Drone](https://github.com/drone/drone) (CI)
- [Jenkins](https://wiki.jenkins-ci.org/display/JENKINS/Gogs+Webhook+Plugin) (CI)
- [Fabric8](http://fabric8.io/) (DevOps)
- [Taiga](https://taiga.io/) (Project Management)
- [Puppet](https://forge.puppetlabs.com/Siteminds/gogs) (IT)
- [Kanboard](http://kanboard.net/plugin/gogs-webhook) (Project Management)
- [BearyChat](https://bearychat.com/) (Team Communication)
- [HiWork](http://www.hiwork.cc/) (Team Communication)
- [GitPitch](https://gitpitch.com/) (Markdown Presentations)
### Product Support
- [Jenkins](https://plugins.jenkins.io/gogs-webhook/) (CI)
- [Puppet](https://forge.puppet.com/modules/Siteminds/gogs) (IT)
- [Synology](https://www.synology.com) (Docker) - [Synology](https://www.synology.com) (Docker)
- [One Space](http://www.onespace.cc) (App Store) - [Syncloud](https://syncloud.org/) (App Store)
## Acknowledgments ## 🙇‍♂️ Acknowledgments
- Thanks [Egon Elbre](https://twitter.com/egonelbre) for designing logo. <p>This project is proudly supported by:</p>
- Thanks [Crowdin](https://crowdin.com/project/gogs) for sponsoring open source translation plan. <p>
- Thanks [DigitalOcean](https://www.digitalocean.com) for sponsoring VPS service. <a href="https://m.do.co/c/5aeb02268b55">
- Thanks [KeyCDN](https://www.keycdn.com/) for sponsoring CDN service. <img src="https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg" width="201px">
</a>
</p>
## Contributors Other acknowledgments:
- See [contributors page](https://github.com/gogits/gogs/graphs/contributors) for top 100 contributors. - Thanks [Egon Elbre](https://twitter.com/egonelbre) for designing the original version of the logo.
- Thanks [Mintlify](https://mintlify.com) for sponsoring open source documentation plan.
- Thanks [Crowdin](https://crowdin.com) for sponsoring open source translation plan.
- Thanks [Buildkite](https://buildkite.com) for sponsoring open source CI/CD plan.
## 👋 Contributors
- See [contributors page](https://github.com/gogs/gogs/graphs/contributors) for top 100 contributors.
- See [TRANSLATORS](conf/locale/TRANSLATORS) for public list of translators. - See [TRANSLATORS](conf/locale/TRANSLATORS) for public list of translators.
## License ## ⚖️ License
This project is under the MIT License. See the [LICENSE](https://github.com/gogits/gogs/blob/master/LICENSE) file for the full license text. This project is under the MIT License. See the [LICENSE](https://github.com/gogs/gogs/blob/main/LICENSE) file for the full license text.

View File

@@ -1,107 +0,0 @@
Gogs [![Build Status](https://travis-ci.org/gogits/gogs.svg?branch=master)](https://travis-ci.org/gogits/gogs) [![Build status](https://ci.appveyor.com/api/projects/status/b9uu5ejl933e2wlt/branch/master?svg=true)](https://ci.appveyor.com/project/Unknwon/gogs/branch/master)
=====================
Gogs 是一款极易搭建的自助 Git 服务。
## 开发目的
Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 **所有平台**,包括 Linux、Mac OS X、Windows 以及 ARM 平台。
## 项目概览
- 有关基本用法和变更日志,请通过 [使用手册](https://gogs.io/docs/intro) 查看。
- 想要先睹为快?直接去 [在线体验](https://try.gogs.io/gogs/gogs) 。
- 使用过程中遇到问题?尝试从 [故障排查](https://gogs.io/docs/intro/troubleshooting.html) 页面或 [用户论坛](https://discuss.gogs.io/) 获取帮助。
- 希望帮助多国语言界面的翻译吗?请立即访问 [详情页面](https://gogs.io/docs/features/i18n.html)
## 功能特性
- 支持活动时间线
- 支持 SSH 以及 HTTP/HTTPS 协议
- 支持 SMTP、LDAP 和反向代理的用户认证
- 支持反向代理子路径
- 支持用户、组织和仓库管理系统
- 支持添加和删除仓库协作者
- 支持仓库和组织级别 Web 钩子(包括 Slack 和 Discord 集成)
- 支持仓库 Git 钩子和部署密钥
- 支持仓库工单Issue、合并请求Pull Request、Wiki 和保护分支
- 支持迁移和镜像仓库以及它的 Wiki
- 支持在线编辑仓库文件和 Wiki
- 支持自定义源的 Gravatar 和 Federated Avatar
- 支持 Jupyter Notebook
- 支持两步验证登录
- 支持邮件服务
- 支持后台管理面板
- 支持 MySQL、PostgreSQL、SQLite3、MSSQL 和 [TiDB](https://github.com/pingcap/tidb)(通过 MySQL 协议)数据库
- 支持多语言本地化([28 种语言]([more](https://crowdin.com/project/gogs))
## 硬件要求
- 最低的系统硬件要求为一个廉价的树莓派
- 如果用于团队项目管理,建议使用 2 核 CPU 及 512MB 内存
- 当团队成员大量增加时,可以考虑添加 CPU 核数,内存占用保持不变
## 浏览器支持
- 请根据 [Semantic UI](https://github.com/Semantic-Org/Semantic-UI#browser-support) 查看具体支持的浏览器版本。
- 官方支持的最小 UI 尺寸为 **1024*768**UI 不一定会在更小尺寸的设备上被破坏,但我们无法保证且不会修复。
## 安装部署
在安装 Gogs 之前,您需要先安装 [基本环境](https://gogs.io/docs/installation)。
然后,您可以通过以下 5 种方式来安装 Gogs
- [二进制安装](https://gogs.io/docs/installation/install_from_binary.html)
- [源码安装](https://gogs.io/docs/installation/install_from_source.html)
- [包管理安装](https://gogs.io/docs/installation/install_from_packages.html)
- [采用 Docker 部署](https://github.com/gogits/gogs/tree/master/docker)
- [通过 Vagrant 安装](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
### 使用教程
- [使用 Gogs 搭建自己的 Git 服务器](https://mynook.info/blog/post/host-your-own-git-server-using-gogs)
- [阿里云上 Ubuntu 14.04 64 位安装 Gogs](http://my.oschina.net/luyao/blog/375654)
### 云端部署
- [OpenShift](https://github.com/tkisme/gogs-openshift)
- [Cloudron](https://cloudron.io/appstore.html#io.gogs.cloudronapp)
- [Scaleway](https://www.scaleway.com/imagehub/gogs/)
- [Sandstorm](https://github.com/cem/gogs-sandstorm)
- [sloppy.io](https://github.com/sloppyio/quickstarters/tree/master/gogs)
- [YunoHost](https://github.com/mbugeia/gogs_ynh)
- [DPlatform](https://github.com/j8r/DPlatform)
## 软件及服务支持
- [Drone](https://github.com/drone/drone)CI
- [Jenkins](https://wiki.jenkins-ci.org/display/JENKINS/Gogs+Webhook+Plugin)CI
- [Fabric8](http://fabric8.io/)DevOps
- [Taiga](https://taiga.io/)(项目管理)
- [Puppet](https://forge.puppetlabs.com/Siteminds/gogs)IT
- [Kanboard](http://kanboard.net/plugin/gogs-webhook)(项目管理)
- [BearyChat](https://bearychat.com/)(团队交流)
- [HiWork](http://www.hiwork.cc/)(团队交流)
- [GitPitch](https://gitpitch.com/)Markdown 演示)
### 产品支持
- [Synology](https://www.synology.com)Docker
- [One Space](http://www.onespace.cc)(应用商店)
## 特别鸣谢
- 感谢 [Egon Elbre](https://twitter.com/egonelbre) 设计的 Logo。
- 感谢 [Crowdin](https://crowdin.com/project/gogs) 提供免费的开源项目本地化支持。
- 感谢 [DigitalOcean](https://www.digitalocean.com) 提供主站和体验站点的服务器赞助。
- 感谢 [KeyCDN](https://www.keycdn.com/) 提供 CDN 服务赞助。
## 贡献成员
- 您可以通过查看 [贡献者页面](https://github.com/gogits/gogs/graphs/contributors) 获取 TOP 100 的贡献者列表。
- 您可以通过查看 [TRANSLATORS](conf/locale/TRANSLATORS) 文件获取公开的翻译人员列表。
## 授权许可
本项目采用 MIT 开源授权许可证,完整的授权说明已放置在 [LICENSE](https://github.com/gogits/gogs/blob/master/LICENSE) 文件中。

27
SECURITY.md Normal file
View File

@@ -0,0 +1,27 @@
# Security policy
## Supported versions
Only the latest minor version releases are supported (e.g., 0.14) for patching vulnerabilities. You can find the latest minor version in the [GitHub releases](https://github.com/gogs/gogs/releases) page.
Existing vulnerability reports are being tracked in [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories). Not all accepted GHSA are published.
## Vulnerability lifecycle
> [!important]
> Starting **Nov 9, 2023 00:00 UTC**, only security vulnerabilities reported through [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories/new) are accepted.
> Pre-existing vulnerability reported through https://huntr.dev/ or email (`security@gogs.io`) will continue to be worked through.
1. Report an advisory for the vulnerability.
- Please be aware that **only advisories reported in plain English** will be reviewed.
- We DO NOT accept vulnerabilities cannot be reproduced on the latest `main` commit.
1. Project maintainers review the advisory:
- Ask clarifying questions
- Make sure there was no prior advisory exists for the same vulnerability
- Confirm or deny the vulnerability
1. Once the advisory is accepted, the reporter may submit a patch or wait for project maintainers to patch.
- The latter is usually significantly slower.
1. Patch releases will be made for the supported versions.
1. After 14 days of the release, publish the corresponding advisory on [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories).
Thank you for making open source community a better place!

99
Taskfile.yml Normal file
View File

@@ -0,0 +1,99 @@
version: '3'
vars:
BINARY_EXT:
sh: echo '{{if eq OS "windows"}}.exe{{end}}'
tasks:
default:
deps: [build]
web:
desc: Build the binary and start the web server
deps: [build]
cmds:
- .bin/gogs web
build:
desc: Build the binary
cmds:
- go build -v
-ldflags '
-X "{{.PKG_PATH}}.BuildTime={{.BUILD_TIME}}"
-X "{{.PKG_PATH}}.BuildCommit={{.BUILD_COMMIT}}"
'
-tags '{{.TAGS}}'
-trimpath -o .bin/gogs{{.BINARY_EXT}} ./cmd/gogs
vars:
PKG_PATH: gogs.io/gogs/internal/conf
BUILD_TIME:
sh: date -u '+%Y-%m-%d %I:%M:%S %Z'
BUILD_COMMIT:
sh: git rev-parse HEAD
sources:
- go.mod
- cmd/gogs/*.go
- internal/**/*.go
- conf/**/*
- public/**/*
- templates/**/*
- custom/**/*
method: timestamp
generate-schemadoc:
desc: Generate database schema documentation
cmds:
- go generate ./internal/database/schemadoc
generate:
desc: Run all go:generate commands
cmds:
- go generate ./...
test:
desc: Run all tests.
cmds:
- go test -cover -race ./...
clean:
desc: Cleans up system meta files
cmds:
- find . -name "*.DS_Store" -type f -delete
less:
desc: Generate CSS from LESS files
cmds:
- lessc --clean-css --source-map "public/less/gogs.less" public/css/gogs.min.css
fixme:
desc: Show all occurrences of "FIXME"
cmds:
- grep -rnw "FIXME" internal
todo:
desc: Show all occurrences of "TODO"
cmds:
- grep -rnw "TODO" internal
legacy:
desc: Identify legacy and deprecated lines
cmds:
- grep -rnw "\(LEGACY\|Deprecated\)" internal
drop-test-db:
desc: Drop the test database
cmds:
- |
for dbname in $(psql -Xc "copy (select datname from pg_database where datname like 'gogs-%') to stdout"); do
dropdb "$dbname"
echo "dropped $dbname"
done
lint:
desc: Run all linters
cmds:
- golangci-lint run
docs:
desc: Start docs server
cmds:
- cd docs && mint dev --port 3333

View File

@@ -1,20 +0,0 @@
version: "{build}"
skip_tags: true
clone_folder: c:\gopath\src\github.com\gogits\gogs
clone_depth: 1
environment:
GOPATH: c:\gopath
GOVERSION: 1.7
build: false
deploy: false
install:
- go build -v
notifications:
- provider: Email
to:
- u@gogs.io
on_build_success: false

View File

@@ -1,183 +0,0 @@
// Copyright 2016 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"fmt"
"reflect"
"runtime"
"github.com/urfave/cli"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/pkg/setting"
)
var (
Admin = cli.Command{
Name: "admin",
Usage: "Perform admin operations on command line",
Description: `Allow using internal logic of Gogs without hacking into the source code
to make automatic initialization process more smoothly`,
Subcommands: []cli.Command{
subcmdCreateUser,
subcmdDeleteInactivateUsers,
subcmdDeleteRepositoryArchives,
subcmdDeleteMissingRepositories,
subcmdGitGcRepos,
subcmdRewriteAuthorizedKeys,
subcmdSyncRepositoryHooks,
subcmdReinitMissingRepositories,
},
}
subcmdCreateUser = cli.Command{
Name: "create-user",
Usage: "Create a new user in database",
Action: runCreateUser,
Flags: []cli.Flag{
stringFlag("name", "", "Username"),
stringFlag("password", "", "User password"),
stringFlag("email", "", "User email address"),
boolFlag("admin", "User is an admin"),
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdDeleteInactivateUsers = cli.Command{
Name: "delete-inactive-users",
Usage: "Delete all inactive accounts",
Action: adminDashboardOperation(
models.DeleteInactivateUsers,
"All inactivate accounts have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdDeleteRepositoryArchives = cli.Command{
Name: "delete-repository-archives",
Usage: "Delete all repositories archives",
Action: adminDashboardOperation(
models.DeleteRepositoryArchives,
"All repositories archives have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdDeleteMissingRepositories = cli.Command{
Name: "delete-missing-repositories",
Usage: "Delete all repository records that lost Git files",
Action: adminDashboardOperation(
models.DeleteMissingRepositories,
"All repositories archives have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdGitGcRepos = cli.Command{
Name: "collect-garbage",
Usage: "Do garbage collection on repositories",
Action: adminDashboardOperation(
models.GitGcRepos,
"All repositories have done garbage collection successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdRewriteAuthorizedKeys = cli.Command{
Name: "rewrite-authorized-keys",
Usage: "Rewrite '.ssh/authorized_keys' file (caution: non-Gogs keys will be lost)",
Action: adminDashboardOperation(
models.RewriteAuthorizedKeys,
"All public keys have been rewritten successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdSyncRepositoryHooks = cli.Command{
Name: "resync-hooks",
Usage: "Resync pre-receive, update and post-receive hooks",
Action: adminDashboardOperation(
models.SyncRepositoryHooks,
"All repositories' pre-receive, update and post-receive hooks have been resynced successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
subcmdReinitMissingRepositories = cli.Command{
Name: "reinit-missing-repositories",
Usage: "Reinitialize all repository records that lost Git files",
Action: adminDashboardOperation(
models.ReinitMissingRepositories,
"All repository records that lost Git files have been reinitialized successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
)
func runCreateUser(c *cli.Context) error {
if !c.IsSet("name") {
return fmt.Errorf("Username is not specified")
} else if !c.IsSet("password") {
return fmt.Errorf("Password is not specified")
} else if !c.IsSet("email") {
return fmt.Errorf("Email is not specified")
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setting.NewContext()
models.LoadConfigs()
models.SetEngine()
if err := models.CreateUser(&models.User{
Name: c.String("name"),
Email: c.String("email"),
Passwd: c.String("password"),
IsActive: true,
IsAdmin: c.Bool("admin"),
}); err != nil {
return fmt.Errorf("CreateUser: %v", err)
}
fmt.Printf("New user '%s' has been successfully created!\n", c.String("name"))
return nil
}
func adminDashboardOperation(operation func() error, successMessage string) func(*cli.Context) error {
return func(c *cli.Context) error {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setting.NewContext()
models.LoadConfigs()
models.SetEngine()
if err := operation(); err != nil {
functionName := runtime.FuncForPC(reflect.ValueOf(operation).Pointer()).Name()
return fmt.Errorf("%s: %v", functionName, err)
}
fmt.Printf("%s\n", successMessage)
return nil
}
}

View File

@@ -1,136 +0,0 @@
// Copyright 2017 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"fmt"
"io/ioutil"
"os"
"path"
"time"
"github.com/Unknwon/cae/zip"
"github.com/Unknwon/com"
"github.com/urfave/cli"
log "gopkg.in/clog.v1"
"gopkg.in/ini.v1"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/pkg/setting"
)
var Backup = cli.Command{
Name: "backup",
Usage: "Backup files and database",
Description: `Backup dumps and compresses all related files and database into zip file,
which can be used for migrating Gogs to another server. The output format is meant to be
portable among all supported database engines.`,
Action: runBackup,
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
boolFlag("verbose, v", "Show process details"),
stringFlag("tempdir, t", os.TempDir(), "Temporary directory path"),
stringFlag("target", "./", "Target directory path to save backup archive"),
stringFlag("archive-name", fmt.Sprintf("gogs-backup-%s.zip", time.Now().Format("20060102150405")), "Name of backup archive"),
boolFlag("database-only", "Only dump database"),
boolFlag("exclude-repos", "Exclude repositories"),
},
}
const _ARCHIVE_ROOT_DIR = "gogs-backup"
func runBackup(c *cli.Context) error {
zip.Verbose = c.Bool("verbose")
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setting.NewContext()
models.LoadConfigs()
models.SetEngine()
tmpDir := c.String("tempdir")
if !com.IsExist(tmpDir) {
log.Fatal(0, "'--tempdir' does not exist: %s", tmpDir)
}
rootDir, err := ioutil.TempDir(tmpDir, "gogs-backup-")
if err != nil {
log.Fatal(0, "Fail to create backup root directory '%s': %v", rootDir, err)
}
log.Info("Backup root directory: %s", rootDir)
// Metadata
metaFile := path.Join(rootDir, "metadata.ini")
metadata := ini.Empty()
metadata.Section("").Key("VERSION").SetValue("1")
metadata.Section("").Key("DATE_TIME").SetValue(time.Now().String())
metadata.Section("").Key("GOGS_VERSION").SetValue(setting.AppVer)
if err = metadata.SaveTo(metaFile); err != nil {
log.Fatal(0, "Fail to save metadata '%s': %v", metaFile, err)
}
archiveName := path.Join(c.String("target"), c.String("archive-name"))
log.Info("Packing backup files to: %s", archiveName)
z, err := zip.Create(archiveName)
if err != nil {
log.Fatal(0, "Fail to create backup archive '%s': %v", archiveName, err)
}
if err = z.AddFile(_ARCHIVE_ROOT_DIR+"/metadata.ini", metaFile); err != nil {
log.Fatal(0, "Fail to include 'metadata.ini': %v", err)
}
// Database
dbDir := path.Join(rootDir, "db")
if err = models.DumpDatabase(dbDir); err != nil {
log.Fatal(0, "Fail to dump database: %v", err)
}
if err = z.AddDir(_ARCHIVE_ROOT_DIR+"/db", dbDir); err != nil {
log.Fatal(0, "Fail to include 'db': %v", err)
}
// Custom files
if !c.Bool("database-only") {
if err = z.AddDir(_ARCHIVE_ROOT_DIR+"/custom", setting.CustomPath); err != nil {
log.Fatal(0, "Fail to include 'custom': %v", err)
}
}
// Data files
if !c.Bool("database-only") {
for _, dir := range []string{"attachments", "avatars"} {
dirPath := path.Join(setting.AppDataPath, dir)
if !com.IsDir(dirPath) {
continue
}
if err = z.AddDir(path.Join(_ARCHIVE_ROOT_DIR+"/data", dir), dirPath); err != nil {
log.Fatal(0, "Fail to include 'data': %v", err)
}
}
}
// Repositories
if !c.Bool("exclude-repos") && !c.Bool("database-only") {
reposDump := path.Join(rootDir, "repositories.zip")
log.Info("Dumping repositories in '%s'", setting.RepoRootPath)
if err = zip.PackTo(setting.RepoRootPath, reposDump, true); err != nil {
log.Fatal(0, "Fail to dump repositories: %v", err)
}
log.Info("Repositories dumped to: %s", reposDump)
if err = z.AddFile(_ARCHIVE_ROOT_DIR+"/repositories.zip", reposDump); err != nil {
log.Fatal(0, "Fail to include 'repositories.zip': %v", err)
}
}
if err = z.Close(); err != nil {
log.Fatal(0, "Fail to save backup archive '%s': %v", archiveName, err)
}
os.RemoveAll(rootDir)
log.Info("Backup succeed! Archive is located at: %s", archiveName)
log.Shutdown()
return nil
}

View File

@@ -1,163 +0,0 @@
// +build cert
// Copyright 2009 The Go Authors. All rights reserved.
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"crypto/ecdsa"
"crypto/elliptic"
"crypto/rand"
"crypto/rsa"
"crypto/x509"
"crypto/x509/pkix"
"encoding/pem"
"log"
"math/big"
"net"
"os"
"strings"
"time"
"github.com/urfave/cli"
)
var Cert = cli.Command{
Name: "cert",
Usage: "Generate self-signed certificate",
Description: `Generate a self-signed X.509 certificate for a TLS server.
Outputs to 'cert.pem' and 'key.pem' and will overwrite existing files.`,
Action: runCert,
Flags: []cli.Flag{
stringFlag("host", "", "Comma-separated hostnames and IPs to generate a certificate for"),
stringFlag("ecdsa-curve", "", "ECDSA curve to use to generate a key. Valid values are P224, P256, P384, P521"),
intFlag("rsa-bits", 2048, "Size of RSA key to generate. Ignored if --ecdsa-curve is set"),
stringFlag("start-date", "", "Creation date formatted as Jan 1 15:04:05 2011"),
durationFlag("duration", 365*24*time.Hour, "Duration that certificate is valid for"),
boolFlag("ca", "whether this cert should be its own Certificate Authority"),
},
}
func publicKey(priv interface{}) interface{} {
switch k := priv.(type) {
case *rsa.PrivateKey:
return &k.PublicKey
case *ecdsa.PrivateKey:
return &k.PublicKey
default:
return nil
}
}
func pemBlockForKey(priv interface{}) *pem.Block {
switch k := priv.(type) {
case *rsa.PrivateKey:
return &pem.Block{Type: "RSA PRIVATE KEY", Bytes: x509.MarshalPKCS1PrivateKey(k)}
case *ecdsa.PrivateKey:
b, err := x509.MarshalECPrivateKey(k)
if err != nil {
log.Fatalf("Unable to marshal ECDSA private key: %v\n", err)
}
return &pem.Block{Type: "EC PRIVATE KEY", Bytes: b}
default:
return nil
}
}
func runCert(ctx *cli.Context) error {
if len(ctx.String("host")) == 0 {
log.Fatal("Missing required --host parameter")
}
var priv interface{}
var err error
switch ctx.String("ecdsa-curve") {
case "":
priv, err = rsa.GenerateKey(rand.Reader, ctx.Int("rsa-bits"))
case "P224":
priv, err = ecdsa.GenerateKey(elliptic.P224(), rand.Reader)
case "P256":
priv, err = ecdsa.GenerateKey(elliptic.P256(), rand.Reader)
case "P384":
priv, err = ecdsa.GenerateKey(elliptic.P384(), rand.Reader)
case "P521":
priv, err = ecdsa.GenerateKey(elliptic.P521(), rand.Reader)
default:
log.Fatalf("Unrecognized elliptic curve: %q", ctx.String("ecdsa-curve"))
}
if err != nil {
log.Fatalf("Failed to generate private key: %s", err)
}
var notBefore time.Time
if len(ctx.String("start-date")) == 0 {
notBefore = time.Now()
} else {
notBefore, err = time.Parse("Jan 2 15:04:05 2006", ctx.String("start-date"))
if err != nil {
log.Fatalf("Failed to parse creation date: %s", err)
}
}
notAfter := notBefore.Add(ctx.Duration("duration"))
serialNumberLimit := new(big.Int).Lsh(big.NewInt(1), 128)
serialNumber, err := rand.Int(rand.Reader, serialNumberLimit)
if err != nil {
log.Fatalf("Failed to generate serial number: %s", err)
}
template := x509.Certificate{
SerialNumber: serialNumber,
Subject: pkix.Name{
Organization: []string{"Acme Co"},
CommonName: "Gogs",
},
NotBefore: notBefore,
NotAfter: notAfter,
KeyUsage: x509.KeyUsageKeyEncipherment | x509.KeyUsageDigitalSignature,
ExtKeyUsage: []x509.ExtKeyUsage{x509.ExtKeyUsageServerAuth},
BasicConstraintsValid: true,
}
hosts := strings.Split(ctx.String("host"), ",")
for _, h := range hosts {
if ip := net.ParseIP(h); ip != nil {
template.IPAddresses = append(template.IPAddresses, ip)
} else {
template.DNSNames = append(template.DNSNames, h)
}
}
if ctx.Bool("ca") {
template.IsCA = true
template.KeyUsage |= x509.KeyUsageCertSign
}
derBytes, err := x509.CreateCertificate(rand.Reader, &template, &template, publicKey(priv), priv)
if err != nil {
log.Fatalf("Failed to create certificate: %s", err)
}
certOut, err := os.Create("cert.pem")
if err != nil {
log.Fatalf("Failed to open cert.pem for writing: %s", err)
}
pem.Encode(certOut, &pem.Block{Type: "CERTIFICATE", Bytes: derBytes})
certOut.Close()
log.Println("Written cert.pem")
keyOut, err := os.OpenFile("key.pem", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0600)
if err != nil {
log.Fatalf("Failed to open key.pem for writing: %v\n", err)
}
pem.Encode(keyOut, pemBlockForKey(priv))
keyOut.Close()
log.Println("Written key.pem")
return nil
}

View File

@@ -1,28 +0,0 @@
// +build !cert
// Copyright 2009 The Go Authors. All rights reserved.
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"fmt"
"os"
"github.com/urfave/cli"
)
var Cert = cli.Command{
Name: "cert",
Usage: "Generate self-signed certificate",
Description: `Please use build tags "cert" to rebuild Gogs in order to have this ability`,
Action: runCert,
}
func runCert(ctx *cli.Context) error {
fmt.Println("Command cert not available, please use build tags 'cert' to rebuild.")
os.Exit(1)
return nil
}

View File

@@ -1,42 +0,0 @@
// Copyright 2015 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"time"
"github.com/urfave/cli"
)
func stringFlag(name, value, usage string) cli.StringFlag {
return cli.StringFlag{
Name: name,
Value: value,
Usage: usage,
}
}
func boolFlag(name, usage string) cli.BoolFlag {
return cli.BoolFlag{
Name: name,
Usage: usage,
}
}
func intFlag(name string, value int, usage string) cli.IntFlag {
return cli.IntFlag{
Name: name,
Value: value,
Usage: usage,
}
}
func durationFlag(name string, value time.Duration, usage string) cli.DurationFlag {
return cli.DurationFlag{
Name: name,
Value: value,
Usage: usage,
}
}

189
cmd/gogs/admin.go Normal file
View File

@@ -0,0 +1,189 @@
package main
import (
"context"
"fmt"
"reflect"
"runtime"
"github.com/cockroachdb/errors"
"github.com/urfave/cli/v3"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/database"
)
var (
adminCommand = cli.Command{
Name: "admin",
Usage: "Perform admin operations on command line",
Description: `Allow using internal logic of Gogs without hacking into the source code
to make automatic initialization process more smoothly`,
Commands: []*cli.Command{
&subcmdCreateUser,
&subcmdDeleteInactivateUsers,
&subcmdDeleteRepositoryArchives,
&subcmdDeleteMissingRepositories,
&subcmdGitGcRepos,
&subcmdRewriteAuthorizedKeys,
&subcmdSyncRepositoryHooks,
&subcmdReinitMissingRepositories,
},
}
subcmdCreateUser = cli.Command{
Name: "create-user",
Usage: "Create a new user in database",
Action: runCreateUser,
Flags: []cli.Flag{
stringFlag("name", "", "Username"),
stringFlag("password", "", "User password"),
stringFlag("email", "", "User email address"),
boolFlag("admin", "User is an admin"),
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdDeleteInactivateUsers = cli.Command{
Name: "delete-inactive-users",
Usage: "Delete all inactive accounts",
Action: adminDashboardOperation(
func() error { return database.Handle.Users().DeleteInactivated() },
"All inactivated accounts have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdDeleteRepositoryArchives = cli.Command{
Name: "delete-repository-archives",
Usage: "Delete all repositories archives",
Action: adminDashboardOperation(
database.DeleteRepositoryArchives,
"All repositories archives have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdDeleteMissingRepositories = cli.Command{
Name: "delete-missing-repositories",
Usage: "Delete all repository records that lost Git files",
Action: adminDashboardOperation(
database.DeleteMissingRepositories,
"All repositories archives have been deleted successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdGitGcRepos = cli.Command{
Name: "collect-garbage",
Usage: "Do garbage collection on repositories",
Action: adminDashboardOperation(
database.GitGcRepos,
"All repositories have done garbage collection successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdRewriteAuthorizedKeys = cli.Command{
Name: "rewrite-authorized-keys",
Usage: "Rewrite '.ssh/authorized_keys' file (caution: non-Gogs keys will be lost)",
Action: adminDashboardOperation(
database.RewriteAuthorizedKeys,
"All public keys have been rewritten successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdSyncRepositoryHooks = cli.Command{
Name: "resync-hooks",
Usage: "Resync pre-receive, update and post-receive hooks",
Action: adminDashboardOperation(
database.SyncRepositoryHooks,
"All repositories' pre-receive, update and post-receive hooks have been resynced successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
subcmdReinitMissingRepositories = cli.Command{
Name: "reinit-missing-repositories",
Usage: "Reinitialize all repository records that lost Git files",
Action: adminDashboardOperation(
database.ReinitMissingRepositories,
"All repository records that lost Git files have been reinitialized successfully",
),
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
)
func runCreateUser(ctx context.Context, cmd *cli.Command) error {
if !cmd.IsSet("name") {
return errors.New("Username is not specified")
} else if !cmd.IsSet("password") {
return errors.New("Password is not specified")
} else if !cmd.IsSet("email") {
return errors.New("Email is not specified")
}
err := conf.Init(configFromLineage(cmd))
if err != nil {
return errors.Wrap(err, "init configuration")
}
conf.InitLogging(true)
if _, err = database.SetEngine(); err != nil {
return errors.Wrap(err, "set engine")
}
user, err := database.Handle.Users().Create(
ctx,
cmd.String("name"),
cmd.String("email"),
database.CreateUserOptions{
Password: cmd.String("password"),
Activated: true,
Admin: cmd.Bool("admin"),
},
)
if err != nil {
return errors.Wrap(err, "create user")
}
fmt.Printf("New user %q has been successfully created!\n", user.Name)
return nil
}
func adminDashboardOperation(operation func() error, successMessage string) func(context.Context, *cli.Command) error {
return func(_ context.Context, cmd *cli.Command) error {
err := conf.Init(configFromLineage(cmd))
if err != nil {
return errors.Wrap(err, "init configuration")
}
conf.InitLogging(true)
if _, err = database.SetEngine(); err != nil {
return errors.Wrap(err, "set engine")
}
if err := operation(); err != nil {
functionName := runtime.FuncForPC(reflect.ValueOf(operation).Pointer()).Name()
return errors.Newf("%s: %v", functionName, err)
}
fmt.Printf("%s\n", successMessage)
return nil
}
}

194
cmd/gogs/backup.go Normal file
View File

@@ -0,0 +1,194 @@
package main
import (
"context"
"fmt"
"os"
"path"
"path/filepath"
"strconv"
"time"
"github.com/cockroachdb/errors"
"github.com/unknwon/cae/zip"
"github.com/urfave/cli/v3"
"gopkg.in/ini.v1"
log "unknwon.dev/clog/v2"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/database"
"gogs.io/gogs/internal/osx"
)
var backupCommand = cli.Command{
Name: "backup",
Usage: "Backup files and database",
Description: `Backup dumps and compresses all related files and database into zip file,
which can be used for migrating Gogs to another server. The output format is meant to be
portable among all supported database engines.`,
Action: runBackup,
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
boolFlag("verbose, v", "Show process details"),
stringFlag("tempdir, t", os.TempDir(), "Temporary directory path"),
stringFlag("target", "./", "Target directory path to save backup archive"),
stringFlag("archive-name", fmt.Sprintf("gogs-backup-%s.zip", time.Now().Format("20060102150405")), "Name of backup archive"),
boolFlag("database-only", "Only dump database"),
boolFlag("exclude-mirror-repos", "Exclude mirror repositories"),
boolFlag("exclude-repos", "Exclude repositories"),
},
}
const (
currentBackupFormatVersion = 1
archiveRootDir = "gogs-backup"
)
func runBackup(ctx context.Context, cmd *cli.Command) error {
zip.Verbose = cmd.Bool("verbose")
err := conf.Init(configFromLineage(cmd))
if err != nil {
return errors.Wrap(err, "init configuration")
}
conf.InitLogging(true)
conn, err := database.SetEngine()
if err != nil {
return errors.Wrap(err, "set engine")
}
tmpDir := cmd.String("tempdir")
if !osx.Exist(tmpDir) {
log.Fatal("'--tempdir' does not exist: %s", tmpDir)
}
rootDir, err := os.MkdirTemp(tmpDir, "gogs-backup-")
if err != nil {
log.Fatal("Failed to create backup root directory '%s': %v", rootDir, err)
}
log.Info("Backup root directory: %s", rootDir)
// Metadata
metaFile := path.Join(rootDir, "metadata.ini")
metadata := ini.Empty()
metadata.Section("").Key("VERSION").SetValue(strconv.Itoa(currentBackupFormatVersion))
metadata.Section("").Key("DATE_TIME").SetValue(time.Now().String())
metadata.Section("").Key("GOGS_VERSION").SetValue(conf.App.Version)
if err = metadata.SaveTo(metaFile); err != nil {
log.Fatal("Failed to save metadata '%s': %v", metaFile, err)
}
archiveName := filepath.Join(cmd.String("target"), cmd.String("archive-name"))
log.Info("Packing backup files to: %s", archiveName)
z, err := zip.Create(archiveName)
if err != nil {
log.Fatal("Failed to create backup archive '%s': %v", archiveName, err)
}
if err = z.AddFile(archiveRootDir+"/metadata.ini", metaFile); err != nil {
log.Fatal("Failed to include 'metadata.ini': %v", err)
}
// Database
dbDir := filepath.Join(rootDir, "db")
if err = database.DumpDatabase(ctx, conn, dbDir, cmd.Bool("verbose")); err != nil {
log.Fatal("Failed to dump database: %v", err)
}
if err = z.AddDir(archiveRootDir+"/db", dbDir); err != nil {
log.Fatal("Failed to include 'db': %v", err)
}
if !cmd.Bool("database-only") {
// Custom files
err = addCustomDirToBackup(z)
if err != nil {
log.Fatal("Failed to add custom directory to backup: %v", err)
}
// Data files
for _, dir := range []string{"ssh", "attachments", "avatars", "repo-avatars"} {
dirPath := filepath.Join(conf.Server.AppDataPath, dir)
if !osx.IsDir(dirPath) {
continue
}
if err = z.AddDir(path.Join(archiveRootDir+"/data", dir), dirPath); err != nil {
log.Fatal("Failed to include 'data': %v", err)
}
}
}
// Repositories
if !cmd.Bool("exclude-repos") && !cmd.Bool("database-only") {
reposDump := filepath.Join(rootDir, "repositories.zip")
log.Info("Dumping repositories in %q", conf.Repository.Root)
if cmd.Bool("exclude-mirror-repos") {
repos, err := database.GetNonMirrorRepositories()
if err != nil {
log.Fatal("Failed to get non-mirror repositories: %v", err)
}
reposZip, err := zip.Create(reposDump)
if err != nil {
log.Fatal("Failed to create %q: %v", reposDump, err)
}
baseDir := filepath.Base(conf.Repository.Root)
for _, r := range repos {
name := r.FullName() + ".git"
if err := reposZip.AddDir(filepath.Join(baseDir, name), filepath.Join(conf.Repository.Root, name)); err != nil {
log.Fatal("Failed to add %q: %v", name, err)
}
}
if err = reposZip.Close(); err != nil {
log.Fatal("Failed to save %q: %v", reposDump, err)
}
} else {
if err = zip.PackTo(conf.Repository.Root, reposDump, true); err != nil {
log.Fatal("Failed to dump repositories: %v", err)
}
}
log.Info("Repositories dumped to: %s", reposDump)
if err = z.AddFile(archiveRootDir+"/repositories.zip", reposDump); err != nil {
log.Fatal("Failed to include %q: %v", reposDump, err)
}
}
if err = z.Close(); err != nil {
log.Fatal("Failed to save backup archive '%s': %v", archiveName, err)
}
_ = os.RemoveAll(rootDir)
log.Info("Backup succeed! Archive is located at: %s", archiveName)
log.Stop()
return nil
}
func addCustomDirToBackup(z *zip.ZipArchive) error {
customDir := conf.CustomDir()
entries, err := os.ReadDir(customDir)
if err != nil {
return errors.Wrap(err, "list custom directory entries")
}
for _, e := range entries {
if e.Name() == "data" {
// Skip the "data" directory because it lives under the "custom" directory in
// the Docker setup and will be backed up separately.
log.Trace(`Skipping "data" directory in custom directory`)
continue
}
add := z.AddFile
if e.IsDir() {
add = z.AddDir
}
err = add(
fmt.Sprintf("%s/custom/%s", archiveRootDir, e.Name()),
filepath.Join(customDir, e.Name()),
)
if err != nil {
return errors.Wrapf(err, "add %q", e.Name())
}
}
return nil
}

43
cmd/gogs/cmd.go Normal file
View File

@@ -0,0 +1,43 @@
package main
import (
"strings"
"github.com/urfave/cli/v3"
)
func stringFlag(name, value, usage string) *cli.StringFlag {
parts := strings.SplitN(name, ", ", 2)
f := &cli.StringFlag{
Name: parts[0],
Value: value,
Usage: usage,
}
if len(parts) > 1 {
f.Aliases = []string{parts[1]}
}
return f
}
// configFromLineage walks the command lineage to find the --config flag value.
// This is needed because subcommands may not directly see flags set on parent commands.
func configFromLineage(cmd *cli.Command) string {
for _, c := range cmd.Lineage() {
if c.IsSet("config") {
return c.String("config")
}
}
return ""
}
func boolFlag(name, usage string) *cli.BoolFlag {
parts := strings.SplitN(name, ", ", 2)
f := &cli.BoolFlag{
Name: parts[0],
Usage: usage,
}
if len(parts) > 1 {
f.Aliases = []string{parts[1]}
}
return f
}

273
cmd/gogs/hook.go Normal file
View File

@@ -0,0 +1,273 @@
package main
import (
"bufio"
"bytes"
"context"
"crypto/tls"
"fmt"
"net/url"
"os"
"os/exec"
"path/filepath"
"strconv"
"strings"
"github.com/urfave/cli/v3"
log "unknwon.dev/clog/v2"
"github.com/gogs/git-module"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/database"
"gogs.io/gogs/internal/email"
"gogs.io/gogs/internal/httplib"
"gogs.io/gogs/internal/osx"
)
var (
hookCommand = cli.Command{
Name: "hook",
Usage: "Delegate commands to corresponding Git hooks",
Description: "All sub-commands should only be called by Git",
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
Commands: []*cli.Command{
&subcmdHookPreReceive,
&subcmdHookUpadte,
&subcmdHookPostReceive,
},
}
subcmdHookPreReceive = cli.Command{
Name: "pre-receive",
Usage: "Delegate pre-receive Git hook",
Description: "This command should only be called by Git",
Action: runHookPreReceive,
}
subcmdHookUpadte = cli.Command{
Name: "update",
Usage: "Delegate update Git hook",
Description: "This command should only be called by Git",
Action: runHookUpdate,
}
subcmdHookPostReceive = cli.Command{
Name: "post-receive",
Usage: "Delegate post-receive Git hook",
Description: "This command should only be called by Git",
Action: runHookPostReceive,
}
)
func runHookPreReceive(_ context.Context, cmd *cli.Command) error {
if os.Getenv("SSH_ORIGINAL_COMMAND") == "" {
return nil
}
setup(cmd, "pre-receive.log", true)
isWiki := strings.Contains(os.Getenv(database.EnvRepoCustomHooksPath), ".wiki.git/")
buf := bytes.NewBuffer(nil)
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
buf.Write(scanner.Bytes())
buf.WriteByte('\n')
if isWiki {
continue
}
fields := bytes.Fields(scanner.Bytes())
if len(fields) != 3 {
continue
}
oldCommitID := string(fields[0])
newCommitID := string(fields[1])
branchName := git.RefShortName(string(fields[2]))
// Branch protection
repoID, _ := strconv.ParseInt(os.Getenv(database.EnvRepoID), 10, 64)
protectBranch, err := database.GetProtectBranchOfRepoByName(repoID, branchName)
if err != nil {
if database.IsErrBranchNotExist(err) {
continue
}
fail("Internal error", "GetProtectBranchOfRepoByName [repo_id: %d, branch: %s]: %v", repoID, branchName, err)
}
if !protectBranch.Protected {
continue
}
// Whitelist users can bypass require pull request check
bypassRequirePullRequest := false
// Check if user is in whitelist when enabled
userID, _ := strconv.ParseInt(os.Getenv(database.EnvAuthUserID), 10, 64)
if protectBranch.EnableWhitelist {
if !database.IsUserInProtectBranchWhitelist(repoID, userID, branchName) {
fail(fmt.Sprintf("Branch '%s' is protected and you are not in the push whitelist", branchName), "")
}
bypassRequirePullRequest = true
}
// Check if branch allows direct push
if !bypassRequirePullRequest && protectBranch.RequirePullRequest {
fail(fmt.Sprintf("Branch '%s' is protected and commits must be merged through pull request", branchName), "")
}
// check and deletion
if newCommitID == git.EmptyID {
fail(fmt.Sprintf("Branch '%s' is protected from deletion", branchName), "")
}
// Check force push
output, err := git.NewCommand("rev-list", "--max-count=1", oldCommitID, "^"+newCommitID).
RunInDir(database.RepoPath(os.Getenv(database.EnvRepoOwnerName), os.Getenv(database.EnvRepoName)))
if err != nil {
fail("Internal error", "Failed to detect force push: %v", err)
} else if len(output) > 0 {
fail(fmt.Sprintf("Branch '%s' is protected from force push", branchName), "")
}
}
customHooksPath := filepath.Join(os.Getenv(database.EnvRepoCustomHooksPath), "pre-receive")
if !osx.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if conf.IsWindowsRuntime() {
hookCmd = exec.Command("bash.exe", "custom_hooks/pre-receive")
} else {
hookCmd = exec.Command(customHooksPath)
}
hookCmd.Dir = database.RepoPath(os.Getenv(database.EnvRepoOwnerName), os.Getenv(database.EnvRepoName))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = buf
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Failed to execute custom pre-receive hook: %v", err)
}
return nil
}
func runHookUpdate(_ context.Context, cmd *cli.Command) error {
if os.Getenv("SSH_ORIGINAL_COMMAND") == "" {
return nil
}
setup(cmd, "update.log", false)
args := cmd.Args().Slice()
if len(args) != 3 {
fail("Arguments received are not equal to three", "Arguments received are not equal to three")
} else if args[0] == "" {
fail("First argument 'refName' is empty", "First argument 'refName' is empty")
}
customHooksPath := filepath.Join(os.Getenv(database.EnvRepoCustomHooksPath), "update")
if !osx.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if conf.IsWindowsRuntime() {
hookCmd = exec.Command("bash.exe", append([]string{"custom_hooks/update"}, args...)...)
} else {
hookCmd = exec.Command(customHooksPath, args...)
}
hookCmd.Dir = database.RepoPath(os.Getenv(database.EnvRepoOwnerName), os.Getenv(database.EnvRepoName))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = os.Stdin
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Failed to execute custom pre-receive hook: %v", err)
}
return nil
}
func runHookPostReceive(_ context.Context, cmd *cli.Command) error {
if os.Getenv("SSH_ORIGINAL_COMMAND") == "" {
return nil
}
setup(cmd, "post-receive.log", true)
// Post-receive hook does more than just gather Git information,
// so we need to setup additional services for email notifications.
email.NewContext()
isWiki := strings.Contains(os.Getenv(database.EnvRepoCustomHooksPath), ".wiki.git/")
buf := bytes.NewBuffer(nil)
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
buf.Write(scanner.Bytes())
buf.WriteByte('\n')
// TODO: support news feeds for wiki
if isWiki {
continue
}
fields := bytes.Fields(scanner.Bytes())
if len(fields) != 3 {
continue
}
pusherID, _ := strconv.ParseInt(os.Getenv(database.EnvAuthUserID), 10, 64)
options := database.PushUpdateOptions{
OldCommitID: string(fields[0]),
NewCommitID: string(fields[1]),
FullRefspec: string(fields[2]),
PusherID: pusherID,
PusherName: os.Getenv(database.EnvAuthUserName),
RepoUserName: os.Getenv(database.EnvRepoOwnerName),
RepoName: os.Getenv(database.EnvRepoName),
}
if err := database.PushUpdate(options); err != nil {
log.Error("PushUpdate: %v", err)
}
// Ask for running deliver hook and test pull request tasks
q := make(url.Values)
q.Add("branch", git.RefShortName(options.FullRefspec))
q.Add("secret", os.Getenv(database.EnvRepoOwnerSaltMd5))
q.Add("pusher", os.Getenv(database.EnvAuthUserID))
reqURL := fmt.Sprintf("%s%s/%s/tasks/trigger?%s", conf.Server.LocalRootURL, options.RepoUserName, options.RepoName, q.Encode())
log.Trace("Trigger task: %s", reqURL)
resp, err := httplib.Get(reqURL).
SetTLSClientConfig(&tls.Config{
InsecureSkipVerify: true,
}).Response()
if err == nil {
_ = resp.Body.Close()
if resp.StatusCode/100 != 2 {
log.Error("Failed to trigger task: unsuccessful response code %d", resp.StatusCode)
}
} else {
log.Error("Failed to trigger task: %v", err)
}
}
customHooksPath := filepath.Join(os.Getenv(database.EnvRepoCustomHooksPath), "post-receive")
if !osx.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if conf.IsWindowsRuntime() {
hookCmd = exec.Command("bash.exe", "custom_hooks/post-receive")
} else {
hookCmd = exec.Command(customHooksPath)
}
hookCmd.Dir = database.RepoPath(os.Getenv(database.EnvRepoOwnerName), os.Getenv(database.EnvRepoName))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = buf
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Failed to execute custom post-receive hook: %v", err)
}
return nil
}

108
cmd/gogs/import.go Normal file
View File

@@ -0,0 +1,108 @@
package main
import (
"bufio"
"bytes"
"context"
"fmt"
"os"
"path/filepath"
"time"
"github.com/cockroachdb/errors"
"github.com/urfave/cli/v3"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/osx"
)
var (
importCommand = cli.Command{
Name: "import",
Usage: "Import portable data as local Gogs data",
Description: `Allow user import data from other Gogs installations to local instance
without manually hacking the data files`,
Commands: []*cli.Command{
&subcmdImportLocale,
},
}
subcmdImportLocale = cli.Command{
Name: "locale",
Usage: "Import locale files to local repository",
Action: runImportLocale,
Flags: []cli.Flag{
stringFlag("source", "", "Source directory that stores new locale files"),
stringFlag("target", "", "Target directory that stores old locale files"),
stringFlag("config, c", "", "Custom configuration file path"),
},
}
)
func runImportLocale(_ context.Context, cmd *cli.Command) error {
if !cmd.IsSet("source") {
return errors.New("source directory is not specified")
} else if !cmd.IsSet("target") {
return errors.New("target directory is not specified")
}
if !osx.IsDir(cmd.String("source")) {
return errors.Newf("source directory %q does not exist or is not a directory", cmd.String("source"))
} else if !osx.IsDir(cmd.String("target")) {
return errors.Newf("target directory %q does not exist or is not a directory", cmd.String("target"))
}
err := conf.Init(configFromLineage(cmd))
if err != nil {
return errors.Wrap(err, "init configuration")
}
now := time.Now()
var line []byte
badChars := []byte(`="`)
escapedQuotes := []byte(`\"`)
regularQuotes := []byte(`"`)
// Cut out en-US.
for _, lang := range conf.I18n.Langs[1:] {
name := fmt.Sprintf("locale_%s.ini", lang)
source := filepath.Join(cmd.String("source"), name)
target := filepath.Join(cmd.String("target"), name)
if !osx.IsFile(source) {
continue
}
// Crowdin surrounds double quotes for strings contain quotes inside,
// this breaks INI parser, we need to fix that.
sr, err := os.Open(source)
if err != nil {
return errors.Newf("open: %v", err)
}
tw, err := os.Create(target)
if err != nil {
return errors.Newf("create: %v", err)
}
scanner := bufio.NewScanner(sr)
for scanner.Scan() {
line = scanner.Bytes()
idx := bytes.Index(line, badChars)
if idx > -1 && line[len(line)-1] == '"' {
// We still want the "=" sign
line = append(line[:idx+1], line[idx+2:len(line)-1]...)
line = bytes.ReplaceAll(line, escapedQuotes, regularQuotes)
}
_, _ = tw.Write(line)
_, _ = tw.WriteString("\n")
}
_ = sr.Close()
_ = tw.Close()
// Modification time of files from Crowdin often ahead of current,
// so we need to set back to current.
_ = os.Chtimes(target, now, now)
}
fmt.Println("Locale files has been successfully imported!")
return nil
}

36
cmd/gogs/main.go Normal file
View File

@@ -0,0 +1,36 @@
// Gogs is a painless self-hosted Git Service.
package main
import (
"context"
"os"
"github.com/urfave/cli/v3"
log "unknwon.dev/clog/v2"
"gogs.io/gogs/internal/conf"
)
func init() {
conf.App.Version = "0.15.0+dev"
}
func main() {
cmd := &cli.Command{
Name: "Gogs",
Usage: "A painless self-hosted Git service",
Version: conf.App.Version,
Commands: []*cli.Command{
&webCommand,
&servCommand,
&hookCommand,
&adminCommand,
&importCommand,
&backupCommand,
&restoreCommand,
},
}
if err := cmd.Run(context.Background(), os.Args); err != nil {
log.Fatal("Failed to start application: %v", err)
}
}

161
cmd/gogs/restore.go Normal file
View File

@@ -0,0 +1,161 @@
package main
import (
"context"
"os"
"path"
"path/filepath"
"github.com/cockroachdb/errors"
"github.com/unknwon/cae/zip"
"github.com/urfave/cli/v3"
"gopkg.in/ini.v1"
log "unknwon.dev/clog/v2"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/database"
"gogs.io/gogs/internal/osx"
"gogs.io/gogs/internal/semverx"
)
var restoreCommand = cli.Command{
Name: "restore",
Usage: "Restore files and database from backup",
Description: `Restore imports all related files and database from a backup archive.
The backup version must lower or equal to current Gogs version. You can also import
backup from other database engines, which is useful for database migrating.
If corresponding files or database tables are not presented in the archive, they will
be skipped and remain unchanged.`,
Action: runRestore,
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
boolFlag("verbose, v", "Show process details"),
stringFlag("tempdir, t", os.TempDir(), "Temporary directory path"),
stringFlag("from", "", "Path to backup archive"),
boolFlag("database-only", "Only import database"),
boolFlag("exclude-repos", "Exclude repositories"),
},
}
// lastSupportedVersionOfFormat returns the last supported version of the backup archive
// format that is able to import.
var lastSupportedVersionOfFormat = map[int]string{}
func runRestore(ctx context.Context, cmd *cli.Command) error {
zip.Verbose = cmd.Bool("verbose")
tmpDir := cmd.String("tempdir")
if !osx.IsDir(tmpDir) {
log.Fatal("'--tempdir' does not exist: %s", tmpDir)
}
archivePath := path.Join(tmpDir, archiveRootDir)
// Make sure there was no leftover and also clean up afterwards
err := os.RemoveAll(archivePath)
if err != nil {
log.Fatal("Failed to clean up previous leftover in %q: %v", archivePath, err)
}
defer func() { _ = os.RemoveAll(archivePath) }()
log.Info("Restoring backup from: %s", cmd.String("from"))
err = zip.ExtractTo(cmd.String("from"), tmpDir)
if err != nil {
log.Fatal("Failed to extract backup archive: %v", err)
}
// Check backup version
metaFile := filepath.Join(archivePath, "metadata.ini")
if !osx.IsFile(metaFile) {
log.Fatal("File 'metadata.ini' is missing")
}
metadata, err := ini.Load(metaFile)
if err != nil {
log.Fatal("Failed to load metadata '%s': %v", metaFile, err)
}
backupVersion := metadata.Section("").Key("GOGS_VERSION").MustString("999.0")
if semverx.Compare(conf.App.Version, "<", backupVersion) {
log.Fatal("Current Gogs version is lower than backup version: %s < %s", conf.App.Version, backupVersion)
}
formatVersion := metadata.Section("").Key("VERSION").MustInt()
if formatVersion == 0 {
log.Fatal("Failed to determine the backup format version from metadata '%s': %s", metaFile, "VERSION is not presented")
}
if formatVersion != currentBackupFormatVersion {
log.Fatal("Backup format version found is %d but this binary only supports %d\nThe last known version that is able to import your backup is %s",
formatVersion, currentBackupFormatVersion, lastSupportedVersionOfFormat[formatVersion])
}
// If config file is not present in backup, user must set this file via flag.
// Otherwise, it's optional to set config file flag.
configFile := filepath.Join(archivePath, "custom", "conf", "app.ini")
var customConf string
if lineageConf := configFromLineage(cmd); lineageConf != "" {
customConf = lineageConf
} else if !osx.IsFile(configFile) {
log.Fatal("'--config' is not specified and custom config file is not found in backup")
} else {
customConf = configFile
}
err = conf.Init(customConf)
if err != nil {
return errors.Wrap(err, "init configuration")
}
conf.InitLogging(true)
conn, err := database.SetEngine()
if err != nil {
return errors.Wrap(err, "set engine")
}
// Database
dbDir := path.Join(archivePath, "db")
if err = database.ImportDatabase(ctx, conn, dbDir, cmd.Bool("verbose")); err != nil {
log.Fatal("Failed to import database: %v", err)
}
if !cmd.Bool("database-only") {
// Custom files
if osx.IsDir(conf.CustomDir()) {
if err = os.Rename(conf.CustomDir(), conf.CustomDir()+".bak"); err != nil {
log.Fatal("Failed to backup current 'custom': %v", err)
}
}
if err = os.Rename(filepath.Join(archivePath, "custom"), conf.CustomDir()); err != nil {
log.Fatal("Failed to import 'custom': %v", err)
}
// Data files
_ = os.MkdirAll(conf.Server.AppDataPath, os.ModePerm)
for _, dir := range []string{"attachments", "avatars", "repo-avatars"} {
// Skip if backup archive does not have corresponding data
srcPath := filepath.Join(archivePath, "data", dir)
if !osx.IsDir(srcPath) {
continue
}
dirPath := filepath.Join(conf.Server.AppDataPath, dir)
if osx.IsDir(dirPath) {
if err = os.Rename(dirPath, dirPath+".bak"); err != nil {
log.Fatal("Failed to backup current 'data': %v", err)
}
}
if err = os.Rename(srcPath, dirPath); err != nil {
log.Fatal("Failed to import 'data': %v", err)
}
}
}
// Repositories
reposPath := filepath.Join(archivePath, "repositories.zip")
if !cmd.Bool("exclude-repos") && !cmd.Bool("database-only") && osx.IsFile(reposPath) {
if err := zip.ExtractTo(reposPath, filepath.Dir(conf.Repository.Root)); err != nil {
log.Fatal("Failed to extract 'repositories.zip': %v", err)
}
}
log.Info("Restore succeed!")
log.Stop()
return nil
}

274
cmd/gogs/serv.go Normal file
View File

@@ -0,0 +1,274 @@
package main
import (
"context"
"fmt"
"os"
"os/exec"
"path/filepath"
"strconv"
"strings"
"time"
"github.com/urfave/cli/v3"
log "unknwon.dev/clog/v2"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/database"
)
const (
accessDeniedMessage = "Repository does not exist or you do not have access"
)
var servCommand = cli.Command{
Name: "serv",
Usage: "This command should only be called by SSH shell",
Description: `Serv provide access auth for repositories`,
Action: runServ,
Flags: []cli.Flag{
stringFlag("config, c", "", "Custom configuration file path"),
},
}
// fail prints user message to the Git client (i.e. os.Stderr) and
// logs error message on the server side. When not in "prod" mode,
// error message is also printed to the client for easier debugging.
func fail(userMessage, errMessage string, args ...any) {
_, _ = fmt.Fprintln(os.Stderr, "Gogs:", userMessage)
if len(errMessage) > 0 {
if !conf.IsProdMode() {
fmt.Fprintf(os.Stderr, errMessage+"\n", args...)
}
log.Error(errMessage, args...)
}
log.Stop()
os.Exit(1)
}
func setup(cmd *cli.Command, logFile string, connectDB bool) {
conf.HookMode = true
customConf := configFromLineage(cmd)
err := conf.Init(customConf)
if err != nil {
fail("Internal error", "Failed to init configuration: %v", err)
}
conf.InitLogging(true)
level := log.LevelTrace
if conf.IsProdMode() {
level = log.LevelError
}
err = log.NewFile(log.FileConfig{
Level: level,
Filename: filepath.Join(conf.Log.RootPath, "hooks", logFile),
FileRotationConfig: log.FileRotationConfig{
Rotate: true,
Daily: true,
MaxDays: 3,
},
})
if err != nil {
fail("Internal error", "Failed to init file logger: %v", err)
}
log.Remove(log.DefaultConsoleName) // Remove the primary logger
if !connectDB {
return
}
if conf.UseSQLite3 {
_ = os.Chdir(conf.WorkDir())
}
if _, err := database.SetEngine(); err != nil {
fail("Internal error", "Failed to set database engine: %v", err)
}
}
func parseSSHCmd(cmd string) (string, string) {
ss := strings.SplitN(cmd, " ", 2)
if len(ss) != 2 {
return "", ""
}
return ss[0], strings.Replace(ss[1], "'/", "'", 1)
}
func checkDeployKey(key *database.PublicKey, repo *database.Repository) {
// Check if this deploy key belongs to current repository.
if !database.HasDeployKey(key.ID, repo.ID) {
fail("Key access denied", "Deploy key access denied: [key_id: %d, repo_id: %d]", key.ID, repo.ID)
}
// Update deploy key activity.
deployKey, err := database.GetDeployKeyByRepo(key.ID, repo.ID)
if err != nil {
fail("Internal error", "GetDeployKey: %v", err)
}
deployKey.Updated = time.Now()
if err = database.UpdateDeployKey(deployKey); err != nil {
fail("Internal error", "UpdateDeployKey: %v", err)
}
}
var allowedCommands = map[string]database.AccessMode{
"git-upload-pack": database.AccessModeRead,
"git-upload-archive": database.AccessModeRead,
"git-receive-pack": database.AccessModeWrite,
}
func runServ(ctx context.Context, cmd *cli.Command) error {
setup(cmd, "serv.log", true)
if conf.SSH.Disabled {
println("Gogs: SSH has been disabled")
return nil
}
if cmd.Args().Len() < 1 {
fail("Not enough arguments", "Not enough arguments")
}
sshCmd := os.Getenv("SSH_ORIGINAL_COMMAND")
if sshCmd == "" {
println("Hi there, You've successfully authenticated, but Gogs does not provide shell access.")
println("If this is unexpected, please log in with password and setup Gogs under another user.")
return nil
}
verb, args := parseSSHCmd(sshCmd)
repoFullName := strings.ToLower(strings.Trim(args, "'"))
repoFields := strings.SplitN(repoFullName, "/", 2)
if len(repoFields) != 2 {
fail("Invalid repository path", "Invalid repository path: %v", args)
}
ownerName := strings.ToLower(repoFields[0])
repoName := strings.TrimSuffix(strings.ToLower(repoFields[1]), ".git")
repoName = strings.TrimSuffix(repoName, ".wiki")
owner, err := database.Handle.Users().GetByUsername(ctx, ownerName)
if err != nil {
if database.IsErrUserNotExist(err) {
fail("Repository owner does not exist", "Unregistered owner: %s", ownerName)
}
fail("Internal error", "Failed to get repository owner '%s': %v", ownerName, err)
}
repo, err := database.GetRepositoryByName(owner.ID, repoName)
if err != nil {
if database.IsErrRepoNotExist(err) {
fail(accessDeniedMessage, "Repository does not exist: %s/%s", owner.Name, repoName)
}
fail("Internal error", "Failed to get repository: %v", err)
}
repo.Owner = owner
requestMode, ok := allowedCommands[verb]
if !ok {
fail("Unknown git command", "Unknown git command '%s'", verb)
}
// Prohibit push to mirror repositories.
if requestMode > database.AccessModeRead && repo.IsMirror {
fail("Mirror repository is read-only", "")
}
// Allow anonymous (user is nil) clone for public repositories.
var user *database.User
keyID, _ := strconv.ParseInt(strings.TrimPrefix(cmd.Args().Get(0), "key-"), 10, 64)
key, err := database.GetPublicKeyByID(keyID)
if err != nil {
fail("Invalid key ID", "Invalid key ID '%s': %v", cmd.Args().Get(0), err)
}
if requestMode == database.AccessModeWrite || repo.IsPrivate {
// Check deploy key or user key.
if key.IsDeployKey() {
if key.Mode < requestMode {
fail("Key permission denied", "Cannot push with deployment key: %d", key.ID)
}
checkDeployKey(key, repo)
} else {
user, err = database.Handle.Users().GetByKeyID(ctx, key.ID)
if err != nil {
fail("Internal error", "Failed to get user by key ID '%d': %v", key.ID, err)
}
mode := database.Handle.Permissions().AccessMode(ctx, user.ID, repo.ID,
database.AccessModeOptions{
OwnerID: repo.OwnerID,
Private: repo.IsPrivate,
},
)
if mode < requestMode {
clientMessage := accessDeniedMessage
if mode >= database.AccessModeRead {
clientMessage = "You do not have sufficient authorization for this action"
}
fail(clientMessage,
"User '%s' does not have level '%v' access to repository '%s'",
user.Name, requestMode, repoFullName)
}
}
} else {
// Check if the key can access to the repository in case of it is a deploy key (a deploy keys != user key).
// A deploy key doesn't represent a signed in user, so in a site with Auth.RequireSignInView enabled,
// we should give read access only in repositories where this deploy key is in use. In other cases,
// a server or system using an active deploy key can get read access to all repositories on a Gogs instance.
if key.IsDeployKey() && conf.Auth.RequireSigninView {
checkDeployKey(key, repo)
}
}
// Update user key activity.
if key.ID > 0 {
key, err := database.GetPublicKeyByID(key.ID)
if err != nil {
fail("Internal error", "GetPublicKeyByID: %v", err)
}
key.Updated = time.Now()
if err = database.UpdatePublicKey(key); err != nil {
fail("Internal error", "UpdatePublicKey: %v", err)
}
}
// Special handle for Windows.
if conf.IsWindowsRuntime() {
verb = strings.Replace(verb, "-", " ", 1)
}
var gitCmd *exec.Cmd
verbs := strings.Split(verb, " ")
if len(verbs) == 2 {
gitCmd = exec.Command(verbs[0], verbs[1], repoFullName)
} else {
gitCmd = exec.Command(verb, repoFullName)
}
if requestMode == database.AccessModeWrite {
gitCmd.Env = append(os.Environ(), database.ComposeHookEnvs(database.ComposeHookEnvsOptions{
AuthUser: user,
OwnerName: owner.Name,
OwnerSalt: owner.Salt,
RepoID: repo.ID,
RepoName: repo.Name,
RepoPath: repo.RepoPath(),
})...)
}
gitCmd.Dir = conf.Repository.Root
gitCmd.Stdout = os.Stdout
gitCmd.Stdin = os.Stdin
gitCmd.Stderr = os.Stderr
if err = gitCmd.Run(); err != nil {
fail("Internal error", "Failed to execute git command: %v", err)
}
return nil
}

782
cmd/gogs/web.go Normal file
View File

@@ -0,0 +1,782 @@
package main
import (
stdctx "context"
"crypto/tls"
"fmt"
"io"
"net"
"net/http"
"net/http/fcgi"
"os"
"path/filepath"
"strings"
"github.com/go-macaron/binding"
"github.com/go-macaron/cache"
"github.com/go-macaron/captcha"
"github.com/go-macaron/csrf"
"github.com/go-macaron/gzip"
"github.com/go-macaron/i18n"
"github.com/go-macaron/session"
"github.com/go-macaron/toolbox"
"github.com/prometheus/client_golang/prometheus/promhttp"
"github.com/urfave/cli/v3"
"gopkg.in/macaron.v1"
log "unknwon.dev/clog/v2"
embedConf "gogs.io/gogs/conf"
"gogs.io/gogs/internal/app"
"gogs.io/gogs/internal/conf"
"gogs.io/gogs/internal/context"
"gogs.io/gogs/internal/database"
"gogs.io/gogs/internal/form"
"gogs.io/gogs/internal/osx"
"gogs.io/gogs/internal/route"
"gogs.io/gogs/internal/route/admin"
apiv1 "gogs.io/gogs/internal/route/api/v1"
"gogs.io/gogs/internal/route/dev"
"gogs.io/gogs/internal/route/lfs"
"gogs.io/gogs/internal/route/org"
"gogs.io/gogs/internal/route/repo"
"gogs.io/gogs/internal/route/user"
"gogs.io/gogs/internal/template"
"gogs.io/gogs/public"
"gogs.io/gogs/templates"
)
var webCommand = cli.Command{
Name: "web",
Usage: "Start web server",
Description: `Gogs web server is the only thing you need to run,
and it takes care of all the other things for you`,
Action: runWeb,
Flags: []cli.Flag{
stringFlag("port, p", "3000", "Temporary port number to prevent conflict"),
stringFlag("config, c", filepath.Join(conf.CustomDir(), "conf", "app.ini"), "Custom configuration file path"),
},
}
// newMacaron initializes Macaron instance.
func newMacaron() *macaron.Macaron {
m := macaron.New()
if !conf.Server.DisableRouterLog {
m.Use(macaron.Logger())
}
m.Use(macaron.Recovery())
if conf.Server.EnableGzip {
m.Use(gzip.Gziper())
}
if conf.Server.Protocol == "fcgi" {
m.SetURLPrefix(conf.Server.Subpath)
}
// Register custom middleware first to make it possible to override files under "public".
m.Use(macaron.Static(
filepath.Join(conf.CustomDir(), "public"),
macaron.StaticOptions{
SkipLogging: conf.Server.DisableRouterLog,
},
))
var publicFs http.FileSystem
if !conf.Server.LoadAssetsFromDisk {
publicFs = http.FS(public.Files)
}
m.Use(macaron.Static(
filepath.Join(conf.WorkDir(), "public"),
macaron.StaticOptions{
ETag: true,
SkipLogging: conf.Server.DisableRouterLog,
FileSystem: publicFs,
},
))
m.Use(macaron.Static(
conf.Picture.AvatarUploadPath,
macaron.StaticOptions{
ETag: true,
Prefix: conf.UsersAvatarPathPrefix,
SkipLogging: conf.Server.DisableRouterLog,
},
))
m.Use(macaron.Static(
conf.Picture.RepositoryAvatarUploadPath,
macaron.StaticOptions{
ETag: true,
Prefix: database.RepoAvatarURLPrefix,
SkipLogging: conf.Server.DisableRouterLog,
},
))
customDir := filepath.Join(conf.CustomDir(), "templates")
renderOpt := macaron.RenderOptions{
Directory: filepath.Join(conf.WorkDir(), "templates"),
AppendDirectories: []string{customDir},
Funcs: template.FuncMap(),
IndentJSON: macaron.Env != macaron.PROD,
}
if !conf.Server.LoadAssetsFromDisk {
renderOpt.TemplateFileSystem = templates.NewTemplateFileSystem("", customDir)
}
m.Use(macaron.Renderer(renderOpt))
localeNames, err := embedConf.FileNames("locale")
if err != nil {
log.Fatal("Failed to list locale files: %v", err)
}
localeFiles := make(map[string][]byte)
for _, name := range localeNames {
localeFiles[name], err = embedConf.Files.ReadFile("locale/" + name)
if err != nil {
log.Fatal("Failed to read locale file %q: %v", name, err)
}
}
m.Use(i18n.I18n(i18n.Options{
SubURL: conf.Server.Subpath,
Files: localeFiles,
CustomDirectory: filepath.Join(conf.CustomDir(), "conf", "locale"),
Langs: conf.I18n.Langs,
Names: conf.I18n.Names,
DefaultLang: "en-US",
Redirect: true,
}))
m.Use(cache.Cacher(cache.Options{
Adapter: conf.Cache.Adapter,
AdapterConfig: conf.Cache.Host,
Interval: conf.Cache.Interval,
}))
m.Use(captcha.Captchaer(captcha.Options{
SubURL: conf.Server.Subpath,
}))
m.Use(toolbox.Toolboxer(m, toolbox.Options{
HealthCheckFuncs: []*toolbox.HealthCheckFuncDesc{
{
Desc: "Database connection",
Func: database.Ping,
},
},
}))
return m
}
func runWeb(_ stdctx.Context, cmd *cli.Command) error {
err := route.GlobalInit(configFromLineage(cmd))
if err != nil {
log.Fatal("Failed to initialize application: %v", err)
}
m := newMacaron()
reqSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: true})
ignSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: conf.Auth.RequireSigninView})
reqSignOut := context.Toggle(&context.ToggleOptions{SignOutRequired: true})
bindIgnErr := binding.BindIgnErr
m.SetAutoHead(true)
m.Group("", func() {
m.Get("/", ignSignIn, route.Home)
m.Group("/explore", func() {
m.Get("", func(c *context.Context) {
c.Redirect(conf.Server.Subpath + "/explore/repos")
})
m.Get("/repos", route.ExploreRepos)
m.Get("/users", route.ExploreUsers)
m.Get("/organizations", route.ExploreOrganizations)
}, ignSignIn)
m.Combo("/install", route.InstallInit).Get(route.Install).
Post(bindIgnErr(form.Install{}), route.InstallPost)
m.Get("/^:type(issues|pulls)$", reqSignIn, user.Issues)
// ***** START: User *****
m.Group("/user", func() {
m.Group("/login", func() {
m.Combo("").Get(user.Login).
Post(bindIgnErr(form.SignIn{}), user.LoginPost)
m.Combo("/two_factor").Get(user.LoginTwoFactor).Post(user.LoginTwoFactorPost)
m.Combo("/two_factor_recovery_code").Get(user.LoginTwoFactorRecoveryCode).Post(user.LoginTwoFactorRecoveryCodePost)
})
m.Get("/sign_up", user.SignUp)
m.Post("/sign_up", bindIgnErr(form.Register{}), user.SignUpPost)
m.Get("/reset_password", user.ResetPasswd)
m.Post("/reset_password", user.ResetPasswdPost)
}, reqSignOut)
m.Group("/user/settings", func() {
m.Get("", user.Settings)
m.Post("", bindIgnErr(form.UpdateProfile{}), user.SettingsPost)
m.Combo("/avatar").Get(user.SettingsAvatar).
Post(binding.MultipartForm(form.Avatar{}), user.SettingsAvatarPost)
m.Post("/avatar/delete", user.SettingsDeleteAvatar)
m.Combo("/email").Get(user.SettingsEmails).
Post(bindIgnErr(form.AddEmail{}), user.SettingsEmailPost)
m.Post("/email/delete", user.DeleteEmail)
m.Get("/password", user.SettingsPassword)
m.Post("/password", bindIgnErr(form.ChangePassword{}), user.SettingsPasswordPost)
m.Combo("/ssh").Get(user.SettingsSSHKeys).
Post(bindIgnErr(form.AddSSHKey{}), user.SettingsSSHKeysPost)
m.Post("/ssh/delete", user.DeleteSSHKey)
m.Group("/security", func() {
m.Get("", user.SettingsSecurity)
m.Combo("/two_factor_enable").Get(user.SettingsTwoFactorEnable).
Post(user.SettingsTwoFactorEnablePost)
m.Combo("/two_factor_recovery_codes").Get(user.SettingsTwoFactorRecoveryCodes).
Post(user.SettingsTwoFactorRecoveryCodesPost)
m.Post("/two_factor_disable", user.SettingsTwoFactorDisable)
})
m.Group("/repositories", func() {
m.Get("", user.SettingsRepos)
m.Post("/leave", user.SettingsLeaveRepo)
})
m.Group("/organizations", func() {
m.Get("", user.SettingsOrganizations)
m.Post("/leave", user.SettingsLeaveOrganization)
})
settingsHandler := user.NewSettingsHandler(user.NewSettingsStore())
m.Combo("/applications").Get(settingsHandler.Applications()).
Post(bindIgnErr(form.NewAccessToken{}), settingsHandler.ApplicationsPost())
m.Post("/applications/delete", settingsHandler.DeleteApplication())
m.Route("/delete", "GET,POST", user.SettingsDelete)
}, reqSignIn, func(c *context.Context) {
c.Data["PageIsUserSettings"] = true
})
m.Group("/user", func() {
m.Any("/activate", user.Activate)
m.Any("/activate_email", user.ActivateEmail)
m.Get("/email2user", user.Email2User)
m.Get("/forget_password", user.ForgotPasswd)
m.Post("/forget_password", user.ForgotPasswdPost)
m.Post("/logout", user.SignOut)
})
// ***** END: User *****
reqAdmin := context.Toggle(&context.ToggleOptions{SignInRequired: true, AdminRequired: true})
// ***** START: Admin *****
m.Group("/admin", func() {
m.Combo("").Get(admin.Dashboard).Post(admin.Operation) // "/admin"
m.Get("/config", admin.Config)
m.Post("/config/test_mail", admin.SendTestMail)
m.Get("/monitor", admin.Monitor)
m.Group("/users", func() {
m.Get("", admin.Users)
m.Combo("/new").Get(admin.NewUser).Post(bindIgnErr(form.AdminCrateUser{}), admin.NewUserPost)
m.Combo("/:userid").Get(admin.EditUser).Post(bindIgnErr(form.AdminEditUser{}), admin.EditUserPost)
m.Post("/:userid/delete", admin.DeleteUser)
})
m.Group("/orgs", func() {
m.Get("", admin.Organizations)
})
m.Group("/repos", func() {
m.Get("", admin.Repos)
m.Post("/delete", admin.DeleteRepo)
})
m.Group("/auths", func() {
m.Get("", admin.Authentications)
m.Combo("/new").Get(admin.NewAuthSource).Post(bindIgnErr(form.Authentication{}), admin.NewAuthSourcePost)
m.Combo("/:authid").Get(admin.EditAuthSource).
Post(bindIgnErr(form.Authentication{}), admin.EditAuthSourcePost)
m.Post("/:authid/delete", admin.DeleteAuthSource)
})
m.Group("/notices", func() {
m.Get("", admin.Notices)
m.Post("/delete", admin.DeleteNotices)
m.Get("/empty", admin.EmptyNotices)
})
}, reqAdmin)
// ***** END: Admin *****
m.Group("", func() {
m.Group("/:username", func() {
m.Get("", user.Profile)
m.Get("/followers", user.Followers)
m.Get("/following", user.Following)
m.Get("/stars", user.Stars)
}, context.InjectParamsUser())
m.Get("/attachments/:uuid", func(c *context.Context) {
attach, err := database.GetAttachmentByUUID(c.Params(":uuid"))
if err != nil {
c.NotFoundOrError(err, "get attachment by UUID")
return
} else if !osx.IsFile(attach.LocalPath()) {
c.NotFound()
return
}
fr, err := os.Open(attach.LocalPath())
if err != nil {
c.Error(err, "open attachment file")
return
}
defer fr.Close()
c.Header().Set("Content-Security-Policy", "default-src 'none'; style-src 'unsafe-inline'; sandbox")
c.Header().Set("Cache-Control", "public,max-age=86400")
c.Header().Set("Content-Disposition", fmt.Sprintf(`inline; filename="%s"`, attach.Name))
if _, err = io.Copy(c.Resp, fr); err != nil {
c.Error(err, "copy from file to response")
return
}
})
}, ignSignIn)
m.Group("", func() {
m.Post("/issues/attachments", repo.UploadIssueAttachment)
m.Post("/releases/attachments", repo.UploadReleaseAttachment)
}, reqSignIn)
m.Group("/:username", func() {
m.Post("/action/:action", user.Action)
}, reqSignIn, context.InjectParamsUser())
if macaron.Env == macaron.DEV {
m.Get("/template/*", dev.TemplatePreview)
}
reqRepoAdmin := context.RequireRepoAdmin()
reqRepoWriter := context.RequireRepoWriter()
webhookRoutes := func() {
m.Group("", func() {
m.Get("", repo.Webhooks)
m.Post("/delete", repo.DeleteWebhook)
m.Get("/:type/new", repo.WebhooksNew)
m.Post("/gogs/new", bindIgnErr(form.NewWebhook{}), repo.WebhooksNewPost)
m.Post("/slack/new", bindIgnErr(form.NewSlackHook{}), repo.WebhooksSlackNewPost)
m.Post("/discord/new", bindIgnErr(form.NewDiscordHook{}), repo.WebhooksDiscordNewPost)
m.Post("/dingtalk/new", bindIgnErr(form.NewDingtalkHook{}), repo.WebhooksDingtalkNewPost)
m.Get("/:id", repo.WebhooksEdit)
m.Post("/gogs/:id", bindIgnErr(form.NewWebhook{}), repo.WebhooksEditPost)
m.Post("/slack/:id", bindIgnErr(form.NewSlackHook{}), repo.WebhooksSlackEditPost)
m.Post("/discord/:id", bindIgnErr(form.NewDiscordHook{}), repo.WebhooksDiscordEditPost)
m.Post("/dingtalk/:id", bindIgnErr(form.NewDingtalkHook{}), repo.WebhooksDingtalkEditPost)
}, repo.InjectOrgRepoContext())
}
// ***** START: Organization *****
m.Group("/org", func() {
m.Group("", func() {
m.Get("/create", org.Create)
m.Post("/create", bindIgnErr(form.CreateOrg{}), org.CreatePost)
}, func(c *context.Context) {
if !c.User.CanCreateOrganization() {
c.NotFound()
}
})
m.Group("/:org", func() {
m.Get("/dashboard", user.Dashboard)
m.Get("/^:type(issues|pulls)$", user.Issues)
m.Get("/members", org.Members)
m.Get("/members/action/:action", org.MembersAction)
m.Get("/teams", org.Teams)
}, context.OrgAssignment(true))
m.Group("/:org", func() {
m.Get("/teams/:team", org.TeamMembers)
m.Get("/teams/:team/repositories", org.TeamRepositories)
m.Route("/teams/:team/action/:action", "GET,POST", org.TeamsAction)
m.Route("/teams/:team/action/repo/:action", "GET,POST", org.TeamsRepoAction)
}, context.OrgAssignment(true, false, true))
m.Group("/:org", func() {
m.Get("/teams/new", org.NewTeam)
m.Post("/teams/new", bindIgnErr(form.CreateTeam{}), org.NewTeamPost)
m.Get("/teams/:team/edit", org.EditTeam)
m.Post("/teams/:team/edit", bindIgnErr(form.CreateTeam{}), org.EditTeamPost)
m.Post("/teams/:team/delete", org.DeleteTeam)
m.Group("/settings", func() {
m.Combo("").Get(org.Settings).
Post(bindIgnErr(form.UpdateOrgSetting{}), org.SettingsPost)
m.Post("/avatar", binding.MultipartForm(form.Avatar{}), org.SettingsAvatar)
m.Post("/avatar/delete", org.SettingsDeleteAvatar)
m.Group("/hooks", webhookRoutes)
m.Route("/delete", "GET,POST", org.SettingsDelete)
})
m.Route("/invitations/new", "GET,POST", org.Invitation)
}, context.OrgAssignment(true, true))
}, reqSignIn)
// ***** END: Organization *****
// ***** START: Repository *****
m.Group("/repo", func() {
m.Get("/create", repo.Create)
m.Post("/create", bindIgnErr(form.CreateRepo{}), repo.CreatePost)
m.Get("/migrate", repo.Migrate)
m.Post("/migrate", bindIgnErr(form.MigrateRepo{}), repo.MigratePost)
m.Combo("/fork/:repoid").Get(repo.Fork).
Post(bindIgnErr(form.CreateRepo{}), repo.ForkPost)
}, reqSignIn)
m.Group("/:username/:reponame", func() {
m.Group("/settings", func() {
m.Combo("").Get(repo.Settings).
Post(bindIgnErr(form.RepoSetting{}), repo.SettingsPost)
m.Combo("/avatar").Get(repo.SettingsAvatar).
Post(binding.MultipartForm(form.Avatar{}), repo.SettingsAvatarPost)
m.Post("/avatar/delete", repo.SettingsDeleteAvatar)
m.Group("/collaboration", func() {
m.Combo("").Get(repo.SettingsCollaboration).Post(repo.SettingsCollaborationPost)
m.Post("/access_mode", repo.ChangeCollaborationAccessMode)
m.Post("/delete", repo.DeleteCollaboration)
})
m.Group("/branches", func() {
m.Get("", repo.SettingsBranches)
m.Post("/default_branch", repo.UpdateDefaultBranch)
m.Combo("/*").Get(repo.SettingsProtectedBranch).
Post(bindIgnErr(form.ProtectBranch{}), repo.SettingsProtectedBranchPost)
}, func(c *context.Context) {
if c.Repo.Repository.IsMirror {
c.NotFound()
return
}
})
m.Group("/hooks", func() {
webhookRoutes()
m.Group("/:id", func() {
m.Post("/test", repo.TestWebhook)
m.Post("/redelivery", repo.RedeliveryWebhook)
})
m.Group("/git", func() {
m.Get("", repo.SettingsGitHooks)
m.Combo("/:name").Get(repo.SettingsGitHooksEdit).
Post(repo.SettingsGitHooksEditPost)
}, context.GitHookService())
})
m.Group("/keys", func() {
m.Combo("").Get(repo.SettingsDeployKeys).
Post(bindIgnErr(form.AddSSHKey{}), repo.SettingsDeployKeysPost)
m.Post("/delete", repo.DeleteDeployKey)
})
}, func(c *context.Context) {
c.Data["PageIsSettings"] = true
})
}, reqSignIn, context.RepoAssignment(), reqRepoAdmin, context.RepoRef())
m.Post("/:username/:reponame/action/:action", reqSignIn, context.RepoAssignment(), repo.Action)
m.Group("/:username/:reponame", func() {
m.Get("/issues", repo.RetrieveLabels, repo.Issues)
m.Get("/issues/:index", repo.ViewIssue)
m.Get("/labels/", repo.RetrieveLabels, repo.Labels)
m.Get("/milestones", repo.Milestones)
}, ignSignIn, context.RepoAssignment(true))
m.Group("/:username/:reponame", func() {
// FIXME: should use different URLs but mostly same logic for comments of issue and pull request.
// So they can apply their own enable/disable logic on routers.
m.Group("/issues", func() {
m.Combo("/new", repo.MustEnableIssues).Get(context.RepoRef(), repo.NewIssue).
Post(bindIgnErr(form.NewIssue{}), repo.NewIssuePost)
m.Group("/:index", func() {
m.Post("/title", repo.UpdateIssueTitle)
m.Post("/content", repo.UpdateIssueContent)
m.Combo("/comments").Post(bindIgnErr(form.CreateComment{}), repo.NewComment)
})
})
m.Group("/comments/:id", func() {
m.Post("", repo.UpdateCommentContent)
m.Post("/delete", repo.DeleteComment)
})
}, reqSignIn, context.RepoAssignment(true))
m.Group("/:username/:reponame", func() {
m.Group("/wiki", func() {
m.Get("/?:page", repo.Wiki)
m.Get("/_pages", repo.WikiPages)
}, repo.MustEnableWiki, context.RepoRef())
}, ignSignIn, context.RepoAssignment(false, true))
m.Group("/:username/:reponame", func() {
// FIXME: should use different URLs but mostly same logic for comments of issue and pull request.
// So they can apply their own enable/disable logic on routers.
m.Group("/issues", func() {
m.Group("/:index", func() {
m.Post("/label", repo.UpdateIssueLabel)
m.Post("/milestone", repo.UpdateIssueMilestone)
m.Post("/assignee", repo.UpdateIssueAssignee)
}, reqRepoWriter)
})
m.Group("/labels", func() {
m.Post("/new", bindIgnErr(form.CreateLabel{}), repo.NewLabel)
m.Post("/edit", bindIgnErr(form.CreateLabel{}), repo.UpdateLabel)
m.Post("/delete", repo.DeleteLabel)
m.Post("/initialize", bindIgnErr(form.InitializeLabels{}), repo.InitializeLabels)
}, reqRepoWriter, context.RepoRef())
m.Group("/milestones", func() {
m.Combo("/new").Get(repo.NewMilestone).
Post(bindIgnErr(form.CreateMilestone{}), repo.NewMilestonePost)
m.Get("/:id/edit", repo.EditMilestone)
m.Post("/:id/edit", bindIgnErr(form.CreateMilestone{}), repo.EditMilestonePost)
m.Get("/:id/:action", repo.ChangeMilestonStatus)
m.Post("/delete", repo.DeleteMilestone)
}, reqRepoWriter, context.RepoRef())
m.Group("/releases", func() {
m.Get("/new", repo.NewRelease)
m.Post("/new", bindIgnErr(form.NewRelease{}), repo.NewReleasePost)
m.Post("/delete", repo.DeleteRelease)
m.Get("/edit/*", repo.EditRelease)
m.Post("/edit/*", bindIgnErr(form.EditRelease{}), repo.EditReleasePost)
}, repo.MustBeNotBare, reqRepoWriter, func(c *context.Context) {
c.Data["PageIsViewFiles"] = true
})
// FIXME: Should use c.Repo.PullRequest to unify template, currently we have inconsistent URL
// for PR in same repository. After select branch on the page, the URL contains redundant head user name.
// e.g. /org1/test-repo/compare/master...org1:develop
// which should be /org1/test-repo/compare/master...develop
m.Combo("/compare/*", repo.MustAllowPulls).Get(repo.CompareAndPullRequest).
Post(bindIgnErr(form.NewIssue{}), repo.CompareAndPullRequestPost)
m.Group("", func() {
m.Combo("/_edit/*").Get(repo.EditFile).
Post(bindIgnErr(form.EditRepoFile{}), repo.EditFilePost)
m.Combo("/_new/*").Get(repo.NewFile).
Post(bindIgnErr(form.EditRepoFile{}), repo.NewFilePost)
m.Post("/_preview/*", bindIgnErr(form.EditPreviewDiff{}), repo.DiffPreviewPost)
m.Combo("/_delete/*").Get(repo.DeleteFile).
Post(bindIgnErr(form.DeleteRepoFile{}), repo.DeleteFilePost)
m.Group("", func() {
m.Combo("/_upload/*").Get(repo.UploadFile).
Post(bindIgnErr(form.UploadRepoFile{}), repo.UploadFilePost)
m.Post("/upload-file", repo.UploadFileToServer)
m.Post("/upload-remove", bindIgnErr(form.RemoveUploadFile{}), repo.RemoveUploadFileFromServer)
}, func(c *context.Context) {
if !conf.Repository.Upload.Enabled {
c.NotFound()
return
}
})
}, repo.MustBeNotBare, reqRepoWriter, context.RepoRef(), func(c *context.Context) {
if !c.Repo.CanEnableEditor() {
c.NotFound()
return
}
c.Data["PageIsViewFiles"] = true
})
}, reqSignIn, context.RepoAssignment())
m.Group("/:username/:reponame", func() {
m.Group("", func() {
m.Get("/releases", repo.MustBeNotBare, repo.Releases)
m.Get("/pulls", repo.RetrieveLabels, repo.Pulls)
m.Get("/pulls/:index", repo.ViewPull)
}, context.RepoRef())
m.Group("/branches", func() {
m.Get("", repo.Branches)
m.Get("/all", repo.AllBranches)
m.Post("/delete/*", reqSignIn, reqRepoWriter, repo.DeleteBranchPost)
}, repo.MustBeNotBare, func(c *context.Context) {
c.Data["PageIsViewFiles"] = true
})
m.Group("/wiki", func() {
m.Group("", func() {
m.Combo("/_new").Get(repo.NewWiki).
Post(bindIgnErr(form.NewWiki{}), repo.NewWikiPost)
m.Combo("/:page/_edit").Get(repo.EditWiki).
Post(bindIgnErr(form.NewWiki{}), repo.EditWikiPost)
m.Post("/:page/delete", repo.DeleteWikiPagePost)
}, reqSignIn, reqRepoWriter)
}, repo.MustEnableWiki, context.RepoRef())
m.Get("/archive/*", repo.MustBeNotBare, repo.Download)
m.Group("/pulls/:index", func() {
m.Get("/commits", context.RepoRef(), repo.ViewPullCommits)
m.Get("/files", context.RepoRef(), repo.ViewPullFiles)
m.Post("/merge", reqRepoWriter, repo.MergePullRequest)
}, repo.MustAllowPulls)
m.Group("", func() {
m.Get("/src/*", repo.Home)
m.Get("/raw/*", repo.SingleDownload)
m.Get("/commits/*", repo.RefCommits)
m.Get("/commit/:sha([a-f0-9]{7,40})$", repo.Diff)
m.Get("/forks", repo.Forks)
}, repo.MustBeNotBare, context.RepoRef())
m.Get("/commit/:sha([a-f0-9]{7,40})\\.:ext(patch|diff)", repo.MustBeNotBare, repo.RawDiff)
m.Get("/compare/:before([a-z0-9]{40})\\.\\.\\.:after([a-z0-9]{40})", repo.MustBeNotBare, context.RepoRef(), repo.CompareDiff)
}, ignSignIn, context.RepoAssignment())
m.Group("/:username/:reponame", func() {
m.Get("", repo.Home)
m.Get("/stars", repo.Stars)
m.Get("/watchers", repo.Watchers)
}, context.ServeGoGet(), ignSignIn, context.RepoAssignment(), context.RepoRef())
// ***** END: Repository *****
// **********************
// ----- API routes -----
// **********************
// TODO: Without session and CSRF
m.Group("/api", func() {
apiv1.RegisterRoutes(m)
}, ignSignIn)
},
session.Sessioner(session.Options{
Provider: conf.Session.Provider,
ProviderConfig: conf.Session.ProviderConfig,
CookieName: conf.Session.CookieName,
CookiePath: conf.Server.Subpath,
Gclifetime: conf.Session.GCInterval,
Maxlifetime: conf.Session.MaxLifeTime,
Secure: conf.Session.CookieSecure,
}),
csrf.Csrfer(csrf.Options{
Secret: conf.Security.SecretKey,
Header: "X-CSRF-Token",
Cookie: conf.Session.CSRFCookieName,
CookieDomain: conf.Server.URL.Hostname(),
CookiePath: conf.Server.Subpath,
CookieHttpOnly: true,
SetCookie: true,
Secure: conf.Server.URL.Scheme == "https",
}),
context.Contexter(context.NewStore()),
)
// ***************************
// ----- HTTP Git routes -----
// ***************************
m.Group("/:username/:reponame", func() {
m.Get("/tasks/trigger", repo.TriggerTask)
m.Group("/info/lfs", func() {
lfs.RegisterRoutes(m.Router)
})
m.Route("/*", "GET,POST,OPTIONS", context.ServeGoGet(), repo.HTTPContexter(repo.NewStore()), repo.HTTP)
})
// ***************************
// ----- Internal routes -----
// ***************************
m.Group("/-", func() {
m.Get("/metrics", app.MetricsFilter(), promhttp.Handler()) // "/-/metrics"
m.Group("/api", func() {
m.Post("/sanitize_ipynb", app.SanitizeIpynb()) // "/-/api/sanitize_ipynb"
})
})
// **********************
// ----- robots.txt -----
// **********************
m.Get("/robots.txt", func(w http.ResponseWriter, r *http.Request) {
if conf.HasRobotsTxt {
http.ServeFile(w, r, filepath.Join(conf.CustomDir(), "robots.txt"))
} else {
w.WriteHeader(http.StatusNotFound)
}
})
m.NotFound(route.NotFound)
// Flag for port number in case first time run conflict.
if cmd.IsSet("port") {
conf.Server.URL.Host = strings.Replace(conf.Server.URL.Host, ":"+conf.Server.URL.Port(), ":"+cmd.String("port"), 1)
conf.Server.ExternalURL = conf.Server.URL.String()
conf.Server.HTTPPort = cmd.String("port")
}
var listenAddr string
if conf.Server.Protocol == "unix" {
listenAddr = conf.Server.HTTPAddr
} else {
listenAddr = fmt.Sprintf("%s:%s", conf.Server.HTTPAddr, conf.Server.HTTPPort)
}
log.Info("Available on %s", conf.Server.ExternalURL)
switch conf.Server.Protocol {
case "http":
err = http.ListenAndServe(listenAddr, m)
case "https":
tlsMinVersion := tls.VersionTLS12
switch conf.Server.TLSMinVersion {
case "TLS13":
tlsMinVersion = tls.VersionTLS13
case "TLS12":
tlsMinVersion = tls.VersionTLS12
case "TLS11":
tlsMinVersion = tls.VersionTLS11
case "TLS10":
tlsMinVersion = tls.VersionTLS10
}
server := &http.Server{
Addr: listenAddr,
TLSConfig: &tls.Config{
MinVersion: uint16(tlsMinVersion),
CurvePreferences: []tls.CurveID{tls.X25519, tls.CurveP256, tls.CurveP384, tls.CurveP521},
PreferServerCipherSuites: true,
CipherSuites: []uint16{
tls.TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,
tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
tls.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
tls.TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305,
tls.TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305,
},
}, Handler: m,
}
err = server.ListenAndServeTLS(conf.Server.CertFile, conf.Server.KeyFile)
case "fcgi":
err = fcgi.Serve(nil, m)
case "unix":
if osx.Exist(listenAddr) {
err = os.Remove(listenAddr)
if err != nil {
log.Fatal("Failed to remove existing Unix domain socket: %v", err)
}
}
var listener *net.UnixListener
listener, err = net.ListenUnix("unix", &net.UnixAddr{Name: listenAddr, Net: "unix"})
if err != nil {
log.Fatal("Failed to listen on Unix networks: %v", err)
}
// FIXME: add proper implementation of signal capture on all protocols
// execute this on SIGTERM or SIGINT: listener.Close()
if err = os.Chmod(listenAddr, conf.Server.UnixSocketMode); err != nil {
log.Fatal("Failed to change permission of Unix domain socket: %v", err)
}
err = http.Serve(listener, m)
default:
log.Fatal("Unexpected server protocol: %s", conf.Server.Protocol)
}
if err != nil {
log.Fatal("Failed to start server: %v", err)
}
return nil
}

View File

@@ -1,278 +0,0 @@
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"bufio"
"bytes"
"crypto/tls"
"fmt"
"os"
"os/exec"
"path"
"path/filepath"
"strings"
"github.com/Unknwon/com"
"github.com/urfave/cli"
log "gopkg.in/clog.v1"
"github.com/gogits/git-module"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/models/errors"
"github.com/gogits/gogs/pkg/httplib"
"github.com/gogits/gogs/pkg/mailer"
"github.com/gogits/gogs/pkg/setting"
"github.com/gogits/gogs/pkg/template"
http "github.com/gogits/gogs/routes/repo"
)
var (
Hook = cli.Command{
Name: "hook",
Usage: "Delegate commands to corresponding Git hooks",
Description: "All sub-commands should only be called by Git",
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
Subcommands: []cli.Command{
subcmdHookPreReceive,
subcmdHookUpadte,
subcmdHookPostReceive,
},
}
subcmdHookPreReceive = cli.Command{
Name: "pre-receive",
Usage: "Delegate pre-receive Git hook",
Description: "This command should only be called by Git",
Action: runHookPreReceive,
}
subcmdHookUpadte = cli.Command{
Name: "update",
Usage: "Delegate update Git hook",
Description: "This command should only be called by Git",
Action: runHookUpdate,
}
subcmdHookPostReceive = cli.Command{
Name: "post-receive",
Usage: "Delegate post-receive Git hook",
Description: "This command should only be called by Git",
Action: runHookPostReceive,
}
)
func runHookPreReceive(c *cli.Context) error {
if len(os.Getenv("SSH_ORIGINAL_COMMAND")) == 0 {
return nil
}
setup(c, "hooks/pre-receive.log", true)
isWiki := strings.Contains(os.Getenv(http.ENV_REPO_CUSTOM_HOOKS_PATH), ".wiki.git/")
buf := bytes.NewBuffer(nil)
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
buf.Write(scanner.Bytes())
buf.WriteByte('\n')
if isWiki {
continue
}
fields := bytes.Fields(scanner.Bytes())
if len(fields) != 3 {
continue
}
oldCommitID := string(fields[0])
newCommitID := string(fields[1])
branchName := strings.TrimPrefix(string(fields[2]), git.BRANCH_PREFIX)
// Branch protection
repoID := com.StrTo(os.Getenv(http.ENV_REPO_ID)).MustInt64()
protectBranch, err := models.GetProtectBranchOfRepoByName(repoID, branchName)
if err != nil {
if errors.IsErrBranchNotExist(err) {
continue
}
fail("Internal error", "GetProtectBranchOfRepoByName [repo_id: %d, branch: %s]: %v", repoID, branchName, err)
}
if !protectBranch.Protected {
continue
}
// Whitelist users can bypass require pull request check
bypassRequirePullRequest := false
// Check if user is in whitelist when enabled
userID := com.StrTo(os.Getenv(http.ENV_AUTH_USER_ID)).MustInt64()
if protectBranch.EnableWhitelist {
if !models.IsUserInProtectBranchWhitelist(repoID, userID, branchName) {
fail(fmt.Sprintf("Branch '%s' is protected and you are not in the push whitelist", branchName), "")
}
bypassRequirePullRequest = true
}
// Check if branch allows direct push
if !bypassRequirePullRequest && protectBranch.RequirePullRequest {
fail(fmt.Sprintf("Branch '%s' is protected and commits must be merged through pull request", branchName), "")
}
// check and deletion
if newCommitID == git.EMPTY_SHA {
fail(fmt.Sprintf("Branch '%s' is protected from deletion", branchName), "")
}
// Check force push
output, err := git.NewCommand("rev-list", "--max-count=1", oldCommitID, "^"+newCommitID).
RunInDir(models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME)))
if err != nil {
fail("Internal error", "Fail to detect force push: %v", err)
} else if len(output) > 0 {
fail(fmt.Sprintf("Branch '%s' is protected from force push", branchName), "")
}
}
customHooksPath := filepath.Join(os.Getenv(http.ENV_REPO_CUSTOM_HOOKS_PATH), "pre-receive")
if !com.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if setting.IsWindows {
hookCmd = exec.Command("bash.exe", "custom_hooks/pre-receive")
} else {
hookCmd = exec.Command(customHooksPath)
}
hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = buf
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Fail to execute custom pre-receive hook: %v", err)
}
return nil
}
func runHookUpdate(c *cli.Context) error {
if len(os.Getenv("SSH_ORIGINAL_COMMAND")) == 0 {
return nil
}
setup(c, "hooks/update.log", false)
args := c.Args()
if len(args) != 3 {
fail("Arguments received are not equal to three", "Arguments received are not equal to three")
} else if len(args[0]) == 0 {
fail("First argument 'refName' is empty", "First argument 'refName' is empty")
}
customHooksPath := filepath.Join(os.Getenv(http.ENV_REPO_CUSTOM_HOOKS_PATH), "update")
if !com.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if setting.IsWindows {
hookCmd = exec.Command("bash.exe", append([]string{"custom_hooks/update"}, args...)...)
} else {
hookCmd = exec.Command(customHooksPath, args...)
}
hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = os.Stdin
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Fail to execute custom pre-receive hook: %v", err)
}
return nil
}
func runHookPostReceive(c *cli.Context) error {
if len(os.Getenv("SSH_ORIGINAL_COMMAND")) == 0 {
return nil
}
setup(c, "hooks/post-receive.log", true)
// Post-receive hook does more than just gather Git information,
// so we need to setup additional services for email notifications.
setting.NewPostReceiveHookServices()
mailer.NewContext()
mailer.InitMailRender(path.Join(setting.StaticRootPath, "templates/mail"),
path.Join(setting.CustomPath, "templates/mail"), template.NewFuncMap())
isWiki := strings.Contains(os.Getenv(http.ENV_REPO_CUSTOM_HOOKS_PATH), ".wiki.git/")
buf := bytes.NewBuffer(nil)
scanner := bufio.NewScanner(os.Stdin)
for scanner.Scan() {
buf.Write(scanner.Bytes())
buf.WriteByte('\n')
// TODO: support news feeds for wiki
if isWiki {
continue
}
fields := bytes.Fields(scanner.Bytes())
if len(fields) != 3 {
continue
}
options := models.PushUpdateOptions{
OldCommitID: string(fields[0]),
NewCommitID: string(fields[1]),
RefFullName: string(fields[2]),
PusherID: com.StrTo(os.Getenv(http.ENV_AUTH_USER_ID)).MustInt64(),
PusherName: os.Getenv(http.ENV_AUTH_USER_NAME),
RepoUserName: os.Getenv(http.ENV_REPO_OWNER_NAME),
RepoName: os.Getenv(http.ENV_REPO_NAME),
}
if err := models.PushUpdate(options); err != nil {
log.Error(2, "PushUpdate: %v", err)
}
// Ask for running deliver hook and test pull request tasks.
reqURL := setting.LocalURL + options.RepoUserName + "/" + options.RepoName + "/tasks/trigger?branch=" +
strings.TrimPrefix(options.RefFullName, git.BRANCH_PREFIX) +
"&secret=" + os.Getenv(http.ENV_REPO_OWNER_SALT_MD5) +
"&pusher=" + os.Getenv(http.ENV_AUTH_USER_ID)
log.Trace("Trigger task: %s", reqURL)
resp, err := httplib.Head(reqURL).SetTLSClientConfig(&tls.Config{
InsecureSkipVerify: true,
}).Response()
if err == nil {
resp.Body.Close()
if resp.StatusCode/100 != 2 {
log.Error(2, "Fail to trigger task: not 2xx response code")
}
} else {
log.Error(2, "Fail to trigger task: %v", err)
}
}
customHooksPath := filepath.Join(os.Getenv(http.ENV_REPO_CUSTOM_HOOKS_PATH), "post-receive")
if !com.IsFile(customHooksPath) {
return nil
}
var hookCmd *exec.Cmd
if setting.IsWindows {
hookCmd = exec.Command("bash.exe", "custom_hooks/post-receive")
} else {
hookCmd = exec.Command(customHooksPath)
}
hookCmd.Dir = models.RepoPath(os.Getenv(http.ENV_REPO_OWNER_NAME), os.Getenv(http.ENV_REPO_NAME))
hookCmd.Stdout = os.Stdout
hookCmd.Stdin = buf
hookCmd.Stderr = os.Stderr
if err := hookCmd.Run(); err != nil {
fail("Internal error", "Fail to execute custom post-receive hook: %v", err)
}
return nil
}

View File

@@ -1,113 +0,0 @@
// Copyright 2016 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"bufio"
"bytes"
"fmt"
"os"
"path/filepath"
"time"
"github.com/Unknwon/com"
"github.com/urfave/cli"
"github.com/gogits/gogs/pkg/setting"
)
var (
Import = cli.Command{
Name: "import",
Usage: "Import portable data as local Gogs data",
Description: `Allow user import data from other Gogs installations to local instance
without manually hacking the data files`,
Subcommands: []cli.Command{
subcmdImportLocale,
},
}
subcmdImportLocale = cli.Command{
Name: "locale",
Usage: "Import locale files to local repository",
Action: runImportLocale,
Flags: []cli.Flag{
stringFlag("source", "", "Source directory that stores new locale files"),
stringFlag("target", "", "Target directory that stores old locale files"),
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
)
func runImportLocale(c *cli.Context) error {
if !c.IsSet("source") {
return fmt.Errorf("Source directory is not specified")
} else if !c.IsSet("target") {
return fmt.Errorf("Target directory is not specified")
}
if !com.IsDir(c.String("source")) {
return fmt.Errorf("Source directory does not exist or is not a directory")
} else if !com.IsDir(c.String("target")) {
return fmt.Errorf("Target directory does not exist or is not a directory")
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setting.NewContext()
now := time.Now()
line := make([]byte, 0, 100)
badChars := []byte(`="`)
escapedQuotes := []byte(`\"`)
regularQuotes := []byte(`"`)
// Cut out en-US.
for _, lang := range setting.Langs[1:] {
name := fmt.Sprintf("locale_%s.ini", lang)
source := filepath.Join(c.String("source"), name)
target := filepath.Join(c.String("target"), name)
if !com.IsFile(source) {
continue
}
// Crowdin surrounds double quotes for strings contain quotes inside,
// this breaks INI parser, we need to fix that.
sr, err := os.Open(source)
if err != nil {
return fmt.Errorf("Open: %v", err)
}
tw, err := os.Create(target)
if err != nil {
if err != nil {
return fmt.Errorf("Open: %v", err)
}
}
scanner := bufio.NewScanner(sr)
for scanner.Scan() {
line = scanner.Bytes()
idx := bytes.Index(line, badChars)
if idx > -1 && line[len(line)-1] == '"' {
// We still want the "=" sign
line = append(line[:idx+1], line[idx+2:len(line)-1]...)
line = bytes.Replace(line, escapedQuotes, regularQuotes, -1)
}
tw.Write(line)
tw.WriteString("\n")
}
sr.Close()
tw.Close()
// Modification time of files from Crowdin often ahead of current,
// so we need to set back to current.
os.Chtimes(target, now, now)
}
fmt.Println("Locale files has been successfully imported!")
return nil
}

View File

@@ -1,136 +0,0 @@
// Copyright 2017 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"os"
"path"
"github.com/Unknwon/cae/zip"
"github.com/Unknwon/com"
"github.com/mcuadros/go-version"
"github.com/urfave/cli"
log "gopkg.in/clog.v1"
"gopkg.in/ini.v1"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/pkg/setting"
)
var Restore = cli.Command{
Name: "restore",
Usage: "Restore files and database from backup",
Description: `Restore imports all related files and database from a backup archive.
The backup version must lower or equal to current Gogs version. You can also import
backup from other database engines, which is useful for database migrating.
If corresponding files or database tables are not presented in the archive, they will
be skipped and remain unchanged.`,
Action: runRestore,
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
boolFlag("verbose, v", "Show process details"),
stringFlag("tempdir, t", os.TempDir(), "Temporary directory path"),
stringFlag("from", "", "Path to backup archive"),
boolFlag("database-only", "Only import database"),
boolFlag("exclude-repos", "Exclude repositories"),
},
}
func runRestore(c *cli.Context) error {
zip.Verbose = c.Bool("verbose")
tmpDir := c.String("tempdir")
if !com.IsExist(tmpDir) {
log.Fatal(0, "'--tempdir' does not exist: %s", tmpDir)
}
log.Info("Restore backup from: %s", c.String("from"))
if err := zip.ExtractTo(c.String("from"), tmpDir); err != nil {
log.Fatal(0, "Fail to extract backup archive: %v", err)
}
archivePath := path.Join(tmpDir, _ARCHIVE_ROOT_DIR)
// Check backup version
metaFile := path.Join(archivePath, "metadata.ini")
if !com.IsExist(metaFile) {
log.Fatal(0, "File 'metadata.ini' is missing")
}
metadata, err := ini.Load(metaFile)
if err != nil {
log.Fatal(0, "Fail to load metadata '%s': %v", metaFile, err)
}
backupVersion := metadata.Section("").Key("GOGS_VERSION").MustString("999.0")
if version.Compare(setting.AppVer, backupVersion, "<") {
log.Fatal(0, "Current Gogs version is lower than backup version: %s < %s", setting.AppVer, backupVersion)
}
// If config file is not present in backup, user must set this file via flag.
// Otherwise, it's optional to set config file flag.
configFile := path.Join(archivePath, "custom/conf/app.ini")
if c.IsSet("config") {
setting.CustomConf = c.String("config")
} else if !com.IsExist(configFile) {
log.Fatal(0, "'--config' is not specified and custom config file is not found in backup")
} else {
setting.CustomConf = configFile
}
setting.NewContext()
models.LoadConfigs()
models.SetEngine()
// Database
dbDir := path.Join(archivePath, "db")
if err = models.ImportDatabase(dbDir, c.Bool("verbose")); err != nil {
log.Fatal(0, "Fail to import database: %v", err)
}
// Custom files
if !c.Bool("database-only") {
if com.IsExist(setting.CustomPath) {
if err = os.Rename(setting.CustomPath, setting.CustomPath+".bak"); err != nil {
log.Fatal(0, "Fail to backup current 'custom': %v", err)
}
}
if err = os.Rename(path.Join(archivePath, "custom"), setting.CustomPath); err != nil {
log.Fatal(0, "Fail to import 'custom': %v", err)
}
}
// Data files
if !c.Bool("database-only") {
os.MkdirAll(setting.AppDataPath, os.ModePerm)
for _, dir := range []string{"attachments", "avatars"} {
// Skip if backup archive does not have corresponding data
srcPath := path.Join(archivePath, "data", dir)
if !com.IsDir(srcPath) {
continue
}
dirPath := path.Join(setting.AppDataPath, dir)
if com.IsExist(dirPath) {
if err = os.Rename(dirPath, dirPath+".bak"); err != nil {
log.Fatal(0, "Fail to backup current 'data': %v", err)
}
}
if err = os.Rename(srcPath, dirPath); err != nil {
log.Fatal(0, "Fail to import 'data': %v", err)
}
}
}
// Repositories
reposPath := path.Join(archivePath, "repositories.zip")
if !c.Bool("exclude-repos") && !c.Bool("database-only") && com.IsExist(reposPath) {
if err := zip.ExtractTo(reposPath, path.Dir(setting.RepoRootPath)); err != nil {
log.Fatal(0, "Fail to extract 'repositories.zip': %v", err)
}
}
os.RemoveAll(path.Join(tmpDir, _ARCHIVE_ROOT_DIR))
log.Info("Restore succeed!")
log.Shutdown()
return nil
}

View File

@@ -1,273 +0,0 @@
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"fmt"
"os"
"os/exec"
"path/filepath"
"strings"
"time"
"github.com/Unknwon/com"
"github.com/urfave/cli"
log "gopkg.in/clog.v1"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/models/errors"
"github.com/gogits/gogs/pkg/setting"
http "github.com/gogits/gogs/routes/repo"
)
const (
_ACCESS_DENIED_MESSAGE = "Repository does not exist or you do not have access"
)
var Serv = cli.Command{
Name: "serv",
Usage: "This command should only be called by SSH shell",
Description: `Serv provide access auth for repositories`,
Action: runServ,
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
func fail(userMessage, logMessage string, args ...interface{}) {
fmt.Fprintln(os.Stderr, "Gogs:", userMessage)
if len(logMessage) > 0 {
if !setting.ProdMode {
fmt.Fprintf(os.Stderr, logMessage+"\n", args...)
}
log.Fatal(3, logMessage, args...)
}
os.Exit(1)
}
func setup(c *cli.Context, logPath string, connectDB bool) {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
} else if c.GlobalIsSet("config") {
setting.CustomConf = c.GlobalString("config")
}
setting.NewContext()
level := log.TRACE
if setting.ProdMode {
level = log.ERROR
}
log.New(log.FILE, log.FileConfig{
Level: level,
Filename: filepath.Join(setting.LogRootPath, logPath),
FileRotationConfig: log.FileRotationConfig{
Rotate: true,
Daily: true,
MaxDays: 3,
},
})
log.Delete(log.CONSOLE) // Remove primary logger
if !connectDB {
return
}
models.LoadConfigs()
if setting.UseSQLite3 {
workDir, _ := setting.WorkDir()
os.Chdir(workDir)
}
if err := models.SetEngine(); err != nil {
fail("Internal error", "SetEngine: %v", err)
}
}
func parseSSHCmd(cmd string) (string, string) {
ss := strings.SplitN(cmd, " ", 2)
if len(ss) != 2 {
return "", ""
}
return ss[0], strings.Replace(ss[1], "'/", "'", 1)
}
func checkDeployKey(key *models.PublicKey, repo *models.Repository) {
// Check if this deploy key belongs to current repository.
if !models.HasDeployKey(key.ID, repo.ID) {
fail("Key access denied", "Deploy key access denied: [key_id: %d, repo_id: %d]", key.ID, repo.ID)
}
// Update deploy key activity.
deployKey, err := models.GetDeployKeyByRepo(key.ID, repo.ID)
if err != nil {
fail("Internal error", "GetDeployKey: %v", err)
}
deployKey.Updated = time.Now()
if err = models.UpdateDeployKey(deployKey); err != nil {
fail("Internal error", "UpdateDeployKey: %v", err)
}
}
var (
allowedCommands = map[string]models.AccessMode{
"git-upload-pack": models.ACCESS_MODE_READ,
"git-upload-archive": models.ACCESS_MODE_READ,
"git-receive-pack": models.ACCESS_MODE_WRITE,
}
)
func runServ(c *cli.Context) error {
setup(c, "serv.log", true)
if setting.SSH.Disabled {
println("Gogs: SSH has been disabled")
return nil
}
if len(c.Args()) < 1 {
fail("Not enough arguments", "Not enough arguments")
}
sshCmd := os.Getenv("SSH_ORIGINAL_COMMAND")
if len(sshCmd) == 0 {
println("Hi there, You've successfully authenticated, but Gogs does not provide shell access.")
println("If this is unexpected, please log in with password and setup Gogs under another user.")
return nil
}
verb, args := parseSSHCmd(sshCmd)
repoFullName := strings.ToLower(strings.Trim(args, "'"))
repoFields := strings.SplitN(repoFullName, "/", 2)
if len(repoFields) != 2 {
fail("Invalid repository path", "Invalid repository path: %v", args)
}
ownerName := strings.ToLower(repoFields[0])
repoName := strings.TrimSuffix(strings.ToLower(repoFields[1]), ".git")
repoName = strings.TrimSuffix(repoName, ".wiki")
owner, err := models.GetUserByName(ownerName)
if err != nil {
if errors.IsUserNotExist(err) {
fail("Repository owner does not exist", "Unregistered owner: %s", ownerName)
}
fail("Internal error", "Fail to get repository owner '%s': %v", ownerName, err)
}
repo, err := models.GetRepositoryByName(owner.ID, repoName)
if err != nil {
if errors.IsRepoNotExist(err) {
fail(_ACCESS_DENIED_MESSAGE, "Repository does not exist: %s/%s", owner.Name, repoName)
}
fail("Internal error", "Fail to get repository: %v", err)
}
repo.Owner = owner
requestMode, ok := allowedCommands[verb]
if !ok {
fail("Unknown git command", "Unknown git command '%s'", verb)
}
// Prohibit push to mirror repositories.
if requestMode > models.ACCESS_MODE_READ && repo.IsMirror {
fail("Mirror repository is read-only", "")
}
// Allow anonymous (user is nil) clone for public repositories.
var user *models.User
key, err := models.GetPublicKeyByID(com.StrTo(strings.TrimPrefix(c.Args()[0], "key-")).MustInt64())
if err != nil {
fail("Invalid key ID", "Invalid key ID '%s': %v", c.Args()[0], err)
}
if requestMode == models.ACCESS_MODE_WRITE || repo.IsPrivate {
// Check deploy key or user key.
if key.IsDeployKey() {
if key.Mode < requestMode {
fail("Key permission denied", "Cannot push with deployment key: %d", key.ID)
}
checkDeployKey(key, repo)
} else {
user, err = models.GetUserByKeyID(key.ID)
if err != nil {
fail("Internal error", "Fail to get user by key ID '%d': %v", key.ID, err)
}
mode, err := models.AccessLevel(user.ID, repo)
if err != nil {
fail("Internal error", "Fail to check access: %v", err)
}
if mode < requestMode {
clientMessage := _ACCESS_DENIED_MESSAGE
if mode >= models.ACCESS_MODE_READ {
clientMessage = "You do not have sufficient authorization for this action"
}
fail(clientMessage,
"User '%s' does not have level '%v' access to repository '%s'",
user.Name, requestMode, repoFullName)
}
}
} else {
setting.NewService()
// Check if the key can access to the repository in case of it is a deploy key (a deploy keys != user key).
// A deploy key doesn't represent a signed in user, so in a site with Service.RequireSignInView activated
// we should give read access only in repositories where this deploy key is in use. In other case, a server
// or system using an active deploy key can get read access to all the repositories in a Gogs service.
if key.IsDeployKey() && setting.Service.RequireSignInView {
checkDeployKey(key, repo)
}
}
// Update user key activity.
if key.ID > 0 {
key, err := models.GetPublicKeyByID(key.ID)
if err != nil {
fail("Internal error", "GetPublicKeyByID: %v", err)
}
key.Updated = time.Now()
if err = models.UpdatePublicKey(key); err != nil {
fail("Internal error", "UpdatePublicKey: %v", err)
}
}
// Special handle for Windows.
if setting.IsWindows {
verb = strings.Replace(verb, "-", " ", 1)
}
var gitCmd *exec.Cmd
verbs := strings.Split(verb, " ")
if len(verbs) == 2 {
gitCmd = exec.Command(verbs[0], verbs[1], repoFullName)
} else {
gitCmd = exec.Command(verb, repoFullName)
}
if requestMode == models.ACCESS_MODE_WRITE {
gitCmd.Env = append(os.Environ(), http.ComposeHookEnvs(http.ComposeHookEnvsOptions{
AuthUser: user,
OwnerName: owner.Name,
OwnerSalt: owner.Salt,
RepoID: repo.ID,
RepoName: repo.Name,
RepoPath: repo.RepoPath(),
})...)
}
gitCmd.Dir = setting.RepoRootPath
gitCmd.Stdout = os.Stdout
gitCmd.Stdin = os.Stdin
gitCmd.Stderr = os.Stderr
if err = gitCmd.Run(); err != nil {
fail("Internal error", "Fail to execute git command: %v", err)
}
return nil
}

View File

@@ -1,734 +0,0 @@
// Copyright 2014 The Gogs Authors. All rights reserved.
// Use of this source code is governed by a MIT-style
// license that can be found in the LICENSE file.
package cmd
import (
"crypto/tls"
"fmt"
"io/ioutil"
"net"
"net/http"
"net/http/fcgi"
"os"
"path"
"strings"
"github.com/Unknwon/com"
"github.com/go-macaron/binding"
"github.com/go-macaron/cache"
"github.com/go-macaron/captcha"
"github.com/go-macaron/csrf"
"github.com/go-macaron/gzip"
"github.com/go-macaron/i18n"
"github.com/go-macaron/session"
"github.com/go-macaron/toolbox"
"github.com/mcuadros/go-version"
"github.com/urfave/cli"
log "gopkg.in/clog.v1"
"gopkg.in/macaron.v1"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/pkg/bindata"
"github.com/gogits/gogs/pkg/context"
"github.com/gogits/gogs/pkg/form"
"github.com/gogits/gogs/pkg/mailer"
"github.com/gogits/gogs/pkg/setting"
"github.com/gogits/gogs/pkg/template"
"github.com/gogits/gogs/routes"
"github.com/gogits/gogs/routes/admin"
apiv1 "github.com/gogits/gogs/routes/api/v1"
"github.com/gogits/gogs/routes/dev"
"github.com/gogits/gogs/routes/org"
"github.com/gogits/gogs/routes/repo"
"github.com/gogits/gogs/routes/user"
)
var Web = cli.Command{
Name: "web",
Usage: "Start web server",
Description: `Gogs web server is the only thing you need to run,
and it takes care of all the other things for you`,
Action: runWeb,
Flags: []cli.Flag{
stringFlag("port, p", "3000", "Temporary port number to prevent conflict"),
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
// checkVersion checks if binary matches the version of templates files.
func checkVersion() {
// Templates.
data, err := ioutil.ReadFile(setting.StaticRootPath + "/templates/.VERSION")
if err != nil {
log.Fatal(2, "Fail to read 'templates/.VERSION': %v", err)
}
tplVer := string(data)
if tplVer != setting.AppVer {
if version.Compare(tplVer, setting.AppVer, ">") {
log.Fatal(2, "Binary version is lower than template file version, did you forget to recompile Gogs?")
} else {
log.Fatal(2, "Binary version is higher than template file version, did you forget to update template files?")
}
}
}
// newMacaron initializes Macaron instance.
func newMacaron() *macaron.Macaron {
m := macaron.New()
if !setting.DisableRouterLog {
m.Use(macaron.Logger())
}
m.Use(macaron.Recovery())
if setting.EnableGzip {
m.Use(gzip.Gziper())
}
if setting.Protocol == setting.SCHEME_FCGI {
m.SetURLPrefix(setting.AppSubURL)
}
m.Use(macaron.Static(
path.Join(setting.StaticRootPath, "public"),
macaron.StaticOptions{
SkipLogging: setting.DisableRouterLog,
},
))
m.Use(macaron.Static(
setting.AvatarUploadPath,
macaron.StaticOptions{
Prefix: "avatars",
SkipLogging: setting.DisableRouterLog,
},
))
funcMap := template.NewFuncMap()
m.Use(macaron.Renderer(macaron.RenderOptions{
Directory: path.Join(setting.StaticRootPath, "templates"),
AppendDirectories: []string{path.Join(setting.CustomPath, "templates")},
Funcs: funcMap,
IndentJSON: macaron.Env != macaron.PROD,
}))
mailer.InitMailRender(path.Join(setting.StaticRootPath, "templates/mail"),
path.Join(setting.CustomPath, "templates/mail"), funcMap)
localeNames, err := bindata.AssetDir("conf/locale")
if err != nil {
log.Fatal(4, "Fail to list locale files: %v", err)
}
localFiles := make(map[string][]byte)
for _, name := range localeNames {
localFiles[name] = bindata.MustAsset("conf/locale/" + name)
}
m.Use(i18n.I18n(i18n.Options{
SubURL: setting.AppSubURL,
Files: localFiles,
CustomDirectory: path.Join(setting.CustomPath, "conf/locale"),
Langs: setting.Langs,
Names: setting.Names,
DefaultLang: "en-US",
Redirect: true,
}))
m.Use(cache.Cacher(cache.Options{
Adapter: setting.CacheAdapter,
AdapterConfig: setting.CacheConn,
Interval: setting.CacheInterval,
}))
m.Use(captcha.Captchaer(captcha.Options{
SubURL: setting.AppSubURL,
}))
m.Use(session.Sessioner(setting.SessionConfig))
m.Use(csrf.Csrfer(csrf.Options{
Secret: setting.SecretKey,
Cookie: setting.CSRFCookieName,
SetCookie: true,
Header: "X-Csrf-Token",
CookiePath: setting.AppSubURL,
}))
m.Use(toolbox.Toolboxer(m, toolbox.Options{
HealthCheckFuncs: []*toolbox.HealthCheckFuncDesc{
&toolbox.HealthCheckFuncDesc{
Desc: "Database connection",
Func: models.Ping,
},
},
}))
m.Use(context.Contexter())
return m
}
func runWeb(c *cli.Context) error {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
routes.GlobalInit()
checkVersion()
m := newMacaron()
reqSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: true})
ignSignIn := context.Toggle(&context.ToggleOptions{SignInRequired: setting.Service.RequireSignInView})
ignSignInAndCsrf := context.Toggle(&context.ToggleOptions{DisableCSRF: true})
reqSignOut := context.Toggle(&context.ToggleOptions{SignOutRequired: true})
bindIgnErr := binding.BindIgnErr
m.SetAutoHead(true)
// FIXME: not all routes need go through same middlewares.
// Especially some AJAX requests, we can reduce middleware number to improve performance.
// Routers.
m.Get("/", ignSignIn, routes.Home)
m.Group("/explore", func() {
m.Get("", func(c *context.Context) {
c.Redirect(setting.AppSubURL + "/explore/repos")
})
m.Get("/repos", routes.ExploreRepos)
m.Get("/users", routes.ExploreUsers)
m.Get("/organizations", routes.ExploreOrganizations)
}, ignSignIn)
m.Combo("/install", routes.InstallInit).Get(routes.Install).
Post(bindIgnErr(form.Install{}), routes.InstallPost)
m.Get("/^:type(issues|pulls)$", reqSignIn, user.Issues)
// ***** START: User *****
m.Group("/user", func() {
m.Group("/login", func() {
m.Combo("").Get(user.Login).
Post(bindIgnErr(form.SignIn{}), user.LoginPost)
m.Combo("/two_factor").Get(user.LoginTwoFactor).Post(user.LoginTwoFactorPost)
m.Combo("/two_factor_recovery_code").Get(user.LoginTwoFactorRecoveryCode).Post(user.LoginTwoFactorRecoveryCodePost)
})
m.Get("/sign_up", user.SignUp)
m.Post("/sign_up", bindIgnErr(form.Register{}), user.SignUpPost)
m.Get("/reset_password", user.ResetPasswd)
m.Post("/reset_password", user.ResetPasswdPost)
}, reqSignOut)
m.Group("/user/settings", func() {
m.Get("", user.Settings)
m.Post("", bindIgnErr(form.UpdateProfile{}), user.SettingsPost)
m.Combo("/avatar").Get(user.SettingsAvatar).
Post(binding.MultipartForm(form.Avatar{}), user.SettingsAvatarPost)
m.Post("/avatar/delete", user.SettingsDeleteAvatar)
m.Combo("/email").Get(user.SettingsEmails).
Post(bindIgnErr(form.AddEmail{}), user.SettingsEmailPost)
m.Post("/email/delete", user.DeleteEmail)
m.Get("/password", user.SettingsPassword)
m.Post("/password", bindIgnErr(form.ChangePassword{}), user.SettingsPasswordPost)
m.Combo("/ssh").Get(user.SettingsSSHKeys).
Post(bindIgnErr(form.AddSSHKey{}), user.SettingsSSHKeysPost)
m.Post("/ssh/delete", user.DeleteSSHKey)
m.Group("/security", func() {
m.Get("", user.SettingsSecurity)
m.Combo("/two_factor_enable").Get(user.SettingsTwoFactorEnable).
Post(user.SettingsTwoFactorEnablePost)
m.Combo("/two_factor_recovery_codes").Get(user.SettingsTwoFactorRecoveryCodes).
Post(user.SettingsTwoFactorRecoveryCodesPost)
m.Post("/two_factor_disable", user.SettingsTwoFactorDisable)
})
m.Group("/repositories", func() {
m.Get("", user.SettingsRepos)
m.Post("/leave", user.SettingsLeaveRepo)
})
m.Group("/organizations", func() {
m.Get("", user.SettingsOrganizations)
m.Post("/leave", user.SettingsLeaveOrganization)
})
m.Combo("/applications").Get(user.SettingsApplications).
Post(bindIgnErr(form.NewAccessToken{}), user.SettingsApplicationsPost)
m.Post("/applications/delete", user.SettingsDeleteApplication)
m.Route("/delete", "GET,POST", user.SettingsDelete)
}, reqSignIn, func(c *context.Context) {
c.Data["PageIsUserSettings"] = true
})
m.Group("/user", func() {
m.Any("/activate", user.Activate)
m.Any("/activate_email", user.ActivateEmail)
m.Get("/email2user", user.Email2User)
m.Get("/forget_password", user.ForgotPasswd)
m.Post("/forget_password", user.ForgotPasswdPost)
m.Get("/logout", user.SignOut)
})
// ***** END: User *****
adminReq := context.Toggle(&context.ToggleOptions{SignInRequired: true, AdminRequired: true})
// ***** START: Admin *****
m.Group("/admin", func() {
m.Get("", adminReq, admin.Dashboard)
m.Get("/config", admin.Config)
m.Post("/config/test_mail", admin.SendTestMail)
m.Get("/monitor", admin.Monitor)
m.Group("/users", func() {
m.Get("", admin.Users)
m.Combo("/new").Get(admin.NewUser).Post(bindIgnErr(form.AdminCrateUser{}), admin.NewUserPost)
m.Combo("/:userid").Get(admin.EditUser).Post(bindIgnErr(form.AdminEditUser{}), admin.EditUserPost)
m.Post("/:userid/delete", admin.DeleteUser)
})
m.Group("/orgs", func() {
m.Get("", admin.Organizations)
})
m.Group("/repos", func() {
m.Get("", admin.Repos)
m.Post("/delete", admin.DeleteRepo)
})
m.Group("/auths", func() {
m.Get("", admin.Authentications)
m.Combo("/new").Get(admin.NewAuthSource).Post(bindIgnErr(form.Authentication{}), admin.NewAuthSourcePost)
m.Combo("/:authid").Get(admin.EditAuthSource).
Post(bindIgnErr(form.Authentication{}), admin.EditAuthSourcePost)
m.Post("/:authid/delete", admin.DeleteAuthSource)
})
m.Group("/notices", func() {
m.Get("", admin.Notices)
m.Post("/delete", admin.DeleteNotices)
m.Get("/empty", admin.EmptyNotices)
})
}, adminReq)
// ***** END: Admin *****
m.Group("", func() {
m.Group("/:username", func() {
m.Get("", user.Profile)
m.Get("/followers", user.Followers)
m.Get("/following", user.Following)
m.Get("/stars", user.Stars)
})
m.Get("/attachments/:uuid", func(c *context.Context) {
attach, err := models.GetAttachmentByUUID(c.Params(":uuid"))
if err != nil {
c.NotFoundOrServerError("GetAttachmentByUUID", models.IsErrAttachmentNotExist, err)
return
} else if !com.IsFile(attach.LocalPath()) {
c.NotFound()
return
}
fr, err := os.Open(attach.LocalPath())
if err != nil {
c.Handle(500, "Open", err)
return
}
defer fr.Close()
c.Header().Set("Cache-Control", "public,max-age=86400")
fmt.Println("attach.Name:", attach.Name)
c.Header().Set("Content-Disposition", fmt.Sprintf(`inline; filename="%s"`, attach.Name))
if err = repo.ServeData(c, attach.Name, fr); err != nil {
c.Handle(500, "ServeData", err)
return
}
})
m.Post("/issues/attachments", repo.UploadIssueAttachment)
m.Post("/releases/attachments", repo.UploadReleaseAttachment)
}, ignSignIn)
m.Group("/:username", func() {
m.Get("/action/:action", user.Action)
}, reqSignIn)
if macaron.Env == macaron.DEV {
m.Get("/template/*", dev.TemplatePreview)
}
reqRepoAdmin := context.RequireRepoAdmin()
reqRepoWriter := context.RequireRepoWriter()
// ***** START: Organization *****
m.Group("/org", func() {
m.Group("", func() {
m.Get("/create", org.Create)
m.Post("/create", bindIgnErr(form.CreateOrg{}), org.CreatePost)
}, func(c *context.Context) {
if !c.User.CanCreateOrganization() {
c.NotFound()
}
})
m.Group("/:org", func() {
m.Get("/dashboard", user.Dashboard)
m.Get("/^:type(issues|pulls)$", user.Issues)
m.Get("/members", org.Members)
m.Get("/members/action/:action", org.MembersAction)
m.Get("/teams", org.Teams)
}, context.OrgAssignment(true))
m.Group("/:org", func() {
m.Get("/teams/:team", org.TeamMembers)
m.Get("/teams/:team/repositories", org.TeamRepositories)
m.Route("/teams/:team/action/:action", "GET,POST", org.TeamsAction)
m.Route("/teams/:team/action/repo/:action", "GET,POST", org.TeamsRepoAction)
}, context.OrgAssignment(true, false, true))
m.Group("/:org", func() {
m.Get("/teams/new", org.NewTeam)
m.Post("/teams/new", bindIgnErr(form.CreateTeam{}), org.NewTeamPost)
m.Get("/teams/:team/edit", org.EditTeam)
m.Post("/teams/:team/edit", bindIgnErr(form.CreateTeam{}), org.EditTeamPost)
m.Post("/teams/:team/delete", org.DeleteTeam)
m.Group("/settings", func() {
m.Combo("").Get(org.Settings).
Post(bindIgnErr(form.UpdateOrgSetting{}), org.SettingsPost)
m.Post("/avatar", binding.MultipartForm(form.Avatar{}), org.SettingsAvatar)
m.Post("/avatar/delete", org.SettingsDeleteAvatar)
m.Group("/hooks", func() {
m.Get("", org.Webhooks)
m.Post("/delete", org.DeleteWebhook)
m.Get("/:type/new", repo.WebhooksNew)
m.Post("/gogs/new", bindIgnErr(form.NewWebhook{}), repo.WebHooksNewPost)
m.Post("/slack/new", bindIgnErr(form.NewSlackHook{}), repo.SlackHooksNewPost)
m.Post("/discord/new", bindIgnErr(form.NewDiscordHook{}), repo.DiscordHooksNewPost)
m.Post("/dingtalk/new", bindIgnErr(form.NewDingtalkHook{}), repo.DingtalkHooksNewPost)
m.Get("/:id", repo.WebHooksEdit)
m.Post("/gogs/:id", bindIgnErr(form.NewWebhook{}), repo.WebHooksEditPost)
m.Post("/slack/:id", bindIgnErr(form.NewSlackHook{}), repo.SlackHooksEditPost)
m.Post("/discord/:id", bindIgnErr(form.NewDiscordHook{}), repo.DiscordHooksEditPost)
m.Post("/dingtalk/:id", bindIgnErr(form.NewDingtalkHook{}), repo.DingtalkHooksEditPost)
})
m.Route("/delete", "GET,POST", org.SettingsDelete)
})
m.Route("/invitations/new", "GET,POST", org.Invitation)
}, context.OrgAssignment(true, true))
}, reqSignIn)
// ***** END: Organization *****
// ***** START: Repository *****
m.Group("/repo", func() {
m.Get("/create", repo.Create)
m.Post("/create", bindIgnErr(form.CreateRepo{}), repo.CreatePost)
m.Get("/migrate", repo.Migrate)
m.Post("/migrate", bindIgnErr(form.MigrateRepo{}), repo.MigratePost)
m.Combo("/fork/:repoid").Get(repo.Fork).
Post(bindIgnErr(form.CreateRepo{}), repo.ForkPost)
}, reqSignIn)
m.Group("/:username/:reponame", func() {
m.Group("/settings", func() {
m.Combo("").Get(repo.Settings).
Post(bindIgnErr(form.RepoSetting{}), repo.SettingsPost)
m.Group("/collaboration", func() {
m.Combo("").Get(repo.SettingsCollaboration).Post(repo.SettingsCollaborationPost)
m.Post("/access_mode", repo.ChangeCollaborationAccessMode)
m.Post("/delete", repo.DeleteCollaboration)
})
m.Group("/branches", func() {
m.Get("", repo.SettingsBranches)
m.Post("/default_branch", repo.UpdateDefaultBranch)
m.Combo("/*").Get(repo.SettingsProtectedBranch).
Post(bindIgnErr(form.ProtectBranch{}), repo.SettingsProtectedBranchPost)
}, func(c *context.Context) {
if c.Repo.Repository.IsMirror {
c.NotFound()
return
}
})
m.Group("/hooks", func() {
m.Get("", repo.Webhooks)
m.Post("/delete", repo.DeleteWebhook)
m.Get("/:type/new", repo.WebhooksNew)
m.Post("/gogs/new", bindIgnErr(form.NewWebhook{}), repo.WebHooksNewPost)
m.Post("/slack/new", bindIgnErr(form.NewSlackHook{}), repo.SlackHooksNewPost)
m.Post("/discord/new", bindIgnErr(form.NewDiscordHook{}), repo.DiscordHooksNewPost)
m.Post("/dingtalk/new", bindIgnErr(form.NewDingtalkHook{}), repo.DingtalkHooksNewPost)
m.Post("/gogs/:id", bindIgnErr(form.NewWebhook{}), repo.WebHooksEditPost)
m.Post("/slack/:id", bindIgnErr(form.NewSlackHook{}), repo.SlackHooksEditPost)
m.Post("/discord/:id", bindIgnErr(form.NewDiscordHook{}), repo.DiscordHooksEditPost)
m.Post("/dingtalk/:id", bindIgnErr(form.NewDingtalkHook{}), repo.DingtalkHooksEditPost)
m.Group("/:id", func() {
m.Get("", repo.WebHooksEdit)
m.Post("/test", repo.TestWebhook)
m.Post("/redelivery", repo.RedeliveryWebhook)
})
m.Group("/git", func() {
m.Get("", repo.SettingsGitHooks)
m.Combo("/:name").Get(repo.SettingsGitHooksEdit).
Post(repo.SettingsGitHooksEditPost)
}, context.GitHookService())
})
m.Group("/keys", func() {
m.Combo("").Get(repo.SettingsDeployKeys).
Post(bindIgnErr(form.AddSSHKey{}), repo.SettingsDeployKeysPost)
m.Post("/delete", repo.DeleteDeployKey)
})
}, func(c *context.Context) {
c.Data["PageIsSettings"] = true
})
}, reqSignIn, context.RepoAssignment(), reqRepoAdmin, context.RepoRef())
m.Get("/:username/:reponame/action/:action", reqSignIn, context.RepoAssignment(), repo.Action)
m.Group("/:username/:reponame", func() {
m.Get("/issues", repo.RetrieveLabels, repo.Issues)
m.Get("/issues/:index", repo.ViewIssue)
m.Get("/labels/", repo.RetrieveLabels, repo.Labels)
m.Get("/milestones", repo.Milestones)
}, ignSignIn, context.RepoAssignment(true))
m.Group("/:username/:reponame", func() {
// FIXME: should use different URLs but mostly same logic for comments of issue and pull reuqest.
// So they can apply their own enable/disable logic on routers.
m.Group("/issues", func() {
m.Combo("/new", repo.MustEnableIssues).Get(context.RepoRef(), repo.NewIssue).
Post(bindIgnErr(form.NewIssue{}), repo.NewIssuePost)
m.Group("/:index", func() {
m.Post("/title", repo.UpdateIssueTitle)
m.Post("/content", repo.UpdateIssueContent)
m.Combo("/comments").Post(bindIgnErr(form.CreateComment{}), repo.NewComment)
})
})
m.Group("/comments/:id", func() {
m.Post("", repo.UpdateCommentContent)
m.Post("/delete", repo.DeleteComment)
})
}, reqSignIn, context.RepoAssignment(true))
m.Group("/:username/:reponame", func() {
m.Group("/wiki", func() {
m.Get("/?:page", repo.Wiki)
m.Get("/_pages", repo.WikiPages)
}, repo.MustEnableWiki, context.RepoRef())
}, ignSignIn, context.RepoAssignment(false, true))
m.Group("/:username/:reponame", func() {
// FIXME: should use different URLs but mostly same logic for comments of issue and pull reuqest.
// So they can apply their own enable/disable logic on routers.
m.Group("/issues", func() {
m.Group("/:index", func() {
m.Post("/label", repo.UpdateIssueLabel)
m.Post("/milestone", repo.UpdateIssueMilestone)
m.Post("/assignee", repo.UpdateIssueAssignee)
}, reqRepoWriter)
})
m.Group("/labels", func() {
m.Post("/new", bindIgnErr(form.CreateLabel{}), repo.NewLabel)
m.Post("/edit", bindIgnErr(form.CreateLabel{}), repo.UpdateLabel)
m.Post("/delete", repo.DeleteLabel)
m.Post("/initialize", bindIgnErr(form.InitializeLabels{}), repo.InitializeLabels)
}, reqRepoWriter, context.RepoRef())
m.Group("/milestones", func() {
m.Combo("/new").Get(repo.NewMilestone).
Post(bindIgnErr(form.CreateMilestone{}), repo.NewMilestonePost)
m.Get("/:id/edit", repo.EditMilestone)
m.Post("/:id/edit", bindIgnErr(form.CreateMilestone{}), repo.EditMilestonePost)
m.Get("/:id/:action", repo.ChangeMilestonStatus)
m.Post("/delete", repo.DeleteMilestone)
}, reqRepoWriter, context.RepoRef())
m.Group("/releases", func() {
m.Get("/new", repo.NewRelease)
m.Post("/new", bindIgnErr(form.NewRelease{}), repo.NewReleasePost)
m.Post("/delete", repo.DeleteRelease)
m.Get("/edit/*", repo.EditRelease)
m.Post("/edit/*", bindIgnErr(form.EditRelease{}), repo.EditReleasePost)
}, repo.MustBeNotBare, reqRepoWriter, func(c *context.Context) {
c.Data["PageIsViewFiles"] = true
})
// FIXME: Should use c.Repo.PullRequest to unify template, currently we have inconsistent URL
// for PR in same repository. After select branch on the page, the URL contains redundant head user name.
// e.g. /org1/test-repo/compare/master...org1:develop
// which should be /org1/test-repo/compare/master...develop
m.Combo("/compare/*", repo.MustAllowPulls).Get(repo.CompareAndPullRequest).
Post(bindIgnErr(form.NewIssue{}), repo.CompareAndPullRequestPost)
m.Group("", func() {
m.Combo("/_edit/*").Get(repo.EditFile).
Post(bindIgnErr(form.EditRepoFile{}), repo.EditFilePost)
m.Combo("/_new/*").Get(repo.NewFile).
Post(bindIgnErr(form.EditRepoFile{}), repo.NewFilePost)
m.Post("/_preview/*", bindIgnErr(form.EditPreviewDiff{}), repo.DiffPreviewPost)
m.Combo("/_delete/*").Get(repo.DeleteFile).
Post(bindIgnErr(form.DeleteRepoFile{}), repo.DeleteFilePost)
m.Group("", func() {
m.Combo("/_upload/*").Get(repo.UploadFile).
Post(bindIgnErr(form.UploadRepoFile{}), repo.UploadFilePost)
m.Post("/upload-file", repo.UploadFileToServer)
m.Post("/upload-remove", bindIgnErr(form.RemoveUploadFile{}), repo.RemoveUploadFileFromServer)
}, func(c *context.Context) {
if !setting.Repository.Upload.Enabled {
c.NotFound()
return
}
})
}, repo.MustBeNotBare, reqRepoWriter, context.RepoRef(), func(c *context.Context) {
if !c.Repo.CanEnableEditor() {
c.NotFound()
return
}
c.Data["PageIsViewFiles"] = true
})
}, reqSignIn, context.RepoAssignment())
m.Group("/:username/:reponame", func() {
m.Group("", func() {
m.Get("/releases", repo.MustBeNotBare, repo.Releases)
m.Get("/pulls", repo.RetrieveLabels, repo.Pulls)
m.Get("/pulls/:index", repo.ViewPull)
}, context.RepoRef())
m.Group("/branches", func() {
m.Get("", repo.Branches)
m.Get("/all", repo.AllBranches)
m.Post("/delete/*", reqSignIn, reqRepoWriter, repo.DeleteBranchPost)
}, repo.MustBeNotBare, func(c *context.Context) {
c.Data["PageIsViewFiles"] = true
})
m.Group("/wiki", func() {
m.Group("", func() {
m.Combo("/_new").Get(repo.NewWiki).
Post(bindIgnErr(form.NewWiki{}), repo.NewWikiPost)
m.Combo("/:page/_edit").Get(repo.EditWiki).
Post(bindIgnErr(form.NewWiki{}), repo.EditWikiPost)
m.Post("/:page/delete", repo.DeleteWikiPagePost)
}, reqSignIn, reqRepoWriter)
}, repo.MustEnableWiki, context.RepoRef())
m.Get("/archive/*", repo.MustBeNotBare, repo.Download)
m.Group("/pulls/:index", func() {
m.Get("/commits", context.RepoRef(), repo.ViewPullCommits)
m.Get("/files", context.RepoRef(), repo.ViewPullFiles)
m.Post("/merge", reqRepoWriter, repo.MergePullRequest)
}, repo.MustAllowPulls)
m.Group("", func() {
m.Get("/src/*", repo.Home)
m.Get("/raw/*", repo.SingleDownload)
m.Get("/commits/*", repo.RefCommits)
m.Get("/commit/:sha([a-f0-9]{7,40})$", repo.Diff)
m.Get("/forks", repo.Forks)
}, repo.MustBeNotBare, context.RepoRef())
m.Get("/commit/:sha([a-f0-9]{7,40})\\.:ext(patch|diff)", repo.MustBeNotBare, repo.RawDiff)
m.Get("/compare/:before([a-z0-9]{40})\\.\\.\\.:after([a-z0-9]{40})", repo.MustBeNotBare, context.RepoRef(), repo.CompareDiff)
}, ignSignIn, context.RepoAssignment())
m.Group("/:username/:reponame", func() {
m.Get("/stars", repo.Stars)
m.Get("/watchers", repo.Watchers)
}, ignSignIn, context.RepoAssignment(), context.RepoRef())
m.Group("/:username", func() {
m.Get("/:reponame", ignSignIn, context.RepoAssignment(), context.RepoRef(), repo.Home)
m.Group("/:reponame", func() {
m.Head("/tasks/trigger", repo.TriggerTask)
})
// Use the regexp to match the repository name
// Duplicated routes to enable different ways of accessing same set of URLs,
// e.g. with or without ".git" suffix.
m.Group("/:reponame([\\d\\w-_\\.]+\\.git$)", func() {
m.Get("", ignSignIn, context.RepoAssignment(), context.RepoRef(), repo.Home)
m.Options("/*", ignSignInAndCsrf, repo.HTTPContexter(), repo.HTTP)
m.Route("/*", "GET,POST", ignSignInAndCsrf, repo.HTTPContexter(), repo.HTTP)
})
m.Options("/:reponame/*", ignSignInAndCsrf, repo.HTTPContexter(), repo.HTTP)
m.Route("/:reponame/*", "GET,POST", ignSignInAndCsrf, repo.HTTPContexter(), repo.HTTP)
})
// ***** END: Repository *****
m.Group("/api", func() {
apiv1.RegisterRoutes(m)
}, ignSignIn)
// robots.txt
m.Get("/robots.txt", func(c *context.Context) {
if setting.HasRobotsTxt {
c.ServeFileContent(path.Join(setting.CustomPath, "robots.txt"))
} else {
c.NotFound()
}
})
// Not found handler.
m.NotFound(routes.NotFound)
// Flag for port number in case first time run conflict.
if c.IsSet("port") {
setting.AppURL = strings.Replace(setting.AppURL, setting.HTTPPort, c.String("port"), 1)
setting.HTTPPort = c.String("port")
}
var listenAddr string
if setting.Protocol == setting.SCHEME_UNIX_SOCKET {
listenAddr = fmt.Sprintf("%s", setting.HTTPAddr)
} else {
listenAddr = fmt.Sprintf("%s:%s", setting.HTTPAddr, setting.HTTPPort)
}
log.Info("Listen: %v://%s%s", setting.Protocol, listenAddr, setting.AppSubURL)
var err error
switch setting.Protocol {
case setting.SCHEME_HTTP:
err = http.ListenAndServe(listenAddr, m)
case setting.SCHEME_HTTPS:
var tlsMinVersion uint16
switch setting.TLSMinVersion {
case "SSL30":
tlsMinVersion = tls.VersionSSL30
case "TLS12":
tlsMinVersion = tls.VersionTLS12
case "TLS11":
tlsMinVersion = tls.VersionTLS11
case "TLS10":
fallthrough
default:
tlsMinVersion = tls.VersionTLS10
}
server := &http.Server{Addr: listenAddr, TLSConfig: &tls.Config{
MinVersion: tlsMinVersion,
CurvePreferences: []tls.CurveID{tls.CurveP521, tls.CurveP384, tls.CurveP256},
PreferServerCipherSuites: true,
CipherSuites: []uint16{
tls.TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,
tls.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256, // Required for HTTP/2 support.
tls.TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA,
tls.TLS_RSA_WITH_AES_256_CBC_SHA,
},
}, Handler: m}
err = server.ListenAndServeTLS(setting.CertFile, setting.KeyFile)
case setting.SCHEME_FCGI:
err = fcgi.Serve(nil, m)
case setting.SCHEME_UNIX_SOCKET:
os.Remove(listenAddr)
var listener *net.UnixListener
listener, err = net.ListenUnix("unix", &net.UnixAddr{listenAddr, "unix"})
if err != nil {
break // Handle error after switch
}
// FIXME: add proper implementation of signal capture on all protocols
// execute this on SIGTERM or SIGINT: listener.Close()
if err = os.Chmod(listenAddr, os.FileMode(setting.UnixSocketPermission)); err != nil {
log.Fatal(4, "Failed to set permission of unix socket: %v", err)
}
err = http.Serve(listener, m)
default:
log.Fatal(4, "Invalid protocol: %s", setting.Protocol)
}
if err != nil {
log.Fatal(4, "Failed to start server: %v", err)
}
return nil
}

View File

@@ -1,3 +0,0 @@
Execute following command in ROOT directory when anything is changed:
$ make bindata

View File

@@ -2,53 +2,26 @@
# !!! PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE !!! # !!! PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE !!!
# !!! IF YOU ARE PACKAGING PROVIDER, PLEASE MAKE OWN COPY OF IT !!! # !!! IF YOU ARE PACKAGING PROVIDER, PLEASE MAKE OWN COPY OF IT !!!
; App name that shows on every page title ; The brand name of the application, can be your company or team name.
APP_NAME = Gogs BRAND_NAME = Gogs
; The name of the system user that runs Gogs ; The system user who should be running the applications. It has no effect on Windows,
; otherwise, it should match the value of $USER environment variable.
RUN_USER = git RUN_USER = git
; Either "dev", "prod" or "test" ; The running mode of the application, can be either "dev", "prod" or "test".
RUN_MODE = dev RUN_MODE = dev
[server] [server]
PROTOCOL = http ; The public-facing URL for the application.
EXTERNAL_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
; The public-facing domain name for the application.
DOMAIN = localhost DOMAIN = localhost
ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/ ; The protocol that is used to serve direct traffic to the application.
; Currently supports "http", "https", "fcgi" and "unix".
PROTOCOL = http
; The address to be listened by the application.
HTTP_ADDR = 0.0.0.0 HTTP_ADDR = 0.0.0.0
; The port number to be listened by the application.
HTTP_PORT = 3000 HTTP_PORT = 3000
; Permission for unix socket
UNIX_SOCKET_PERMISSION = 666
; Local (DMZ) URL for Gogs workers (such as SSH update) accessing web service.
; In most cases you do not need to change the default value.
; Alter it only if your SSH server node is not the same as HTTP node.
LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
; Disable SSH feature when not available
DISABLE_SSH = false
; Whether use builtin SSH server or not.
START_SSH_SERVER = false
; Domain name to be exposed in SSH clone URL
SSH_DOMAIN = %(DOMAIN)s
; Port number to be exposed in SSH clone URL
SSH_PORT = 22
; Network interface builtin SSH server listens on
SSH_LISTEN_HOST = 0.0.0.0
; Port number builtin SSH server listens on
SSH_LISTEN_PORT = %(SSH_PORT)s
; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.
SSH_ROOT_PATH =
; Indicate whether to rewrite authorized_keys at start, ignored when use builtin SSH server
REWRITE_AUTHORIZED_KEYS_AT_START = false
; Choose the ciphers to support for SSH connections
SSH_SERVER_CIPHERS = aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, arcfour256, arcfour128
; Directory to create temporary files when test publick key using ssh-keygen,
; default is system temporary directory.
SSH_KEY_TEST_PATH =
; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call.
SSH_KEYGEN_PATH = ssh-keygen
; Indicate whether to check minimum key size with corresponding type
MINIMUM_KEY_SIZE_CHECK = false
; Disable CDN even in "prod" mode
OFFLINE_MODE = false
DISABLE_ROUTER_LOG = false
; Generate steps: ; Generate steps:
; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com ; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com
; ;
@@ -58,267 +31,334 @@ DISABLE_ROUTER_LOG = false
; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes ; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
CERT_FILE = custom/https/cert.pem CERT_FILE = custom/https/cert.pem
KEY_FILE = custom/https/key.pem KEY_FILE = custom/https/key.pem
; Allowed TLS version values: SSL30, TLS10, TLS11, TLS12 ; The minimum allowed TLS version, currently supports "TLS10", "TLS11", "TLS12", and "TLS13".
TLS_MIN_VERSION = TLS10 TLS_MIN_VERSION = TLS12
; File permission when serve traffic via Unix domain socket.
UNIX_SOCKET_PERMISSION = 666
; Local (DMZ) URL for workers (e.g. SSH update) accessing web service.
; In most cases you do not need to change the default value.
; Alter it only if your SSH server node is not the same as HTTP node.
LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
; Upper level of template and static file path ; Whether to disable using CDN for static files regardless.
; default is the path where Gogs is executed OFFLINE_MODE = false
STATIC_ROOT_PATH = ; Whether to disable logging in router.
; Default path for App data DISABLE_ROUTER_LOG = true
APP_DATA_PATH = data ; Whether to enable application level GZIP compression.
; Application level GZIP support
ENABLE_GZIP = false ENABLE_GZIP = false
; Landing page for non-logged users, can be "home" or "explore"
LANDING_PAGE = home
[repository] ; The path for storing application specific data.
; Root path for storing repositories's data, default is "~/<username>/gogs-repositories" APP_DATA_PATH = data
ROOT = ; Whether to enable to load assets (i.e. "conf", "templates", "public") from disk instead of embedded bindata.
; The script type server supports, sometimes could be "sh" LOAD_ASSETS_FROM_DISK = false
SCRIPT_TYPE = bash
; Default ANSI charset for an unrecognized charset
ANSI_CHARSET =
; Force every new repository to be private
FORCE_PRIVATE = false
; Global maximum creation limit of repository per user, -1 means no limit
MAX_CREATION_LIMIT = -1
; Mirror sync queue length, increase if mirror syncing starts hanging
MIRROR_QUEUE_LENGTH = 1000
; Patch test queue length, increase if pull request patch testing starts hanging
PULL_REQUEST_QUEUE_LENGTH = 1000
; Preferred Licenses to place at the top of the list
; Name must match file name in conf/license or custom/conf/license
PREFERRED_LICENSES = Apache License 2.0,MIT License
; Disable ability to interact with repositories by HTTP protocol
DISABLE_HTTP_GIT = false
; Enable ability to migrate repository by local path
ENABLE_LOCAL_PATH_MIGRATION = false
; Concurrency is used to retrieve commits information. This variable define
; the maximum number of tasks that can be run at the same time. Usually, the
; value depend of how many CPUs (cores) you have. If the value is set to zero
; or under, GOGS will automatically detect the number of CPUs your system have
COMMITS_FETCH_CONCURRENCY = 0
; Enable render mode for raw file
ENABLE_RAW_FILE_RENDER_MODE = false
[repository.editor] ; The landing page URL for anonymous users, the value should not include
; List of file extensions that should have line wraps in the CodeMirror editor. ; subpath that is handled by the reverse proxy.
; Separate extensions with a comma. To line wrap files without extension, just put a comma LANDING_URL = /
LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd,
; Valid file modes that have a preview API associated with them, such as api/v1/markdown.
; Separate values by commas. Preview tab in edit mode won't show if the file extension doesn't match
PREVIEWABLE_FILE_MODES = markdown
[repository.upload] ; Whether to disable SSH access to the application entirely.
; Enable repository file uploads. DISABLE_SSH = false
ENABLED = true ; The domain name to be exposed in SSH clone URL.
; Path to temporarily store uploads (default path gets cleaned by Gogs in every start) SSH_DOMAIN = %(DOMAIN)s
TEMP_PATH = data/tmp/uploads ; The port number to be exposed in SSH clone URL.
; File types that are allowed to be uploaded, e.g. image/jpeg|image/png. Leave empty means allow any file type SSH_PORT = 22
ALLOWED_TYPES = ; The path of SSH root directory, default is "$HOME/.ssh".
; Maximum size of each file in MB SSH_ROOT_PATH =
FILE_MAX_SIZE = 3 ; The path to ssh-keygen, default is "ssh-keygen" and let shell find out which one to call.
; Maximum number of files per upload SSH_KEYGEN_PATH = ssh-keygen
MAX_FILES = 5 ; The directory to create temporary files when test a public key using ssh-keygen,
; default is the system temporary directory.
SSH_KEY_TEST_PATH =
; Whether to check minimum public key size with corresponding type.
MINIMUM_KEY_SIZE_CHECK = false
; Whether to rewrite "~/.ssh/authorized_keys" file at start, ignored when use builtin SSH server.
REWRITE_AUTHORIZED_KEYS_AT_START = false
; Whether to start a builtin SSH server.
START_SSH_SERVER = false
; The network interface for builtin SSH server to listen on.
SSH_LISTEN_HOST = 0.0.0.0
; The port number for builtin SSH server to listen on.
SSH_LISTEN_PORT = %(SSH_PORT)s
; The list of accepted ciphers for connections to builtin SSH server.
SSH_SERVER_CIPHERS = aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, arcfour256, arcfour128
; The list of accepted MACs for connections to builtin SSH server.
SSH_SERVER_MACS = hmac-sha2-256-etm@openssh.com, hmac-sha2-256, hmac-sha1
; The list of accepted key exchange algorithms for connections to builtin SSH server.
SSH_SERVER_ALGORITHMS = rsa, ecdsa, ed25519
; Attachment settings for releases ; Define allowed algorithms and their minimum key length (use -1 to disable a type).
[release.attachment]
; Whether attachments are enabled. Defaults to `true`
ENABLED = true
; Path for attachments. Defaults to `data/attachments`
PATH = data/attachments
; One or more allowed types, e.g. image/jpeg|image/png
ALLOWED_TYPES = */*
; Max size of each file. Defaults to 32MB
MAX_SIZE = 32
; Max number of files per upload. Defaults to 10
MAX_FILES = 10
[markdown]
; Enable hard line break extension
ENABLE_HARD_LINE_BREAK = false
; List of custom URL-Schemes that are allowed as links when rendering Markdown
; for example git,magnet
CUSTOM_URL_SCHEMES =
; List of file extensions that should be rendered/edited as Markdown
; Separate extensions with a comma. To render files w/o extension as markdown, just put a comma
FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
[smartypants]
ENABLED = false
FRACTIONS = true
DASHES = true
LATEX_DASHES = true
ANGLED_QUOTES = true
[http]
; Value for Access-Control-Allow-Origin header, default is not to present
ACCESS_CONTROL_ALLOW_ORIGIN =
; Define allowed algorithms and their minimum key length (use -1 to disable a type)
[ssh.minimum_key_sizes] [ssh.minimum_key_sizes]
ED25519 = 256 ED25519 = 256
ECDSA = 256 ECDSA = 256
RSA = 2048 RSA = 2048
DSA = 1024 DSA = 1024
[database] [repository]
; Either "mysql", "postgres" or "sqlite3", you can connect to TiDB with MySQL protocol ; The root path for storing managed repositories, default is "~/gogs-repositories"
DB_TYPE = mysql ROOT =
HOST = 127.0.0.1:3306 ; The script type server supports, sometimes could be "sh".
NAME = gogs SCRIPT_TYPE = bash
USER = root ; Default ANSI charset for an unrecognized charset.
PASSWD = ANSI_CHARSET =
; For "postgres" only, either "disable", "require" or "verify-full" ; Whether to force every new repository to be private.
SSL_MODE = disable FORCE_PRIVATE = false
; For "sqlite3" and "tidb", use absolute path when you start as service ; The global limit of number of repositories a user can create, -1 means no limit.
PATH = data/gogs.db MAX_CREATION_LIMIT = -1
; Preferred Licenses to place at the top of the list.
; Name must match file name in "conf/license" or "custom/conf/license".
PREFERRED_LICENSES = Apache License 2.0, MIT License
; Whether to disable Git interaction with repositories via HTTP/HTTPS protocol.
DISABLE_HTTP_GIT = false
; Whether to enable ability to migrate repository by server local path.
ENABLE_LOCAL_PATH_MIGRATION = false
; Whether to enable render mode for raw file. There are potential security risks.
ENABLE_RAW_FILE_RENDER_MODE = false
; The maximum number of goroutines that can be run at the same time for a single
; fetch request. Usually, the value depend of how many CPU (cores) you have. If
; the value is non-positive, it matches the number of CPUs available to the application.
COMMITS_FETCH_CONCURRENCY = 0
; Default branch name when creating new repositories.
DEFAULT_BRANCH = master
[admin] [repository.editor]
; Disable regular (non-admin) users to create organizations ; List of file extensions that should have line wraps in the CodeMirror editor.
DISABLE_REGULAR_ORG_CREATION = false ; Separate extensions with a comma.
LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd
; Valid file modes that have a preview API associated with them, such as "/api/v1/markdown".
; Separate values by commas. Preview tab in edit mode won't show if the file extension doesn't match.
PREVIEWABLE_FILE_MODES = markdown
[security] [repository.upload]
INSTALL_LOCK = false ; Whether to enable repository file uploads.
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
SECRET_KEY = !#@FDEWREWR&*(
; Auto-login remember days
LOGIN_REMEMBER_DAYS = 7
COOKIE_USERNAME = gogs_awesome
COOKIE_REMEMBER_NAME = gogs_incredible
COOKIE_SECURE = false
; Reverse proxy authentication header name of user name
REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
; Enable to set cookie to indicate user login status
ENABLE_LOGIN_STATUS_COOKIE = false
LOGIN_STATUS_COOKIE_NAME = login_status
[service]
ACTIVE_CODE_LIVE_MINUTES = 180
RESET_PASSWD_CODE_LIVE_MINUTES = 180
; User need to confirm e-mail for registration
REGISTER_EMAIL_CONFIRM = false
; Does not allow register and admin create account only
DISABLE_REGISTRATION = false
; User must sign in to view anything.
REQUIRE_SIGNIN_VIEW = false
; Mail notification
ENABLE_NOTIFY_MAIL = false
; More detail: https://github.com/gogits/gogs/issues/165
ENABLE_REVERSE_PROXY_AUTHENTICATION = false
ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
; Enable captcha validation for registration
ENABLE_CAPTCHA = true
[webhook]
; Types are enabled for users to use, can be "gogs", "slack", "discord", "dingtalk"
TYPES = gogs, slack, discord, dingtalk
; Hook task queue length, increase if webhook shooting starts hanging
QUEUE_LENGTH = 1000
; Deliver timeout in seconds
DELIVER_TIMEOUT = 15
; Allow insecure certification
SKIP_TLS_VERIFY = false
; Number of history information in each page
PAGING_NUM = 10
[mailer]
ENABLED = false
; Buffer length of channel, keep it as it is if you don't know what it is.
SEND_BUFFER_LEN = 100
; Prefix prepended to the subject line
SUBJECT_PREFIX = `[%(APP_NAME)s] `
; Mail server
; Gmail: smtp.gmail.com:587
; QQ: smtp.qq.com:465
; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used.
HOST =
; Disable HELO operation when hostname are different.
DISABLE_HELO =
; Custom hostname for HELO operation, default is from system.
HELO_HOSTNAME =
; Do not verify the certificate of the server. Only use this for self-signed certificates
SKIP_VERIFY =
; Use client certificate
USE_CERTIFICATE = false
CERT_FILE = custom/mailer/cert.pem
KEY_FILE = custom/mailer/key.pem
; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
FROM =
; Mailer user name and password
USER =
PASSWD =
; Use text/plain as format of content
USE_PLAIN_TEXT = false
[cache]
; Either "memory", "redis", or "memcache", default is "memory"
ADAPTER = memory
; For "memory" only, GC interval in seconds, default is 60
INTERVAL = 60
; For "redis" and "memcache", connection host address
; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
; memcache: `127.0.0.1:11211`
HOST =
[session]
; Either "memory", "file", or "redis", default is "memory"
PROVIDER = memory
; Provider config options
; memory: not have any config yet
; file: session file path, e.g. `data/sessions`
; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
PROVIDER_CONFIG = data/sessions
; Session cookie name
COOKIE_NAME = i_like_gogits
; If you use session in https only, default is false
COOKIE_SECURE = false
; Enable set cookie, default is true
ENABLE_SET_COOKIE = true
; Session GC time interval, default is 3600
GC_INTERVAL_TIME = 3600
; Session life time, default is 86400
SESSION_LIFE_TIME = 86400
; Cookie name for CSRF
CSRF_COOKIE_NAME = _csrf
[picture]
; Path to store user uploaded avatars
AVATAR_UPLOAD_PATH = data/avatars
; Chinese users can choose "duoshuo"
; or a custom avatar source, like: http://cn.gravatar.com/avatar/
GRAVATAR_SOURCE = gravatar
; This value will be forced to be true in offline mode.
DISABLE_GRAVATAR = false
; Federated avatar lookup uses DNS to discover avatar associated
; with emails, see https://www.libravatar.org
; This value will be forced to be false in offline mode or Gravatar is disbaled.
ENABLE_FEDERATED_AVATAR = false
; Attachment settings for issues
[attachment]
; Whether attachments are enabled. Defaults to `true`
ENABLED = true ENABLED = true
; Path for attachments. Defaults to `data/attachments` ; The path to temporarily store uploads (content under this path gets wiped out on every start).
PATH = data/attachments TEMP_PATH = data/tmp/uploads
; One or more allowed types, e.g. image/jpeg|image/png ; File types that are allowed to be uploaded, e.g. "image/jpeg|image/png". Leave empty to allow any file type.
ALLOWED_TYPES = image/jpeg|image/png ALLOWED_TYPES =
; Max size of each file. Defaults to 4MB ; The maximum size of each file in MB.
MAX_SIZE = 4 FILE_MAX_SIZE = 3
; Max number of files per upload. Defaults to 5 ; The maximum number of files per upload.
MAX_FILES = 5 MAX_FILES = 5
[time] [database]
; Specifies the format for fully outputed dates. Defaults to RFC1123 ; The database backend, either "postgres", "mysql" or "sqlite3".
; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano TYPE = postgres
; For more information about the format see http://golang.org/pkg/time/#pkg-constants HOST = 127.0.0.1:5432
FORMAT = NAME = gogs
USER = gogs
PASSWORD =
; For "postgres" only
SCHEMA = public
; For "postgres" only, either "disable", "require" or "verify-full".
SSL_MODE = disable
; For "sqlite3" only, make sure to use absolute path.
PATH = data/gogs.db
; The maximum open connections of the pool.
MAX_OPEN_CONNS = 30
; The maximum idle connections of the pool.
MAX_IDLE_CONNS = 30
; General settings of loggers [security]
; Whether to show the install page, set this to "true" to bypass it.
INSTALL_LOCK = false
; The secret to encrypt cookie values, 2FA code, etc.
; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
SECRET_KEY = !#@FDEWREWR&*(
; The days remembered for auto-login.
LOGIN_REMEMBER_DAYS = 7
; The cookie name to store auto-login information.
COOKIE_REMEMBER_NAME = gogs_incredible
; The cookie name to store logged in username.
COOKIE_USERNAME = gogs_awesome
; Whether to set secure cookie.
COOKIE_SECURE = false
; Whether to set cookie to indicate user login status.
ENABLE_LOGIN_STATUS_COOKIE = false
; The cookie name to store user login status.
LOGIN_STATUS_COOKIE_NAME = login_status
; A comma separated list of hostnames that are explicitly allowed to be accessed within the local network.
; Use "*" to allow all hostnames.
LOCAL_NETWORK_ALLOWLIST =
[email]
; Whether to enable the email service.
ENABLED = false
; The prefix prepended to the subject line.
SUBJECT_PREFIX = `[%(BRAND_NAME)s] `
; The SMTP server with its port, e.g. smtp.mailgun.org:587, smtp.gmail.com:587, smtp.qq.com:465
; If the port ends is "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409.
; If the server supports STARTTLS it will always be used.
HOST = smtp.mailgun.org:587
; The email from address (RFC 5322). This can be just an email address, or the `"Name" <email@example.com>` format.
FROM = noreply@gogs.localhost
; The login user.
USER = noreply@gogs.localhost
; The login password.
PASSWORD =
; The custom hostname for HELO operation, default is from system.
HELO_HOSTNAME =
; Whether to skip verifying the certificate of the server. Only use this for self-signed certificates.
SKIP_VERIFY = false
; Whether to use client certificates.
USE_CERTIFICATE = false
CERT_FILE = custom/email/cert.pem
KEY_FILE = custom/email/key.pem
; Whether to use "text/plain" as content format.
USE_PLAIN_TEXT = false
; Whether to attach a plaintext alternative to the MIME message while sending HTML emails.
; It is used to support older mail clients and make spam filters happier.
ADD_PLAIN_TEXT_ALT = false
[auth]
; The valid duration of activate code in minutes.
ACTIVATE_CODE_LIVES = 180
; The valid duration of reset password code in minutes.
RESET_PASSWORD_CODE_LIVES = 180
; Whether to require email confirmation for adding new email addresses.
; Enable this option will also require user to confirm the email for registration.
REQUIRE_EMAIL_CONFIRMATION = false
; Whether to disallow anonymous users visiting the site.
REQUIRE_SIGNIN_VIEW = false
; Whether to disable self-registration. When disabled, accounts would have to be created by admins.
DISABLE_REGISTRATION = false
; Whether to enable captcha validation for registration
ENABLE_REGISTRATION_CAPTCHA = true
; Whether to enable reverse proxy authentication via HTTP header.
ENABLE_REVERSE_PROXY_AUTHENTICATION = false
; Whether to automatically create new users for reverse proxy authentication.
ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
; The HTTP header used as username for reverse proxy authentication.
REVERSE_PROXY_AUTHENTICATION_HEADER = X-WEBAUTH-USER
[user]
; Whether to enable email notifications for users.
ENABLE_EMAIL_NOTIFICATION = false
[session]
; The session provider, either "memory", "file", or "redis".
PROVIDER = memory
; The configuration for respective provider:
; - memory: does not need any config yet
; - file: session file path, e.g. `data/sessions`
; - redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180,tls=true
PROVIDER_CONFIG = data/sessions
; The cookie name to store the session identifier.
COOKIE_NAME = i_like_gogs
; Whether to set cookie in HTTPS only.
COOKIE_SECURE = false
; The GC interval in seconds for session data.
GC_INTERVAL = 3600
; The maximum life time in seconds for a session.
MAX_LIFE_TIME = 86400
; The cookie name for CSRF token.
CSRF_COOKIE_NAME = _csrf
[cache]
; The cache adapter, either "memory", "redis", or "memcache".
ADAPTER = memory
; For "memory" only, GC interval in seconds.
INTERVAL = 60
; For "redis" and "memcache", connection host address:
; - redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
; - memcache: `127.0.0.1:11211`
HOST =
[http]
; The value for "Access-Control-Allow-Origin" header, default is not to present.
ACCESS_CONTROL_ALLOW_ORIGIN =
[lfs]
; The storage backend for uploading new objects.
STORAGE = local
; The root path to store LFS objects on local file system.
OBJECTS_PATH = data/lfs-objects
; The path to temporarily store LFS objects during upload verification.
OBJECTS_TEMP_PATH = data/tmp/lfs-objects
[attachment]
; Whether to enabled upload attachments in general.
ENABLED = true
; The path to store attachments on the file system.
PATH = data/attachments
; File types that are allowed to be uploaded, e.g. "image/jpeg|image/png". Leave empty to allow any file type.
ALLOWED_TYPES = image/jpeg|image/png
; The maximum size of each file in MB.
MAX_SIZE = 4
; The maximum number of files per upload.
MAX_FILES = 5
[release.attachment]
; Whether to enabled upload attachments for releases.
ENABLED = true
; File types that are allowed to be uploaded, e.g. "image/jpeg|image/png". Leave empty to allow any file type.
ALLOWED_TYPES = */*
; The maximum size of each file in MB.
MAX_SIZE = 32
; The maximum number of files per upload.
MAX_FILES = 10
[time]
; Specifies the format for fully outputed dates.
; Values should be one of the following:
; ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano.
; For more information about the format see http://golang.org/pkg/time/#pkg-constants.
FORMAT = RFC1123
[picture]
; The path to store user avatars on the file system.
AVATAR_UPLOAD_PATH = data/avatars
; The path to store repository avatars on the file system.
REPOSITORY_AVATAR_UPLOAD_PATH = data/repo-avatars
; Chinese users can use a custom avatar source, such as http://cn.gravatar.com/avatar/.
GRAVATAR_SOURCE = gravatar
; Whether to disable Gravatar, this value will be forced to be true in offline mode.
DISABLE_GRAVATAR = false
; Whether to enable federated avatar lookup uses DNS to discover avatar associated
; with emails, see https://www.libravatar.org for details.
; This value will be forced to be false in offline mode or when Gravatar is disabled.
ENABLE_FEDERATED_AVATAR = false
[markdown]
; Whether to enable hard line break extension.
ENABLE_HARD_LINE_BREAK = false
; The list of custom URL schemes that are allowed as links when rendering Markdown.
; For example, "git" (for "git://") and "magnet" (for "magnet://").
CUSTOM_URL_SCHEMES =
; The list of file extensions that should be rendered/edited as Markdown.
; Separate extensions with a comma. To render files with no extension as markdown, just put a comma.
FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
[smartypants]
; Whether to enable the Smartypants extension.
ENABLED = false
FRACTIONS = true
DASHES = true
LATEX_DASHES = true
ANGLED_QUOTES = true
[admin]
; Whether to disable regular (non-admin) users to create organizations.
DISABLE_REGULAR_ORG_CREATION = false
[webhook]
; The list of enabled types for users to use, can be "gogs", "slack", "discord", "dingtalk".
TYPES = gogs, slack, discord, dingtalk
; Deliver timeout in seconds.
DELIVER_TIMEOUT = 15
; Whether to allow insecure certification.
SKIP_TLS_VERIFY = false
; The number of history information in each page.
PAGING_NUM = 10
; General settings of loggers.
[log] [log]
; The root path for all log files, default is "log/" subdirectory.
ROOT_PATH = ROOT_PATH =
; Can be "console" and "file", default is "console" ; Can be "console", "file", "slack" and "discord".
; Use comma to separate multiple modes, e.g. "console, file" ; Use comma to separate multiple modes, e.g. "console, file"
MODE = console MODE = console
; Buffer length of channel, keep it as it is if you don't know what it is. ; Buffer length of channel, keep it as it is if you don't know what it is.
@@ -328,31 +368,39 @@ LEVEL = Trace
; For "console" mode only ; For "console" mode only
[log.console] [log.console]
; leave empty to inherit ; Comment out to inherit
LEVEL = ; LEVEL =
; For "file" mode only ; For "file" mode only
[log.file] [log.file]
; leave empty to inherit ; Comment out to inherit
LEVEL = ; LEVEL =
; This enables automated log rotate (switch of following options) ; Whether to enable automated log rotate (switch of following options).
LOG_ROTATE = true LOG_ROTATE = true
; Segment log daily ; Whether to segment log files daily.
DAILY_ROTATE = true DAILY_ROTATE = true
; Max size shift of single file, default is 28 means 1 << 28, 256MB ; The maximum size shift of single file, default is 28 means 1 << 28 = 256MB.
MAX_SIZE_SHIFT = 28 MAX_SIZE_SHIFT = 28
; Max line number of single file ; The maximum number of lines of single file.
MAX_LINES = 1000000 MAX_LINES = 1000000
; Expired days of log file (delete after max days) ; The expired days of log file (delete after max days).
MAX_DAYS = 7 MAX_DAYS = 7
; For "slack" mode only ; For "slack" mode only
[log.slack] [log.slack]
; leave empty to inherit ; Comment out to inherit
LEVEL = ; LEVEL =
; Webhook URL ; Webhook URL
URL = URL =
[log.discord]
; Comment out to inherit
; LEVEL =
; Webhook URL
URL =
; The username to be displayed in notification.
USERNAME = %(BRAND_NAME)s
[log.xorm] [log.xorm]
; Enable file rotation ; Enable file rotation
ROTATE = true ROTATE = true
@@ -363,14 +411,24 @@ MAX_SIZE = 100
; Maximum days to keep logger files ; Maximum days to keep logger files
MAX_DAYS = 3 MAX_DAYS = 3
[log.gorm]
; Whether to enable file rotation.
ROTATE = true
; Whether to rotate file every day.
ROTATE_DAILY = true
; The maximum file size in MB before next rotate.
MAX_SIZE = 100
; The maximum days to keep files.
MAX_DAYS = 3
[cron] [cron]
; Enable running cron tasks periodically. ; Enable running cron tasks periodically.
ENABLED = true ENABLED = true
; Run cron tasks when Gogs starts. ; Run cron tasks when Gogs starts.
RUN_AT_START = false RUN_AT_START = false
; Update mirrors
[cron.update_mirrors] [cron.update_mirrors]
; Defines how often the mirror syncer checks if any mirror needs to be synchronized (based on the mirror update interval).
SCHEDULE = @every 10m SCHEDULE = @every 10m
; Repository health check ; Repository health check
@@ -396,12 +454,12 @@ OLDER_THAN = 24h
[git] [git]
; Disables highlight of added and removed changes ; Disables highlight of added and removed changes
DISABLE_DIFF_HIGHLIGHT = false DISABLE_DIFF_HIGHLIGHT = false
; Max number of files shown in diff view
MAX_GIT_DIFF_FILES = 100
; Max number of lines allowed of a single file in diff view ; Max number of lines allowed of a single file in diff view
MAX_GIT_DIFF_LINES = 1000 MAX_GIT_DIFF_LINES = 1000
; Max number of characters of a line allowed in diff view ; Max number of characters of a line allowed in diff view
MAX_GIT_DIFF_LINE_CHARACTERS = 500 MAX_GIT_DIFF_LINE_CHARACTERS = 2000
; Max number of files shown in diff view
MAX_GIT_DIFF_FILES = 100
; Arguments for command 'git gc', e.g. "--aggressive --auto" ; Arguments for command 'git gc', e.g. "--aggressive --auto"
; see more on http://git-scm.com/docs/git-gc/1.7.5 ; see more on http://git-scm.com/docs/git-gc/1.7.5
GC_ARGS = GC_ARGS =
@@ -412,10 +470,12 @@ MIGRATE = 600
MIRROR = 300 MIRROR = 300
CLONE = 300 CLONE = 300
PULL = 300 PULL = 300
DIFF = 60
GC = 60 GC = 60
[mirror] [mirror]
; Default interval in hours between each check ; Defines the default interval (in hours) until the next sync for a mirror (after a successful mirror sync).
; It can be overridden individually for each mirror repository in the settings.
DEFAULT_INTERVAL = 8 DEFAULT_INTERVAL = 8
[api] [api]
@@ -454,11 +514,26 @@ NEWS_FEED_PAGING_NUM = 20
; Number of commits that are showed in one page ; Number of commits that are showed in one page
COMMITS_PAGING_NUM = 30 COMMITS_PAGING_NUM = 30
[i18n] [prometheus]
LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sr-SP,sv-SE,ko-KR,gl-ES,uk-UA,en-GB,hu-HU,sk-SK,id-ID,fa-IR ; Whether to enable Prometheus metrics.
NAMES = English,简体中文,繁體中文(香港),繁體中文(臺灣),Deutsch,français,Nederlands,latviešu,русский,日本語,español,português do Brasil,polski,български,italiano,suomi,Türkçe,čeština,српски,svenska,한국어,galego,українська,English (United Kingdom),Magyar,Slovenčina,Indonesian,Persian ENABLED = true
; Whether to enable HTTP Basic Authentication to protect metrics data.
ENABLE_BASIC_AUTH = false
; The username for HTTP Basic Authentication.
BASIC_AUTH_USERNAME =
; The password for HTTP Basic Authentication.
BASIC_AUTH_PASSWORD =
; Used for datetimepicker ; Extension mapping to highlight class
; e.g. .toml=ini
[highlight.mapping]
[i18n]
LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sr-SP,sv-SE,ko-KR,gl-ES,uk-UA,en-GB,hu-HU,sk-SK,id-ID,fa-IR,vi-VN,pt-PT,mn-MN,ro-RO
NAMES = English,简体中文,繁體中文(香港),繁體中文(臺灣),Deutsch,français,Nederlands,latviešu,русский,日本語,español,português do Brasil,polski,български,italiano,suomi,Türkçe,čeština,српски,svenska,한국어,galego,українська,English (United Kingdom),Magyar,Slovenčina,Indonesian,Persian,Vietnamese,Português,Монгол,Română
; Used for jQuery DateTimePicker,
; list of supported languages in https://xdsoft.net/jqplugins/datetimepicker/#lang
[i18n.datelang] [i18n.datelang]
en-US = en en-US = en
zh-CN = zh zh-CN = zh
@@ -488,14 +563,12 @@ hu-HU = hu
sk-SK = sk sk-SK = sk
id-ID = id id-ID = id
fa-IR = fa fa-IR = fa
vi-VN = vi
; Extension mapping to highlight class pt-PT = pt
; e.g. .toml=ini mn-MN = mn
[highlight.mapping] ro-RO = ro
[other] [other]
SHOW_FOOTER_BRANDING = false SHOW_FOOTER_BRANDING = false
; Show version information about Gogs and Go in the footer
SHOW_FOOTER_VERSION = true
; Show time of template execution in the footer ; Show time of template execution in the footer
SHOW_FOOTER_TEMPLATE_LOAD_TIME = true SHOW_FOOTER_TEMPLATE_LOAD_TIME = true

View File

@@ -0,0 +1,10 @@
# This is an example of GitHub authentication
#
id = 105
type = github
name = GitHub
is_activated = true
[config]
api_endpoint = https://api.github.com/

View File

@@ -0,0 +1,29 @@
# This is an example of LDAP (BindDN) authentication
#
id = 101
type = ldap_bind_dn
name = LDAP BindDN
is_activated = true
[config]
host = mydomain.com
port = 636
# 0 - Unencrypted, 1 - LDAPS, 2 - StartTLS
security_protocol = 0
skip_verify = false
bind_dn =
bind_password =
user_base = ou=Users,dc=mydomain,dc=com
attribute_username =
attribute_name =
attribute_surname =
attribute_mail = mail
attributes_in_bind = false
filter = (&(objectClass=posixAccount)(cn=%s))
admin_filter =
group_enabled = false
group_dn =
group_filter =
group_member_uid =
user_uid =

View File

@@ -0,0 +1,30 @@
# This is an example of LDAP (simple auth) authentication
#
id = 102
type = ldap_simple_auth
name = LDAP Simple Auth
is_activated = true
[config]
host = mydomain.com
port = 636
# 0 - Unencrypted, 1 - LDAPS, 2 - StartTLS
security_protocol = 0
skip_verify = false
bind_dn =
bind_password =
user_base =
user_dn = cn=%s,ou=Users,dc=mydomain,dc=com
attribute_username =
attribute_name =
attribute_surname =
attribute_mail = mail
attributes_in_bind = false
filter = (&(objectClass=posixAccount)(cn=%s))
admin_filter =
group_enabled = false
group_dn =
group_filter =
group_member_uid =
user_uid =

View File

@@ -0,0 +1,10 @@
# This is an example of PAM authentication
#
id = 104
type = pam
name = System Auth
is_activated = true
[config]
service_name = system-auth

View File

@@ -0,0 +1,16 @@
# This is an example of SMTP authentication
#
id = 103
type = smtp
name = GMail
is_activated = true
[config]
# Either "PLAIN" or "LOGIN"
auth = PLAIN
host = smtp.gmail.com
port = 587
allowed_domains =
tls = true
skip_verify = false

23
conf/embed.go Normal file
View File

@@ -0,0 +1,23 @@
package conf
import (
"embed"
)
//go:embed app.ini **/*
var Files embed.FS
// FileNames returns a list of filenames exists in the given direction within
// Files. The list includes names of subdirectories.
func FileNames(dir string) ([]string, error) {
entries, err := Files.ReadDir(dir)
if err != nil {
return nil, err
}
fileNames := make([]string, 0, len(entries))
for _, entry := range entries {
fileNames = append(fileNames, entry.Name())
}
return fileNames, nil
}

16
conf/embed_test.go Normal file
View File

@@ -0,0 +1,16 @@
package conf
import (
"testing"
"github.com/stretchr/testify/assert"
"github.com/stretchr/testify/require"
)
func TestFileNames(t *testing.T) {
names, err := FileNames(".")
require.NoError(t, err)
want := []string{"app.ini", "auth.d", "gitignore", "label", "license", "locale", "readme"}
assert.Equal(t, want, names)
}

76
conf/gitignore/UnrealEngine vendored Normal file
View File

@@ -0,0 +1,76 @@
# Visual Studio 2015 user specific files
.vs/
# Compiled Object files
*.slo
*.lo
*.o
*.obj
# Precompiled Headers
*.gch
*.pch
# Compiled Dynamic libraries
*.so
*.dylib
*.dll
# Fortran module files
*.mod
# Compiled Static libraries
*.lai
*.la
*.a
*.lib
# Executables
*.exe
*.out
*.app
*.ipa
# These project files can be generated by the engine
*.xcodeproj
*.xcworkspace
*.sln
*.suo
*.opensdf
*.sdf
*.VC.db
*.VC.opendb
# Precompiled Assets
SourceArt/**/*.png
SourceArt/**/*.tga
# Binary Files
Binaries/*
Plugins/*/Binaries/*
# Builds
Build/*
# Whitelist PakBlacklist-<BuildConfiguration>.txt files
!Build/*/
Build/*/**
!Build/*/PakBlacklist*.txt
# Don't ignore icon files in Build
!Build/**/*.ico
# Built data for maps
*_BuiltData.uasset
# Configuration files generated by the Editor
Saved/*
# Compiled source files for the engine to use
Intermediate/*
Plugins/*/Intermediate/*
# Cache files for the editor to use
DerivedDataCache/*

View File

@@ -21,6 +21,7 @@ Barış Arda Yılmaz <ardayilmazgamer AT gmail DOT com>
Bo-Yi Wu <appleboy DOT tw AT gmail DOT com> Bo-Yi Wu <appleboy DOT tw AT gmail DOT com>
Breton Corentin <contact AT neodarz DOT net> Breton Corentin <contact AT neodarz DOT net>
Camille Baronnet <gogs AT camillebaronnet DOT fr> Camille Baronnet <gogs AT camillebaronnet DOT fr>
Changwoo Ryu <cwryu AT debian DOT org>
Christoph Kisfeld <christoph DOT kisfeld AT gmail DOT com> Christoph Kisfeld <christoph DOT kisfeld AT gmail DOT com>
Cysioland Cysioland
Damaris Padieu <damizx AT hotmail DOT fr> Damaris Padieu <damizx AT hotmail DOT fr>
@@ -55,6 +56,7 @@ Luc Stepniewski <luc AT stepniewski DOT fr>
Łukasz Jan Niemier <lukasz AT niemier DOT pl> Łukasz Jan Niemier <lukasz AT niemier DOT pl>
Marc Schiller <marc AT schiller DOT im> Marc Schiller <marc AT schiller DOT im>
Marvin Menzerath <github AT marvin-menzerath DOT de> Marvin Menzerath <github AT marvin-menzerath DOT de>
Mathias Rangel Wulff <m AT rawu DOT dk>
Michael Härtl <haertl DOT mike AT gmail DOT com> Michael Härtl <haertl DOT mike AT gmail DOT com>
Miguel de la Cruz <miguel AT mcrx DOT me> Miguel de la Cruz <miguel AT mcrx DOT me>
Mikhail Burdin <xdshot9000 AT gmail DOT com> Mikhail Burdin <xdshot9000 AT gmail DOT com>
@@ -74,9 +76,11 @@ Robin Hübner <profan AT prfn DOT se>
Rste Risafov <risafov AT lazy DOT com> Rste Risafov <risafov AT lazy DOT com>
SeongJae Park <sj38 DOT park AT gmail DOT com> SeongJae Park <sj38 DOT park AT gmail DOT com>
Sergey Stepanov <sergystepanov AT gmail DOT com> Sergey Stepanov <sergystepanov AT gmail DOT com>
Simona Iacob <s AT zp1 DOT net>
Thomas Fanninger <gogs DOT thomas AT fanninger DOT at> Thomas Fanninger <gogs DOT thomas AT fanninger DOT at>
Tilmann Bach <tilmann AT outlook DOT com> Tilmann Bach <tilmann AT outlook DOT com>
Toni Villena Jiménez <tonivj5 AT gmail DOT com> Toni Villena Jiménez <tonivj5 AT gmail DOT com>
Vincent AMSTOUTZ <vincent DOT amstoutz AT outlook DOT fr>
Vladimir Jigulin mogaika AT yandex DOT ru Vladimir Jigulin mogaika AT yandex DOT ru
Vladimir Vissoultchev <wqweto AT gmail DOT com> Vladimir Vissoultchev <wqweto AT gmail DOT com>
Vongola <me AT vongola DOT tw> Vongola <me AT vongola DOT tw>

View File

@@ -9,7 +9,6 @@ sign_out=Изход
sign_up=Регистрирайте се sign_up=Регистрирайте се
register=Регистрация register=Регистрация
website=Уебсайт website=Уебсайт
version=Версия
page=Страница page=Страница
template=Шаблон template=Шаблон
language=Език language=Език
@@ -44,17 +43,22 @@ issues=Задачи
cancel=Отказ cancel=Отказ
[status]
page_not_found=Страницата не е намерена
internal_server_error=Вътрешна грешка в сървър
[install] [install]
install=Инсталация install=Инсталация
title=Стъпки за инсталиране при първоначално стартиране title=Стъпки за инсталиране при първоначално стартиране
docker_helper=Ако Gogs е стартиран в Docker контейнер, моля прочетете <a target="_blank" href="%s">нашите указания</a> внимателно, преди да правите промени по настройките на тази страница! docker_helper=Ако Gogs е стартиран в Docker контейнер, моля прочетете <a target="_blank" href="%s">нашите указания</a> внимателно, преди да правите промени по настройките на тази страница!
requite_db_desc=Gogs изисква MySQL, PostgreSQL, SQLite3 или TiDB. requite_db_desc=Gogs изисква MySQL, PostgreSQL, SQLite3 или TiDB (през MySQL протокол).
db_title=Настройки на базата данни db_title=Настройки на базата данни
db_type=Тип на база данни db_type=Тип на база данни
host=Сървър host=Сървър
user=Потребител user=Потребител
password=Парола password=Парола
db_name=Име на база данни db_name=Име на база данни
db_schema=Схема
db_helper=Моля, използвайте INNODB engine с utf8_general_ci кодиране на знаци за MySQL. db_helper=Моля, използвайте INNODB engine с utf8_general_ci кодиране на знаци за MySQL.
ssl_mode=Режим SSL ssl_mode=Режим SSL
path=Път path=Път
@@ -84,6 +88,7 @@ log_root_path=Път към журналите
log_root_path_helper=Директория в която се записват журналите. log_root_path_helper=Директория в която се записват журналите.
enable_console_mode=Включване на конзолен режим enable_console_mode=Включване на конзолен режим
enable_console_mode_popup=Изписване на логовете в конзолата, в допълнение към файловият режим. enable_console_mode_popup=Изписване на логовете в конзолата, в допълнение към файловият режим.
default_branch=Клон по подразбиране
optional_title=Опционални настройки optional_title=Опционални настройки
email_title=Настройки на пощенска услуга email_title=Настройки на пощенска услуга
@@ -107,7 +112,7 @@ enable_captcha=Включи Captcha
enable_captcha_popup=Изисква валидиране с captcha при саморегистрация на потребители. enable_captcha_popup=Изисква валидиране с captcha при саморегистрация на потребители.
require_sign_in_view=Включи задължително вписване за преглед на страници require_sign_in_view=Включи задължително вписване за преглед на страници
require_sign_in_view_popup=Само вписани потребители могат да виждат страниците, анонимните посетители виждат само страниците за регистрация и вход. require_sign_in_view_popup=Само вписани потребители могат да виждат страниците, анонимните посетители виждат само страниците за регистрация и вход.
admin_setting_desc=Няма нужда от създаване на администраторски профил в момента, защото потребителят с първо ID в базата автоматично получава администраторски достъп. admin_setting_desc=Няма нужда да създавате администраторски профил в момента, защото потребителят с първо ID в базата автоматично получава администраторски достъп.
admin_title=Настройки на профил на администратора admin_title=Настройки на профил на администратора
admin_name=Потребителско име admin_name=Потребителско име
admin_password=Парола admin_password=Парола
@@ -122,6 +127,7 @@ run_user_not_match=Потребителският контекст на прил
smtp_host_missing_port=Липсва порт в зададения SMTP адрес. smtp_host_missing_port=Липсва порт в зададения SMTP адрес.
invalid_smtp_from=Невалидно поле От: %v invalid_smtp_from=Невалидно поле От: %v
save_config_failed=Неуспешно запазване на конфигурация: %v save_config_failed=Неуспешно запазване на конфигурация: %v
init_failed=Грешка при инициализация на приложение: %v
invalid_admin_setting=Настройките на профил на администратора са невалидни: %v invalid_admin_setting=Настройките на профил на администратора са невалидни: %v
install_success=Добре дошли! Радваме се, че избрахте Gogs, и Ви пожелаваме приятна работа и сърдечни поздрави! install_success=Добре дошли! Радваме се, че избрахте Gogs, и Ви пожелаваме приятна работа и сърдечни поздрави!
invalid_log_root_path=Основният път към журналите е невалиден: %v invalid_log_root_path=Основният път към журналите е невалиден: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Вече имате профил? Впишете се сег
social_register_hepler_msg=Вече имате профил? Свържете се сега! social_register_hepler_msg=Вече имате профил? Свържете се сега!
disable_register_prompt=За съжаление създаването на нови регистрации е изключено. Обърнете се към администратора на сайта. disable_register_prompt=За съжаление създаването на нови регистрации е изключено. Обърнете се към администратора на сайта.
disable_register_mail=За съжаление потвърждението на регистрации е изключено. disable_register_mail=За съжаление потвърждението на регистрации е изключено.
auth_source=Източник за удостоверяване
local=Локален
remember_me=Запомни ме remember_me=Запомни ме
forgot_password=Забравена парола forgot_password=Забравена парола
forget_password=Забравена парола? forget_password=Забравена парола?
@@ -171,10 +179,10 @@ non_local_account=Нелокални потребители не могат да
login_two_factor=Двуфакторно удостоверяване login_two_factor=Двуфакторно удостоверяване
login_two_factor_passcode=Парола за удостоверяване login_two_factor_passcode=Парола за удостоверяване
login_two_factor_enter_recovery_code=Enter a two-factor recovery code login_two_factor_enter_recovery_code=Въведете двуфакторен код за възстановяване
login_two_factor_recovery=Two-factor Recovery login_two_factor_recovery=Двуфакторно възстановяване
login_two_factor_recovery_code=Код за възстановяване login_two_factor_recovery_code=Код за възстановяване
login_two_factor_enter_passcode=Enter a two-factor passcode login_two_factor_enter_passcode=Въведете двуфакторен код
login_two_factor_invalid_recovery_code=Този код за възстановяване вече е бил използван или не е валиден. login_two_factor_invalid_recovery_code=Този код за възстановяване вече е бил използван или не е валиден.
[mail] [mail]
@@ -212,7 +220,7 @@ Content=Съдържание
require_error=` не може да бъде празен.` require_error=` не може да бъде празен.`
alpha_dash_error=` трябва да e валидна буква, число или тире(-_).` alpha_dash_error=` трябва да e валидна буква, число или тире(-_).`
alpha_dash_dot_error=` трябва да e валидна буква, число, тире(-_) или точка.` alpha_dash_dot_error=` трябва да e валидна буква, число, тире(-_) или точка.`
alpha_dash_dot_slash_error=` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error=` must be alphanumeric, dash (-_), dot or slash characters.`
size_error=` трябва да е с размер %s.` size_error=` трябва да е с размер %s.`
min_size_error=` трябва да съдържа поне %s знака.` min_size_error=` трябва да съдържа поне %s знака.`
max_size_error=` трябва да съдържа най-много %s знака.` max_size_error=` трябва да съдържа най-много %s знака.`
@@ -229,6 +237,7 @@ org_name_been_taken=Името на организацията вече се п
team_name_been_taken=Името на екипа вече се ползва. team_name_been_taken=Името на екипа вече се ползва.
email_been_used=Този адрес на ел. поща вече се ползва. email_been_used=Този адрес на ел. поща вече се ползва.
username_password_incorrect=Потребителското име или паролата не са верни. username_password_incorrect=Потребителското име или паролата не са верни.
auth_source_mismatch=The authentication source selected is not associated with the user.
enterred_invalid_repo_name=Моля уверете се, че въведеното име на хранилище е вярно. enterred_invalid_repo_name=Моля уверете се, че въведеното име на хранилище е вярно.
enterred_invalid_owner_name=Моля уверете се, че въведеното име на притежател е вярно. enterred_invalid_owner_name=Моля уверете се, че въведеното име на притежател е вярно.
enterred_invalid_password=Моля уверете се, че въведената парола е вярна. enterred_invalid_password=Моля уверете се, че въведената парола е вярна.
@@ -246,7 +255,7 @@ org_still_own_repo=Тази организация все още притежа
target_branch_not_exist=Целевият клон не съществува. target_branch_not_exist=Целевият клон не съществува.
[user] [user]
change_avatar=Проми своя аватар change_avatar=Промени своя аватар
join_on=Регистриран join_on=Регистриран
repositories=Хранилища repositories=Хранилища
activity=Публична дейност activity=Публична дейност
@@ -256,8 +265,7 @@ following=Следване
follow=Следване follow=Следване
unfollow=Не следвай unfollow=Не следвай
form.name_reserved=Потребителското име '%s' е запазено. form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=Потребителското име '%s' не е допустимо.
[settings] [settings]
profile=Профил profile=Профил
@@ -309,6 +317,7 @@ delete_email=Изтрий
email_deletion=Изтрий ел. поща email_deletion=Изтрий ел. поща
email_deletion_desc=При изтриване на тази ел. поща ще се премахне свързаната информация от Вашия профил. Желаете ли да продължите? email_deletion_desc=При изтриване на тази ел. поща ще се премахне свързаната информация от Вашия профил. Желаете ли да продължите?
email_deletion_success=Ел. пощата беше изтрита успешно! email_deletion_success=Ел. пощата беше изтрита успешно!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Добавяне на нов адрес на ел. поща add_new_email=Добавяне на нов адрес на ел. поща
add_email=Добави ел. поща add_email=Добави ел. поща
add_email_confirmation_sent=Ново писмо за потвърждение е изпратено до '%s'. Моля проверете пощенската си кутия в рамките на следващите %d часа, за да завършите процеса на регистрация. add_email_confirmation_sent=Ново писмо за потвърждение е изпратено до '%s'. Моля проверете пощенската си кутия в рамките на следващите %d часа, за да завършите процеса на регистрация.
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Or enter the secret:
two_factor_then_enter_passcode=След това въведете паролата: two_factor_then_enter_passcode=След това въведете паролата:
two_factor_verify=Потвърждаване two_factor_verify=Потвърждаване
two_factor_invalid_passcode=Въведената парола е невалидна! Моля опитайте отново. two_factor_invalid_passcode=Въведената парола е невалидна! Моля опитайте отново.
two_factor_reused_passcode=The passcode you entered has already been used, please try another one!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_enable_error=Enable Two-factor authentication failed: %v
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_success=Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes
@@ -362,6 +372,7 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
manage_access_token=Управление на индивидуални API ключове за достъп manage_access_token=Управление на индивидуални API ключове за достъп
generate_new_token=Генериране на нов API ключ generate_new_token=Генериране на нов API ключ
tokens_desc=Генерирани API ключове, които могат да се използват за достъп до API на Gogs. tokens_desc=Генерирани API ключове, които могат да се използват за достъп до API на Gogs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Всеки API ключ ще има пълен достъп до Вашия профил. new_token_desc=Всеки API ключ ще има пълен достъп до Вашия профил.
token_name=Име на API ключ token_name=Име на API ключ
generate_token=Генериране на API ключ generate_token=Генериране на API ключ
@@ -370,6 +381,7 @@ delete_token=Изтрий
access_token_deletion=Изтрий индивидуален API ключ за достъп access_token_deletion=Изтрий индивидуален API ключ за достъп
access_token_deletion_desc=При изтриване на този индивидуален API ключ за достъп ще се премахнат всички свързани права на приложението. Желаете ли да продължите? access_token_deletion_desc=При изтриване на този индивидуален API ключ за достъп ще се премахнат всички свързани права на приложението. Желаете ли да продължите?
delete_token_success=Индивидуалният API ключ за достъп е изтрит успешно! Не забравяйте да преконфигурирате приложението също. delete_token_success=Индивидуалният API ключ за достъп е изтрит успешно! Не забравяйте да преконфигурирате приложението също.
token_name_exists=Token with same name already exists.
orgs.none=Не сте член на никоя организация. orgs.none=Не сте член на никоя организация.
orgs.leave_title=Напусни организация orgs.leave_title=Напусни организация
@@ -391,7 +403,9 @@ owner=Притежател
repo_name=Име на хранилището repo_name=Име на хранилището
repo_name_helper=Добро име на хранилище е име, състоящо от кратки, запомнящи се и уникални ключови думи. repo_name_helper=Добро име на хранилище е име, състоящо от кратки, запомнящи се и уникални ключови думи.
visibility=Видимост visibility=Видимост
unlisted=Unlisted
visiblity_helper=Това хранилище е <span class="ui red text">Частно</span> visiblity_helper=Това хранилище е <span class="ui red text">Частно</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Административна настройка задължава всички нови хранилища да бъдат <span class="ui red text">Частни</span> visiblity_helper_forced=Административна настройка задължава всички нови хранилища да бъдат <span class="ui red text">Частни</span>
visiblity_fork_helper=(Промяна на тази стойност ще се отрази на всички разклонения) visiblity_fork_helper=(Промяна на тази стойност ще се отрази на всички разклонения)
clone_helper=Нуждаете се от помощ при клониране? Посетете <a target="_blank" href="%s">Помощ</a>! clone_helper=Нуждаете се от помощ при клониране? Посетете <a target="_blank" href="%s">Помощ</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Последна синхр.
watchers=Наблюдаващи watchers=Наблюдаващи
stargazers=Харесващи stargazers=Харесващи
forks=Разклонения forks=Разклонения
repo_description_helper=Description of repository. Maximum 512 characters length.
repo_description_length=Available characters
form.reach_limit_of_creation=Притежателят е достигнал настроения лимит от %d брой хранилища. form.reach_limit_of_creation=Притежателят е достигнал настроения лимит от %d брой хранилища.
form.name_reserved=Името на хранилището '%s' е запазено. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Име на хранилището от вида '%s' не е позволено.
need_auth=Изисква потребител и парола need_auth=Изисква потребител и парола
migrate_type=Тип мигриране migrate_type=Тип мигриране
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Може да използвате HTTP/HTTPS/GIT а
migrate.clone_address_desc_import_local=Можете да мигрирате хранилище от локален път на сървъра. migrate.clone_address_desc_import_local=Можете да мигрирате хранилище от локален път на сървъра.
migrate.permission_denied=Недостатъчни права за импорт на локални хранилища. migrate.permission_denied=Недостатъчни права за импорт на локални хранилища.
migrate.invalid_local_path=Невалиден път - не съществува или не е директория. migrate.invalid_local_path=Невалиден път - не съществува или не е директория.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Грешка при миграция: %v migrate.failed=Грешка при миграция: %v
mirror_from=огледало от mirror_from=огледало от
@@ -478,6 +494,8 @@ branches.stale_branches=Застинали клонове
branches.all=Всички клонове branches.all=Всички клонове
branches.updated_by=Актуализирани %[1]s от %[2]s branches.updated_by=Актуализирани %[1]s от %[2]s
branches.change_default_branch=Промяна на клон по подразбиране branches.change_default_branch=Промяна на клон по подразбиране
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Нов файл editor.new_file=Нов файл
editor.upload_file=Качи файл editor.upload_file=Качи файл
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Съдържанието на файла е б
editor.file_already_exists=Файл с име '%s' вече съществува в това хранилище. editor.file_already_exists=Файл с име '%s' вече съществува в това хранилище.
editor.no_changes_to_show=Няма промени. editor.no_changes_to_show=Няма промени.
editor.fail_to_update_file=Невъзможно модифициране/създаване на файл '%s' заради грешка: %v editor.fail_to_update_file=Невъзможно модифициране/създаване на файл '%s' заради грешка: %v
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
editor.add_subdir=Добави поддиректория... editor.add_subdir=Добави поддиректория...
editor.unable_to_upload_files=Невъзможно качване на файлове в '%s' заради грешка: %v editor.unable_to_upload_files=Невъзможно качване на файлове в '%s' заради грешка: %v
editor.upload_files_to_dir=Качи файлове в '%s' editor.upload_files_to_dir=Качи файлове в '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Не може да се извърши обедин
pulls.cannot_auto_merge_helper=Моля, използвайте инструменти на командния ред за да разрешите конфликтите. pulls.cannot_auto_merge_helper=Моля, използвайте инструменти на командния ред за да разрешите конфликтите.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=Обедини заявка за сливане pulls.merge_pull_request=Обедини заявка за сливане
pulls.open_unmerged_pull_exists=`Невъзможно повторно отваряне, защото вече съществува заявка за сливане (#%d) от същото хранилище със същата информация за обединяване, която чака да бъде извършена` pulls.open_unmerged_pull_exists=`Невъзможно повторно отваряне, защото вече съществува заявка за сливане (#%d) от същото хранилище със същата информация за обединяване, която чака да бъде извършена`
pulls.delete_branch=Изтрий клон pulls.delete_branch=Изтрий клон
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Стил на именуване на външна
settings.tracker_issue_style.numeric=Цифров settings.tracker_issue_style.numeric=Цифров
settings.tracker_issue_style.alphanumeric=Символен settings.tracker_issue_style.alphanumeric=Символен
settings.tracker_url_format_desc=Можете да използвате текстови маркери <code>{user} {repo} {index}</code> за потребителско име, име на хранилище и индекс на задача съответно. settings.tracker_url_format_desc=Можете да използвате текстови маркери <code>{user} {repo} {index}</code> за потребителско име, име на хранилище и индекс на задача съответно.
settings.pulls_desc=Включва заявки за сливане за да може да се приемат външни доработки settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignore changes in whitespace
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Опасна зона settings.danger_zone=Опасна зона
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Този потребител няма да
settings.remove_collaborator_success=Сътрудникът е премахнат. settings.remove_collaborator_success=Сътрудникът е премахнат.
settings.search_user_placeholder=Име на потребител... settings.search_user_placeholder=Име на потребител...
settings.org_not_allowed_to_be_collaborator=Невъзможно добавяне на организация като сътрудник. settings.org_not_allowed_to_be_collaborator=Невъзможно добавяне на организация като сътрудник.
settings.add_webhook=Добави уеб-кука
settings.hooks_desc=Уеб-куките много приличат на обикновен HTTP POST тригер. Когато нещо се случи в Gogs, ние ще изпратим уведомление до сървъра, който посочите. Научете повече в <a target="_blank" href="%s">Ръководство за уеб-куки</a>. settings.hooks_desc=Уеб-куките много приличат на обикновен HTTP POST тригер. Когато нещо се случи в Gogs, ние ще изпратим уведомление до сървъра, който посочите. Научете повече в <a target="_blank" href="%s">Ръководство за уеб-куки</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Добави уеб-кука
settings.webhook_deletion=Изтрий уеб-кука settings.webhook_deletion=Изтрий уеб-кука
settings.webhook_deletion_desc=При изтриване на тази уеб-кука ще се премахне информацията за нея и цялата хронология на нейното изпращане. Желаете ли да продължите? settings.webhook_deletion_desc=При изтриване на тази уеб-кука ще се премахне информацията за нея и цялата хронология на нейното изпращане. Желаете ли да продължите?
settings.webhook_deletion_success=Уеб-куката е изтрита успешно! settings.webhook_deletion_success=Уеб-куката е изтрита успешно!
@@ -792,6 +814,8 @@ settings.webhook.response=Отговор
settings.webhook.headers=Заглавки settings.webhook.headers=Заглавки
settings.webhook.payload=Съдържание settings.webhook.payload=Съдържание
settings.webhook.body=Тяло settings.webhook.body=Тяло
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git куките се изпълняват от Git. Вие може да промените файловете с поддържаните куки в списъка по-долу, за да изпълните външни операции. settings.githooks_desc=Git куките се изпълняват от Git. Вие може да промените файловете с поддържаните куки в списъка по-долу, за да изпълните външни операции.
settings.githook_edit_desc=Ако куката е неактивна, ще бъде представено примерно съдържание. Ако оставите съдържанието празно, то тази кука ще бъде изключена. settings.githook_edit_desc=Ако куката е неактивна, ще бъде представено примерно съдържание. Ако оставите съдържанието празно, то тази кука ще бъде изключена.
settings.githook_name=Име на куката settings.githook_name=Име на куката
@@ -819,10 +843,10 @@ settings.event_push=Предаване
settings.event_push_desc=Git предаване към хранилището settings.event_push_desc=Git предаване към хранилището
settings.event_issues=Issues settings.event_issues=Issues
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Заявка за сливане settings.event_pull_request=Заявка за сливане
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Release settings.event_release=Release
settings.event_release_desc=Release published in a repository. settings.event_release_desc=Release published in a repository.
settings.active=Активна settings.active=Активна
@@ -852,6 +876,8 @@ settings.add_key_success=Новият ключ за внедряване '%s' е
settings.deploy_key_deletion=Изтрий ключ за внедряване settings.deploy_key_deletion=Изтрий ключ за внедряване
settings.deploy_key_deletion_desc=При изтриването на този ключ за внедряване ще се премахнат свързаните права за достъп до това хранилище. Желаете ли да продължите? settings.deploy_key_deletion_desc=При изтриването на този ключ за внедряване ще се премахнат свързаните права за достъп до това хранилище. Желаете ли да продължите?
settings.deploy_key_deletion_success=Ключът за внедряване е изтрит успешно! settings.deploy_key_deletion_success=Ключът за внедряване е изтрит успешно!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Преглед на файлове diff.browse_source=Преглед на файлове
diff.parent=родител diff.parent=родител
@@ -916,9 +942,8 @@ team_name_helper=Ще използвате това име при спомена
team_desc_helper=Каква е целта на този екип? team_desc_helper=Каква е целта на този екип?
team_permission_desc=Какво ниво на достъп трябва да има този екип? team_permission_desc=Какво ниво на достъп трябва да има този екип?
form.name_reserved=Името на организацията '%s' е запазено. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Име на организацията от вида '%s' не е разрешено. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Име на екип "%s" е запазено.
settings=Настройки settings=Настройки
settings.options=Опции settings.options=Опции
@@ -990,12 +1015,19 @@ first_page=Първа
last_page=Последна last_page=Последна
total=Общо: %d total=Общо: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git version
dashboard.go_version=Go version
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Статистика dashboard.statistic=Статистика
dashboard.operations=Операции dashboard.operations=Операции
dashboard.system_status=Наблюдение на системния статус dashboard.system_status=Наблюдение на системния статус
dashboard.statistic_info=Gogs базата данни има <b>%d</b> потребители, <b>%d</b> организации, <b>%d</b> публични ключове, <b>%d</b> хранилища, <b>%d</b> наблюдавания, <b>%d</b> харесвания, <b>%d</b> действия, <b>%d</b> достъпи, <b>%d</b> задачи, <b>%d</b> коментари, <b>%d</b> социални регистрации, <b>%d</b> последователи, <b>%d</b> огледала, <b>%d</b> версии, <b>%d</b> начини на удостоверяване, <b>%d</b> уеб-куки, <b>%d</b> етапи, <b>%d</b> етикети, <b>%d</b> задачи на куки, <b>%d</b> екипи, <b>%d</b> задачи при актуализация, <b>%d</b> прикачени файлове. dashboard.statistic_info=Gogs базата данни има <b>%d</b> потребители, <b>%d</b> организации, <b>%d</b> публични ключове, <b>%d</b> хранилища, <b>%d</b> наблюдавания, <b>%d</b> харесвания, <b>%d</b> действия, <b>%d</b> достъпи, <b>%d</b> задачи, <b>%d</b> коментари, <b>%d</b> социални регистрации, <b>%d</b> последователи, <b>%d</b> огледала, <b>%d</b> версии, <b>%d</b> начини на удостоверяване, <b>%d</b> уеб-куки, <b>%d</b> етапи, <b>%d</b> етикети, <b>%d</b> задачи на куки, <b>%d</b> екипи, <b>%d</b> задачи при актуализация, <b>%d</b> прикачени файлове.
dashboard.operation_name=Име на операцията dashboard.operation_name=Име на операцията
dashboard.operation_switch=Превключи dashboard.operation_switch=Превключи
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Изпълни dashboard.operation_run=Изпълни
dashboard.clean_unbind_oauth=Почисти несвързани OAuthes dashboard.clean_unbind_oauth=Почисти несвързани OAuthes
dashboard.clean_unbind_oauth_success=Всички несвързани OAuthes са изтрити успешно. dashboard.clean_unbind_oauth_success=Всички несвързани OAuthes са изтрити успешно.
@@ -1087,11 +1119,12 @@ repos.stars=Харесвания
repos.issues=Задачи repos.issues=Задачи
repos.size=Размер repos.size=Размер
auths.auth_manage_panel=Управление на удостоверявания auths.auth_sources=Authentication Sources
auths.new=Добави нов начин на удостоверяване auths.new=Добави нов начин на удостоверяване
auths.name=Име auths.name=Име
auths.type=Тип auths.type=Тип
auths.enabled=Активно auths.enabled=Активно
auths.default=Default
auths.updated=Последна модификация auths.updated=Последна модификация
auths.auth_type=Тип на удостоверяване auths.auth_type=Тип на удостоверяване
auths.auth_name=Име на удостоверяване auths.auth_name=Име на удостоверяване
@@ -1128,9 +1161,9 @@ auths.enable_tls=Включи TLS криптиране
auths.skip_tls_verify=Пропусни проверка на TLS сертификат auths.skip_tls_verify=Пропусни проверка на TLS сертификат
auths.pam_service_name=Име на PAM услуга auths.pam_service_name=Име на PAM услуга
auths.enable_auto_register=Включи автоматична регистрация auths.enable_auto_register=Включи автоматична регистрация
auths.tips=Съвети
auths.edit=Редактирай настройки за удостоверяване auths.edit=Редактирай настройки за удостоверяване
auths.activated=Това удостоверяване е активно auths.activated=Това удостоверяване е активно
auths.default_auth=This authentication is default login source
auths.new_success=Новото удостоверяване '%s' е добавено успешно. auths.new_success=Новото удостоверяване '%s' е добавено успешно.
auths.update_success=Настройките за удостоверяване са запазени успешно. auths.update_success=Настройките за удостоверяване са запазени успешно.
auths.update=Запази настройки за удостоверяване auths.update=Запази настройки за удостоверяване
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Това удостоверяване ще бъде из
auths.still_in_used=Това удостоверяване все още се използва от някои потребители. Моля изтрийте ги или ги конвертирайте до друг тип на влизане първо. auths.still_in_used=Това удостоверяване все още се използва от някои потребители. Моля изтрийте ги или ги конвертирайте до друг тип на влизане първо.
auths.deletion_success=Удостоверяването е изтрито успешно! auths.deletion_success=Удостоверяването е изтрито успешно!
auths.login_source_exist=Източник за валидация на потребители "%s" вече съществува. auths.login_source_exist=Източник за валидация на потребители "%s" вече съществува.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(not set)
config.server_config=Сървърни настройки config.server_config=Сървърни настройки
config.app_name=Име на приложението config.brand_name=Brand name
config.app_ver=Версия на приложението
config.app_url=URL адрес на приложението
config.domain=Домейн
config.offline_mode=Офлайн режим
config.disable_router_log=Изключи журнал на маршрутизатора
config.run_user=Потребителски контекст config.run_user=Потребителски контекст
config.run_mode=Режим на изпълнение config.run_mode=Режим на изпълнение
config.git_version=Git версия config.server.external_url=External URL
config.static_file_root_path=Път към статични файлове config.server.domain=Domain
config.log_file_root_path=Път към журнал config.server.protocol=Protocol
config.reverse_auth_user=Потребителско име при обратно удостоверяване config.server.http_addr=HTTP address
config.server.http_port=HTTP port
config.server.cert_file=Certificate file
config.server.key_file=Key file
config.server.tls_min_version=Minimum TLS version
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Enable Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=SSH конфигурация config.ssh_config=SSH конфигурация
config.ssh_enabled=Активен config.ssh.enabled=Enabled
config.ssh_start_builtin_server=Стартирай вграден сървър config.ssh.domain=Exposed domain
config.ssh_domain=Домейн config.ssh.port=Exposed port
config.ssh_port=Порт config.ssh.root_path=Root path
config.ssh_listen_port=Порт за слушане config.ssh.keygen_path=Keygen path
config.ssh_root_path=Основен път config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Път до ключове config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Път до генератор ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Проверка за минимален размер на ключове config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Минимален размер на ключове config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Конфигурация на хранилище config.repo_config=Конфигурация на хранилище
config.repo_root_path=Основен път към хранилища config.repo.root_path=Root path
config.script_type=Тип на скрипта config.repo.script_type=Script type
config.repo_force_private=Force Private config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Max Creation Limit config.repo.force_private=Force private
config.preferred_licenses=Предпочитани лицензи config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Забраняване на HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Enable Local Path Migration config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=Конфигуриране на HTTP config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Настройки на базата данни config.db_config=Настройки на базата данни
config.db_type=Тип config.db.type=Type
config.db_host=Сървър config.db.host=Host
config.db_name=Име config.db.name=Name
config.db_user=Потребител config.db.schema=Schema
config.db_ssl_mode=SSL режим config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(само за postgres) config.db.user=User
config.db_path=Път config.db.ssl_mode=SSL mode
config.db_path_helper=(за "sqlite3" и "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Настройка на услугата config.security_config=Security configuration
config.register_email_confirm=Изисквай потвърждение на адреси на ел. поща config.security.login_remember_days=Login remember days
config.disable_register=Изключи нови регистрации config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Покажи бутон за регистрация config.security.cookie_username=Username cookie
config.require_sign_in_view=Изисквай вписване за преглед config.security.cookie_secure=Enable secure cookie
config.mail_notify=Уведомяване по ел. поща config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Изключи проверка минимален размер на ключ config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Включи Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Кодове за активиране config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Кодове за изчистване на парола
config.webhook_config=Конфигурация на уеб-куки config.email_config=Email configuration
config.queue_length=Дължина на опашка config.email.enabled=Enabled
config.deliver_timeout=Време за отказ при изпращане config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Пропусни проверка на TLS config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Конфигурация на мейлър config.auth_config=Authentication configuration
config.mailer_enabled=Активен config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Изключи HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Сървър config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Потребител config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Изпрати тестово писмо config.auth.disable_registration=Disable registration
config.test_mail_failed=Невъзможно изпращане на тестово писмо до '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Тестово писмо беше изпратено до '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=OAuth конфигурация config.user_config=User configuration
config.oauth_enabled=Активна config.user.enable_email_notify=Enable email notification
config.cache_config=Конфигурация на кеша
config.cache_adapter=Кеш адаптер
config.cache_interval=Кеш интервал
config.cache_conn=Кеш на връзката
config.session_config=Конфигурация на сесии config.session_config=Конфигурация на сесии
config.session_provider=Доставчик на сесии config.session.provider=Provider
config.provider_config=Конфигурация на доставчик config.session.provider_config=Provider config
config.cookie_name=Име на бисквитката config.session.cookie_name=Cookie
config.enable_set_cookie=Включи използване на бисквитки config.session.https_only=HTTPS only
config.gc_interval_time=GC през интервал config.session.gc_interval=GC interval
config.session_life_time=Период на валидност на сесиите config.session.max_life_time=Max life time
config.https_only=HTTPS само config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Период на валидност на бисквитките
config.cache_config=Конфигурация на кеша
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=Конфигуриране на HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Конфигурация на изображения config.picture_config=Конфигурация на изображения
config.picture_service=Услуги за снимки config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Изключи Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Включи външни аватари config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Конфигурация на уеб-куки
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Конфигурация на git config.git_config=Конфигурация на git
config.git_disable_diff_highlight=Забрани оцветяване на синтаксис при преглед на разлики config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Максимален брой различни редове (за файл) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Максимален брой различни символи (на ред) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Максимален брой променени файлове (при показване) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Аргументи на GC config.git.gc_args=GC arguments
config.git_migrate_timeout=Време за отказ при миграция config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Време за отказ при синхр. на огледало config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Време за отказ при клониране config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Време за отказ при сливане config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Време за отказ при GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Конфигурация на журнал config.log_config=Конфигурация на журнал
config.log_file_root_path=Път към журнал
config.log_mode=Режим config.log_mode=Режим
config.log_options=Настройки config.log_options=Настройки
@@ -1284,7 +1383,6 @@ notices.delete_success=Системните съобщения са изтрит
[action] [action]
create_repo=създаде хранилище <a href="%s"> %s</a> create_repo=създаде хранилище <a href="%s"> %s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=преименува хранилище от <code>%[1]s</code> на <a href="%[2]s">%[3]s</a> rename_repo=преименува хранилище от <code>%[1]s</code> на <a href="%[2]s">%[3]s</a>
commit_repo=предаде към <a href="%[1]s/src/%[2]s">%[3]s</a> в <a href="%[1]s">%[4]s</a> commit_repo=предаде към <a href="%[1]s/src/%[2]s">%[3]s</a> в <a href="%[1]s">%[4]s</a>
compare_commits=Сравнение между тези %d ревизии compare_commits=Сравнение между тези %d ревизии
@@ -1301,6 +1399,10 @@ create_branch=създаде клон <a href="%[1]s/src/%[2]s"> %[3]s</a> % <a
delete_branch=изтри клон <code>%[2]s</code> % <a href="%[1]s">[3]s</a> delete_branch=изтри клон <code>%[2]s</code> % <a href="%[1]s">[3]s</a>
push_tag=предаде маркер <a href="%s/src/%s">%[2]s</a> към <a href="%[1]s">[3]s</a> push_tag=предаде маркер <a href="%s/src/%s">%[2]s</a> към <a href="%[1]s">[3]s</a>
delete_tag=изтри етикет <code>%[2]s</code> % <a href="%[1]s">[3]s</a> delete_tag=изтри етикет <code>%[2]s</code> % <a href="%[1]s">[3]s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=преди ago=преди
@@ -1322,6 +1424,7 @@ months=%[2]s %[1]d месеца
years=%[2]s %[1]d години years=%[2]s %[1]d години
raw_seconds=секунди raw_seconds=секунди
raw_minutes=минути raw_minutes=минути
raw_hours=hours
[dropzone] [dropzone]
default_message=Тук пуснете файлове с влачене или просто щракнете за избор на файл за качване. default_message=Тук пуснете файлове с влачене или просто щракнете за избор на файл за качване.

View File

@@ -9,7 +9,6 @@ sign_out=Odhlásit se
sign_up=Registrovat se sign_up=Registrovat se
register=Registrovat se register=Registrovat se
website=Webové stránky website=Webové stránky
version=Verze
page=Strana page=Strana
template=Šablona template=Šablona
language=Jazyk language=Jazyk
@@ -23,10 +22,10 @@ password=Heslo
re_type=Znovu zadat re_type=Znovu zadat
captcha=CAPTCHA captcha=CAPTCHA
repository=Repositář repository=Repozitář
organization=Organizace organization=Organizace
mirror=Zrcadlo mirror=Zrcadlo
new_repo=Nový repositář new_repo=Nový repozitář
new_migrate=Nové přenesení new_migrate=Nové přenesení
new_mirror=Nové zrcadlo new_mirror=Nové zrcadlo
new_fork=Nový repositář rozštěpení new_fork=Nový repositář rozštěpení
@@ -39,22 +38,27 @@ your_profile=Váš profil
your_settings=Vaše nastavení your_settings=Vaše nastavení
activities=Aktivity activities=Aktivity
pull_requests=Pull Requesty pull_requests=Požadavky na natažení
issues=Úkoly issues=Úkoly
cancel=Zrušit cancel=Zrušit
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install] [install]
install=Instalace install=Instalace
title=Kroky instalace pro první spuštění title=Kroky instalace pro první spuštění
docker_helper=Spouštíte-li Gogs uvnitř Dockeru, přečtěte si prosím pečlivě <a target="_blank" href="%s">návod</a>, než něco změníte na této stránce! docker_helper=Spouštíte-li Gogs uvnitř Dockeru, přečtěte si prosím pečlivě <a target="_blank" href="%s">návod</a>, než něco změníte na této stránce!
requite_db_desc=Gogs vyžaduje MySQL, PostgreSQL, SQLite3, MSSQL nebo TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Nastavení databáze db_title=Nastavení databáze
db_type=Typ databáze db_type=Typ databáze
host=Server host=Server
user=Uživatel user=Uživatel
password=Heslo password=Heslo
db_name=Název databáze db_name=Název databáze
db_schema=Schema
db_helper=Prosím, pro MySQL použijte INNODB engine se znakovou sadou utf8_general_ci. db_helper=Prosím, pro MySQL použijte INNODB engine se znakovou sadou utf8_general_ci.
ssl_mode=SSL režim ssl_mode=SSL režim
path=Cesta path=Cesta
@@ -72,7 +76,7 @@ run_user=Účet pro spouštění
run_user_helper=Tento uživatel musí mít přístup do kořenového adresáře repositářů a právo spustit Gogs. run_user_helper=Tento uživatel musí mít přístup do kořenového adresáře repositářů a právo spustit Gogs.
domain=Doména domain=Doména
domain_helper=Toto ovlivňuje URL klonů skrze SSH. domain_helper=Toto ovlivňuje URL klonů skrze SSH.
ssh_port=SSH port ssh_port=Port SSH
ssh_port_helper=Číslo portu, které používá váš SSH server. Nechte jej prázdné pro vypnutí používání SSH. ssh_port_helper=Číslo portu, které používá váš SSH server. Nechte jej prázdné pro vypnutí používání SSH.
use_builtin_ssh_server=Použít vestavěný SSH server use_builtin_ssh_server=Použít vestavěný SSH server
use_builtin_ssh_server_popup=Pro Git operace spustit vestavěný SSH server, aby byl rozpoznán od systémové SSH služby. use_builtin_ssh_server_popup=Pro Git operace spustit vestavěný SSH server, aby byl rozpoznán od systémové SSH služby.
@@ -84,6 +88,7 @@ log_root_path=Adresář systémových záznamů
log_root_path_helper=Adresář, kam se budou zapisovat soubory se systémovými záznamy. log_root_path_helper=Adresář, kam se budou zapisovat soubory se systémovými záznamy.
enable_console_mode=Povolit režim konzole enable_console_mode=Povolit režim konzole
enable_console_mode_popup=Mimo zápisu do souboru vytisknout systémové záznamy i do konzole. enable_console_mode_popup=Mimo zápisu do souboru vytisknout systémové záznamy i do konzole.
default_branch=Default Branch
optional_title=Dodatečná nastavení optional_title=Dodatečná nastavení
email_title=Nastavení e-mailové služby email_title=Nastavení e-mailové služby
@@ -122,6 +127,7 @@ run_user_not_match=Uživatel pro spuštění není aktuální uživatel: %s -> %
smtp_host_missing_port=V adrese SMTP serveru chybí číslo portu. smtp_host_missing_port=V adrese SMTP serveru chybí číslo portu.
invalid_smtp_from=Hodnota položky SMTP Od: není zadána správně: %v invalid_smtp_from=Hodnota položky SMTP Od: není zadána správně: %v
save_config_failed=Uložení konfigurace se nezdařilo: %v save_config_failed=Uložení konfigurace se nezdařilo: %v
init_failed=Nepodařilo se inicializovat aplikaci: %v
invalid_admin_setting=Nastavení účtu správce není správné: %v invalid_admin_setting=Nastavení účtu správce není správné: %v
install_success=Vítejte! Jsme rádi, že jste si vybrali Gogs. Bavte se a opatrujte se. install_success=Vítejte! Jsme rádi, že jste si vybrali Gogs. Bavte se a opatrujte se.
invalid_log_root_path=Kořenový adresář souborů systémových záznamů není správný: %v invalid_log_root_path=Kořenový adresář souborů systémových záznamů není správný: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Již máte účet? Přihlašte se!
social_register_hepler_msg=Již máte účet? Připojte se! social_register_hepler_msg=Již máte účet? Připojte se!
disable_register_prompt=Omlouváme se, ale registrace jsou vypnuty. Kontaktujte správce systému. disable_register_prompt=Omlouváme se, ale registrace jsou vypnuty. Kontaktujte správce systému.
disable_register_mail=Omlouváme se, ale e-mailové služby jsou vypnuté. Kontaktujte správce systému. disable_register_mail=Omlouváme se, ale e-mailové služby jsou vypnuté. Kontaktujte správce systému.
auth_source=Zdroj ověření
local=Lokální
remember_me=Zapamatovat si mne remember_me=Zapamatovat si mne
forgot_password=Zapomenuté heslo forgot_password=Zapomenuté heslo
forget_password=Zapomněli jste heslo? forget_password=Zapomněli jste heslo?
@@ -229,6 +237,7 @@ org_name_been_taken=Název organizace je již obsazen.
team_name_been_taken=Název týmu je již obsazen. team_name_been_taken=Název týmu je již obsazen.
email_been_used=E-mailová adresa je již použita. email_been_used=E-mailová adresa je již použita.
username_password_incorrect=Chybné uživatelské jméno nebo heslo. username_password_incorrect=Chybné uživatelské jméno nebo heslo.
auth_source_mismatch=Vybraný zdroj ověření není propojen s uživatelem.
enterred_invalid_repo_name=Ujistěte se, prosím, že zadaný název repositáře je správný. enterred_invalid_repo_name=Ujistěte se, prosím, že zadaný název repositáře je správný.
enterred_invalid_owner_name=Ujistěte se, prosím, že jméno vlastníka je zadáno správně. enterred_invalid_owner_name=Ujistěte se, prosím, že jméno vlastníka je zadáno správně.
enterred_invalid_password=Ujistěte se, prosím, že zadané heslo je správné. enterred_invalid_password=Ujistěte se, prosím, že zadané heslo je správné.
@@ -248,7 +257,7 @@ target_branch_not_exist=Cílová větev neexistuje.
[user] [user]
change_avatar=Změnit vaši uživatelskou ikonu change_avatar=Změnit vaši uživatelskou ikonu
join_on=Zaregistroval se dne join_on=Zaregistroval se dne
repositories=Repositáře repositories=Repozitáře
activity=Veřejná aktivita activity=Veřejná aktivita
followers=Sledující followers=Sledující
starred=Oblíbené repositáře starred=Oblíbené repositáře
@@ -256,8 +265,7 @@ following=Sledovaní
follow=Sledovat follow=Sledovat
unfollow=Přestat sledovat unfollow=Přestat sledovat
form.name_reserved=Uživatelské jméno '%s' je rezervováno. form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=Vzor uživatelského jména '%s' není povolen.
[settings] [settings]
profile=Profil profile=Profil
@@ -309,6 +317,7 @@ delete_email=Smazat
email_deletion=Smazání e-mailové adresy email_deletion=Smazání e-mailové adresy
email_deletion_desc=Smazání této e-mailové adresy odstraní návazné informace z vašeho účtu. Chcete pokračovat? email_deletion_desc=Smazání této e-mailové adresy odstraní návazné informace z vašeho účtu. Chcete pokračovat?
email_deletion_success=E-mailová adresa byla smazána! email_deletion_success=E-mailová adresa byla smazána!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Přidat novou e-mailovou adresu add_new_email=Přidat novou e-mailovou adresu
add_email=Přidat e-mailovou adresu add_email=Přidat e-mailovou adresu
add_email_confirmation_sent=Nový potvrzovací e-mail byl odeslán na adresu '%s', prosím zkontrolujte si vaši doručenou poštu během následujících %d hodin pro dokončení procesu potvrzení. add_email_confirmation_sent=Nový potvrzovací e-mail byl odeslán na adresu '%s', prosím zkontrolujte si vaši doručenou poštu během následujících %d hodin pro dokončení procesu potvrzení.
@@ -316,7 +325,7 @@ add_email_success=Vaše nová e-mailová adresa byla přidána.
manage_ssh_keys=Správa SSH klíčů manage_ssh_keys=Správa SSH klíčů
add_key=Přidat klíč add_key=Přidat klíč
ssh_desc=Toto je seznam SSH klíčů vašeho účtu. Tyto klíče umožňují plný přístup k vašim repositářům, proto je velmi důležité, abyste jste si byli jistí, že jsou skutečně vaše. ssh_desc=Toto je seznam SSH klíčů vašeho účtu. Jelikož SSH klíče umožňují komukoliv plný přístup k vašim repositářům, je velmi důležité, abyste si byli jistí, že jsou skutečně vaše.
ssh_helper=<strong>Nevíte jak?</strong> Podívejte se do příručky GitHubu jak si <a href="%s">vytvořit vlastní SSH klíč</a>, nebo na <a href="%s">řešení častých problémů</a>, na které můžete narazit při používání SSH. ssh_helper=<strong>Nevíte jak?</strong> Podívejte se do příručky GitHubu jak si <a href="%s">vytvořit vlastní SSH klíč</a>, nebo na <a href="%s">řešení častých problémů</a>, na které můžete narazit při používání SSH.
add_new_key=Přidat SSH klíč add_new_key=Přidat SSH klíč
ssh_key_been_used=Obsah veřejného klíče byl použit. ssh_key_been_used=Obsah veřejného klíče byl použit.
@@ -326,8 +335,8 @@ key_content=Obsah
add_key_success=Byl přidán nový SSH klíč '%s'! add_key_success=Byl přidán nový SSH klíč '%s'!
delete_key=Smazat delete_key=Smazat
ssh_key_deletion=Smazání SSH klíče ssh_key_deletion=Smazání SSH klíče
ssh_key_deletion_desc=Smazání tohoto SSH klíče odstraní všechny související přístupy k vašemu účtu. Chcete pokračovat? ssh_key_deletion_desc=Smazání tohoto klíče SSH odstraní všechny související přístupy k vašemu účtu. Chcete pokračovat?
ssh_key_deletion_success=SSH klíč úspěšně odstraněn! ssh_key_deletion_success=SSH klíč byl úspěšně smazán!
add_on=Přidán dne add_on=Přidán dne
last_used=Naposledy použit dne last_used=Naposledy použit dne
no_activity=Žádná aktuální aktivita no_activity=Žádná aktuální aktivita
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Nebo zadejte tajný kód:
two_factor_then_enter_passcode=Pak zadejte přístupový kód: two_factor_then_enter_passcode=Pak zadejte přístupový kód:
two_factor_verify=Ověřit two_factor_verify=Ověřit
two_factor_invalid_passcode=Zadaný přístupový kód není platný, prosím, zkuste to znova! two_factor_invalid_passcode=Zadaný přístupový kód není platný, prosím, zkuste to znova!
two_factor_reused_passcode=Kód, který jste zadali už byl použit. Prosím, zkuste jiný!
two_factor_enable_error=Povolení dvoufaktorového ověření selhalo: %v two_factor_enable_error=Povolení dvoufaktorového ověření selhalo: %v
two_factor_enable_success=Dvoufaktorové ověření bylo pro váš účet povoleno! two_factor_enable_success=Dvoufaktorové ověření bylo pro váš účet povoleno!
two_factor_recovery_codes_title=Obnovovací kódy dvoufaktorového ověření two_factor_recovery_codes_title=Obnovovací kódy dvoufaktorového ověření
@@ -362,6 +372,7 @@ two_factor_disable_success=Dvoufaktorové ověření bylo zakázáno!
manage_access_token=Správa osobních přístupových poukázek manage_access_token=Správa osobních přístupových poukázek
generate_new_token=Vygenerovat novou poukázku generate_new_token=Vygenerovat novou poukázku
tokens_desc=Poukázky, které jste vygeneroval, mohou být použity pro přístup k Gogs API. tokens_desc=Poukázky, které jste vygeneroval, mohou být použity pro přístup k Gogs API.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Každá poukázka má úplný přístup k vašemu účtu. new_token_desc=Každá poukázka má úplný přístup k vašemu účtu.
token_name=Název poukázky token_name=Název poukázky
generate_token=Vygenerovat poukázku generate_token=Vygenerovat poukázku
@@ -370,6 +381,7 @@ delete_token=Smazat
access_token_deletion=Smazání osobní přístupové poukázky access_token_deletion=Smazání osobní přístupové poukázky
access_token_deletion_desc=Smazáním této osobní přístupové poukázky odstraní všechen související přístup aplikace. Chcete pokračovat? access_token_deletion_desc=Smazáním této osobní přístupové poukázky odstraní všechen související přístup aplikace. Chcete pokračovat?
delete_token_success=Osobní přístupová poukázka byla odstraněna! Nezapomeňte také změnit nastavení vaší aplikace. delete_token_success=Osobní přístupová poukázka byla odstraněna! Nezapomeňte také změnit nastavení vaší aplikace.
token_name_exists=Poukázka se stejným jménem již existtuje.
orgs.none=Nejste členem žádné organizace. orgs.none=Nejste členem žádné organizace.
orgs.leave_title=Opustit organizaci orgs.leave_title=Opustit organizaci
@@ -391,7 +403,9 @@ owner=Vlastník
repo_name=Název repositáře repo_name=Název repositáře
repo_name_helper=Dobrý název repositáře se většinou skládá z krátkých, zapamatovatelných a unikátních klíčových slov. repo_name_helper=Dobrý název repositáře se většinou skládá z krátkých, zapamatovatelných a unikátních klíčových slov.
visibility=Viditelnost visibility=Viditelnost
unlisted=Unlisted
visiblity_helper=Tento repositář je <span class="ui red text">soukromý</span> visiblity_helper=Tento repositář je <span class="ui red text">soukromý</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Správce vynutil na všech nových repositářích, aby byly <span class="ui red text">soukromé</span> visiblity_helper_forced=Správce vynutil na všech nových repositářích, aby byly <span class="ui red text">soukromé</span>
visiblity_fork_helper=(Změna této hodnoty ovlivní všechny repositáře rozštěpení) visiblity_fork_helper=(Změna této hodnoty ovlivní všechny repositáře rozštěpení)
clone_helper=Potřebujete pomoci s klonováním? Navštivte <a target="_blank" href="%s">nápovědu</a>! clone_helper=Potřebujete pomoci s klonováním? Navštivte <a target="_blank" href="%s">nápovědu</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Naposledy synchronizováno
watchers=Sledující watchers=Sledující
stargazers=Sledující stargazers=Sledující
forks=Rozštěpení forks=Rozštěpení
repo_description_helper=Popis repozitáře. Maximální délka 512 znaků.
repo_description_length=Dostupné znaky
form.reach_limit_of_creation=Vlastník dosáhl maximálního počtu %d vytvořených repositořů. form.reach_limit_of_creation=Vlastník dosáhl maximálního počtu %d vytvořených repositořů.
form.name_reserved=Název repositáře '%s' je rezervován. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Vzor názvu repositáře '%s' není povolen.
need_auth=Ověření je vyžadováno need_auth=Ověření je vyžadováno
migrate_type=Typ přenesení migrate_type=Typ přenesení
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Toto může být HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local=Máte povoleno přenést repositář pomocí lokální cesty na serveru. migrate.clone_address_desc_import_local=Máte povoleno přenést repositář pomocí lokální cesty na serveru.
migrate.permission_denied=Není vám dovoleno importovat místní repositáře. migrate.permission_denied=Není vám dovoleno importovat místní repositáře.
migrate.invalid_local_path=Neplatná místní cesta, buď neexistuje nebo není adresářem. migrate.invalid_local_path=Neplatná místní cesta, buď neexistuje nebo není adresářem.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Přenesení selhalo: %v migrate.failed=Přenesení selhalo: %v
mirror_from=zrcadlo mirror_from=zrcadlo
@@ -478,6 +494,8 @@ branches.stale_branches=Zastaralé větve
branches.all=Všechny větve branches.all=Všechny větve
branches.updated_by=%[2]s změnil %[1]s branches.updated_by=%[2]s změnil %[1]s
branches.change_default_branch=Změnit výchozí větev branches.change_default_branch=Změnit výchozí větev
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nový soubor editor.new_file=Nový soubor
editor.upload_file=Nahrát soubor editor.upload_file=Nahrát soubor
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Obsah souboru se změnil od začátku úprav.
editor.file_already_exists=Soubor '%s' již v tomto repositáři existuje. editor.file_already_exists=Soubor '%s' již v tomto repositáři existuje.
editor.no_changes_to_show=Žádné změny k zobrazení. editor.no_changes_to_show=Žádné změny k zobrazení.
editor.fail_to_update_file=Vytvoření nebo změna souboru '%s' skončila chybou: %v editor.fail_to_update_file=Vytvoření nebo změna souboru '%s' skončila chybou: %v
editor.fail_to_delete_file=Nepodařilo se smazat soubor '%s' kvůli chybě: %v
editor.add_subdir=Přidat podadresář... editor.add_subdir=Přidat podadresář...
editor.unable_to_upload_files=Nepodařilo se nahrát soubor do '%s'. Chyba: %v editor.unable_to_upload_files=Nepodařilo se nahrát soubor do '%s'. Chyba: %v
editor.upload_files_to_dir=Nahrát soubory do '%s' editor.upload_files_to_dir=Nahrát soubory do '%s'
@@ -616,7 +635,7 @@ pulls.compare_compare=porovnat
pulls.filter_branch=Filtrovat větev pulls.filter_branch=Filtrovat větev
pulls.no_results=Nebyly nalezeny žádné výsledky. pulls.no_results=Nebyly nalezeny žádné výsledky.
pulls.nothing_to_compare=Není co porovnávat, protože základ a hlavní větve jsou shodné. pulls.nothing_to_compare=Není co porovnávat, protože základ a hlavní větve jsou shodné.
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history. pulls.nothing_merge_base=Není co porovnávat, protože tyto dvě větve mají úplně jinou historii.
pulls.has_pull_request=`Požadavek na natažení mezi těmito větvemi již existuje: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>` pulls.has_pull_request=`Požadavek na natažení mezi těmito větvemi již existuje: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Vytvořit požadavek na natažení pulls.create=Vytvořit požadavek na natažení
pulls.title_desc=chce sloučit %[1]d revizí z větve <code>%[2]s</code> do větve <code>%[3]s</code> pulls.title_desc=chce sloučit %[1]d revizí z větve <code>%[2]s</code> do větve <code>%[3]s</code>
@@ -632,8 +651,9 @@ pulls.is_checking=Kontrola rozporů stále pokračuje, prosím obnovte za někol
pulls.can_auto_merge_desc=Tento požadavek na natažení může být automaticky sloučen. pulls.can_auto_merge_desc=Tento požadavek na natažení může být automaticky sloučen.
pulls.cannot_auto_merge_desc=Tento požadavek na natažení nemůže být automaticky sloučen, neboť se v něm nachází rozpory. pulls.cannot_auto_merge_desc=Tento požadavek na natažení nemůže být automaticky sloučen, neboť se v něm nachází rozpory.
pulls.cannot_auto_merge_helper=Prosím proveďte sloučení ručně, aby byly vyřešeny rozpory. pulls.cannot_auto_merge_helper=Prosím proveďte sloučení ručně, aby byly vyřešeny rozpory.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Vytvořit slučovací commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase před slučováním
pulls.commit_description=Popis Commitu
pulls.merge_pull_request=Sloučit požadavek na natažení pulls.merge_pull_request=Sloučit požadavek na natažení
pulls.open_unmerged_pull_exists=`Nemůžete znovuotevřít požadavek na natažení, neboť požadavek na natažení ze stejného repositáře se stejnými informacemi pro sloučení již existuje (#%d) a čeká na sloučení.` pulls.open_unmerged_pull_exists=`Nemůžete znovuotevřít požadavek na natažení, neboť požadavek na natažení ze stejného repositáře se stejnými informacemi pro sloučení již existuje (#%d) a čeká na sloučení.`
pulls.delete_branch=Smazat větev pulls.delete_branch=Smazat větev
@@ -738,9 +758,9 @@ settings.tracker_issue_style=Styl pojmenování úkolů v externím systému úk
settings.tracker_issue_style.numeric=Číselný settings.tracker_issue_style.numeric=Číselný
settings.tracker_issue_style.alphanumeric=Alfanumerický settings.tracker_issue_style.alphanumeric=Alfanumerický
settings.tracker_url_format_desc=Můžete použít zástupné výrazy <code>{user} {repo} {index}</code> pro uživatelské jméno, název repositáře a číslo úkolu. settings.tracker_url_format_desc=Můžete použít zástupné výrazy <code>{user} {repo} {index}</code> pro uživatelské jméno, název repositáře a číslo úkolu.
settings.pulls_desc=Povolit požadavky na natažení, aby mohly být příspěvky veřejnosti akceptovány settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignorovat změny v netisknutelných znacích
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Povolit použití rebase pro sloučení revizí
settings.danger_zone=Nebezpečná zóna settings.danger_zone=Nebezpečná zóna
settings.cannot_fork_to_same_owner=Nemůžete rozštěpit repositář jejímu vlastníkovi. settings.cannot_fork_to_same_owner=Nemůžete rozštěpit repositář jejímu vlastníkovi.
settings.new_owner_has_same_repo=Nový vlastník již repositář se stejným názvem má. Vyberte, prosím, jiné jméno. settings.new_owner_has_same_repo=Nový vlastník již repositář se stejným názvem má. Vyberte, prosím, jiné jméno.
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Data Wiki tohoto repositáře byla smazána.
settings.delete=Smazat tento repositář settings.delete=Smazat tento repositář
settings.delete_desc=Jakmile smažete repositář, není možné se vrátit. Buďte si, prosím, jist. settings.delete_desc=Jakmile smažete repositář, není možné se vrátit. Buďte si, prosím, jist.
settings.delete_notices_1=- Tuto operaci <strong>nelze</strong> zvrátit. settings.delete_notices_1=- Tuto operaci <strong>nelze</strong> zvrátit.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=Tato operace permanentně smaže vše v tomto repositáři, včetně dat Gitu, úkolů, komentářů a přístupu spolupracovníků.
settings.delete_notices_fork_1=- Po smazání se všechny forky se stanou nezávislé. settings.delete_notices_fork_1=- Po smazání se všechny forky se stanou nezávislé.
settings.deletion_success=Repositář byl smazán! settings.deletion_success=Repositář byl smazán!
settings.update_settings_success=Možnosti repositáře byly změněny. settings.update_settings_success=Možnosti repositáře byly změněny.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Tento uživatel po tom, co bude smazán, ji
settings.remove_collaborator_success=Spolupracovník byl smazán. settings.remove_collaborator_success=Spolupracovník byl smazán.
settings.search_user_placeholder=Hledat uživatele... settings.search_user_placeholder=Hledat uživatele...
settings.org_not_allowed_to_be_collaborator=Není dovoleno přidat organizaci jako spolupracovníka. settings.org_not_allowed_to_be_collaborator=Není dovoleno přidat organizaci jako spolupracovníka.
settings.add_webhook=Přidat webový háček
settings.hooks_desc=Webové háčky jsou podobné základním spouštím HTTP POST událostí. Kdykoliv se něco stane v Gogs, bude postaráno o oznámení specifikovanému cílovému serveru. Více se o daném dozvíte v <a target="_blank" href="%s">příručce webových háčků</a>. settings.hooks_desc=Webové háčky jsou podobné základním spouštím HTTP POST událostí. Kdykoliv se něco stane v Gogs, bude postaráno o oznámení specifikovanému cílovému serveru. Více se o daném dozvíte v <a target="_blank" href="%s">příručce webových háčků</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Přidat webový háček
settings.webhook_deletion=Smazat webový háček settings.webhook_deletion=Smazat webový háček
settings.webhook_deletion_desc=Smazáním tohoto webového háčku dojte také ke smazání veškerých informací o něm a také historie volání. Chcete pokračovat? settings.webhook_deletion_desc=Smazáním tohoto webového háčku dojte také ke smazání veškerých informací o něm a také historie volání. Chcete pokračovat?
settings.webhook_deletion_success=Webový háček byl smazán! settings.webhook_deletion_success=Webový háček byl smazán!
@@ -792,6 +814,8 @@ settings.webhook.response=Odpověď
settings.webhook.headers=Hlavičky settings.webhook.headers=Hlavičky
settings.webhook.payload=Datová část settings.webhook.payload=Datová část
settings.webhook.body=Tělo zprávy settings.webhook.body=Tělo zprávy
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Jelikož háčky Gitu jsou spravovány Gitem samotným, můžete v seznamu níže upravit soubory podporovaných háčku k provádění uživatelských operací. settings.githooks_desc=Jelikož háčky Gitu jsou spravovány Gitem samotným, můžete v seznamu níže upravit soubory podporovaných háčku k provádění uživatelských operací.
settings.githook_edit_desc=Je-li háček neaktivní, bude zobrazen vzorový obsah. Nebude-li zadán žádný obsah, háček bude vypnut. settings.githook_edit_desc=Je-li háček neaktivní, bude zobrazen vzorový obsah. Nebude-li zadán žádný obsah, háček bude vypnut.
settings.githook_name=Název háčku settings.githook_name=Název háčku
@@ -819,10 +843,10 @@ settings.event_push=Odeslat
settings.event_push_desc=Odeslání pomocí Gitu do repositáře settings.event_push_desc=Odeslání pomocí Gitu do repositáře
settings.event_issues=Úkoly settings.event_issues=Úkoly
settings.event_issues_desc=Úkol, který je otevřen, uzavřen, znovuotevřen, změněn, přiřazen, nepřiřazen, mající změněn štítek, smazán štítek, mající přiřazen milník, nemající přiřazen milník. settings.event_issues_desc=Úkol, který je otevřen, uzavřen, znovuotevřen, změněn, přiřazen, nepřiřazen, mající změněn štítek, smazán štítek, mající přiřazen milník, nemající přiřazen milník.
settings.event_issue_comment=Komentář k úkolu
settings.event_issue_comment_desc=Komentář k úkolu vytvořen, upraven nebo smazán.
settings.event_pull_request=Požadavek na natažení settings.event_pull_request=Požadavek na natažení
settings.event_pull_request_desc=Požadavek na natažení otevřen, uzavřen, znovuotevřen, změněn, přiřazen, nepřiřazen, změněn štítek, smazán štítek, mající nastaven štítek, zrušeno nastavení štítku nebo synchronizován. settings.event_pull_request_desc=Požadavek na natažení otevřen, uzavřen, znovuotevřen, změněn, přiřazen, nepřiřazen, změněn štítek, smazán štítek, mající nastaven štítek, zrušeno nastavení štítku nebo synchronizován.
settings.event_issue_comment=Komentář k úkolu
settings.event_issue_comment_desc=Komentář k úkolu vytvořen, upraven nebo smazán.
settings.event_release=Vydání settings.event_release=Vydání
settings.event_release_desc=Vydání vystaveno v repositáři. settings.event_release_desc=Vydání vystaveno v repositáři.
settings.active=Aktivní settings.active=Aktivní
@@ -835,14 +859,14 @@ settings.recent_deliveries=Nedávné dodávky
settings.hook_type=Typ háčku settings.hook_type=Typ háčku
settings.add_slack_hook_desc=Přidat integraci <a href="%s">Slacku</a> do vašeho repositáře. settings.add_slack_hook_desc=Přidat integraci <a href="%s">Slacku</a> do vašeho repositáře.
settings.add_discord_hook_desc=Přidat integraci <a href="%s">Discord</a> do vašeho repositáře. settings.add_discord_hook_desc=Přidat integraci <a href="%s">Discord</a> do vašeho repositáře.
settings.add_dingtalk_hook_desc=Add <a href="%s">Dingtalk</a> integration to your repository. settings.add_dingtalk_hook_desc=Přidat integraci <a href="%s">Dingtalk</a> do vašeho repositáře.
settings.slack_token=Poukázka settings.slack_token=Poukázka
settings.slack_domain=Doména settings.slack_domain=Doména
settings.slack_channel=Kanál settings.slack_channel=Kanál
settings.deploy_keys=Klíče pro nasazení settings.deploy_keys=Klíče pro nasazení
settings.deploy_keys_helper=<b>Přichycen při činu!</b> Pokud chcete přidat osobní veřejné klíče, zadejte je prosím v <a href="%s%s">nastavení vašeho účtu</a>. settings.deploy_keys_helper=<b>Přichycen při činu!</b> Pokud chcete přidat osobní veřejné klíče, zadejte je prosím v <a href="%s%s">nastavení vašeho účtu</a>.
settings.add_deploy_key=Přidat klíč pro nasazení settings.add_deploy_key=Přidat klíč pro nasazení
settings.deploy_key_desc=Klíče pro nasazení mají pouze přístup ke čtení. Nejsou stejné jako osobní SSH klíče. settings.deploy_key_desc=Klíče pro nasazení mají pouze přístup ke čtení. Nejsou stejné jako SSH klíče osobního účtu.
settings.no_deploy_keys=Žádné klíče pro nasazení nebyly ještě přidány. settings.no_deploy_keys=Žádné klíče pro nasazení nebyly ještě přidány.
settings.title=Název settings.title=Název
settings.deploy_key_content=Obsah settings.deploy_key_content=Obsah
@@ -852,6 +876,8 @@ settings.add_key_success=Nový klíč pro nasazení '%s' byl přidán!
settings.deploy_key_deletion=Smazat klíč pro nasazení settings.deploy_key_deletion=Smazat klíč pro nasazení
settings.deploy_key_deletion_desc=Smazání toho klíče pro nasazení smaže také veškerý k němu svázaný přístup do tohoto repositáře. Chcete pokračovat? settings.deploy_key_deletion_desc=Smazání toho klíče pro nasazení smaže také veškerý k němu svázaný přístup do tohoto repositáře. Chcete pokračovat?
settings.deploy_key_deletion_success=Klíč pro nasazení byl smazán! settings.deploy_key_deletion_success=Klíč pro nasazení byl smazán!
settings.description_desc=Popis repozitáře. Maximální délka 512 znaků.
settings.description_length=Dostupné znaky
diff.browse_source=Procházet zdrojové kódy diff.browse_source=Procházet zdrojové kódy
diff.parent=rodič diff.parent=rodič
@@ -907,7 +933,7 @@ people=Lidé
invite_someone=Přizvěte někoho invite_someone=Přizvěte někoho
teams=Týmy teams=Týmy
lower_members=členové lower_members=členové
lower_repositories=repositáře lower_repositories=repozitáře
create_new_team=Vytvořit nový tým create_new_team=Vytvořit nový tým
org_desc=Popis org_desc=Popis
team_name=Název týmu team_name=Název týmu
@@ -916,9 +942,8 @@ team_name_helper=Tento název budete používat při zmiňovaní týmu v konverz
team_desc_helper=Popište prosím tento tým team_desc_helper=Popište prosím tento tým
team_permission_desc=Jakou úroveň přístupu má mít tento tým? team_permission_desc=Jakou úroveň přístupu má mít tento tým?
form.name_reserved=Název organizace '%s' je již rezervován. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Vzor názvu organizace '%s' není povolen. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Název týmu '%s' je vyhrazen.
settings=Nastavení settings=Nastavení
settings.options=Možnosti settings.options=Možnosti
@@ -971,9 +996,9 @@ teams.delete_team_success=Daný tým byl smazán.
teams.read_permission_desc=Členství v tom týmu poskytuje právo <strong>čtení</strong>: členové mohou číst z a vytvářet klony repositářů týmu. teams.read_permission_desc=Členství v tom týmu poskytuje právo <strong>čtení</strong>: členové mohou číst z a vytvářet klony repositářů týmu.
teams.write_permission_desc=Členství v tom týmu poskytuje právo <strong>zápisu</strong>: členové mohou číst z a odesílat do repositářů týmu. teams.write_permission_desc=Členství v tom týmu poskytuje právo <strong>zápisu</strong>: členové mohou číst z a odesílat do repositářů týmu.
teams.admin_permission_desc=Členství v tom týmu poskytuje právo <strong>správce</strong>: členové mohou číst z, odesílat do a přidávat spolupracovníky do repositářů týmu. teams.admin_permission_desc=Členství v tom týmu poskytuje právo <strong>správce</strong>: členové mohou číst z, odesílat do a přidávat spolupracovníky do repositářů týmu.
teams.repositories=Repositáře týmu teams.repositories=Repozitáře týmu
teams.search_repo_placeholder=Hledat repositář... teams.search_repo_placeholder=Hledat repositář...
teams.add_team_repository=Přidat repositář týmu teams.add_team_repository=Přidat repozitář týmu
teams.remove_repo=Odstranit teams.remove_repo=Odstranit
teams.add_nonexistent_repo=Repositář, který se snažíte přidat, neexistuje. Nejdříve jej vytvořte, prosím. teams.add_nonexistent_repo=Repositář, který se snažíte přidat, neexistuje. Nejdříve jej vytvořte, prosím.
@@ -981,7 +1006,7 @@ teams.add_nonexistent_repo=Repositář, který se snažíte přidat, neexistuje.
dashboard=Přehled dashboard=Přehled
users=Uživatelé users=Uživatelé
organizations=Organizace organizations=Organizace
repositories=Repositáře repositories=Repozitáře
authentication=Způsoby ověření authentication=Způsoby ověření
config=Nastavení config=Nastavení
notices=Systémová oznámení notices=Systémová oznámení
@@ -990,12 +1015,19 @@ first_page=První
last_page=Poslední last_page=Poslední
total=Celkem: %d total=Celkem: %d
dashboard.build_info=Informace o sestavení
dashboard.app_ver=Verze aplikace
dashboard.git_version=Git verze
dashboard.go_version=Go verze
dashboard.build_time=Čas sestavení
dashboard.build_commit=Commit sestavení
dashboard.statistic=Statistika dashboard.statistic=Statistika
dashboard.operations=Operace dashboard.operations=Operace
dashboard.system_status=Stav sledování systému dashboard.system_status=Stav sledování systému
dashboard.statistic_info=Databáze Gogs obsahuje <b>%d</b> uživatelů, <b>%d</b> organizací, <b>%d</b> veřejných klíčů, <b>%d</b> repositářů, <b>%d</b> hlídání, <b>%d</b> oblíbení, <b>%d</b> akcí, <b>%d</b> přístupů, <b>%d</b> úkolů, <b>%d</b> komentářů, <b>%d</b> sociálních účtů, <b>%d</b> sledování, <b>%d</b> zrcadel, <b>%d</b> vydání, <b>%d</b> zdrojů přihlášení, <b>%d</b> webových háčků, <b>%d</b> milníků, <b>%d</b> štítků, <b>%d</b> háčků, <b>%d</b> týmů, <b>%d</b> úkolů změn, <b>%d</b> příloh. dashboard.statistic_info=Databáze Gogs obsahuje <b>%d</b> uživatelů, <b>%d</b> organizací, <b>%d</b> veřejných klíčů, <b>%d</b> repositářů, <b>%d</b> hlídání, <b>%d</b> oblíbení, <b>%d</b> akcí, <b>%d</b> přístupů, <b>%d</b> úkolů, <b>%d</b> komentářů, <b>%d</b> sociálních účtů, <b>%d</b> sledování, <b>%d</b> zrcadel, <b>%d</b> vydání, <b>%d</b> zdrojů přihlášení, <b>%d</b> webových háčků, <b>%d</b> milníků, <b>%d</b> štítků, <b>%d</b> háčků, <b>%d</b> týmů, <b>%d</b> úkolů změn, <b>%d</b> příloh.
dashboard.operation_name=Název operace dashboard.operation_name=Název operace
dashboard.operation_switch=Přepnout dashboard.operation_switch=Přepnout
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Spustit dashboard.operation_run=Spustit
dashboard.clean_unbind_oauth=Smazat odpojené asociace OAuth2 dashboard.clean_unbind_oauth=Smazat odpojené asociace OAuth2
dashboard.clean_unbind_oauth_success=Všechny odpojené asociace OAuth2 byly smazány. dashboard.clean_unbind_oauth_success=Všechny odpojené asociace OAuth2 byly smazány.
@@ -1087,11 +1119,12 @@ repos.stars=Oblíbení
repos.issues=Úkoly repos.issues=Úkoly
repos.size=Velikost repos.size=Velikost
auths.auth_manage_panel=Panel správy způsobů ověřová auths.auth_sources=Zdroje ověře
auths.new=Přidat nový zdroj auths.new=Přidat nový zdroj
auths.name=Název auths.name=Název
auths.type=Typ auths.type=Typ
auths.enabled=Povolený auths.enabled=Povolený
auths.default=Výchozí
auths.updated=Změněné auths.updated=Změněné
auths.auth_type=Typ ověření auths.auth_type=Typ ověření
auths.auth_name=Název ověření auths.auth_name=Název ověření
@@ -1100,7 +1133,7 @@ auths.domain=Doména
auths.host=Server auths.host=Server
auths.port=Port auths.port=Port
auths.bind_dn=Připojení DN auths.bind_dn=Připojení DN
auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s auths.bind_dn_helper=Můžete použít '%s' jako zástupný znak pro uživatelské jméno, například DOM\%s
auths.bind_password=Heslo připojení auths.bind_password=Heslo připojení
auths.bind_password_helper=Upozornění: Toto heslo je ukládáno nešifrované. Nepoužívejte pro správcovské účty. auths.bind_password_helper=Upozornění: Toto heslo je ukládáno nešifrované. Nepoužívejte pro správcovské účty.
auths.user_base=Výchozí místo hledání uživatelů auths.user_base=Výchozí místo hledání uživatelů
@@ -1128,9 +1161,9 @@ auths.enable_tls=Povolit šifrování TLS
auths.skip_tls_verify=Přeskočit ověření TLS auths.skip_tls_verify=Přeskočit ověření TLS
auths.pam_service_name=Název služby PAM auths.pam_service_name=Název služby PAM
auths.enable_auto_register=Povolit zaregistrování se auths.enable_auto_register=Povolit zaregistrování se
auths.tips=Tipy
auths.edit=Upravit nastavení ověřování auths.edit=Upravit nastavení ověřování
auths.activated=Tento způsob ověřování je aktivní auths.activated=Tento způsob ověřování je aktivní
auths.default_auth=Toto ověření je výchozí zdroj přihlášení
auths.new_success=Nový způsob ověřování '%s' byl přidán. auths.new_success=Nový způsob ověřování '%s' byl přidán.
auths.update_success=Nastavení ověřování bylo změněno. auths.update_success=Nastavení ověřování bylo změněno.
auths.update=Změnit nastavení ověřování auths.update=Změnit nastavení ověřování
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Tento způsob ověřování bude smazán, chcete pokračo
auths.still_in_used=Tento způsob ověřování je stále používán některými uživateli. Prosím, nejdříve změňte u těchto uživatelů typ ověřování na jiný. auths.still_in_used=Tento způsob ověřování je stále používán některými uživateli. Prosím, nejdříve změňte u těchto uživatelů typ ověřování na jiný.
auths.deletion_success=Způsob ověřování byl smazán! auths.deletion_success=Způsob ověřování byl smazán!
auths.login_source_exist=Zdroj přihlášení '%s' již existuje. auths.login_source_exist=Zdroj přihlášení '%s' již existuje.
auths.github_api_endpoint=Koncový bod API
config.not_set=(not set) config.not_set=(není nastaveno)
config.server_config=Nastavení serveru config.server_config=Nastavení serveru
config.app_name=Název aplikace config.brand_name=Název značky
config.app_ver=Verze aplikace
config.app_url=URL aplikace
config.domain=Doména
config.offline_mode=Režim off-line
config.disable_router_log=Vypnout systémové záznamy směrovače
config.run_user=Účet pro spouštění config.run_user=Účet pro spouštění
config.run_mode=Režim spouštění config.run_mode=Režim spouštění
config.git_version=Verze Gitu config.server.external_url=Externí URL
config.static_file_root_path=Kořenový adresář statického souboru config.server.domain=Doména
config.log_file_root_path=Kořenový adresář souboru systémových záznamů config.server.protocol=Protokol
config.reverse_auth_user=Uživatel obráceného ověření config.server.http_addr=HTTP adresa
config.server.http_port=HTTP port
config.server.cert_file=Soubor certifikátu
config.server.key_file=Soubor klíče
config.server.tls_min_version=Minimální verze TLS
config.server.unix_socket_permission=Oprávnění Unix socket
config.server.local_root_url=Místní URL kořenového adresáře
config.server.offline_mode=Offline režim
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Povolit Gzip
config.server.app_data_path=Cesta dat aplikace
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=Nastavení SSH config.ssh_config=Nastavení SSH
config.ssh_enabled=Povolený config.ssh.enabled=Povoleno
config.ssh_start_builtin_server=Spustit vestavěný server config.ssh.domain=Vystavená doména
config.ssh_domain=Doména config.ssh.port=Vystavený port
config.ssh_port=Port config.ssh.root_path=Kořenová cesta
config.ssh_listen_port=Port pro naslouchání config.ssh.keygen_path=Keygen path
config.ssh_root_path=Kořenová cesta config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Kontrola minimální velikosti klíčů
config.ssh_key_test_path=Cesta testu klíčů config.ssh.minimum_key_sizes=Minimální velikost klíčů
config.ssh_keygen_path=Cesta ke generátoru klíčů ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Kontrola minimální velikosti klíčů config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Minimální velikost klíčů config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Serverové šifry
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Nastavení repositáře config.repo_config=Nastavení repositáře
config.repo_root_path=Kořenový adresář repositářů config.repo.root_path=Kořenová cesta
config.script_type=Typ skriptu config.repo.script_type=Typ skriptu
config.repo_force_private=Vynutit soukromé config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Maximální lhůta pro vytvoření config.repo.force_private=Force private
config.preferred_licenses=Upřednostňované licence config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Vypnout HTTP Git config.repo.preferred_licenses=Upřednostňované licence
config.enable_local_path_migration=Povolit migraci z místní cesty config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Souběžnost vyzvednutí revizí config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Nastavení databáze config.db_config=Nastavení databáze
config.db_type=Typ config.db.type=Type
config.db_host=Server config.db.host=Host
config.db_name=Název config.db.name=Name
config.db_user=Uživatel config.db.schema=Schema
config.db_ssl_mode=SSL režim config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(pouze pro 'postgres') config.db.user=User
config.db_path=Cesta config.db.ssl_mode=SSL mode
config.db_path_helper=(pro "sqlite3" a "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Nastavení služby config.security_config=Security configuration
config.register_email_confirm=Vyžadovat potvrzení e-mailu config.security.login_remember_days=Login remember days
config.disable_register=Vypnout registraci config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Ukázat tlačítko registrace config.security.cookie_username=Username cookie
config.require_sign_in_view=Vyžadovat zobrazení přihlášení config.security.cookie_secure=Enable secure cookie
config.mail_notify=Upozornění e-mailem config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Vypnout kontrolu minimální velikosti klíčů config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Povolit službu CAPTCHA config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Doba života aktivního kódu config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Lhůta kódu pro obnovu hesla
config.webhook_config=Nastavení webových háčků config.email_config=Email configuration
config.queue_length=Délka fronty config.email.enabled=Enabled
config.deliver_timeout=Časový limit doručení config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Přeskočit ověření TLS config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Nastavení odesílání e-mailů config.auth_config=Authentication configuration
config.mailer_enabled=Povolený config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Vypnout HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Server config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Uživatel config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Odeslat zkušební E-mail config.auth.disable_registration=Disable registration
config.test_mail_failed=Odeslání testovacího e-mailu na '%s' selhalo: %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Zkušební e-mail byl odeslán na '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=Nastavení ověření OAuth config.user_config=User configuration
config.oauth_enabled=Povolený config.user.enable_email_notify=Enable email notification
config.cache_config=Nastavení mezipaměti
config.cache_adapter=Adaptér mezipaměti
config.cache_interval=Interval mezipaměti
config.cache_conn=Připojení mezipaměti
config.session_config=Nastavení relace config.session_config=Nastavení relace
config.session_provider=Poskytovatel relace config.session.provider=Provider
config.provider_config=Nastavení poskytovatele config.session.provider_config=Provider config
config.cookie_name=Název souboru cookie config.session.cookie_name=Cookie
config.enable_set_cookie=Povolit nastavení cookie config.session.https_only=HTTPS only
config.gc_interval_time=Čas intervalu GC config.session.gc_interval=GC interval
config.session_life_time=Doba trvání relace config.session.max_life_time=Max life time
config.https_only=Pouze protokol HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Doba života souboru cookie
config.cache_config=Nastavení mezipaměti
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=Nastavení HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Nastavení ikony uživatele config.picture_config=Nastavení ikony uživatele
config.picture_service=Služba ikon uživatelů config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Vypnout službu Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Povolit jednotné ikony uživatelů config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Nastavení webových háčků
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Konfigurace Gitu config.git_config=Konfigurace Gitu
config.git_disable_diff_highlight=Vypnout zvýraznění syntaxe v rozdílovém zobrazení config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Maximální počet rozdílných řádků jednoho souboru config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Maximální počet zobrazených rozdílných znaků jedné řádky config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Maximální počet zobrazených rozdílných souborů config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Parametry GC config.git.gc_args=GC arguments
config.git_migrate_timeout=Časová lhůta přenesení config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Časový limit aktualizace zrcadla config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Časový limit operace naklonování config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Časový limit operace stažení config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Časový limit operace GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Nastavení systémových záznamů config.log_config=Nastavení systémových záznamů
config.log_file_root_path=Kořenový adresář souboru systémových záznamů
config.log_mode=Režim config.log_mode=Režim
config.log_options=Možnosti config.log_options=Možnosti
@@ -1284,7 +1383,6 @@ notices.delete_success=Systémová upozornění byla smazána.
[action] [action]
create_repo=vytvořil repositář <a href="%s">%s</a> create_repo=vytvořil repositář <a href="%s">%s</a>
fork_repo=rozštěpil repositář do <a href="%s">%s</a>
rename_repo=přejmenoval repositář z <code>%[1]s</code> na <a href="%[2]s">%[3]s</a> rename_repo=přejmenoval repositář z <code>%[1]s</code> na <a href="%[2]s">%[3]s</a>
commit_repo=odeslal do větve <a href="%[1]s/src/%[2]s">%[3]s</a> v repositáři <a href="%[1]s">%[4]s</a> commit_repo=odeslal do větve <a href="%[1]s/src/%[2]s">%[3]s</a> v repositáři <a href="%[1]s">%[4]s</a>
compare_commits=Zobrazit porovnání pro tyto %d revize compare_commits=Zobrazit porovnání pro tyto %d revize
@@ -1301,6 +1399,10 @@ create_branch=vytvořil novou větev <a href="%[1]s/src/%[2]s">%[3]s</a> v <a hr
delete_branch=smazal větev <code>%[2]s</code> v <a href="%[1]s">%[3]s</a> delete_branch=smazal větev <code>%[2]s</code> v <a href="%[1]s">%[3]s</a>
push_tag=odeslal značku <a href="%s/src/%s">%[2]s</a> do repositáře <a href="%[1]s">%[3]s</a> push_tag=odeslal značku <a href="%s/src/%s">%[2]s</a> do repositáře <a href="%[1]s">%[3]s</a>
delete_tag=smazána značka <code>%[2]s</code> v <a href="%[1]s">%[3]s</a> delete_tag=smazána značka <code>%[2]s</code> v <a href="%[1]s">%[3]s</a>
fork_repo=rozštěpil repositář do <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synchronizoval/a novou referenci <a href="%s/src/%s">%[2]s</a> do <a href="%[1]s">%[3]s</a> ze zrcadla
mirror_sync_delete=synchronizoval/a a smazal/a referenci <code>%[2]s</code> v <a href="%[1]s">%[3]s</a> ze zrcadla
[tool] [tool]
ago=před ago=před
@@ -1322,6 +1424,7 @@ months=%[2]s %[1]d měsíci
years=%[2]s %[1]d roky years=%[2]s %[1]d roky
raw_seconds=sekundy raw_seconds=sekundy
raw_minutes=minuty raw_minutes=minuty
raw_hours=hours
[dropzone] [dropzone]
default_message=Přetáhněte soubory sem nebo stiskněte Nahrát. default_message=Přetáhněte soubory sem nebo stiskněte Nahrát.

View File

@@ -9,7 +9,6 @@ sign_out=Abmelden
sign_up=Registrieren sign_up=Registrieren
register=Registrieren register=Registrieren
website=Webseite website=Webseite
version=Version
page=Seite page=Seite
template=Vorlage template=Vorlage
language=Sprache language=Sprache
@@ -44,17 +43,22 @@ issues=Issues
cancel=Abbrechen cancel=Abbrechen
[status]
page_not_found=Seite nicht gefunden
internal_server_error=Interner Serverfehler
[install] [install]
install=Installation install=Installation
title=Installationsschritte für den ersten Start title=Installationsschritte für den ersten Start
docker_helper=Wenn Gogs innerhalb von Docker läuft, lesen Sie sich bitte den <a target="_blank" href="%s">Leitfaden</a> genau durch, bevor Sie irgendwas auf dieser Seite ändern! docker_helper=Wenn Gogs innerhalb von Docker läuft, lesen Sie sich bitte den <a target="_blank" href="%s">Leitfaden</a> genau durch, bevor Sie etwas auf dieser Seite ändern!
requite_db_desc=Gogs benötigt MySQL, PostgreSQL, SQLite3, MSSQL oder TiDB. requite_db_desc=Gogs benötigt MySQL, PostgreSQL, SQLite3 oder TiDB (mit MySQL-Protokoll)
db_title=Datenbankeinstellungen db_title=Datenbankeinstellungen
db_type=Datenbanktyp db_type=Datenbanktyp
host=Host host=Host
user=Benutzer user=Benutzer
password=Passwort password=Passwort
db_name=Datenbankname db_name=Datenbankname
db_schema=Schema
db_helper=Bitte verwenden Sie in MySQL die InnoDB-Engine mit dem Zeichensatz utf8_general_ci. db_helper=Bitte verwenden Sie in MySQL die InnoDB-Engine mit dem Zeichensatz utf8_general_ci.
ssl_mode=SSL-Modus ssl_mode=SSL-Modus
path=Pfad path=Pfad
@@ -84,6 +88,7 @@ log_root_path=Logdateipfad
log_root_path_helper=Verzeichnis in das Logdateien geschrieben werden. log_root_path_helper=Verzeichnis in das Logdateien geschrieben werden.
enable_console_mode=Konsolen-Modus einschalten enable_console_mode=Konsolen-Modus einschalten
enable_console_mode_popup=Zusätzlich zum Datei-Modus, zeige Logs auch in der Konsole. enable_console_mode_popup=Zusätzlich zum Datei-Modus, zeige Logs auch in der Konsole.
default_branch=Standard Branch
optional_title=Optionale Einstellungen optional_title=Optionale Einstellungen
email_title=E-Mail-Service Einstellungen email_title=E-Mail-Service Einstellungen
@@ -122,6 +127,7 @@ run_user_not_match=Der ausführende Benutzer ist nicht der aktuelle Benutzer: %s
smtp_host_missing_port=In der Adresse des SMTP Host fehlt die Portnummer. smtp_host_missing_port=In der Adresse des SMTP Host fehlt die Portnummer.
invalid_smtp_from=SMTP Absender Feld ist nicht gültig: %v invalid_smtp_from=SMTP Absender Feld ist nicht gültig: %v
save_config_failed=Fehler beim Speichern der Konfiguration: %v save_config_failed=Fehler beim Speichern der Konfiguration: %v
init_failed=Fehler beim Initialisieren der Anwendung: %v
invalid_admin_setting=Admin-Konto Einstellungen sind ungültig: %v invalid_admin_setting=Admin-Konto Einstellungen sind ungültig: %v
install_success=Herzlich Willkommen! Wir sind froh, dass Sie sich für Gogs entschieden haben. Wir wünschen viel Vergnügen damit. install_success=Herzlich Willkommen! Wir sind froh, dass Sie sich für Gogs entschieden haben. Wir wünschen viel Vergnügen damit.
invalid_log_root_path=Pfad zum Log-Verzeichnis ist ungültig: %v invalid_log_root_path=Pfad zum Log-Verzeichnis ist ungültig: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Haben Sie bereits ein Konto? Jetzt anmelden!
social_register_hepler_msg=Haben Sie bereits ein Konto? Jetzt verknüpfen! social_register_hepler_msg=Haben Sie bereits ein Konto? Jetzt verknüpfen!
disable_register_prompt=Es tut uns leid, die Registrierung wurde deaktiviert. Bitte wenden Sie sich an den Administrator. disable_register_prompt=Es tut uns leid, die Registrierung wurde deaktiviert. Bitte wenden Sie sich an den Administrator.
disable_register_mail=Es tut uns leid, die Bestätigung der Registrierungs-E-Mail wurde deaktiviert. disable_register_mail=Es tut uns leid, die Bestätigung der Registrierungs-E-Mail wurde deaktiviert.
auth_source=Authentifizierungsquelle
local=Lokal
remember_me=Angemeldet bleiben remember_me=Angemeldet bleiben
forgot_password=Passwort vergessen forgot_password=Passwort vergessen
forget_password=Passwort vergessen? forget_password=Passwort vergessen?
@@ -229,6 +237,7 @@ org_name_been_taken=Organisationsname ist bereits vergeben.
team_name_been_taken=Teamname ist bereits vergeben. team_name_been_taken=Teamname ist bereits vergeben.
email_been_used=E-Mail-Adresse wird bereits verwendet. email_been_used=E-Mail-Adresse wird bereits verwendet.
username_password_incorrect=Benutzername oder Passwort ist nicht korrekt. username_password_incorrect=Benutzername oder Passwort ist nicht korrekt.
auth_source_mismatch=Die ausgewählte Authentifizierungsquelle ist dem Benutzer nicht zugeordnet.
enterred_invalid_repo_name=Bitte achten Sie darauf, dass der von Ihnen eingegebene Repository-Name korrekt ist. enterred_invalid_repo_name=Bitte achten Sie darauf, dass der von Ihnen eingegebene Repository-Name korrekt ist.
enterred_invalid_owner_name=Bitte achten Sie darauf, dass der eingegebene Name des Besitzers korrekt ist. enterred_invalid_owner_name=Bitte achten Sie darauf, dass der eingegebene Name des Besitzers korrekt ist.
enterred_invalid_password=Bitte achten Sie darauf, dass das eingegebene Passwort richtig ist. enterred_invalid_password=Bitte achten Sie darauf, dass das eingegebene Passwort richtig ist.
@@ -256,8 +265,7 @@ following=Folge ich
follow=Folgen follow=Folgen
unfollow=Nicht mehr folgen unfollow=Nicht mehr folgen
form.name_reserved=Der Benutzername '%s' ist reserviert. form.name_not_allowed=Benutzername oder Muster %q ist nicht erlaubt.
form.name_pattern_not_allowed=Benutzernamen der Form '%s' sind nicht erlaubt.
[settings] [settings]
profile=Profil profile=Profil
@@ -309,6 +317,7 @@ delete_email=Löschen
email_deletion=E-Mail löschen email_deletion=E-Mail löschen
email_deletion_desc=Das Löschen dieser E-Mail Adresse wird alle Informationen entfernen, die mit dieser E-Mail Adresse verknüpft sind. Wollen Sie fortfahren? email_deletion_desc=Das Löschen dieser E-Mail Adresse wird alle Informationen entfernen, die mit dieser E-Mail Adresse verknüpft sind. Wollen Sie fortfahren?
email_deletion_success=E-Mail-Adresse wurde erfolgreich gelöscht! email_deletion_success=E-Mail-Adresse wurde erfolgreich gelöscht!
email_deletion_primary=Die primäre E-Mail-Adresse kann nicht gelöscht werden.
add_new_email=Neue E-Mail-Adresse hinzufügen add_new_email=Neue E-Mail-Adresse hinzufügen
add_email=E-Mail-Adresse hinzufügen add_email=E-Mail-Adresse hinzufügen
add_email_confirmation_sent=Eine neue Bestätigungsmail wurde an '%s' gesendet, bitte überprüfen Sie Ihren Posteingang innerhalb von %d Stunden um die Bestätigung abzuschließen. add_email_confirmation_sent=Eine neue Bestätigungsmail wurde an '%s' gesendet, bitte überprüfen Sie Ihren Posteingang innerhalb von %d Stunden um die Bestätigung abzuschließen.
@@ -319,7 +328,7 @@ add_key=Schlüssel hinzufügen
ssh_desc=Dies ist eine Liste aller SSH-Schlüssel, die Ihrem Konto zugeordnet sind. Bitte entfernen Sie alle Schlüssel, die Ihnen nicht bekannt sind. ssh_desc=Dies ist eine Liste aller SSH-Schlüssel, die Ihrem Konto zugeordnet sind. Bitte entfernen Sie alle Schlüssel, die Ihnen nicht bekannt sind.
ssh_helper=<strong>Brauchen Sie Hilfe?</strong> Hier ist eine Anleitung zum <a href="%s">Erzeugen von SSH-Schlüsseln</a> oder <a href="%s">Lösen einfacher SSH-Probleme</a>. ssh_helper=<strong>Brauchen Sie Hilfe?</strong> Hier ist eine Anleitung zum <a href="%s">Erzeugen von SSH-Schlüsseln</a> oder <a href="%s">Lösen einfacher SSH-Probleme</a>.
add_new_key=SSH-Schlüssel hinzufügen add_new_key=SSH-Schlüssel hinzufügen
ssh_key_been_used=Inhalt des öffentlichen Schlüssels wurde verwendet. ssh_key_been_used=Inhalt des öffentlichen Schlüssels wurde bereits verwendet.
ssh_key_name_used=Ein öffentlicher Schlüssel mit diesem Namen existiert bereits. ssh_key_name_used=Ein öffentlicher Schlüssel mit diesem Namen existiert bereits.
key_name=Schlüsselname key_name=Schlüsselname
key_content=Inhalt key_content=Inhalt
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Oder geben Sie Ihren Geheim-Code ein:
two_factor_then_enter_passcode=Geben Sie die PIN ein: two_factor_then_enter_passcode=Geben Sie die PIN ein:
two_factor_verify=Bestätigen two_factor_verify=Bestätigen
two_factor_invalid_passcode=Die eingegebene PIN ist ungültig. Bitte versuchen Sie es erneut! two_factor_invalid_passcode=Die eingegebene PIN ist ungültig. Bitte versuchen Sie es erneut!
two_factor_reused_passcode=Der von dir eingegebene Passcode wurde bereits verwendet, bitte probiere einen anderen!
two_factor_enable_error=Einschalten der Zwei-Faktor-Authentifizierung ist fehlgeschlagen: %v two_factor_enable_error=Einschalten der Zwei-Faktor-Authentifizierung ist fehlgeschlagen: %v
two_factor_enable_success=Die Zwei-Faktor-Authentifizierung wurde für Ihr Konto erfolgreich aktiviert! two_factor_enable_success=Die Zwei-Faktor-Authentifizierung wurde für Ihr Konto erfolgreich aktiviert!
two_factor_recovery_codes_title=Zwei-Faktor-Authentifizierung-Wiederherstellungscodes two_factor_recovery_codes_title=Zwei-Faktor-Authentifizierung-Wiederherstellungscodes
@@ -362,6 +372,7 @@ two_factor_disable_success=Die Zwei-Faktor-Authentifizierung wurde erfolgreich d
manage_access_token=Verwaltung persönlicher Zugangs-Token manage_access_token=Verwaltung persönlicher Zugangs-Token
generate_new_token=Neues Token erzeugen generate_new_token=Neues Token erzeugen
tokens_desc=Die von Ihnen erzeugten Token können zum Zugriff auf die Gogs-API verwendet werden. tokens_desc=Die von Ihnen erzeugten Token können zum Zugriff auf die Gogs-API verwendet werden.
access_token_tips=Der persönliche Zugangs-Token kann entweder als Benutzername oder als Passwort verwendet werden. Es wird empfohlen den "x-access-token" als Benutzernamen und den persönlichen Zugangs-Token als Passwort für Git-Anwendungen zu verwenden.
new_token_desc=Jeder Token erlaubt vollen Zugriff auf ihr Konto. new_token_desc=Jeder Token erlaubt vollen Zugriff auf ihr Konto.
token_name=Token-Name token_name=Token-Name
generate_token=Token generieren generate_token=Token generieren
@@ -370,6 +381,7 @@ delete_token=Löschen
access_token_deletion=Persönlichen Token entfernen access_token_deletion=Persönlichen Token entfernen
access_token_deletion_desc=Das Löschen dieses persönlichen Zugangs-Tokens wird alle zugehörigen Zugriffe der Anwendung entfernen. Möchten Sie fortfahren? access_token_deletion_desc=Das Löschen dieses persönlichen Zugangs-Tokens wird alle zugehörigen Zugriffe der Anwendung entfernen. Möchten Sie fortfahren?
delete_token_success=Persönlicher Zugriffs-Token wurde erfolgreich entfernt! Vergessen Sie nicht Ihre Anwendung zu aktualisieren. delete_token_success=Persönlicher Zugriffs-Token wurde erfolgreich entfernt! Vergessen Sie nicht Ihre Anwendung zu aktualisieren.
token_name_exists=Token mit dem gleichen Namen existiert bereits.
orgs.none=Sie sind kein Mitglied einer Organisation. orgs.none=Sie sind kein Mitglied einer Organisation.
orgs.leave_title=Organisation verlassen orgs.leave_title=Organisation verlassen
@@ -391,7 +403,9 @@ owner=Besitzer
repo_name=Repository-Name repo_name=Repository-Name
repo_name_helper=Ein guter Repository-Name besteht gewöhnlich aus kurzen, leicht zu merkenden und eindeutigen Schlüsselworten. repo_name_helper=Ein guter Repository-Name besteht gewöhnlich aus kurzen, leicht zu merkenden und eindeutigen Schlüsselworten.
visibility=Sichtbarkeit visibility=Sichtbarkeit
unlisted=Ungelistet
visiblity_helper=Dieses Repository ist <span class="ui red text">privat</span> visiblity_helper=Dieses Repository ist <span class="ui red text">privat</span>
unlisted_helper=Dieses Repository ist <span class="ui red text">nicht gelistet</span>
visiblity_helper_forced=Der Administrator hat festgelegt, dass alle neuen Repositories <span class="ui red text">privat</span> sein müssen visiblity_helper_forced=Der Administrator hat festgelegt, dass alle neuen Repositories <span class="ui red text">privat</span> sein müssen
visiblity_fork_helper=(Eine Änderung dieses Wertes wirkt sich auf alle Forks aus) visiblity_fork_helper=(Eine Änderung dieses Wertes wirkt sich auf alle Forks aus)
clone_helper=Brauchen Sie Hilfe beim Klonen? Hier gibt es <a target="_blank" href="%s">Hilfe</a>! clone_helper=Brauchen Sie Hilfe beim Klonen? Hier gibt es <a target="_blank" href="%s">Hilfe</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Zuletzt synchronisiert
watchers=Beobachter watchers=Beobachter
stargazers=In Favoriten von stargazers=In Favoriten von
forks=Forks forks=Forks
repo_description_helper=Beschreibung des Repository. Maximal 512 Zeichen.
repo_description_length=Verfügbare Zeichen
form.reach_limit_of_creation=Der Besitzer hat die maximale Anzahl von %d erstellbaren Repositories erreicht. form.reach_limit_of_creation=Der Besitzer hat die maximale Anzahl von %d erstellbaren Repositories erreicht.
form.name_reserved=Repository-Name '%s' ist reserviert. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Repository-Namen der Form '%s' sind nicht erlaubt.
need_auth=Authorisierung benötigt need_auth=Authorisierung benötigt
migrate_type=Migrationstyp migrate_type=Migrationstyp
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Dies kann eine HTTP/HTTPS/GIT-URL sein.
migrate.clone_address_desc_import_local=Sie dürfen auch ein Repository vom lokalen Serverpfad migrieren. migrate.clone_address_desc_import_local=Sie dürfen auch ein Repository vom lokalen Serverpfad migrieren.
migrate.permission_denied=Ihnen fehlen die Rechte zum Importieren lokaler Repositories. migrate.permission_denied=Ihnen fehlen die Rechte zum Importieren lokaler Repositories.
migrate.invalid_local_path=Der lokale Pfad ist ungültig, existiert nicht oder ist kein Ordner. migrate.invalid_local_path=Der lokale Pfad ist ungültig, existiert nicht oder ist kein Ordner.
migrate.clone_address_resolved_to_blocked_local_address=Klonadresse in eine lokale Netzwerkadresse aufgelöst, die implizit blockiert ist.
migrate.failed=Fehler bei Migration: %v migrate.failed=Fehler bei Migration: %v
mirror_from=Mirror von mirror_from=Mirror von
@@ -478,6 +494,8 @@ branches.stale_branches=Alte Branches
branches.all=Alle Branches branches.all=Alle Branches
branches.updated_by=Aktualisiert %[1]s von %[2]s branches.updated_by=Aktualisiert %[1]s von %[2]s
branches.change_default_branch=Ändere Standard-Branch branches.change_default_branch=Ändere Standard-Branch
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Neue Datei editor.new_file=Neue Datei
editor.upload_file=Datei hochladen editor.upload_file=Datei hochladen
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Seit dem Start der Bearbeitung hat sich die Da
editor.file_already_exists=Eine Datei mit dem Namen '%s' existiert bereits in diesem Repository. editor.file_already_exists=Eine Datei mit dem Namen '%s' existiert bereits in diesem Repository.
editor.no_changes_to_show=Keine Änderungen vorhanden. editor.no_changes_to_show=Keine Änderungen vorhanden.
editor.fail_to_update_file=Fehler beim Ändern/Erstellen der Datei '%s'. Fehler: %v editor.fail_to_update_file=Fehler beim Ändern/Erstellen der Datei '%s'. Fehler: %v
editor.fail_to_delete_file=Fehler beim Löschen der Datei '%s'. Fehler: %v
editor.add_subdir=Unterverzeichnis erstellen... editor.add_subdir=Unterverzeichnis erstellen...
editor.unable_to_upload_files=Fehler beim Hochladen der Dateien zu '%s'. Fehler: %v editor.unable_to_upload_files=Fehler beim Hochladen der Dateien zu '%s'. Fehler: %v
editor.upload_files_to_dir=Dateien hochladen nach '%s' editor.upload_files_to_dir=Dateien hochladen nach '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Dieser Pull-Request kann nicht automatisch zusammen
pulls.cannot_auto_merge_helper=Bitte manuell zusammenführen, um die Konflikte zu lösen. pulls.cannot_auto_merge_helper=Bitte manuell zusammenführen, um die Konflikte zu lösen.
pulls.create_merge_commit=Erstelle einen Merge-Commit pulls.create_merge_commit=Erstelle einen Merge-Commit
pulls.rebase_before_merging=Rebase vor dem Zusammenführen pulls.rebase_before_merging=Rebase vor dem Zusammenführen
pulls.commit_description=Commit Beschreibung
pulls.merge_pull_request=Pull-Request zusammenführen pulls.merge_pull_request=Pull-Request zusammenführen
pulls.open_unmerged_pull_exists=`Sie können diesen Pull-Request nicht wieder öffnen, da bereits ein offener Pull-Request (#%d) aus dem selben Repository mit den gleichen Merge-Informationen existiert und auf das Zusammenführen wartet.` pulls.open_unmerged_pull_exists=`Sie können diesen Pull-Request nicht wieder öffnen, da bereits ein offener Pull-Request (#%d) aus dem selben Repository mit den gleichen Merge-Informationen existiert und auf das Zusammenführen wartet.`
pulls.delete_branch=Zweig löschen pulls.delete_branch=Zweig löschen
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Namenskonvention des externen Issue-Trackers:
settings.tracker_issue_style.numeric=Numerisch settings.tracker_issue_style.numeric=Numerisch
settings.tracker_issue_style.alphanumeric=Alphanumerisch settings.tracker_issue_style.alphanumeric=Alphanumerisch
settings.tracker_url_format_desc=Sie können die Platzhalter <code>{user} {repo} {index}</code> für den Benutzernamen, den Namen des Repositories und die Issue-Nummer verwenden. settings.tracker_url_format_desc=Sie können die Platzhalter <code>{user} {repo} {index}</code> für den Benutzernamen, den Namen des Repositories und die Issue-Nummer verwenden.
settings.pulls_desc=Pull-Requests aktivieren, um öffentliche Mitwirkung zu ermöglichen settings.pulls_desc=Erlaube Pull-Requests zur Zusammenarbeit von Repositories und Branches
settings.pulls.ignore_whitespace=Ignoriere whitespace Änderungen settings.pulls.ignore_whitespace=Ignoriere whitespace Änderungen
settings.pulls.allow_rebase_merge=Die Verwendung von Rebase erlauben, um Commits zu mergen settings.pulls.allow_rebase_merge=Die Verwendung von Rebase erlauben, um Commits zu mergen
settings.danger_zone=Gefahrenzone settings.danger_zone=Gefahrenzone
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Repository Wiki Daten erfolgreich gelöscht.
settings.delete=Dieses Repository löschen settings.delete=Dieses Repository löschen
settings.delete_desc=Wenn dieses Repository gelöscht wurde, gibt es keinen Weg zurück. Bitte seien Sie vorsichtig. settings.delete_desc=Wenn dieses Repository gelöscht wurde, gibt es keinen Weg zurück. Bitte seien Sie vorsichtig.
settings.delete_notices_1=- Diese Operation kann <strong>NICHT</strong> rückgängig gemacht werden. settings.delete_notices_1=- Diese Operation kann <strong>NICHT</strong> rückgängig gemacht werden.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Die Operation wird alles, was mit diesem Git-Repository verbunden ist, dauerhaft löschen, inklusive der Daten, Issues, Kommentare und Zugriffsrechte von Mitarbeitern.
settings.delete_notices_fork_1=- Nach dem Löschen werden alle Forks unabhängig. settings.delete_notices_fork_1=- Nach dem Löschen werden alle Forks unabhängig.
settings.deletion_success=Repository wurde erfolgreich gelöscht! settings.deletion_success=Repository wurde erfolgreich gelöscht!
settings.update_settings_success=Repository-Optionen aktualisiert. settings.update_settings_success=Repository-Optionen aktualisiert.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Nach dem Löschen wird dieser Benutzer keine
settings.remove_collaborator_success=Mitarbeiter wurde entfernt. settings.remove_collaborator_success=Mitarbeiter wurde entfernt.
settings.search_user_placeholder=Benutzer suchen... settings.search_user_placeholder=Benutzer suchen...
settings.org_not_allowed_to_be_collaborator=Eine Organisation kann nicht als Mitarbeiter hinzugefügt werden. settings.org_not_allowed_to_be_collaborator=Eine Organisation kann nicht als Mitarbeiter hinzugefügt werden.
settings.add_webhook=Webhook hinzufügen
settings.hooks_desc=Webhooks erlauben es Ihnen, externe Dienste zu informieren, wenn etwas Bestimmtes in Ihrem Repository passiert. Gogs sendet dann einen POST-Request an alle angegebenen URLs. Erfahren Sie mehr in unserem <a target="_blank" href="%s">Webhooks Guide</a>. settings.hooks_desc=Webhooks erlauben es Ihnen, externe Dienste zu informieren, wenn etwas Bestimmtes in Ihrem Repository passiert. Gogs sendet dann einen POST-Request an alle angegebenen URLs. Erfahren Sie mehr in unserem <a target="_blank" href="%s">Webhooks Guide</a>.
settings.webhooks.add_new=Einen neuen Webhook hinzufügen:
settings.webhooks.choose_a_type=Typ auswählen...
settings.add_webhook=Webhook hinzufügen
settings.webhook_deletion=Webhook entfernen settings.webhook_deletion=Webhook entfernen
settings.webhook_deletion_desc=Das Löschen dieses Webhooks wird alle zugehörigen Informationen und den Übertragungsverlauf entfernen. Wirklich fortfahren? settings.webhook_deletion_desc=Das Löschen dieses Webhooks wird alle zugehörigen Informationen und den Übertragungsverlauf entfernen. Wirklich fortfahren?
settings.webhook_deletion_success=Webhook wurde erfolgreich entfernt! settings.webhook_deletion_success=Webhook wurde erfolgreich entfernt!
@@ -792,6 +814,8 @@ settings.webhook.response=Antwort
settings.webhook.headers=Kopfzeilen settings.webhook.headers=Kopfzeilen
settings.webhook.payload=Nutzdaten settings.webhook.payload=Nutzdaten
settings.webhook.body=Inhalt settings.webhook.body=Inhalt
settings.webhook.err_cannot_parse_payload_url=Payload URL kann nicht analysiert werden: %v
settings.webhook.url_resolved_to_blocked_local_address=Die Payload-URL wurde in eine lokale Netzwerkadresse aufgelöst, die implizit blockiert ist.
settings.githooks_desc=Git-Hooks werden von Git selbst bereitgestellt. Sie können die Dateien der unterstützten Hooks in der Liste unten bearbeiten, um eigene Operationen einzubinden. settings.githooks_desc=Git-Hooks werden von Git selbst bereitgestellt. Sie können die Dateien der unterstützten Hooks in der Liste unten bearbeiten, um eigene Operationen einzubinden.
settings.githook_edit_desc=Wenn ein Hook inaktiv ist, wird der Standardinhalt benutzt. Lassen Sie den Inhalt leer, um den Hook zu deaktivieren. settings.githook_edit_desc=Wenn ein Hook inaktiv ist, wird der Standardinhalt benutzt. Lassen Sie den Inhalt leer, um den Hook zu deaktivieren.
settings.githook_name=Hook-Name settings.githook_name=Hook-Name
@@ -819,10 +843,10 @@ settings.event_push=Push
settings.event_push_desc=Git push auf ein Repository settings.event_push_desc=Git push auf ein Repository
settings.event_issues=Issues settings.event_issues=Issues
settings.event_issues_desc=Issue geöffnet, geschlossen, wieder geöffnet, bearbeitet, zugewiesen, nicht zugewiesen, Label aktualisiert, Label gelöscht, einem Meilenstein zugewiesen oder davon entfernt. settings.event_issues_desc=Issue geöffnet, geschlossen, wieder geöffnet, bearbeitet, zugewiesen, nicht zugewiesen, Label aktualisiert, Label gelöscht, einem Meilenstein zugewiesen oder davon entfernt.
settings.event_issue_comment=Issue-Kommentar
settings.event_issue_comment_desc=Issue-Kommentar angelegt, geändert oder gelöscht.
settings.event_pull_request=Pull-Request settings.event_pull_request=Pull-Request
settings.event_pull_request_desc=Pull-Request geöffnet, geschlossen, wieder geöffnet, bearbeitet, zugewiesen, nicht zugewiesen, Label aktualisiert, Label gelöscht, einem Meilenstein zugewiesen, davon entfernt oder synchronisiert. settings.event_pull_request_desc=Pull-Request geöffnet, geschlossen, wieder geöffnet, bearbeitet, zugewiesen, nicht zugewiesen, Label aktualisiert, Label gelöscht, einem Meilenstein zugewiesen, davon entfernt oder synchronisiert.
settings.event_issue_comment=Issue-Kommentar
settings.event_issue_comment_desc=Issue-Kommentar angelegt, geändert oder gelöscht.
settings.event_release=Release settings.event_release=Release
settings.event_release_desc=Release in Repository veröffentlicht. settings.event_release_desc=Release in Repository veröffentlicht.
settings.active=Aktiv settings.active=Aktiv
@@ -852,6 +876,8 @@ settings.add_key_success=Der Deploy-Schlüssel '%s' wurde erfolgreich hinzugefü
settings.deploy_key_deletion=Deploy-Schlüssel löschen settings.deploy_key_deletion=Deploy-Schlüssel löschen
settings.deploy_key_deletion_desc=Nach dem Löschen dieses Deploy-Schlüssels werden entsprechende Zugriffe auf dieses Repository nicht mehr möglich sein. Möchten Sie wirklich fortfahren? settings.deploy_key_deletion_desc=Nach dem Löschen dieses Deploy-Schlüssels werden entsprechende Zugriffe auf dieses Repository nicht mehr möglich sein. Möchten Sie wirklich fortfahren?
settings.deploy_key_deletion_success=Deploy-Schlüssel wurde erfolgreich gelöscht! settings.deploy_key_deletion_success=Deploy-Schlüssel wurde erfolgreich gelöscht!
settings.description_desc=Beschreibung des Repository. Maximal 512 Zeichen.
settings.description_length=Verfügbare Zeichen
diff.browse_source=Quellcode durchsuchen diff.browse_source=Quellcode durchsuchen
diff.parent=Ursprung diff.parent=Ursprung
@@ -916,9 +942,8 @@ team_name_helper=Unter diesem Namen können Sie in Diskussionen auf das Team ver
team_desc_helper=Worum geht es bei diesem Team? team_desc_helper=Worum geht es bei diesem Team?
team_permission_desc=Welche Berechtigungsstufe soll das Team haben? team_permission_desc=Welche Berechtigungsstufe soll das Team haben?
form.name_reserved=Organisationsname '%s' ist bereits vergeben. form.name_not_allowed=Organisationsname oder Muster %q ist nicht zulässig.
form.name_pattern_not_allowed=Organisationsnamen der Form '%s' sind nicht erlaubt. form.team_name_not_allowed=Benutzername oder Muster %q ist nicht erlaubt.
form.team_name_reserved=Der Teamname '%s' ist reserviert.
settings=Einstellungen settings=Einstellungen
settings.options=Optionen settings.options=Optionen
@@ -990,12 +1015,19 @@ first_page=Erste
last_page=Letzte last_page=Letzte
total=Gesamt: %d total=Gesamt: %d
dashboard.build_info=Build-Informationen
dashboard.app_ver=Anwendungsversion
dashboard.git_version=Git-Version
dashboard.go_version=Go-Version
dashboard.build_time=Build-Zeit
dashboard.build_commit=Build-Commit
dashboard.statistic=Statistik dashboard.statistic=Statistik
dashboard.operations=Operationen dashboard.operations=Operationen
dashboard.system_status=Systemmonitor-Status dashboard.system_status=Systemmonitor-Status
dashboard.statistic_info=Gogs Datenbank hat <b>%d</b> Benutzer, <b>%d</b> Organisationen, <b>%d</b> öffentliche Schlüssel, <b>%d</b> Repositories, <b>%d</b> Beobachtet, <b>%d</b> Favoriten, <b>%d</b> Aktionen, <b>%d</b> Zugriffe, <b>%d</b> Issues, <b>%d</b> Kommentare, <b>%d</b> Konten sozialer Medien, <b>%d</b> Folgende, <b>%d</b> Mirror, <b>%d</b> Releases, <b>%d</b> Login-Quellen, <b>%d</b> Webhooks, <b>%d</b> Meilensteine, <b>%d</b> Label, <b>%d</b> Hook-Tasks, <b>%d</b> Teams, <b>%d</b> Aktualisierungs-Tasks, <b>%d</b> Anhänge. dashboard.statistic_info=Gogs Datenbank hat <b>%d</b> Benutzer, <b>%d</b> Organisationen, <b>%d</b> öffentliche Schlüssel, <b>%d</b> Repositories, <b>%d</b> Beobachtet, <b>%d</b> Favoriten, <b>%d</b> Aktionen, <b>%d</b> Zugriffe, <b>%d</b> Issues, <b>%d</b> Kommentare, <b>%d</b> Konten sozialer Medien, <b>%d</b> Folgende, <b>%d</b> Mirror, <b>%d</b> Releases, <b>%d</b> Login-Quellen, <b>%d</b> Webhooks, <b>%d</b> Meilensteine, <b>%d</b> Label, <b>%d</b> Hook-Tasks, <b>%d</b> Teams, <b>%d</b> Aktualisierungs-Tasks, <b>%d</b> Anhänge.
dashboard.operation_name=Name der Operation dashboard.operation_name=Name der Operation
dashboard.operation_switch=Wechseln dashboard.operation_switch=Wechseln
dashboard.select_operation_to_run=Bitte wählen Sie den auszuführenden Vorgang aus
dashboard.operation_run=Ausführen dashboard.operation_run=Ausführen
dashboard.clean_unbind_oauth=Nicht verbundene OAuths bereinigen dashboard.clean_unbind_oauth=Nicht verbundene OAuths bereinigen
dashboard.clean_unbind_oauth_success=Alle nicht verbundenen OAuth-Tokens wurden gelöscht. dashboard.clean_unbind_oauth_success=Alle nicht verbundenen OAuth-Tokens wurden gelöscht.
@@ -1087,11 +1119,12 @@ repos.stars=Favoriten
repos.issues=Issues repos.issues=Issues
repos.size=Größe repos.size=Größe
auths.auth_manage_panel=Authentifizierung auths.auth_sources=Authentifizierungsquelle
auths.new=Neue Quelle hinzufügen auths.new=Neue Quelle hinzufügen
auths.name=Name auths.name=Name
auths.type=Typ auths.type=Typ
auths.enabled=Aktiviert auths.enabled=Aktiviert
auths.default=Standard
auths.updated=Aktualisiert auths.updated=Aktualisiert
auths.auth_type=Authentifizierungstyp auths.auth_type=Authentifizierungstyp
auths.auth_name=Authentifizierungsname auths.auth_name=Authentifizierungsname
@@ -1128,9 +1161,9 @@ auths.enable_tls=TLS-Verschlüsselung aktivieren
auths.skip_tls_verify=TLS-Prüfung überspringen auths.skip_tls_verify=TLS-Prüfung überspringen
auths.pam_service_name=PAM Dienstname auths.pam_service_name=PAM Dienstname
auths.enable_auto_register=Automatische Registrierung aktivieren auths.enable_auto_register=Automatische Registrierung aktivieren
auths.tips=Tipps
auths.edit=Authentifizierungseinstellungen bearbeiten auths.edit=Authentifizierungseinstellungen bearbeiten
auths.activated=Diese Authentifizierung ist aktiv auths.activated=Diese Authentifizierung ist aktiv
auths.default_auth=Diese Authentifizierungsmethode ist die Vorgabe
auths.new_success=Neue Authentifizierung '%s' wurde erfolgreich hinzugefügt. auths.new_success=Neue Authentifizierung '%s' wurde erfolgreich hinzugefügt.
auths.update_success=Die Authentifizierungseinstellungen wurden erfolgreich aktualisiert. auths.update_success=Die Authentifizierungseinstellungen wurden erfolgreich aktualisiert.
auths.update=Authentifizierungseinstellungen aktualisieren auths.update=Authentifizierungseinstellungen aktualisieren
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Diese Authentifizierung wird gelöscht. Möchten Sie fort
auths.still_in_used=Diese Authentifizierung wird noch von einigen Benutzern verwendet. Bitte löschen Sie diese Benutzer oder ändern Sie deren Anmeldetyp. auths.still_in_used=Diese Authentifizierung wird noch von einigen Benutzern verwendet. Bitte löschen Sie diese Benutzer oder ändern Sie deren Anmeldetyp.
auths.deletion_success=Authentifizierung wurde erfolgreich gelöscht! auths.deletion_success=Authentifizierung wurde erfolgreich gelöscht!
auths.login_source_exist=Login-Quelle '%s' ist bereits vorhanden. auths.login_source_exist=Login-Quelle '%s' ist bereits vorhanden.
auths.github_api_endpoint=API Endpunkt
config.not_set=(nicht festgelegt) config.not_set=(nicht festgelegt)
config.server_config=Serverkonfiguration config.server_config=Serverkonfiguration
config.app_name=Name der Anwendung config.brand_name=Markenname
config.app_ver=Anwendungsversion
config.app_url=Anwendungs-URL
config.domain=Domain
config.offline_mode=Offline-Modus
config.disable_router_log=Router-Log deaktivieren
config.run_user=Ausführender Benutzer config.run_user=Ausführender Benutzer
config.run_mode=Laufzeit-Modus config.run_mode=Laufzeit-Modus
config.git_version=Git Version config.server.external_url=Externe URL
config.static_file_root_path=Verzeichnis für statische Dateien config.server.domain=Domäne
config.log_file_root_path=Log-Verzeichnis config.server.protocol=Protokoll
config.reverse_auth_user=Nutzer bei Reverse-Authentifizierung config.server.http_addr=HTTP-Adresse
config.server.http_port=HTTP-Port
config.server.cert_file=Zertifikatsdatei
config.server.key_file=Schlüsseldatei
config.server.tls_min_version=Minimale TLS-Version
config.server.unix_socket_permission=Unix-Socket-Berechtigung
config.server.local_root_url=Lokale Root-URL
config.server.offline_mode=Offline-Modus
config.server.disable_router_log=Router-Log deaktivieren
config.server.enable_gzip=Gzip aktivieren
config.server.app_data_path=Anwendungsdatenpfad
config.server.load_assets_from_disk=Assets von Festplatte laden
config.server.landing_url=Startseite
config.ssh_config=SSH Konfiguration config.ssh_config=SSH Konfiguration
config.ssh_enabled=Aktiviert config.ssh.enabled=Aktiviert
config.ssh_start_builtin_server=Eingebauten Server starten config.ssh.domain=Exponierte Domain
config.ssh_domain=Domain config.ssh.port=Exponierter Port
config.ssh_port=Port config.ssh.root_path=Wurzelpfad
config.ssh_listen_port=Listen Port config.ssh.keygen_path=Keygenpfad
config.ssh_root_path=Verzeichnis config.ssh.key_test_path=Schlüsseltestpfad
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Prüfung der Mindestschlüssellänge
config.ssh_key_test_path=Schlüssel-Test-Pfad config.ssh.minimum_key_sizes=Mindestschlüssellängen
config.ssh_keygen_path=Keygen ('ssh-keygen') Pfad config.ssh.rewrite_authorized_keys_at_start=Beim Start "authorized_keys" umschreiben
config.ssh_minimum_key_size_check=Prüfung der Mindestschlüssellänge config.ssh.start_builtin_server=Eingebauten Server starten
config.ssh_minimum_key_sizes=Minimale Schlüssellängen config.ssh.listen_host=Listen-Host
config.ssh.listen_port=Listen-Port
config.ssh.server_ciphers=Serverchiffren
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server-Algorithmen
config.repo_config=Repository-Konfiguration config.repo_config=Repository-Konfiguration
config.repo_root_path=Repository-Verzeichnis config.repo.root_path=Wurzelpfad
config.script_type=Skript-Typ config.repo.script_type=Skript-Typ
config.repo_force_private=Erzwinge privat config.repo.ansi_chatset=ANSI-Zeichensatz
config.max_creation_limit=Maximal erstellbare Anzahl config.repo.force_private=Privat erzwingen
config.preferred_licenses=Bevorzugte Lizenzen config.repo.max_creation_limit=Maximales Erstellungslimit
config.disable_http_git=Deaktiviere HTTP-Git config.repo.preferred_licenses=Bevorzugte Lizenzen
config.enable_local_path_migration=Erlaube Migration von lokalem Pfad config.repo.disable_http_git=HTTP-Git deaktivieren
config.commits_fetch_concurrency=Anzahl gleichzeitiger Commit-/Fetch-Prozesse config.repo.enable_local_path_migration=Lokale Pfadmigration aktivieren
config.repo.enable_raw_file_render_mode=Darstellen von Roh-Dateien aktivieren
config.http_config=HTTP-Konfiguration config.repo.commits_fetch_concurrency=Anzahl gleichzeitiger Commit-/Fetch-Prozesse
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor Erweiterungen für Zeilenumbrüche
config.repo.editor.previewable_file_modes=Vorschau der Dateimodi des Editors
config.repo.upload.enabled=Upload aktiviert
config.repo.upload.temp_path=Temporärer Pfad für Uploads
config.repo.upload.allowed_types=Erlaubte Upload-Typen
config.repo.upload.file_max_size=Upload-Dateigrößenlimit
config.repo.upload.max_files=Upload-Dateilimit
config.db_config=Datenbankkonfiguration config.db_config=Datenbankkonfiguration
config.db_type=Typ config.db.type=Typ
config.db_host=Host config.db.host=Host
config.db_name=Name config.db.name=Name
config.db_user=Benutzer config.db.schema=Schema
config.db_ssl_mode=SSL-Modus config.db.schema_helper=(nur für "postgres")
config.db_ssl_mode_helper=(nur für "postgres") config.db.user=Benutzer
config.db_path=Verzeichnis config.db.ssl_mode=SSL-Modus
config.db_path_helper=(für "sqlite3" und "tidb") config.db.ssl_mode_helper=(nur für "postgres")
config.db.path=Pfad
config.db.path_helper=(nur für "sqlite3")
config.db.max_open_conns=Maximale Anzahl offener Verbindungen
config.db.max_idle_conns=Maximale Leerlaufverbindungen
config.service_config=Service-Konfiguration config.security_config=Sicherheitskonfiguration
config.register_email_confirm=E-Mail-Bestätigung bei Registrierung config.security.login_remember_days=Anzahl Tage zum Speichern des Logins
config.disable_register=Registrierung deaktivieren config.security.cookie_remember_name=Cookie merken
config.show_registration_button=Schaltfläche Registrieren anzeigen config.security.cookie_username=Benutzernamen-Cookie
config.require_sign_in_view=Ansehen erfordert Anmeldung config.security.cookie_secure=Sicheres Cookie aktivieren
config.mail_notify=E-Mail-Benachrichtigung config.security.reverse_proxy_auth_user=Reverse-Proxy-Authentifizierungs-Header
config.disable_key_size_check=Prüfung der Mindestschlüssellänge deaktiveren config.security.enable_login_status_cookie=Login-Status-Cookie aktivieren
config.enable_captcha=Captcha aktivieren config.security.login_status_cookie_name=Login-Status-Cookie
config.active_code_lives=Aktivierungscode Lebensdauer config.security.local_network_allowlist=Zulassungsliste für lokale Netzwerke
config.reset_password_code_lives=Passwortcode Lebensdauer
config.webhook_config=Webhook-Konfiguration config.email_config=E-Mail-Konfiguration
config.queue_length=Warteschlangenlänge config.email.enabled=Aktiviert
config.deliver_timeout=Zeitlimit für Zustellung config.email.subject_prefix=Betreff-Präfix
config.skip_tls_verify=TLS verifikation überspringen config.email.host=Host
config.email.from=Von
config.email.user=Benutzer
config.email.disable_helo=HELO deaktivieren
config.email.helo_hostname=HELO Hostname
config.email.skip_verify=Zertifikatsüberprüfung überspringen
config.email.use_certificate=Benutzerdefiniertes Zertifikat verwenden
config.email.cert_file=Zertifikatsdatei
config.email.key_file=Schlüsseldatei
config.email.use_plain_text=Klartext verwenden
config.email.add_plain_text_alt=Klartext-Alternative hinzufügen
config.email.send_test_mail=Test-E-Mail senden
config.email.test_mail_failed=Fehler beim Senden der Test-E-Mail an '%s': %v
config.email.test_mail_sent=Test-E-Mail wurde an '%s ' gesendet.
config.mailer_config=Mailer-Konfiguration config.auth_config=Authentifizierungskonfiguration
config.mailer_enabled=Aktiviert config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=HELO Deaktivieren config.auth.activate_code_lives=Aktivierungscode Lebensdauer
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Gültigkeitsdauer Zurücksetzungs-Code
config.mailer_host=Host config.auth.require_email_confirm=E-Mail-Bestätigung erforderlich
config.mailer_user=Benutzer config.auth.require_sign_in_view=Anmeldung erforderlich
config.send_test_mail=Test-E-Mail senden config.auth.disable_registration=Registrierung deaktivieren
config.test_mail_failed=Das Senden der Test-E-Mail an '%s': %v ist fehlgeschlagen config.auth.enable_registration_captcha=Registrierungs-Captcha aktivieren
config.test_mail_sent=Test-E-Mail wurde an '%s' gesendet. config.auth.enable_reverse_proxy_authentication=Reverse-Proxy-Authentifizierung aktivieren
config.auth.enable_reverse_proxy_auto_registration=Automatische Reverse-Proxy-Registrierung aktivieren
config.auth.reverse_proxy_authentication_header=Reverse-Proxy-Authentifizierungs-Header
config.oauth_config=OAuth-Konfiguration config.user_config=Benutzerkonfiguration
config.oauth_enabled=Aktiviert config.user.enable_email_notify=E-Mail-Benachrichtigung aktivieren
config.cache_config=Cache-Konfiguration
config.cache_adapter=Cache-Adapter
config.cache_interval=Cache-Intervall
config.cache_conn=Cache-Anbindung
config.session_config=Session-Konfiguration config.session_config=Session-Konfiguration
config.session_provider=Session-Provider config.session.provider=Anbieter
config.provider_config=Provider-Einstellungen config.session.provider_config=Anbieter-Konfiguration
config.cookie_name=Cookie-Name config.session.cookie_name=Cookie
config.enable_set_cookie=Cookies verwenden config.session.https_only=Nur HTTPS
config.gc_interval_time=GC-Intervall config.session.gc_interval=GC-Intervall
config.session_life_time=Session-Lebensdauer config.session.max_life_time=Maximale Lebensdauer
config.https_only=Nur HTTPS config.session.csrf_cookie_name=CSRF-Cookie
config.cookie_life_time=Cookie-Lebensdauer
config.cache_config=Cache-Konfiguration
config.cache.adapter=Adapter
config.cache.interval=GC-Intervall
config.cache.host=Host
config.http_config=HTTP-Konfiguration
config.http.access_control_allow_origin=Access-Control-Allow-Origin
config.attachment_config=Anhang-Konfiguration
config.attachment.enabled=Aktiviert
config.attachment.path=Pfad
config.attachment.allowed_types=Erlaubte Typen
config.attachment.max_size=Größenlimit
config.attachment.max_files=Dateilimit
config.release_config=Release-Konfiguration
config.release.attachment.enabled=Anhang aktiviert
config.release.attachment.allowed_types=Erlaubte Anhang-Typen
config.release.attachment.max_size=Größenlimit für Anhang
config.release.attachment.max_files=Dateilimit für Anhang
config.picture_config=Konfiguration der Profilbilder config.picture_config=Konfiguration der Profilbilder
config.picture_service=Bildservice config.picture.avatar_upload_path=Benutzer-Avatar Upload-Pfad
config.disable_gravatar=Gravatar deaktivieren config.picture.repo_avatar_upload_path=Repository-Avatar Upload-Pfad
config.enable_federated_avatar=Föderierte Profilbilder einschalten config.picture.gravatar_source=Gravatar-Quelle
config.picture.disable_gravatar=Gravatar deaktivieren
config.picture.enable_federated_avatar=Föderierte Avatare aktivieren
config.mirror_config=Mirror-Konfiguration
config.mirror.default_interval=Standardintervall
config.webhook_config=Webhook-Konfiguration
config.webhook.types=Typen
config.webhook.deliver_timeout=Zeitlimit für Zustellung
config.webhook.skip_tls_verify=TLS-Prüfung überspringen
config.git_config=Git Konfiguration config.git_config=Git Konfiguration
config.git_disable_diff_highlight=Diff Syntaxhervorhebung ausschalten config.git.disable_diff_highlight=Diff-Syntaxhervorhebung ausschalten
config.git_max_diff_lines=Max Diff Zeilen (in einer Datei) config.git.max_diff_lines=Zeilenlimit für Diff (für eine einzelne Datei)
config.git_max_diff_line_characters=Max Diff Zeichen (in einer Zeile) config.git.max_diff_line_characters=Zeichenlimit für Diff (für eine einzelne Datei)
config.git_max_diff_files=Max Diff Dateien (Anzeige) config.git.max_diff_files=Dateilimit für Diff (für einen einzelnen Diff)
config.git_gc_args=GC-Argumente config.git.gc_args=GC-Argumente
config.git_migrate_timeout=Zeitlimit für Migration config.git.migrate_timeout=Zeitlimit für Migration
config.git_mirror_timeout=Zeitlimit für Mirror-Aktualisierung config.git.mirror_timeout=Zeitlimit zum Spiegeln
config.git_clone_timeout=Zeitlimit für Clone config.git.clone_timeout=Clone-Timeout
config.git_pull_timeout=Zeitlimit für Pull config.git.pull_timeout=Pull-Timeout
config.git_gc_timeout=Zeitlimit für GC config.git.gc_timeout=GC-Timeout
config.lfs_config=LFS-Konfiguration
config.lfs.storage=Speicher
config.lfs.objects_path=Objektpfad
config.log_config=Konfiguration des Loggings config.log_config=Konfiguration des Loggings
config.log_file_root_path=Log-Verzeichnis
config.log_mode=Modus config.log_mode=Modus
config.log_options=Optionen config.log_options=Optionen
@@ -1284,7 +1383,6 @@ notices.delete_success=Systemmitteilungen wurden erfolgreich gelöscht.
[action] [action]
create_repo=hat das Repository <a href="%s">%s</a> erstellt create_repo=hat das Repository <a href="%s">%s</a> erstellt
fork_repo=hat das Repository nach <a href="%s">%s</a> geforkt
rename_repo=hat das Repository von <code>%[1]s</code> zu <a href="%[2]s">%[3]s</a> umbenannt rename_repo=hat das Repository von <code>%[1]s</code> zu <a href="%[2]s">%[3]s</a> umbenannt
commit_repo=hat auf <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> gepusht commit_repo=hat auf <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> gepusht
compare_commits=Zeige Vergleich für diese %d Commits compare_commits=Zeige Vergleich für diese %d Commits
@@ -1296,11 +1394,15 @@ comment_issue=`hat Issue <a href="%s/issues/%s">%s#%[2]s</a> kommentiert`
create_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> erstellt` create_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> erstellt`
close_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> geschlossen` close_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> geschlossen`
reopen_pull_request=`hat den Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> wieder geöffnet` reopen_pull_request=`hat den Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> wieder geöffnet`
merge_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> zuammengeführt` merge_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> zusammengeführt`
create_branch=hat neuen Branch <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> angelegt create_branch=hat neuen Branch <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> angelegt
delete_branch=hat Branch <code>%[2]s</code> in <a href="%[1]s">%[3]s</a> gelöscht delete_branch=hat Branch <code>%[2]s</code> in <a href="%[1]s">%[3]s</a> gelöscht
push_tag=hat Tag <a href="%s/src/%s">%[2]s</a> auf <a href="%[1]s">%[3]s</a> gepusht push_tag=hat Tag <a href="%s/src/%s">%[2]s</a> auf <a href="%[1]s">%[3]s</a> gepusht
delete_tag=hat Tag <code>%[2]s</code> in <a href="%[1]s">%[3]s</a> gelöscht delete_tag=hat Tag <code>%[2]s</code> in <a href="%[1]s">%[3]s</a> gelöscht
fork_repo=hat das Repository nach <a href="%s">%s</a> geforkt
mirror_sync_push=hat auf <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> gepusht
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=vor ago=vor
@@ -1322,6 +1424,7 @@ months=%[2]s %[1]d Monaten
years=%[2]s %[1]d Jahren years=%[2]s %[1]d Jahren
raw_seconds=Sekunden raw_seconds=Sekunden
raw_minutes=Minuten raw_minutes=Minuten
raw_hours=Stunden
[dropzone] [dropzone]
default_message=Zum Hochladen hier klicken oder Datei hier ablegen. default_message=Zum Hochladen hier klicken oder Datei hier ablegen.

View File

@@ -9,7 +9,6 @@ sign_out=Sign Out
sign_up=Sign Up sign_up=Sign Up
register=Register register=Register
website=Website website=Website
version=Version
page=Page page=Page
template=Template template=Template
language=Language language=Language
@@ -44,17 +43,22 @@ issues=Issues
cancel=Cancel cancel=Cancel
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install] [install]
install=Installation install=Installation
title=Install Steps For First-time Run title=Install Steps For First-time Run
docker_helper=If you're running Gogs inside Docker, please read <a target="_blank" href="%s">Guidelines</a> carefully before you change anything in this page! docker_helper=If you're running Gogs inside Docker, please read <a target="_blank" href="%s">Guidelines</a> carefully before you change anything in this page!
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Database Settings db_title=Database Settings
db_type=Database Type db_type=Database Type
host=Host host=Host
user=User user=User
password=Password password=Password
db_name=Database Name db_name=Database Name
db_schema=Schema
db_helper=Please use INNODB engine with utf8_general_ci charset for MySQL. db_helper=Please use INNODB engine with utf8_general_ci charset for MySQL.
ssl_mode=SSL Mode ssl_mode=SSL Mode
path=Path path=Path
@@ -84,6 +88,7 @@ log_root_path=Log Path
log_root_path_helper=Directory to write log files to. log_root_path_helper=Directory to write log files to.
enable_console_mode=Enable Console Mode enable_console_mode=Enable Console Mode
enable_console_mode_popup=In addition to file mode, also print logs to console. enable_console_mode_popup=In addition to file mode, also print logs to console.
default_branch=Default Branch
optional_title=Optional Settings optional_title=Optional Settings
email_title=Email Service Settings email_title=Email Service Settings
@@ -122,6 +127,7 @@ run_user_not_match=Run user isn't the current user: %s -> %s
smtp_host_missing_port=SMTP Host is missing port in address. smtp_host_missing_port=SMTP Host is missing port in address.
invalid_smtp_from=SMTP From field is not valid: %v invalid_smtp_from=SMTP From field is not valid: %v
save_config_failed=Fail to save configuration: %v save_config_failed=Fail to save configuration: %v
init_failed=Failed to initialize application: %v
invalid_admin_setting=Admin account setting is invalid: %v invalid_admin_setting=Admin account setting is invalid: %v
install_success=Welcome! We're glad that you chose Gogs, have fun and take care. install_success=Welcome! We're glad that you chose Gogs, have fun and take care.
invalid_log_root_path=Log root path is invalid: %v invalid_log_root_path=Log root path is invalid: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Already have an account? Sign in now!
social_register_hepler_msg=Already have an account? Bind now! social_register_hepler_msg=Already have an account? Bind now!
disable_register_prompt=Sorry, registration has been disabled. Please contact the site administrator. disable_register_prompt=Sorry, registration has been disabled. Please contact the site administrator.
disable_register_mail=Sorry, Register Mail Confirmation has been disabled. disable_register_mail=Sorry, Register Mail Confirmation has been disabled.
auth_source=Authentication Source
local=Local
remember_me=Remember Me remember_me=Remember Me
forgot_password=Forgot Password forgot_password=Forgot Password
forget_password=Forgot password? forget_password=Forgot password?
@@ -229,6 +237,8 @@ org_name_been_taken=Organisation name has already been taken.
team_name_been_taken=Team name has already been taken. team_name_been_taken=Team name has already been taken.
email_been_used=Email address has already been used. email_been_used=Email address has already been used.
username_password_incorrect=Username or password is not correct. username_password_incorrect=Username or password is not correct.
auth_source_mismatch=The authentication source selected is not associated with the user.
enterred_invalid_repo_name=Please make sure that the repository name you have entered is correct. enterred_invalid_repo_name=Please make sure that the repository name you have entered is correct.
enterred_invalid_owner_name=Please make sure that the owner name you have entered is correct. enterred_invalid_owner_name=Please make sure that the owner name you have entered is correct.
enterred_invalid_password=Please make sure the that password you have entered is correct. enterred_invalid_password=Please make sure the that password you have entered is correct.
@@ -256,8 +266,8 @@ following=Following
follow=Follow follow=Follow
unfollow=Unfollow unfollow=Unfollow
form.name_reserved=Username '%s' is reserved. form.name_not_allowed=Username or pattern %q is not allowed.
form.name_pattern_not_allowed=Username pattern '%s' is not allowed.
[settings] [settings]
profile=Profile profile=Profile
@@ -309,6 +319,7 @@ delete_email=Delete
email_deletion=Email Deletion email_deletion=Email Deletion
email_deletion_desc=Deleting this email address will remove related information from your account. Do you want to continue? email_deletion_desc=Deleting this email address will remove related information from your account. Do you want to continue?
email_deletion_success=Email has been deleted successfully! email_deletion_success=Email has been deleted successfully!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Add new email address add_new_email=Add new email address
add_email=Add email add_email=Add email
add_email_confirmation_sent=A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process. add_email_confirmation_sent=A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process.
@@ -348,6 +359,8 @@ two_factor_or_enter_secret=Or enter the secret:
two_factor_then_enter_passcode=Then enter passcode: two_factor_then_enter_passcode=Then enter passcode:
two_factor_verify=Verify two_factor_verify=Verify
two_factor_invalid_passcode=The passcode you entered is not valid, please try again! two_factor_invalid_passcode=The passcode you entered is not valid, please try again!
two_factor_reused_passcode=The passcode you entered has already been used, please try another one!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_enable_error=Enable Two-factor authentication failed: %v
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_success=Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes
@@ -362,6 +375,7 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
manage_access_token=Manage Personal Access Tokens manage_access_token=Manage Personal Access Tokens
generate_new_token=Generate New Token generate_new_token=Generate New Token
tokens_desc=Tokens you have generated that can be used to access the Gogs APIs. tokens_desc=Tokens you have generated that can be used to access the Gogs APIs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Each token will have full access to your account. new_token_desc=Each token will have full access to your account.
token_name=Token Name token_name=Token Name
generate_token=Generate Token generate_token=Generate Token
@@ -370,6 +384,8 @@ delete_token=Delete
access_token_deletion=Personal Access Token Deletion access_token_deletion=Personal Access Token Deletion
access_token_deletion_desc=Delete this personal access token will remove all related accesses of application. Do you want to continue? access_token_deletion_desc=Delete this personal access token will remove all related accesses of application. Do you want to continue?
delete_token_success=Personal access token has been removed successfully! Don't forget to update your application as well. delete_token_success=Personal access token has been removed successfully! Don't forget to update your application as well.
token_name_exists=Token with same name already exists.
orgs.none=You are not a member of any organisations. orgs.none=You are not a member of any organisations.
orgs.leave_title=Leave organisation orgs.leave_title=Leave organisation
@@ -391,7 +407,9 @@ owner=Owner
repo_name=Repository Name repo_name=Repository Name
repo_name_helper=A good repository name is usually composed of short, memorable and unique keywords. repo_name_helper=A good repository name is usually composed of short, memorable and unique keywords.
visibility=Visibility visibility=Visibility
unlisted=Unlisted
visiblity_helper=This repository is <span class="ui red text">Private</span> visiblity_helper=This repository is <span class="ui red text">Private</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Site admin has forced all new repositories to be <span class="ui red text">Private</span> visiblity_helper_forced=Site admin has forced all new repositories to be <span class="ui red text">Private</span>
visiblity_fork_helper=(Change of this value will affect all forks) visiblity_fork_helper=(Change of this value will affect all forks)
clone_helper=Need help cloning? Visit <a target="_blank" href="%s">Help</a>! clone_helper=Need help cloning? Visit <a target="_blank" href="%s">Help</a>!
@@ -417,10 +435,14 @@ mirror_last_synced=Last Synced
watchers=Watchers watchers=Watchers
stargazers=Stargazers stargazers=Stargazers
forks=Forks forks=Forks
repo_description_helper=Description of repository. Maximum 512 characters length.
repo_description_length=Available characters
form.reach_limit_of_creation=The owner has reached maximum creation limit of %d repositories. form.reach_limit_of_creation=The owner has reached maximum creation limit of %d repositories.
form.name_reserved=Repository name '%s' is reserved. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Repository name pattern '%s' is not allowed.
need_auth=Need Authorisation need_auth=Need Authorisation
migrate_type=Migration Type migrate_type=Migration Type
@@ -431,6 +453,7 @@ migrate.clone_address_desc=This can be a HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path. migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path.
migrate.permission_denied=You are not allowed to import local repositories. migrate.permission_denied=You are not allowed to import local repositories.
migrate.invalid_local_path=Invalid local path, it does not exist or not a directory. migrate.invalid_local_path=Invalid local path, it does not exist or not a directory.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migration failed: %v migrate.failed=Migration failed: %v
mirror_from=mirror of mirror_from=mirror of
@@ -478,6 +501,8 @@ branches.stale_branches=Stale Branches
branches.all=All Branches branches.all=All Branches
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=Updated %[1]s by %[2]s
branches.change_default_branch=Change Default Branch branches.change_default_branch=Change Default Branch
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=New file editor.new_file=New file
editor.upload_file=Upload file editor.upload_file=Upload file
@@ -514,6 +539,8 @@ editor.file_changed_while_editing=File content has been changed since you starte
editor.file_already_exists=A file with name '%s' already exists in this repository. editor.file_already_exists=A file with name '%s' already exists in this repository.
editor.no_changes_to_show=There are no changes to show. editor.no_changes_to_show=There are no changes to show.
editor.fail_to_update_file=Failed to update/create file '%s' with error: %v editor.fail_to_update_file=Failed to update/create file '%s' with error: %v
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
editor.add_subdir=Add subdirectory... editor.add_subdir=Add subdirectory...
editor.unable_to_upload_files=Failed to upload files to '%s' with error: %v editor.unable_to_upload_files=Failed to upload files to '%s' with error: %v
editor.upload_files_to_dir=Upload files to '%s' editor.upload_files_to_dir=Upload files to '%s'
@@ -633,7 +660,9 @@ pulls.can_auto_merge_desc=This pull request can be merged automatically.
pulls.cannot_auto_merge_desc=This pull request can't be merged automatically because there are conflicts. pulls.cannot_auto_merge_desc=This pull request can't be merged automatically because there are conflicts.
pulls.cannot_auto_merge_helper=Please merge manually in order to resolve the conflicts. pulls.cannot_auto_merge_helper=Please merge manually in order to resolve the conflicts.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=Merge Pull Request pulls.merge_pull_request=Merge Pull Request
pulls.open_unmerged_pull_exists=`You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.` pulls.open_unmerged_pull_exists=`You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.`
pulls.delete_branch=Delete Branch pulls.delete_branch=Delete Branch
@@ -738,9 +767,12 @@ settings.tracker_issue_style=External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric=Numeric settings.tracker_issue_style.numeric=Numeric
settings.tracker_issue_style.alphanumeric=Alphanumeric settings.tracker_issue_style.alphanumeric=Alphanumeric
settings.tracker_url_format_desc=You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index. settings.tracker_url_format_desc=You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index.
settings.pulls_desc=Enable pull requests to accept public contributions settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignore changes in whitespace
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Danger Zone settings.danger_zone=Danger Zone
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner. settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner.
settings.new_owner_has_same_repo=The new owner already has a repository with same name. Please choose another name. settings.new_owner_has_same_repo=The new owner already has a repository with same name. Please choose another name.
@@ -762,6 +794,7 @@ settings.delete=Delete This Repository
settings.delete_desc=Once you delete a repository, there is no going back. Please be certain. settings.delete_desc=Once you delete a repository, there is no going back. Please be certain.
settings.delete_notices_1=- This operation <strong>CANNOT</strong> be undone. settings.delete_notices_1=- This operation <strong>CANNOT</strong> be undone.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access.
settings.delete_notices_fork_1=- All forks will become independent after deletion. settings.delete_notices_fork_1=- All forks will become independent after deletion.
settings.deletion_success=Repository has been deleted successfully! settings.deletion_success=Repository has been deleted successfully!
settings.update_settings_success=Repository options has been updated successfully. settings.update_settings_success=Repository options has been updated successfully.
@@ -777,8 +810,12 @@ settings.collaborator_deletion_desc=This user will no longer have collaboration
settings.remove_collaborator_success=Collaborator has been removed. settings.remove_collaborator_success=Collaborator has been removed.
settings.search_user_placeholder=Search user... settings.search_user_placeholder=Search user...
settings.org_not_allowed_to_be_collaborator=Organisation is not allowed to be added as a collaborator. settings.org_not_allowed_to_be_collaborator=Organisation is not allowed to be added as a collaborator.
settings.add_webhook=Add Webhook
settings.hooks_desc=Webhooks are much like basic HTTP POST event triggers. Whenever something occurs in Gogs, we will handle the notification to the target host you specify. Learn more in this <a target="_blank" href="%s">Webhooks Guide</a>. settings.hooks_desc=Webhooks are much like basic HTTP POST event triggers. Whenever something occurs in Gogs, we will handle the notification to the target host you specify. Learn more in this <a target="_blank" href="%s">Webhooks Guide</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Add Webhook
settings.webhook_deletion=Delete Webhook settings.webhook_deletion=Delete Webhook
settings.webhook_deletion_desc=Delete this webhook will remove its information and all delivery history. Do you want to continue? settings.webhook_deletion_desc=Delete this webhook will remove its information and all delivery history. Do you want to continue?
settings.webhook_deletion_success=Webhook has been deleted successfully! settings.webhook_deletion_success=Webhook has been deleted successfully!
@@ -792,6 +829,9 @@ settings.webhook.response=Response
settings.webhook.headers=Headers settings.webhook.headers=Headers
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Body settings.webhook.body=Body
settings.webhook.err_cannot_parse_payload_url=Cannot parse the payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git Hooks are powered by Git itself, you can edit files of supported hooks in the list below to perform custom operations. settings.githooks_desc=Git Hooks are powered by Git itself, you can edit files of supported hooks in the list below to perform custom operations.
settings.githook_edit_desc=If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook. settings.githook_edit_desc=If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook.
settings.githook_name=Hook Name settings.githook_name=Hook Name
@@ -819,10 +859,10 @@ settings.event_push=Push
settings.event_push_desc=Git push to a repository settings.event_push_desc=Git push to a repository
settings.event_issues=Issues settings.event_issues=Issues
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Pull Request settings.event_pull_request=Pull Request
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Release settings.event_release=Release
settings.event_release_desc=Release published in a repository. settings.event_release_desc=Release published in a repository.
settings.active=Active settings.active=Active
@@ -852,6 +892,10 @@ settings.add_key_success=New deploy key '%s' has been added successfully!
settings.deploy_key_deletion=Delete Deploy Key settings.deploy_key_deletion=Delete Deploy Key
settings.deploy_key_deletion_desc=Deleting this deploy key will remove all related accesses for this repository. Do you want to continue? settings.deploy_key_deletion_desc=Deleting this deploy key will remove all related accesses for this repository. Do you want to continue?
settings.deploy_key_deletion_success=Deploy key has been deleted successfully! settings.deploy_key_deletion_success=Deploy key has been deleted successfully!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Browse Source diff.browse_source=Browse Source
diff.parent=parent diff.parent=parent
@@ -916,9 +960,10 @@ team_name_helper=You'll use this name to mention this team in conversations.
team_desc_helper=What is this team all about? team_desc_helper=What is this team all about?
team_permission_desc=What permission level should this team have? team_permission_desc=What permission level should this team have?
form.name_reserved=Organisation name '%s' is reserved. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Organisation name pattern '%s' is not allowed.
form.team_name_reserved=Team name '%s' is reserved. form.team_name_not_allowed=Team name or pattern %q is not allowed.
settings=Settings settings=Settings
settings.options=Options settings.options=Options
@@ -990,12 +1035,26 @@ first_page=First
last_page=Last last_page=Last
total=Total: %d total=Total: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git version
dashboard.go_version=Go version
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Statistics dashboard.statistic=Statistics
dashboard.operations=Operations dashboard.operations=Operations
dashboard.system_status=System Monitor Status dashboard.system_status=System Monitor Status
dashboard.statistic_info=Gogs database has <b>%d</b> users, <b>%d</b> organisations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments. dashboard.statistic_info=Gogs database has <b>%d</b> users, <b>%d</b> organisations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments.
dashboard.operation_name=Operation Name dashboard.operation_name=Operation Name
dashboard.operation_switch=Switch dashboard.operation_switch=Switch
dashboard.select_operation_to_run=Please select an operation to run
dashboard.operation_run=Run dashboard.operation_run=Run
dashboard.clean_unbind_oauth=Clean unbound OAuthes dashboard.clean_unbind_oauth=Clean unbound OAuthes
dashboard.clean_unbind_oauth_success=All unbind OAuthes have been deleted successfully. dashboard.clean_unbind_oauth_success=All unbind OAuthes have been deleted successfully.
@@ -1087,11 +1146,12 @@ repos.stars=Stars
repos.issues=Issues repos.issues=Issues
repos.size=Size repos.size=Size
auths.auth_manage_panel=Authentication Manage Panel auths.auth_sources=Authentication Sources
auths.new=Add New Source auths.new=Add New Source
auths.name=Name auths.name=Name
auths.type=Type auths.type=Type
auths.enabled=Enabled auths.enabled=Enabled
auths.default=Default
auths.updated=Updated auths.updated=Updated
auths.auth_type=Authentication Type auths.auth_type=Authentication Type
auths.auth_name=Authentication Name auths.auth_name=Authentication Name
@@ -1101,6 +1161,7 @@ auths.host=Host
auths.port=Port auths.port=Port
auths.bind_dn=Bind DN auths.bind_dn=Bind DN
auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s
auths.bind_password=Bind Password auths.bind_password=Bind Password
auths.bind_password_helper=Warning: This password is stored in plain text. Do not use a high privileged account. auths.bind_password_helper=Warning: This password is stored in plain text. Do not use a high privileged account.
auths.user_base=User Search Base auths.user_base=User Search Base
@@ -1128,9 +1189,10 @@ auths.enable_tls=Enable TLS Encryption
auths.skip_tls_verify=Skip TLS Verify auths.skip_tls_verify=Skip TLS Verify
auths.pam_service_name=PAM Service Name auths.pam_service_name=PAM Service Name
auths.enable_auto_register=Enable Auto Registration auths.enable_auto_register=Enable Auto Registration
auths.tips=Tips
auths.edit=Edit Authentication Setting auths.edit=Edit Authentication Setting
auths.activated=This authentication is activated auths.activated=This authentication is activated
auths.default_auth=This authentication is the default login page
auths.new_success=New authentication '%s' has been added successfully. auths.new_success=New authentication '%s' has been added successfully.
auths.update_success=Authentication setting has been updated successfully. auths.update_success=Authentication setting has been updated successfully.
auths.update=Update Authentication Setting auths.update=Update Authentication Setting
@@ -1140,120 +1202,234 @@ auths.delete_auth_desc=This authentication is going to be deleted, do you want t
auths.still_in_used=This authentication is still used by some users, please delete or convert these users to another login type first. auths.still_in_used=This authentication is still used by some users, please delete or convert these users to another login type first.
auths.deletion_success=Authentication has been deleted successfully! auths.deletion_success=Authentication has been deleted successfully!
auths.login_source_exist=Login source '%s' already exists. auths.login_source_exist=Login source '%s' already exists.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(not set)
config.server_config=Server Configuration config.server_config=Server Configuration
config.app_name=Application Name config.brand_name=Brand name
config.app_ver=Application Version
config.app_url=Application URL
config.domain=Domain
config.offline_mode=Offline Mode
config.disable_router_log=Disable Router Log
config.run_user=Run User config.run_user=Run User
config.run_mode=Run Mode config.run_mode=Run Mode
config.git_version=Git Version config.server.external_url=External URL
config.static_file_root_path=Static File Root Path
config.log_file_root_path=Log File Root Path config.server.domain=Domain
config.reverse_auth_user=Reverse Authentication User
config.server.protocol=Protocol
config.server.http_addr=HTTP address
config.server.http_port=HTTP port
config.server.cert_file=Certificate file
config.server.key_file=Key file
config.server.tls_min_version=Minimum TLS version
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Enable Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=SSH Configuration config.ssh_config=SSH Configuration
config.ssh_enabled=Enabled config.ssh.enabled=Enabled
config.ssh_start_builtin_server=Start Builtin Server config.ssh.domain=Exposed domain
config.ssh_domain=Domain config.ssh.port=Exposed port
config.ssh_port=Port config.ssh.root_path=Root path
config.ssh_listen_port=Listen Port config.ssh.keygen_path=Keygen path
config.ssh_root_path=Root Path config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Key Test Path
config.ssh_keygen_path=Keygen ('ssh-keygen') Path config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_minimum_key_size_check=Minimum Key Size Check
config.ssh_minimum_key_sizes=Minimum Key Sizes config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh.start_builtin_server=Start builtin server
config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repository Configuration config.repo_config=Repository Configuration
config.repo_root_path=Repository Root Path config.repo.root_path=Root path
config.script_type=Script Type
config.repo_force_private=Force Private
config.max_creation_limit=Max Creation Limit
config.preferred_licenses=Preferred Licences
config.disable_http_git=Disable HTTP Git
config.enable_local_path_migration=Enable Local Path Migration
config.commits_fetch_concurrency=Commits Fetch Concurrency
config.http_config=HTTP Configuration config.repo.script_type=Script type
config.http_access_control_allow_origin=Access Control Allow Origin
config.repo.ansi_chatset=ANSI charset
config.repo.force_private=Force private
config.repo.max_creation_limit=Max creation limit
config.repo.preferred_licenses=Preferred licenses
config.repo.disable_http_git=Disable HTTP Git
config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Database Configuration config.db_config=Database Configuration
config.db_type=Type config.db.type=Type
config.db_host=Host config.db.host=Host
config.db_name=Name config.db.name=Name
config.db_user=User config.db.schema=Schema
config.db_ssl_mode=SSL Mode config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(for "postgres" only) config.db.user=User
config.db_path=Path config.db.ssl_mode=SSL mode
config.db_path_helper=(for "sqlite3" and "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Service Configuration config.security_config=Security configuration
config.register_email_confirm=Require Email Confirmation config.security.login_remember_days=Login remember days
config.disable_register=Disable Registration config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Show Register Button config.security.cookie_username=Username cookie
config.require_sign_in_view=Require Sign In View config.security.cookie_secure=Enable secure cookie
config.mail_notify=Mail Notification config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Disable Minimum Key Size Check config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Enable Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Active Code Lives config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Reset Password Code Lives
config.webhook_config=Webhook Configuration config.email_config=Email configuration
config.queue_length=Queue Length config.email.enabled=Enabled
config.deliver_timeout=Deliver Timeout
config.skip_tls_verify=Skip TLS Verify
config.mailer_config=Mailer Configuration config.email.subject_prefix=Subject prefix
config.mailer_enabled=Enabled
config.mailer_disable_helo=Disable HELO
config.mailer_subject_prefix=Subject Prefix
config.mailer_host=Host
config.mailer_user=User
config.send_test_mail=Send Test Email
config.test_mail_failed=Fail to send test email to '%s': %v
config.test_mail_sent=Test email has been sent to '%s'.
config.oauth_config=OAuth Configuration config.email.host=Host
config.oauth_enabled=Enabled
config.cache_config=Cache Configuration config.email.from=From
config.cache_adapter=Cache Adapter
config.cache_interval=Cache Interval config.email.user=User
config.cache_conn=Cache Connection config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.auth_config=Authentication configuration
config.auth_custom_logout_url=Custom logout URL
config.auth.activate_code_lives=Activate code lives
config.auth.reset_password_code_lives=Reset password code lives
config.auth.require_email_confirm=Require email confirmation
config.auth.require_sign_in_view=Require sign in view
config.auth.disable_registration=Disable registration
config.auth.enable_registration_captcha=Enable registration captcha
config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.user_config=User configuration
config.user.enable_email_notify=Enable email notification
config.session_config=Session Configuration config.session_config=Session Configuration
config.session_provider=Session Provider config.session.provider=Provider
config.provider_config=Provider Config config.session.provider_config=Provider config
config.cookie_name=Cookie Name config.session.cookie_name=Cookie
config.enable_set_cookie=Enable Set Cookie config.session.https_only=HTTPS only
config.gc_interval_time=GC Interval Time config.session.gc_interval=GC interval
config.session_life_time=Session Life Time config.session.max_life_time=Max life time
config.https_only=HTTPS Only config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Cookie Life Time
config.cache_config=Cache Configuration
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=HTTP Configuration
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Picture Configuration config.picture_config=Picture Configuration
config.picture_service=Picture Service config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Disable Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Enable Federated Avatars config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Webhook Configuration
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Git Configuration config.git_config=Git Configuration
config.git_disable_diff_highlight=Disable Diff Syntax Highlight config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Max Diff Lines (for a single file) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Max Diff Characters (for a single line) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Max Diff Files (to be shown) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=GC Arguments config.git.gc_args=GC arguments
config.git_migrate_timeout=Migration Timeout config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Mirror Update Timeout config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Clone Operation Timeout config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Pull Operation Timeout config.git.pull_timeout=Pull timeout
config.git_gc_timeout=GC Operation Timeout config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Log Configuration config.log_config=Log Configuration
config.log_file_root_path=Log File Root Path
config.log_mode=Mode config.log_mode=Mode
config.log_options=Options config.log_options=Options
@@ -1284,7 +1460,6 @@ notices.delete_success=System notices have been deleted successfully.
[action] [action]
create_repo=created repository <a href="%s">%s</a> create_repo=created repository <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=renamed repository from <code>%[1]s</code> to <a href="%[2]s">%[3]s</a> rename_repo=renamed repository from <code>%[1]s</code> to <a href="%[2]s">%[3]s</a>
commit_repo=pushed to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> commit_repo=pushed to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a>
compare_commits=View comparison for these %d commits compare_commits=View comparison for these %d commits
@@ -1301,6 +1476,10 @@ create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href=
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> push_tag=pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a>
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=ago ago=ago
@@ -1322,6 +1501,7 @@ months=%d months %s
years=%d years %s years=%d years %s
raw_seconds=seconds raw_seconds=seconds
raw_minutes=minutes raw_minutes=minutes
raw_hours=hours
[dropzone] [dropzone]
default_message=Drop files here or click to upload. default_message=Drop files here or click to upload.

View File

@@ -9,7 +9,6 @@ sign_out = Sign Out
sign_up = Sign Up sign_up = Sign Up
register = Register register = Register
website = Website website = Website
version = Version
page = Page page = Page
template = Template template = Template
language = Language language = Language
@@ -44,17 +43,22 @@ issues = Issues
cancel = Cancel cancel = Cancel
[status]
page_not_found = Page Not Found
internal_server_error = Internal Server Error
[install] [install]
install = Installation install = Installation
title = Install Steps For First-time Run title = Install Steps For First-time Run
docker_helper = If you're running Gogs inside Docker, please read <a target="_blank" href="%s">Guidelines</a> carefully before you change anything in this page! docker_helper = If you're running Gogs inside Docker, please read <a target="_blank" href="%s">Guidelines</a> carefully before you change anything in this page!
requite_db_desc = Gogs requires MySQL, PostgreSQL, SQLite3, MSSQL or TiDB. requite_db_desc = Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title = Database Settings db_title = Database Settings
db_type = Database Type db_type = Database Type
host = Host host = Host
user = User user = User
password = Password password = Password
db_name = Database Name db_name = Database Name
db_schema = Schema
db_helper = Please use INNODB engine with utf8_general_ci charset for MySQL. db_helper = Please use INNODB engine with utf8_general_ci charset for MySQL.
ssl_mode = SSL Mode ssl_mode = SSL Mode
path = Path path = Path
@@ -84,6 +88,7 @@ log_root_path = Log Path
log_root_path_helper = Directory to write log files to. log_root_path_helper = Directory to write log files to.
enable_console_mode = Enable Console Mode enable_console_mode = Enable Console Mode
enable_console_mode_popup = In addition to file mode, also print logs to console. enable_console_mode_popup = In addition to file mode, also print logs to console.
default_branch = Default Branch
optional_title = Optional Settings optional_title = Optional Settings
email_title = Email Service Settings email_title = Email Service Settings
@@ -107,21 +112,21 @@ enable_captcha = Enable Captcha
enable_captcha_popup = Require validate captcha for user self-registration. enable_captcha_popup = Require validate captcha for user self-registration.
require_sign_in_view = Enable Require Sign In to View Pages require_sign_in_view = Enable Require Sign In to View Pages
require_sign_in_view_popup = Only signed in users can view pages, visitors will only be able to see sign in/up pages. require_sign_in_view_popup = Only signed in users can view pages, visitors will only be able to see sign in/up pages.
admin_setting_desc = You do not have to create an admin account right now, user whoever ID=1 will gain admin access automatically. admin_setting_desc = You don't need to create an admin account right now. The first user in the users table will be automatically granted admin access.
admin_title = Admin Account Settings admin_title = Admin Account Settings
admin_name = Username admin_name = Username
admin_password = Password admin_password = Password
confirm_password = Confirm Password confirm_password = Confirm Password
admin_email = Admin Email admin_email = Admin Email
install_gogs = Install Gogs install_gogs = Install Gogs
test_git_failed = Fail to test 'git' command: %v test_git_failed = Failed to test 'git' command: %v
sqlite3_not_available = Your release version does not support SQLite3, please download the official binary version from %s, NOT the gobuild version.
invalid_db_setting = Database setting is not correct: %v invalid_db_setting = Database setting is not correct: %v
invalid_repo_path = Repository root path is invalid: %v invalid_repo_path = Repository root path is invalid: %v
run_user_not_match = Run user isn't the current user: %s -> %s run_user_not_match = Run user isn't the current user: %s -> %s
smtp_host_missing_port = SMTP Host is missing port in address. smtp_host_missing_port = SMTP Host port missing from address.
invalid_smtp_from = SMTP From field is not valid: %v invalid_smtp_from = SMTP From field is invalid: %v
save_config_failed = Fail to save configuration: %v save_config_failed = Failed to save configuration: %v
init_failed = Failed to initialize application: %v
invalid_admin_setting = Admin account setting is invalid: %v invalid_admin_setting = Admin account setting is invalid: %v
install_success = Welcome! We're glad that you chose Gogs, have fun and take care. install_success = Welcome! We're glad that you chose Gogs, have fun and take care.
invalid_log_root_path = Log root path is invalid: %v invalid_log_root_path = Log root path is invalid: %v
@@ -151,6 +156,8 @@ register_hepler_msg = Already have an account? Sign in now!
social_register_hepler_msg = Already have an account? Bind now! social_register_hepler_msg = Already have an account? Bind now!
disable_register_prompt = Sorry, registration has been disabled. Please contact the site administrator. disable_register_prompt = Sorry, registration has been disabled. Please contact the site administrator.
disable_register_mail = Sorry, email services are disabled. Please contact the site administrator. disable_register_mail = Sorry, email services are disabled. Please contact the site administrator.
auth_source = Authentication Source
local = Local
remember_me = Remember Me remember_me = Remember Me
forgot_password= Forgot Password forgot_password= Forgot Password
forget_password = Forgot password? forget_password = Forgot password?
@@ -158,15 +165,15 @@ sign_up_now = Need an account? Sign up now.
confirmation_mail_sent_prompt = A new confirmation email has been sent to <b>%s</b>, please check your inbox within the next %d hours to complete the registration process. confirmation_mail_sent_prompt = A new confirmation email has been sent to <b>%s</b>, please check your inbox within the next %d hours to complete the registration process.
active_your_account = Activate Your Account active_your_account = Activate Your Account
prohibit_login = Login Prohibited prohibit_login = Login Prohibited
prohibit_login_desc = Your account is prohibited to login, please contact site admin. prohibit_login_desc = Your account is prohibited from logging in. Please contact the site admin.
resent_limit_prompt = Sorry, you already requested an activation email recently. Please wait 3 minutes then try again. resent_limit_prompt = Sorry, you already requested an activation email recently. Please wait 3 minutes then try again.
has_unconfirmed_mail = Hi %s, you have an unconfirmed email address (<b>%s</b>). If you haven't received a confirmation email or need to resend a new one, please click on the button below. has_unconfirmed_mail = Hi %s, you have an unconfirmed email address (<b>%s</b>). If you haven't received a confirmation email or need to receive a new one, please click the button below.
resend_mail = Click here to resend your activation email resend_mail = Click here to resend your activation email
send_reset_mail = Click here to (re)send your password reset email send_reset_mail = Click here to (re)send your password reset email
reset_password = Reset Your Password reset_password = Reset Your Password
invalid_code = Sorry, your confirmation code has expired or not valid. invalid_code = Sorry, your confirmation code has expired or not valid.
reset_password_helper = Click here to reset your password reset_password_helper = Click here to reset your password
password_too_short = Password length cannot be less then 6. password_too_short = Password length must be at least 6 characters.
non_local_account = Non-local accounts cannot change passwords through Gogs. non_local_account = Non-local accounts cannot change passwords through Gogs.
login_two_factor = Two-factor Authentication login_two_factor = Two-factor Authentication
@@ -175,7 +182,7 @@ login_two_factor_enter_recovery_code = Enter a two-factor recovery code
login_two_factor_recovery = Two-factor Recovery login_two_factor_recovery = Two-factor Recovery
login_two_factor_recovery_code = Recovery Code login_two_factor_recovery_code = Recovery Code
login_two_factor_enter_passcode = Enter a two-factor passcode login_two_factor_enter_passcode = Enter a two-factor passcode
login_two_factor_invalid_recovery_code = Recovery code has been used or does not valid. login_two_factor_invalid_recovery_code = Recovery code already used or invalid.
[mail] [mail]
activate_account = Please activate your account activate_account = Please activate your account
@@ -210,10 +217,10 @@ TreeName = File path
Content = Content Content = Content
require_error = ` cannot be empty.` require_error = ` cannot be empty.`
alpha_dash_error = ` must be valid alpha or numeric or dash(-_) characters.` alpha_dash_error = ` must be alphanumeric or dash(-_) characters.`
alpha_dash_dot_error = ` must be valid alpha or numeric or dash(-_) or dot characters.` alpha_dash_dot_error = ` must be alphanumeric or dash(-_) or dot characters.`
alpha_dash_dot_slash_error = ` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error = ` must be alphanumeric, dash (-_), dot or slash characters.`
size_error = ` must be size %s.` size_error = ` size must be %s.`
min_size_error = ` must contain at least %s characters.` min_size_error = ` must contain at least %s characters.`
max_size_error = ` must contain at most %s characters.` max_size_error = ` must contain at most %s characters.`
email_error = ` is not a valid email address.` email_error = ` is not a valid email address.`
@@ -229,14 +236,15 @@ org_name_been_taken = Organization name has already been taken.
team_name_been_taken = Team name has already been taken. team_name_been_taken = Team name has already been taken.
email_been_used = Email address has already been used. email_been_used = Email address has already been used.
username_password_incorrect = Username or password is not correct. username_password_incorrect = Username or password is not correct.
auth_source_mismatch = The authentication source selected is not associated with the user.
enterred_invalid_repo_name = Please make sure that the repository name you entered is correct. enterred_invalid_repo_name = Please make sure that the repository name you entered is correct.
enterred_invalid_owner_name = Please make sure that the owner name you entered is correct. enterred_invalid_owner_name = Please make sure that the owner name you entered is correct.
enterred_invalid_password = Please make sure the that password you entered is correct. enterred_invalid_password = Please make sure the that password you entered is correct.
user_not_exist = Given user does not exist. user_not_exist = Given user does not exist.
last_org_owner = Removing the last user from a owner team isn't allowed, as there must always be at least one owner in any given organization. last_org_owner = Removing the last remaining user from an owner team is not allowed, as an organization must always have at least one owner.
invalid_ssh_key = Sorry, we're not able to verify your SSH key: %s invalid_ssh_key = Sorry, verification of your SSH key failed: %s
unable_verify_ssh_key = Gogs cannot verify your SSH key, but we assume that it is valid, please double-check it. unable_verify_ssh_key = Gogs cannot verify your SSH key, but it's assumed to be valid. Please double-check it.
auth_failed = Authentication failed: %v auth_failed = Authentication failed: %v
still_own_repo = Your account still has ownership over at least one repository, you have to delete or transfer them first. still_own_repo = Your account still has ownership over at least one repository, you have to delete or transfer them first.
@@ -256,8 +264,7 @@ following = Following
follow = Follow follow = Follow
unfollow = Unfollow unfollow = Unfollow
form.name_reserved = Username '%s' is reserved. form.name_not_allowed = User name or pattern %q is not allowed.
form.name_pattern_not_allowed = Username pattern '%s' is not allowed.
[settings] [settings]
profile = Profile profile = Profile
@@ -297,7 +304,7 @@ old_password = Current Password
new_password = New Password new_password = New Password
retype_new_password = Retype New Password retype_new_password = Retype New Password
password_incorrect = Current password is not correct. password_incorrect = Current password is not correct.
change_password_success = Your password was successfully changed. You can now sign using this new password. change_password_success = Your password was successfully changed and can now be used for logging in.
password_change_disabled = Non-local type users are not allowed to change their password. password_change_disabled = Non-local type users are not allowed to change their password.
emails = Email Addresses emails = Email Addresses
@@ -309,6 +316,7 @@ delete_email = Delete
email_deletion = Email Deletion email_deletion = Email Deletion
email_deletion_desc = Deleting this email address will remove related information from your account. Do you want to continue? email_deletion_desc = Deleting this email address will remove related information from your account. Do you want to continue?
email_deletion_success = Email has been deleted successfully! email_deletion_success = Email has been deleted successfully!
email_deletion_primary = Cannot delete primary email address.
add_new_email = Add new email address add_new_email = Add new email address
add_email = Add Email add_email = Add Email
add_email_confirmation_sent = A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process. add_email_confirmation_sent = A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process.
@@ -348,6 +356,7 @@ two_factor_or_enter_secret = Or enter the secret:
two_factor_then_enter_passcode = Then enter passcode: two_factor_then_enter_passcode = Then enter passcode:
two_factor_verify = Verify two_factor_verify = Verify
two_factor_invalid_passcode = The passcode you entered is not valid, please try again! two_factor_invalid_passcode = The passcode you entered is not valid, please try again!
two_factor_reused_passcode = The passcode you entered has already been used, please try another one!
two_factor_enable_error = Enable Two-factor authentication failed: %v two_factor_enable_error = Enable Two-factor authentication failed: %v
two_factor_enable_success = Two-factor authentication has enabled for your account successfully! two_factor_enable_success = Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title = Two-factor Authentication Recovery Codes two_factor_recovery_codes_title = Two-factor Authentication Recovery Codes
@@ -362,6 +371,7 @@ two_factor_disable_success = Two-factor authentication has disabled successfully
manage_access_token = Manage Personal Access Tokens manage_access_token = Manage Personal Access Tokens
generate_new_token = Generate New Token generate_new_token = Generate New Token
tokens_desc = Tokens you have generated that can be used to access the Gogs APIs. tokens_desc = Tokens you have generated that can be used to access the Gogs APIs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc = Each token will have full access to your account. new_token_desc = Each token will have full access to your account.
token_name = Token Name token_name = Token Name
generate_token = Generate Token generate_token = Generate Token
@@ -370,6 +380,7 @@ delete_token = Delete
access_token_deletion = Personal Access Token Deletion access_token_deletion = Personal Access Token Deletion
access_token_deletion_desc = Delete this personal access token will remove all related accesses of application. Do you want to continue? access_token_deletion_desc = Delete this personal access token will remove all related accesses of application. Do you want to continue?
delete_token_success = Personal access token has been removed successfully! Don't forget to update your application as well. delete_token_success = Personal access token has been removed successfully! Don't forget to update your application as well.
token_name_exists = Token with same name already exists.
orgs.none = You are not a member of any organizations. orgs.none = You are not a member of any organizations.
orgs.leave_title = Leave organization orgs.leave_title = Leave organization
@@ -391,7 +402,9 @@ owner = Owner
repo_name = Repository Name repo_name = Repository Name
repo_name_helper = A good repository name is usually composed of short, memorable and unique keywords. repo_name_helper = A good repository name is usually composed of short, memorable and unique keywords.
visibility = Visibility visibility = Visibility
unlisted = Unlisted
visiblity_helper = This repository is <span class="ui red text">Private</span> visiblity_helper = This repository is <span class="ui red text">Private</span>
unlisted_helper = This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced = Site admin has forced all new repositories to be <span class="ui red text">Private</span> visiblity_helper_forced = Site admin has forced all new repositories to be <span class="ui red text">Private</span>
visiblity_fork_helper = (Change of this value will affect all forks) visiblity_fork_helper = (Change of this value will affect all forks)
clone_helper = Need help cloning? Visit <a target="_blank" href="%s">Help</a>! clone_helper = Need help cloning? Visit <a target="_blank" href="%s">Help</a>!
@@ -417,10 +430,11 @@ mirror_last_synced = Last Synced
watchers = Watchers watchers = Watchers
stargazers = Stargazers stargazers = Stargazers
forks = Forks forks = Forks
repo_description_helper = Description of repository. Maximum 512 characters length.
repo_description_length = Available characters
form.reach_limit_of_creation = The owner has reached maximum creation limit of %d repositories. form.reach_limit_of_creation = The owner has reached maximum creation limit of %d repositories.
form.name_reserved = Repository name '%s' is reserved. form.name_not_allowed = Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed = Repository name pattern '%s' is not allowed.
need_auth = Need Authorization need_auth = Need Authorization
migrate_type = Migration Type migrate_type = Migration Type
@@ -431,6 +445,7 @@ migrate.clone_address_desc = This can be a HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local = You're also allowed to migrate a repository by local server path. migrate.clone_address_desc_import_local = You're also allowed to migrate a repository by local server path.
migrate.permission_denied = You are not allowed to import local repositories. migrate.permission_denied = You are not allowed to import local repositories.
migrate.invalid_local_path = Invalid local path, it does not exist or not a directory. migrate.invalid_local_path = Invalid local path, it does not exist or not a directory.
migrate.clone_address_resolved_to_blocked_local_address = Clone address resolved to a local network address that is implicitly blocked.
migrate.failed = Migration failed: %v migrate.failed = Migration failed: %v
mirror_from = mirror of mirror_from = mirror of
@@ -478,6 +493,8 @@ branches.stale_branches = Stale Branches
branches.all = All Branches branches.all = All Branches
branches.updated_by = Updated %[1]s by %[2]s branches.updated_by = Updated %[1]s by %[2]s
branches.change_default_branch = Change Default Branch branches.change_default_branch = Change Default Branch
branches.default_deletion_not_allowed = Cannot delete the default branch.
branches.protected_deletion_not_allowed = Cannot delete a protected branch.
editor.new_file = New file editor.new_file = New file
editor.upload_file = Upload file editor.upload_file = Upload file
@@ -514,6 +531,7 @@ editor.file_changed_while_editing = File content has been changed since you star
editor.file_already_exists = A file with name '%s' already exists in this repository. editor.file_already_exists = A file with name '%s' already exists in this repository.
editor.no_changes_to_show = There are no changes to show. editor.no_changes_to_show = There are no changes to show.
editor.fail_to_update_file = Failed to update/create file '%s' with error: %v editor.fail_to_update_file = Failed to update/create file '%s' with error: %v
editor.fail_to_delete_file = Failed to delete file '%s' with error: %v
editor.add_subdir = Add subdirectory... editor.add_subdir = Add subdirectory...
editor.unable_to_upload_files = Failed to upload files to '%s' with error: %v editor.unable_to_upload_files = Failed to upload files to '%s' with error: %v
editor.upload_files_to_dir = Upload files to '%s' editor.upload_files_to_dir = Upload files to '%s'
@@ -634,6 +652,7 @@ pulls.cannot_auto_merge_desc = This pull request can't be merged automatically b
pulls.cannot_auto_merge_helper = Please merge manually in order to resolve the conflicts. pulls.cannot_auto_merge_helper = Please merge manually in order to resolve the conflicts.
pulls.create_merge_commit = Create a merge commit pulls.create_merge_commit = Create a merge commit
pulls.rebase_before_merging = Rebase before merging pulls.rebase_before_merging = Rebase before merging
pulls.commit_description = Commit Description
pulls.merge_pull_request = Merge Pull Request pulls.merge_pull_request = Merge Pull Request
pulls.open_unmerged_pull_exists = `You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.` pulls.open_unmerged_pull_exists = `You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.`
pulls.delete_branch = Delete Branch pulls.delete_branch = Delete Branch
@@ -738,7 +757,7 @@ settings.tracker_issue_style = External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric = Numeric settings.tracker_issue_style.numeric = Numeric
settings.tracker_issue_style.alphanumeric = Alphanumeric settings.tracker_issue_style.alphanumeric = Alphanumeric
settings.tracker_url_format_desc = You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index. settings.tracker_url_format_desc = You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index.
settings.pulls_desc = Enable pull requests to accept public contributions settings.pulls_desc = Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace = Ignore changes in whitespace settings.pulls.ignore_whitespace = Ignore changes in whitespace
settings.pulls.allow_rebase_merge = Allow use rebase to merge commits settings.pulls.allow_rebase_merge = Allow use rebase to merge commits
settings.danger_zone = Danger Zone settings.danger_zone = Danger Zone
@@ -777,8 +796,10 @@ settings.collaborator_deletion_desc = This user will no longer have collaboratio
settings.remove_collaborator_success = Collaborator has been removed. settings.remove_collaborator_success = Collaborator has been removed.
settings.search_user_placeholder = Search user... settings.search_user_placeholder = Search user...
settings.org_not_allowed_to_be_collaborator = Organization is not allowed to be added as a collaborator. settings.org_not_allowed_to_be_collaborator = Organization is not allowed to be added as a collaborator.
settings.add_webhook = Add Webhook settings.hooks_desc = Webhooks are much like basic HTTP POST event triggers. Whenever something occurs in Gogs, we will handle the notification to the target host you specify.
settings.hooks_desc = Webhooks are much like basic HTTP POST event triggers. Whenever something occurs in Gogs, we will handle the notification to the target host you specify. Learn more in this <a target="_blank" href="%s">Webhooks Guide</a>. settings.webhooks.add_new = Add a new webhook:
settings.webhooks.choose_a_type = Choose a type...
settings.add_webhook = Add webhook
settings.webhook_deletion = Delete Webhook settings.webhook_deletion = Delete Webhook
settings.webhook_deletion_desc = Delete this webhook will remove its information and all delivery history. Do you want to continue? settings.webhook_deletion_desc = Delete this webhook will remove its information and all delivery history. Do you want to continue?
settings.webhook_deletion_success = Webhook has been deleted successfully! settings.webhook_deletion_success = Webhook has been deleted successfully!
@@ -792,6 +813,8 @@ settings.webhook.response = Response
settings.webhook.headers = Headers settings.webhook.headers = Headers
settings.webhook.payload = Payload settings.webhook.payload = Payload
settings.webhook.body = Body settings.webhook.body = Body
settings.webhook.err_cannot_parse_payload_url = Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address = Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc = Git Hooks are powered by Git itself, you can edit files of supported hooks in the list below to perform custom operations. settings.githooks_desc = Git Hooks are powered by Git itself, you can edit files of supported hooks in the list below to perform custom operations.
settings.githook_edit_desc = If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook. settings.githook_edit_desc = If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook.
settings.githook_name = Hook Name settings.githook_name = Hook Name
@@ -806,9 +829,9 @@ settings.slack_username = Username
settings.slack_icon_url = Icon URL settings.slack_icon_url = Icon URL
settings.slack_color = Color settings.slack_color = Color
settings.event_desc = When should this webhook be triggered? settings.event_desc = When should this webhook be triggered?
settings.event_push_only = Just the <code>push</code> event. settings.event_push_only = Just the <code>push</code> event
settings.event_send_everything = I need <strong>everything</strong>. settings.event_send_everything = I need <strong>everything</strong>
settings.event_choose = Let me choose what I need. settings.event_choose = Let me choose what I need
settings.event_create = Create settings.event_create = Create
settings.event_create_desc = Branch or tag created settings.event_create_desc = Branch or tag created
settings.event_delete = Delete settings.event_delete = Delete
@@ -819,10 +842,10 @@ settings.event_push = Push
settings.event_push_desc = Git push to a repository settings.event_push_desc = Git push to a repository
settings.event_issues = Issues settings.event_issues = Issues
settings.event_issues_desc = Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc = Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment = Issue Comment
settings.event_issue_comment_desc = Issue comment created, edited, or deleted.
settings.event_pull_request = Pull Request settings.event_pull_request = Pull Request
settings.event_pull_request_desc = Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc = Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment = Issue Comment
settings.event_issue_comment_desc = Issue comment created, edited, or deleted.
settings.event_release = Release settings.event_release = Release
settings.event_release_desc = Release published in a repository. settings.event_release_desc = Release published in a repository.
settings.active = Active settings.active = Active
@@ -852,6 +875,8 @@ settings.add_key_success = New deploy key '%s' has been added successfully!
settings.deploy_key_deletion = Delete Deploy Key settings.deploy_key_deletion = Delete Deploy Key
settings.deploy_key_deletion_desc = Deleting this deploy key will remove all related accesses for this repository. Do you want to continue? settings.deploy_key_deletion_desc = Deleting this deploy key will remove all related accesses for this repository. Do you want to continue?
settings.deploy_key_deletion_success = Deploy key has been deleted successfully! settings.deploy_key_deletion_success = Deploy key has been deleted successfully!
settings.description_desc = Description of repository. Maximum 512 characters length.
settings.description_length = Available characters
diff.browse_source = Browse Source diff.browse_source = Browse Source
diff.parent = parent diff.parent = parent
@@ -916,9 +941,8 @@ team_name_helper = You'll use this name to mention this team in conversations.
team_desc_helper = What is this team all about? team_desc_helper = What is this team all about?
team_permission_desc = What permission level should this team have? team_permission_desc = What permission level should this team have?
form.name_reserved = Organization name '%s' is reserved. form.name_not_allowed = Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed = Organization name pattern '%s' is not allowed. form.team_name_not_allowed = Team name or pattern %q is not allowed.
form.team_name_reserved = Team name '%s' is reserved.
settings = Settings settings = Settings
settings.options = Options settings.options = Options
@@ -990,12 +1014,19 @@ first_page = First
last_page = Last last_page = Last
total = Total: %d total = Total: %d
dashboard.build_info = Build Information
dashboard.app_ver = Application version
dashboard.git_version = Git version
dashboard.go_version = Go version
dashboard.build_time = Build time
dashboard.build_commit = Build commit
dashboard.statistic = Statistics dashboard.statistic = Statistics
dashboard.operations = Operations dashboard.operations = Operations
dashboard.system_status = System Monitor Status dashboard.system_status = System Monitor Status
dashboard.statistic_info = Gogs database has <b>%d</b> users, <b>%d</b> organizations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments. dashboard.statistic_info = Gogs database has <b>%d</b> users, <b>%d</b> organizations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments.
dashboard.operation_name = Operation Name dashboard.operation_name = Operation Name
dashboard.operation_switch = Switch dashboard.operation_switch = Switch
dashboard.select_operation_to_run = Please select operation to run
dashboard.operation_run = Run dashboard.operation_run = Run
dashboard.clean_unbind_oauth = Clean unbound OAuthes dashboard.clean_unbind_oauth = Clean unbound OAuthes
dashboard.clean_unbind_oauth_success = All unbind OAuthes have been deleted successfully. dashboard.clean_unbind_oauth_success = All unbind OAuthes have been deleted successfully.
@@ -1087,11 +1118,12 @@ repos.stars = Stars
repos.issues = Issues repos.issues = Issues
repos.size = Size repos.size = Size
auths.auth_manage_panel = Authentication Manage Panel auths.auth_sources = Authentication Sources
auths.new = Add New Source auths.new = Add New Source
auths.name = Name auths.name = Name
auths.type = Type auths.type = Type
auths.enabled = Enabled auths.enabled = Enabled
auths.default = Default
auths.updated = Updated auths.updated = Updated
auths.auth_type = Authentication Type auths.auth_type = Authentication Type
auths.auth_name = Authentication Name auths.auth_name = Authentication Name
@@ -1128,9 +1160,9 @@ auths.enable_tls = Enable TLS Encryption
auths.skip_tls_verify = Skip TLS Verify auths.skip_tls_verify = Skip TLS Verify
auths.pam_service_name = PAM Service Name auths.pam_service_name = PAM Service Name
auths.enable_auto_register = Enable Auto Registration auths.enable_auto_register = Enable Auto Registration
auths.tips = Tips
auths.edit = Edit Authentication Setting auths.edit = Edit Authentication Setting
auths.activated = This authentication is activated auths.activated = This authentication is activated
auths.default_auth = This authentication is default login source
auths.new_success = New authentication '%s' has been added successfully. auths.new_success = New authentication '%s' has been added successfully.
auths.update_success = Authentication setting has been updated successfully. auths.update_success = Authentication setting has been updated successfully.
auths.update = Update Authentication Setting auths.update = Update Authentication Setting
@@ -1140,120 +1172,185 @@ auths.delete_auth_desc = This authentication is going to be deleted, do you want
auths.still_in_used = This authentication is still used by some users, please delete or convert these users to another login type first. auths.still_in_used = This authentication is still used by some users, please delete or convert these users to another login type first.
auths.deletion_success = Authentication has been deleted successfully! auths.deletion_success = Authentication has been deleted successfully!
auths.login_source_exist = Login source '%s' already exists. auths.login_source_exist = Login source '%s' already exists.
auths.github_api_endpoint = API Endpoint
config.not_set = (not set) config.not_set = (not set)
config.server_config = Server Configuration config.server_config = Server configuration
config.app_name = Application Name config.brand_name = Brand name
config.app_ver = Application Version config.run_user = Run user
config.app_url = Application URL config.run_mode = Run mode
config.domain = Domain config.server.external_url = External URL
config.offline_mode = Offline Mode config.server.domain = Domain
config.disable_router_log = Disable Router Log config.server.protocol = Protocol
config.run_user = Run User config.server.http_addr = HTTP address
config.run_mode = Run Mode config.server.http_port = HTTP port
config.git_version = Git Version config.server.cert_file = Certificate file
config.static_file_root_path = Static File Root Path config.server.key_file = Key file
config.log_file_root_path = Log File Root Path config.server.tls_min_version = Minimum TLS version
config.reverse_auth_user = Reverse Authentication User config.server.unix_socket_permission = Unix socket permission
config.server.local_root_url = Local root URL
config.server.offline_mode = Offline mode
config.server.disable_router_log = Disable router log
config.server.enable_gzip = Enable Gzip
config.server.app_data_path = Application data path
config.server.load_assets_from_disk = Load assets from disk
config.server.landing_url = Landing URL
config.ssh_config = SSH Configuration config.ssh_config = SSH configuration
config.ssh_enabled = Enabled config.ssh.enabled = Enabled
config.ssh_start_builtin_server = Start Builtin Server config.ssh.domain = Exposed domain
config.ssh_domain = Domain config.ssh.port = Exposed port
config.ssh_port = Port config.ssh.root_path = Root path
config.ssh_listen_port = Listen Port config.ssh.keygen_path = Keygen path
config.ssh_root_path = Root Path config.ssh.key_test_path = Key test path
config.ssh_rewrite_authorized_keys_at_start = Rewrite authorized_keys At Start config.ssh.minimum_key_size_check = Minimum key size check
config.ssh_key_test_path = Key Test Path config.ssh.minimum_key_sizes = Minimum key sizes
config.ssh_keygen_path = Keygen ('ssh-keygen') Path config.ssh.rewrite_authorized_keys_at_start = Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check = Minimum Key Size Check config.ssh.start_builtin_server = Start builtin server
config.ssh_minimum_key_sizes = Minimum Key Sizes config.ssh.listen_host = Listen host
config.ssh.listen_port = Listen port
config.ssh.server_ciphers = Server ciphers
config.ssh.server_macs = Server MACs
config.ssh.server_algorithms = Server algorithms
config.repo_config = Repository Configuration config.repo_config = Repository configuration
config.repo_root_path = Repository Root Path config.repo.root_path = Root path
config.script_type = Script Type config.repo.script_type = Script type
config.repo_force_private = Force Private config.repo.ansi_chatset = ANSI charset
config.max_creation_limit = Max Creation Limit config.repo.force_private = Force private
config.preferred_licenses = Preferred Licenses config.repo.max_creation_limit = Max creation limit
config.disable_http_git = Disable HTTP Git config.repo.preferred_licenses = Preferred licenses
config.enable_local_path_migration = Enable Local Path Migration config.repo.disable_http_git = Disable HTTP Git
config.commits_fetch_concurrency = Commits Fetch Concurrency config.repo.enable_local_path_migration = Enable local path migration
config.repo.enable_raw_file_render_mode = Enable raw file render mode
config.repo.commits_fetch_concurrency = Commits fetch concurrency
config.repo.editor.line_wrap_extensions = Editor line wrap extensions
config.repo.editor.previewable_file_modes = Editor previewable file modes
config.repo.upload.enabled = Upload enabled
config.repo.upload.temp_path = Upload temporary path
config.repo.upload.allowed_types = Upload allowed types
config.repo.upload.file_max_size = Upload file size limit
config.repo.upload.max_files = Upload files limit
config.http_config = HTTP Configuration config.db_config = Database configuration
config.http_access_control_allow_origin = Access Control Allow Origin config.db.type = Type
config.db.host = Host
config.db.name = Name
config.db.schema = Schema
config.db.schema_helper = (for "postgres" only)
config.db.user = User
config.db.ssl_mode = SSL mode
config.db.ssl_mode_helper = (for "postgres" only)
config.db.path = Path
config.db.path_helper = (for "sqlite3"only)
config.db.max_open_conns = Maximum open connections
config.db.max_idle_conns = Maximum idle connections
config.db_config = Database Configuration config.security_config = Security configuration
config.db_type = Type config.security.login_remember_days = Login remember days
config.db_host = Host config.security.cookie_remember_name = Remember cookie
config.db_name = Name config.security.cookie_username = Username cookie
config.db_user = User config.security.cookie_secure = Enable secure cookie
config.db_ssl_mode = SSL Mode config.security.reverse_proxy_auth_user = Reverse proxy authentication header
config.db_ssl_mode_helper = (for "postgres" only) config.security.enable_login_status_cookie = Enable login status cookie
config.db_path = Path config.security.login_status_cookie_name = Login status cookie
config.db_path_helper = (for "sqlite3" and "tidb") config.security.local_network_allowlist = Local network allowlist
config.service_config = Service Configuration config.email_config = Email configuration
config.register_email_confirm = Require Email Confirmation config.email.enabled = Enabled
config.disable_register = Disable Registration config.email.subject_prefix = Subject prefix
config.show_registration_button = Show Register Button config.email.host = Host
config.require_sign_in_view = Require Sign In View config.email.from = From
config.mail_notify = Mail Notification config.email.user = User
config.disable_key_size_check = Disable Minimum Key Size Check config.email.helo_hostname = HELO hostname
config.enable_captcha = Enable Captcha config.email.skip_verify = Skip certificate verify
config.active_code_lives = Active Code Lives config.email.use_certificate = Use custom certificate
config.reset_password_code_lives = Reset Password Code Lives config.email.cert_file = Certificate file
config.email.key_file = Key file
config.email.use_plain_text = Use plain text
config.email.add_plain_text_alt = Add plain text alternative
config.email.send_test_mail = Send test email
config.email.test_mail_failed = Failed to send test email to '%s': %v
config.email.test_mail_sent = Test email has been sent to '%s'.
config.webhook_config = Webhook Configuration config.auth_config = Authentication configuration
config.queue_length = Queue Length config.auth_custom_logout_url = Custom logout URL
config.deliver_timeout = Deliver Timeout config.auth.activate_code_lives = Activate code lives
config.skip_tls_verify = Skip TLS Verify config.auth.reset_password_code_lives = Reset password code lives
config.auth.require_email_confirm = Require email confirmation
config.auth.require_sign_in_view = Require sign in view
config.auth.disable_registration = Disable registration
config.auth.enable_registration_captcha = Enable registration captcha
config.auth.enable_reverse_proxy_authentication = Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration = Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header = Reverse proxy authentication header
config.mailer_config = Mailer Configuration config.user_config = User configuration
config.mailer_enabled = Enabled config.user.enable_email_notify = Enable email notification
config.mailer_disable_helo = Disable HELO
config.mailer_subject_prefix = Subject Prefix
config.mailer_host = Host
config.mailer_user = User
config.send_test_mail = Send Test Email
config.test_mail_failed = Fail to send test email to '%s': %v
config.test_mail_sent = Test email has been sent to '%s'.
config.oauth_config = OAuth Configuration config.session_config = Session configuration
config.oauth_enabled = Enabled config.session.provider = Provider
config.session.provider_config = Provider config
config.session.cookie_name = Cookie
config.session.https_only = HTTPS only
config.session.gc_interval = GC interval
config.session.max_life_time = Max life time
config.session.csrf_cookie_name = CSRF cookie
config.cache_config = Cache Configuration config.cache_config = Cache configuration
config.cache_adapter = Cache Adapter config.cache.adapter = Adapter
config.cache_interval = Cache Interval config.cache.interval = GC interval
config.cache_conn = Cache Connection config.cache.host = Host
config.session_config = Session Configuration config.http_config = HTTP configuration
config.session_provider = Session Provider config.http.access_control_allow_origin = Access control allow origin
config.provider_config = Provider Config
config.cookie_name = Cookie Name
config.enable_set_cookie = Enable Set Cookie
config.gc_interval_time = GC Interval Time
config.session_life_time = Session Life Time
config.https_only = HTTPS Only
config.cookie_life_time = Cookie Life Time
config.picture_config = Picture Configuration config.attachment_config = Attachment configuration
config.picture_service = Picture Service config.attachment.enabled = Enabled
config.disable_gravatar = Disable Gravatar config.attachment.path = Path
config.enable_federated_avatar = Enable Federated Avatars config.attachment.allowed_types = Allowed types
config.attachment.max_size = Size limit
config.attachment.max_files = Files limit
config.git_config = Git Configuration config.release_config = Release configuration
config.git_disable_diff_highlight = Disable Diff Syntax Highlight config.release.attachment.enabled = Attachment enabled
config.git_max_diff_lines = Max Diff Lines (for a single file) config.release.attachment.allowed_types = Attachment allowed types
config.git_max_diff_line_characters = Max Diff Characters (for a single line) config.release.attachment.max_size = Attachment size limit
config.git_max_diff_files = Max Diff Files (to be shown) config.release.attachment.max_files = Attachment files limit
config.git_gc_args = GC Arguments
config.git_migrate_timeout = Migration Timeout
config.git_mirror_timeout = Mirror Update Timeout
config.git_clone_timeout = Clone Operation Timeout
config.git_pull_timeout = Pull Operation Timeout
config.git_gc_timeout = GC Operation Timeout
config.log_config = Log Configuration config.picture_config = Picture configuration
config.picture.avatar_upload_path = User avatar upload path
config.picture.repo_avatar_upload_path = Repository avatar upload path
config.picture.gravatar_source = Gravatar source
config.picture.disable_gravatar = Disable Gravatar
config.picture.enable_federated_avatar = Enable federated avatars
config.mirror_config = Mirror configuration
config.mirror.default_interval = Default interval
config.webhook_config = Webhook configuration
config.webhook.types = Types
config.webhook.deliver_timeout = Deliver timeout
config.webhook.skip_tls_verify = Skip TLS verify
config.git_config = Git configuration
config.git.disable_diff_highlight = Disable diff syntax highlight
config.git.max_diff_lines = Diff lines limit (for a single file)
config.git.max_diff_line_characters = Diff characters limit (for a single line)
config.git.max_diff_files = Diff files limit (for a single diff)
config.git.gc_args = GC arguments
config.git.migrate_timeout = Migration timeout
config.git.mirror_timeout = Mirror fetch timeout
config.git.clone_timeout = Clone timeout
config.git.pull_timeout = Pull timeout
config.git.gc_timeout = GC timeout
config.lfs_config = LFS configuration
config.lfs.storage = Storage
config.lfs.objects_path = Objects path
config.log_config = Log configuration
config.log_file_root_path = Log file root path
config.log_mode = Mode config.log_mode = Mode
config.log_options = Options config.log_options = Options
@@ -1284,7 +1381,6 @@ notices.delete_success = System notices have been deleted successfully.
[action] [action]
create_repo = created repository <a href="%s">%s</a> create_repo = created repository <a href="%s">%s</a>
fork_repo = forked a repository to <a href="%s">%s</a>
rename_repo = renamed repository from <code>%[1]s</code> to <a href="%[2]s">%[3]s</a> rename_repo = renamed repository from <code>%[1]s</code> to <a href="%[2]s">%[3]s</a>
commit_repo = pushed to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> commit_repo = pushed to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a>
compare_commits = View comparison for these %d commits compare_commits = View comparison for these %d commits
@@ -1301,6 +1397,10 @@ create_branch = created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a hre
delete_branch = deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch = deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag = pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> push_tag = pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a>
delete_tag = deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag = deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo = forked a repository to <a href="%s">%s</a>
mirror_sync_push = synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create = synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete = synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago = ago ago = ago
@@ -1322,6 +1422,7 @@ months = %d months %s
years = %d years %s years = %d years %s
raw_seconds = seconds raw_seconds = seconds
raw_minutes = minutes raw_minutes = minutes
raw_hours = hours
[dropzone] [dropzone]
default_message = Drop files here or click to upload. default_message = Drop files here or click to upload.

View File

@@ -9,7 +9,6 @@ sign_out=Cerrar sesión
sign_up=Registro sign_up=Registro
register=Registro register=Registro
website=Página web website=Página web
version=Versión
page=Página page=Página
template=Plantilla template=Plantilla
language=Idioma language=Idioma
@@ -44,17 +43,22 @@ issues=Incidencias
cancel=Cancelar cancel=Cancelar
[status]
page_not_found=Página no encontrada
internal_server_error=Error Interno del Servidor
[install] [install]
install=Instalación install=Instalación
title=Pasos de la instalación por primera vez title=Pasos de la instalación por primera vez
docker_helper=Si está ejecutando Gogs usando Docker, ¡por favor lea <a target="_blank" href="%s"> estas pautas</a> antes de cambiar nada en esta página! docker_helper=Si está ejecutando Gogs usando Docker, ¡por favor lea <a target="_blank" href="%s"> estas pautas</a> antes de cambiar nada en esta página!
requite_db_desc=Gogs requiere un SGBD como MySQL, PostgreSQL, SQLite3 o TiDB. requite_db_desc=Gogs requiere MySQL, PostgreSQL, SQLite3 o TiDB (a través del protocolo MySQL).
db_title=Configuración de base de datos db_title=Configuración de base de datos
db_type=Tipo de base de datos db_type=Tipo de base de datos
host=Host host=Host
user=Usuario user=Usuario
password=Contraseña password=Contraseña
db_name=Nombre de la base de datos db_name=Nombre de la base de datos
db_schema=Esquema
db_helper=Por favor utilice el motor INNODB con la configuración de caracteres utf8_general_ci para MySQL. db_helper=Por favor utilice el motor INNODB con la configuración de caracteres utf8_general_ci para MySQL.
ssl_mode=Modo SSL ssl_mode=Modo SSL
path=Ruta path=Ruta
@@ -84,6 +88,7 @@ log_root_path=Ruta del registro
log_root_path_helper=Directorio donde almacenar los registros. log_root_path_helper=Directorio donde almacenar los registros.
enable_console_mode=Activar Modo Consola enable_console_mode=Activar Modo Consola
enable_console_mode_popup=Además del modo archivo, también imprime los registros en consola. enable_console_mode_popup=Además del modo archivo, también imprime los registros en consola.
default_branch=Rama por defecto
optional_title=Configuración opcional optional_title=Configuración opcional
email_title=Configuración del servicio de correo email_title=Configuración del servicio de correo
@@ -114,7 +119,7 @@ admin_password=Contraseña
confirm_password=Confirmar Contraseña confirm_password=Confirmar Contraseña
admin_email=Correo electrónico del administrador admin_email=Correo electrónico del administrador
install_gogs=Instalar Gogs install_gogs=Instalar Gogs
test_git_failed=Fallo al probar el comando 'git': %v test_git_failed=Error al probar el comando 'git': %v
sqlite3_not_available=Tu versión no soporta SQLite3, por favor descarga el binario oficial desde %s, NO la versión de gobuild. sqlite3_not_available=Tu versión no soporta SQLite3, por favor descarga el binario oficial desde %s, NO la versión de gobuild.
invalid_db_setting=La configuración de la base de datos no es correcta: %v invalid_db_setting=La configuración de la base de datos no es correcta: %v
invalid_repo_path=La ruta de la raíz del repositorio es inválida: %v invalid_repo_path=La ruta de la raíz del repositorio es inválida: %v
@@ -122,6 +127,7 @@ run_user_not_match=El usuario que está ejecutando la aplicación no es el usuar
smtp_host_missing_port=No se ha definido el puerto para el host SMTP. smtp_host_missing_port=No se ha definido el puerto para el host SMTP.
invalid_smtp_from=El campo SMTP no es válido: %v invalid_smtp_from=El campo SMTP no es válido: %v
save_config_failed=Error al guardar la configuración: %v save_config_failed=Error al guardar la configuración: %v
init_failed=Error al inicializar la aplicación: %v
invalid_admin_setting=La configuración de la cuenta de administración es inválida: %v invalid_admin_setting=La configuración de la cuenta de administración es inválida: %v
install_success=Bienvenido! Estamos encantados de que hayas escogido Gogs, diviértete y cuídate. install_success=Bienvenido! Estamos encantados de que hayas escogido Gogs, diviértete y cuídate.
invalid_log_root_path=La ruta para los registros es inválida: %v invalid_log_root_path=La ruta para los registros es inválida: %v
@@ -151,6 +157,8 @@ register_hepler_msg=¿Ya tienes una cuenta? ¡Inicia sesión!
social_register_hepler_msg=¿Ya tienes una cuenta? ¡Enlázala! social_register_hepler_msg=¿Ya tienes una cuenta? ¡Enlázala!
disable_register_prompt=Lo sentimos, el registro está deshabilitado. Por favor, contacta con el administrador del sitio. disable_register_prompt=Lo sentimos, el registro está deshabilitado. Por favor, contacta con el administrador del sitio.
disable_register_mail=Lo sentimos. Los correos de Confirmación de Registro están deshabilitados. disable_register_mail=Lo sentimos. Los correos de Confirmación de Registro están deshabilitados.
auth_source=Authentication Source
local=Local
remember_me=Recuérdame remember_me=Recuérdame
forgot_password=He olvidado mi contraseña forgot_password=He olvidado mi contraseña
forget_password=¿Has olvidado tu contraseña? forget_password=¿Has olvidado tu contraseña?
@@ -160,13 +168,13 @@ active_your_account=Activa tu cuenta
prohibit_login=Ingreso prohibido prohibit_login=Ingreso prohibido
prohibit_login_desc=Su cuenta tiene prohibido ingresar al sistema, fovor contactar al administrador del sistema. prohibit_login_desc=Su cuenta tiene prohibido ingresar al sistema, fovor contactar al administrador del sistema.
resent_limit_prompt=Lo sentimos, estás solicitando el reenvío del mail de activación con demasiada frecuencia. Por favor, espera 3 minutos. resent_limit_prompt=Lo sentimos, estás solicitando el reenvío del mail de activación con demasiada frecuencia. Por favor, espera 3 minutos.
has_unconfirmed_mail=Hola %s, tu correo electrónico (<b>%s</b>) no está confirmado. Si no has recibido un correo de confirmación o necesitas que lo enviemos de nuevo, por favor, haz click en el siguiente botón. has_unconfirmed_mail=Hola %s, tu correo electrónico (<b>%s</b>) no está confirmado. Si no has recibido un correo de confirmación o necesitas que te lo enviemos de nuevo, por favor haz click en el siguiente botón.
resend_mail=Haz click aquí para reenviar tu correo electrónico de activación resend_mail=Haz click aquí para reenviar tu correo electrónico de activación
send_reset_mail=Haga clic aquí para (re)enviar el correo para el restablecimiento de la contraseña send_reset_mail=Haga clic aquí para (re)enviar el correo para el restablecimiento de la contraseña
reset_password=Restablecer su contraseña reset_password=Restablecer su contraseña
invalid_code=Lo sentimos, su código de confirmación ha expirado o no es valido. invalid_code=Lo sentimos, su código de confirmación ha expirado o no es valido.
reset_password_helper=Haga Clic aquí para restablecer su contraseña reset_password_helper=Haga Clic aquí para restablecer su contraseña
password_too_short=La longitud de la contraseña no puede ser menor a 6. password_too_short=La longitud de la contraseña no puede ser menor de 6 caracteres.
non_local_account=Cuentas que no son locales no pueden cambiar las contraseñas a través de Gogs. non_local_account=Cuentas que no son locales no pueden cambiar las contraseñas a través de Gogs.
login_two_factor=Autenticación en dos pasos login_two_factor=Autenticación en dos pasos
@@ -210,8 +218,8 @@ TreeName=Ruta del archivo
Content=Contenido Content=Contenido
require_error=` no puede estar vacío.` require_error=` no puede estar vacío.`
alpha_dash_error=` los caracteres deben ser Alfanumericos o dash(-_).` alpha_dash_error=` los caracteres deben ser alfanuméricos o un guión (-_).`
alpha_dash_dot_error=` debe ser un caracter alfanumérivo válido, un guión alto o bajo (-_) o un signo de puntuación.` alpha_dash_dot_error=` debe ser un carácter alfanumérico válido, un guión (-_) o un signo de puntuación.`
alpha_dash_dot_slash_error=` deben ser caracteres alfanuméricos, guiones(-_), puntos o barras.` alpha_dash_dot_slash_error=` deben ser caracteres alfanuméricos, guiones(-_), puntos o barras.`
size_error=` debe ser de tamaño %s.` size_error=` debe ser de tamaño %s.`
min_size_error=` debe contener al menos %s caracteres.` min_size_error=` debe contener al menos %s caracteres.`
@@ -229,6 +237,7 @@ org_name_been_taken=Ya existe una organización con este nombre.
team_name_been_taken=Ya existe un equipo con este nombre. team_name_been_taken=Ya existe un equipo con este nombre.
email_been_used=Esta dirección de correo electrónico ya está en uso. email_been_used=Esta dirección de correo electrónico ya está en uso.
username_password_incorrect=Nombre de usuario o contraseña incorrectos. username_password_incorrect=Nombre de usuario o contraseña incorrectos.
auth_source_mismatch=The authentication source selected is not associated with the user.
enterred_invalid_repo_name=Por favor, asegúrate de que has introducido correctamente el nombre del repositorio. enterred_invalid_repo_name=Por favor, asegúrate de que has introducido correctamente el nombre del repositorio.
enterred_invalid_owner_name=Por favor, asegúrate de que has introducido correctamente el nombre del propietario. enterred_invalid_owner_name=Por favor, asegúrate de que has introducido correctamente el nombre del propietario.
enterred_invalid_password=Por favor, asegúrate de que has introducido correctamente tu contraseña. enterred_invalid_password=Por favor, asegúrate de que has introducido correctamente tu contraseña.
@@ -256,8 +265,7 @@ following=Siguiendo
follow=Seguir follow=Seguir
unfollow=Dejar de seguir unfollow=Dejar de seguir
form.name_reserved=El usuario '%s' está reservado. form.name_not_allowed=El nombre de usuario o patrón %q no está permitido.
form.name_pattern_not_allowed=El patrón de nombre de usuario '%s' no está permitido.
[settings] [settings]
profile=Perfil profile=Perfil
@@ -309,6 +317,7 @@ delete_email=Eliminar
email_deletion=Eliminar correo electrónico email_deletion=Eliminar correo electrónico
email_deletion_desc=Al eliminar esta dirección de correo electrónico se eliminará toda la información asociada a esta. ¿Deseas continuar? email_deletion_desc=Al eliminar esta dirección de correo electrónico se eliminará toda la información asociada a esta. ¿Deseas continuar?
email_deletion_success=¡El correo electrónico ha sido eliminado correctamente! email_deletion_success=¡El correo electrónico ha sido eliminado correctamente!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Añadir nueva dirección de correo electrónico add_new_email=Añadir nueva dirección de correo electrónico
add_email=Añadir correo electrónico add_email=Añadir correo electrónico
add_email_confirmation_sent=Un nuevo correo de confirmación ha sido enviado a '%s'. Por favor, comprueba tu bandeja de entrada en las próximas %d horas para completar el proceso. add_email_confirmation_sent=Un nuevo correo de confirmación ha sido enviado a '%s'. Por favor, comprueba tu bandeja de entrada en las próximas %d horas para completar el proceso.
@@ -342,26 +351,28 @@ two_factor_enable=Activar
two_factor_disable=Desactivar two_factor_disable=Desactivar
two_factor_view_recovery_codes=Guarda <a href="%s%s"> tus códigos de recuperación</a> en un lugar seguro. Podrás usarlos como código de acceso si pierdes el acceso a tu aplicación de autenticación. two_factor_view_recovery_codes=Guarda <a href="%s%s"> tus códigos de recuperación</a> en un lugar seguro. Podrás usarlos como código de acceso si pierdes el acceso a tu aplicación de autenticación.
two_factor_http=Para las operaciones sobre HTTP/HTTPS, no puedes usar un usuario y contraseña. Por favor, cree y utilice <a href="%[1]s%[2]s"> un token de acceso personal</a> como su credencial de acceso, por ejemplo, <code>%[3]s</code>. two_factor_http=Para las operaciones sobre HTTP/HTTPS, no puedes usar un usuario y contraseña. Por favor, cree y utilice <a href="%[1]s%[2]s"> un token de acceso personal</a> como su credencial de acceso, por ejemplo, <code>%[3]s</code>.
two_factor_enable_title=Habilitar autenticaciñon en dos pasos two_factor_enable_title=Habilitar autenticación en dos pasos
two_factor_scan_qr=Por favor, use su aplicación de autenticación para escanear la imagen: two_factor_scan_qr=Por favor, use su aplicación de autenticación para escanear la imagen:
two_factor_or_enter_secret=Or enter the secret: two_factor_or_enter_secret=O introduzca el secreto:
two_factor_then_enter_passcode=Introduce el Pin: two_factor_then_enter_passcode=Introduce el Pin:
two_factor_verify=Verificar two_factor_verify=Verificar
two_factor_invalid_passcode=¡El Pin que has introducido no es válido, por favor, inténtalo de nuevo! two_factor_invalid_passcode=¡El Pin que has introducido no es válido, por favor, inténtalo de nuevo!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_reused_passcode=¡El pin de autenticación que has introducido ya ha sido usado, por favor intenta con otro!
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_error=Ha fallado la activación de la autenticación en dos pasos: %v
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_enable_success=¡La autenticación en dos pasos se ha activado en tu cuenta correctamente!
two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>. two_factor_recovery_codes_title=Códigos de recuperación para la autenticación en dos pasos
two_factor_regenerate_recovery_codes=Regenerate Recovery Codes two_factor_recovery_codes_desc=Los códigos de recuperación se usan cuando pierdes temporalmente el acceso a tu aplicación de autenticación. Cada código de recuperación solo puede utilizarse en una ocasión, <b>por favor, mantén estos códigos en lugar seguro</b>.
two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v two_factor_regenerate_recovery_codes=Regenerar códigos de recuperación
two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully! two_factor_regenerate_recovery_codes_error=Ha fallado la regeneración de códigos de recuperación: %v
two_factor_regenerate_recovery_codes_success=¡Nuevos códigos de recuperación han sido generados con éxito!
two_factor_disable_title=Deshabilitar autenticación en dos pasos two_factor_disable_title=Deshabilitar autenticación en dos pasos
two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue? two_factor_disable_desc=El nivel de seguridad de tu cuenta se verá reducido después de desactivar la autenticación en dos pasos. ¿Deseas continuar?
two_factor_disable_success=¡La autenticación en dos pasos ha sido deshabilitada satisfactoriamente! two_factor_disable_success=¡La autenticación en dos pasos ha sido deshabilitada satisfactoriamente!
manage_access_token=Gestionar los Tokens de Acceso personales manage_access_token=Gestionar los Tokens de Acceso personales
generate_new_token=Generar nuevo Token generate_new_token=Generar nuevo Token
tokens_desc=Tokens usados para acceder al API de Gogs. tokens_desc=Tokens usados para acceder al API de Gogs.
access_token_tips=El token de acceso personal puede utilizarse como nombre de usuario o como contraseña. Se recomienda utilizar el "x-access-token" como nombre de usuario y el token de acceso personal como contraseña para las aplicaciones Git.
new_token_desc=Desde ahora, todos los tokens tendrán acceso completo a tu cuenta. new_token_desc=Desde ahora, todos los tokens tendrán acceso completo a tu cuenta.
token_name=Nombre del Token token_name=Nombre del Token
generate_token=Generar Token generate_token=Generar Token
@@ -370,6 +381,7 @@ delete_token=Eliminar
access_token_deletion=Borrado de Token de Acceso Personal access_token_deletion=Borrado de Token de Acceso Personal
access_token_deletion_desc=Si elimina este token de acceso personal la aplicación asociada perderá el permiso de acceso. ¿Desea continuar? access_token_deletion_desc=Si elimina este token de acceso personal la aplicación asociada perderá el permiso de acceso. ¿Desea continuar?
delete_token_success=¡El token de acceso personal ha sido eliminado con éxito! No se olvide de actualizar también las aplicaciones asociadas. delete_token_success=¡El token de acceso personal ha sido eliminado con éxito! No se olvide de actualizar también las aplicaciones asociadas.
token_name_exists=Ya existe un token con el mismo nombre.
orgs.none=No eres un miembro de ninguna organización. orgs.none=No eres un miembro de ninguna organización.
orgs.leave_title=Salir de una organización orgs.leave_title=Salir de una organización
@@ -391,7 +403,9 @@ owner=Propietario
repo_name=Nombre del repositorio repo_name=Nombre del repositorio
repo_name_helper=Los grandes nombres de repositorios son cortos, memorables y <strong>únicos</strong>. repo_name_helper=Los grandes nombres de repositorios son cortos, memorables y <strong>únicos</strong>.
visibility=Visibilidad visibility=Visibilidad
unlisted=Sin listar
visiblity_helper=Este repositorio es <span class="ui red text">privado</span> visiblity_helper=Este repositorio es <span class="ui red text">privado</span>
unlisted_helper=Este repositorio <span class="ui red text">no está en la lista</span>
visiblity_helper_forced=El administrador web ha obligado a todos los repositorios nuevos a ser <span class="ui red text"> privados</span> visiblity_helper_forced=El administrador web ha obligado a todos los repositorios nuevos a ser <span class="ui red text"> privados</span>
visiblity_fork_helper=(Este cambio afectará a todos los forks) visiblity_fork_helper=(Este cambio afectará a todos los forks)
clone_helper=¿Necesitas ayuda con el clone? ¡Consulta la <a target="_blank" href="%s">Ayuda</a>! clone_helper=¿Necesitas ayuda con el clone? ¡Consulta la <a target="_blank" href="%s">Ayuda</a>!
@@ -409,7 +423,7 @@ auto_init=Inicializar los archivos seleccionados y plantillas de este repositori
create_repo=Crear repositorio create_repo=Crear repositorio
default_branch=Rama por defecto default_branch=Rama por defecto
mirror_prune=Purgar mirror_prune=Purgar
mirror_prune_desc=Remover referencias remotas que no existan remotamente mirror_prune_desc=Elimina cualquier referencia de seguimiento remoto que ya no exista en el remoto
mirror_interval=Intervalo de la réplica (en horas) mirror_interval=Intervalo de la réplica (en horas)
mirror_address=Dirección de la réplica mirror_address=Dirección de la réplica
mirror_address_desc=Por favor, incluya las credenciales de usuario necesarias en la dirección. mirror_address_desc=Por favor, incluya las credenciales de usuario necesarias en la dirección.
@@ -417,10 +431,11 @@ mirror_last_synced=Última sincronización
watchers=Seguidores watchers=Seguidores
stargazers=Fans stargazers=Fans
forks=Forks forks=Forks
repo_description_helper=Descripción del repositorio. Longitud máxima de 512 caracteres.
repo_description_length=Caracteres disponibles
form.reach_limit_of_creation=El propietario ha alcanzado el límite máximo de %d repositorios creados. form.reach_limit_of_creation=El propietario ha alcanzado el límite máximo de %d repositorios creados.
form.name_reserved=El nombre del repositorio '%s' está reservado. form.name_not_allowed=El nombre de repositorio o patrón %q no está permitido.
form.name_pattern_not_allowed=El patrón del nombre del repositorio '%s' no está permitido.
need_auth=Requiere autorización need_auth=Requiere autorización
migrate_type=Tipo de migración migrate_type=Tipo de migración
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Esto puede ser una dirección URL HTTP/HTTPS/GIT.
migrate.clone_address_desc_import_local=También se le permite migrar un repositorio por la ruta del servidor local. migrate.clone_address_desc_import_local=También se le permite migrar un repositorio por la ruta del servidor local.
migrate.permission_denied=No te está permitido importar repositorios locales. migrate.permission_denied=No te está permitido importar repositorios locales.
migrate.invalid_local_path=Rutal local inválida, no existe o no es un directorio. migrate.invalid_local_path=Rutal local inválida, no existe o no es un directorio.
migrate.clone_address_resolved_to_blocked_local_address=La dirección de clonado se ha resuelto a una dirección de red local que está implícitamente bloqueada.
migrate.failed=Migración fallida: %v migrate.failed=Migración fallida: %v
mirror_from=espejo de mirror_from=espejo de
@@ -478,6 +494,8 @@ branches.stale_branches=Ramas Viejas
branches.all=Todas las Ramas branches.all=Todas las Ramas
branches.updated_by=%[1]s actualizado por %[2]s branches.updated_by=%[1]s actualizado por %[2]s
branches.change_default_branch=Cambiar la Rama por Defecto branches.change_default_branch=Cambiar la Rama por Defecto
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nuevo archivo editor.new_file=Nuevo archivo
editor.upload_file=Subir archivo editor.upload_file=Subir archivo
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=El contenido del archivo ha sido modificado de
editor.file_already_exists=Ya existe un archivo con nombre '%s' en este repositorio. editor.file_already_exists=Ya existe un archivo con nombre '%s' en este repositorio.
editor.no_changes_to_show=No existen cambios para mostrar. editor.no_changes_to_show=No existen cambios para mostrar.
editor.fail_to_update_file=Error al actualizar/crear el archivo '%s', error: %v editor.fail_to_update_file=Error al actualizar/crear el archivo '%s', error: %v
editor.fail_to_delete_file=Error al borrar el fichero '%s', error: %v
editor.add_subdir=Añadir subdirectorio... editor.add_subdir=Añadir subdirectorio...
editor.unable_to_upload_files=Error al subir archivos a '%s', error: %v editor.unable_to_upload_files=Error al subir archivos a '%s', error: %v
editor.upload_files_to_dir=Subir archivos a '%s' editor.upload_files_to_dir=Subir archivos a '%s'
@@ -616,7 +635,7 @@ pulls.compare_compare=comparar con
pulls.filter_branch=Filtrar rama pulls.filter_branch=Filtrar rama
pulls.no_results=Sin resultados. pulls.no_results=Sin resultados.
pulls.nothing_to_compare=Nada que comparar. Las dos ramas coinciden. pulls.nothing_to_compare=Nada que comparar. Las dos ramas coinciden.
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history. pulls.nothing_merge_base=No hay nada que comparar porque las dos ramas tienen una historia completamente distinta.
pulls.has_pull_request=`Ya existe un pull request entre estas dos ramas: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>` pulls.has_pull_request=`Ya existe un pull request entre estas dos ramas: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Crear Pull Request pulls.create=Crear Pull Request
pulls.title_desc=desea fusionar %[1]d commits de <code>%[2]s</code> en <code>%[3]s</code> pulls.title_desc=desea fusionar %[1]d commits de <code>%[2]s</code> en <code>%[3]s</code>
@@ -632,8 +651,9 @@ pulls.is_checking=Se está procediendo a la búsqueda de conflictos, por favor a
pulls.can_auto_merge_desc=Este Pull Request puede ser fusionado automáticamente. pulls.can_auto_merge_desc=Este Pull Request puede ser fusionado automáticamente.
pulls.cannot_auto_merge_desc=Este Pull Request no puede ser fusionado automáticamente porque hay conflictos. pulls.cannot_auto_merge_desc=Este Pull Request no puede ser fusionado automáticamente porque hay conflictos.
pulls.cannot_auto_merge_helper=Por favor, fusiona manualmente para resolver los conflictos. pulls.cannot_auto_merge_helper=Por favor, fusiona manualmente para resolver los conflictos.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Crear un commit del fusionado
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Hacer rebase antes de fusionar
pulls.commit_description=Descripción del commit
pulls.merge_pull_request=Fusionar Pull Request pulls.merge_pull_request=Fusionar Pull Request
pulls.open_unmerged_pull_exists=`Usted no puede realizar la operación de reapertura porque en estos momentos existe una solicitud de pull request (#%d) para el mismo repositorio con la misma información que se encuentra a la espera de aprobación` pulls.open_unmerged_pull_exists=`Usted no puede realizar la operación de reapertura porque en estos momentos existe una solicitud de pull request (#%d) para el mismo repositorio con la misma información que se encuentra a la espera de aprobación`
pulls.delete_branch=Eliminar la rama pulls.delete_branch=Eliminar la rama
@@ -693,7 +713,7 @@ settings.branches_bare=No puedes gestionar ramas en un repositorio vacío. Por f
settings.default_branch=Rama predeterminada settings.default_branch=Rama predeterminada
settings.default_branch_desc=Se considera la rama «base» como la rama por defecto para commits de código, las solicitudes pull y edición en línea. settings.default_branch_desc=Se considera la rama «base» como la rama por defecto para commits de código, las solicitudes pull y edición en línea.
settings.update=Actualizar settings.update=Actualizar
settings.update_default_branch_unsupported=Change default branch is not supported by the Git version on server. settings.update_default_branch_unsupported=El cambio de rama por defecto no esta soportado por la versión de Git en el servidor.
settings.update_default_branch_success=¡La Rama por defecto de este repositorio ha sido actualizado con éxito! settings.update_default_branch_success=¡La Rama por defecto de este repositorio ha sido actualizado con éxito!
settings.protected_branches=Ramas protegidas settings.protected_branches=Ramas protegidas
settings.protected_branches_desc=Proteger ramas force pushing, de eliminación accidental y lista blanca de committers de código. settings.protected_branches_desc=Proteger ramas force pushing, de eliminación accidental y lista blanca de committers de código.
@@ -710,7 +730,7 @@ settings.protect_whitelist_users=Usuarios que pueden hacer push a esta rama
settings.protect_whitelist_search_users=Buscar usuarios settings.protect_whitelist_search_users=Buscar usuarios
settings.protect_whitelist_teams=Equipos cuyos miembros pueden hacer push a esta rama settings.protect_whitelist_teams=Equipos cuyos miembros pueden hacer push a esta rama
settings.protect_whitelist_search_teams=Buscar equipos settings.protect_whitelist_search_teams=Buscar equipos
settings.update_protect_branch_success=Protect options for this branch has been updated successfully! settings.update_protect_branch_success=¡Las opciones de protección para esta rama se han actualizado con éxito!
settings.hooks=Webhooks settings.hooks=Webhooks
settings.githooks=Git Hooks settings.githooks=Git Hooks
settings.basic_settings=Configuración Básica settings.basic_settings=Configuración Básica
@@ -723,7 +743,7 @@ settings.change_reponame_prompt=Este cambio afectará a los enlaces al repositor
settings.advanced_settings=Ajustes avanzados settings.advanced_settings=Ajustes avanzados
settings.wiki_desc=Activar sistema de wiki settings.wiki_desc=Activar sistema de wiki
settings.use_internal_wiki=Usar wiki integrada settings.use_internal_wiki=Usar wiki integrada
settings.allow_public_wiki_desc=Allow public access to wiki when repository is private settings.allow_public_wiki_desc=Permitir acceso público a la wiki cuando el repositorio es privado
settings.use_external_wiki=Usar Wiki externa settings.use_external_wiki=Usar Wiki externa
settings.external_wiki_url=URL externa de la Wiki settings.external_wiki_url=URL externa de la Wiki
settings.external_wiki_url_desc=Los visitantes serán redireccionados a la URL cuando hagan click en la barra. settings.external_wiki_url_desc=Los visitantes serán redireccionados a la URL cuando hagan click en la barra.
@@ -738,11 +758,11 @@ settings.tracker_issue_style=Estilo de etiquetado del tracker externo de inciden
settings.tracker_issue_style.numeric=Numérico settings.tracker_issue_style.numeric=Numérico
settings.tracker_issue_style.alphanumeric=Alfanumérico settings.tracker_issue_style.alphanumeric=Alfanumérico
settings.tracker_url_format_desc=Puedes usar las plantillas <code>{user} {repo} {index}</code> para el nombre de usuario, nombre del repositorio e índice de la incidencia. settings.tracker_url_format_desc=Puedes usar las plantillas <code>{user} {repo} {index}</code> para el nombre de usuario, nombre del repositorio e índice de la incidencia.
settings.pulls_desc=Habilitar Pull Requests para aceptar contribuciones públicas settings.pulls_desc=Permitir pull requests para aceptar contribuciones entre repositorios y ramas
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignorar los cambios en el espacio en blanco
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Permite usar rebase para fusionar los commits
settings.danger_zone=Zona de Peligro settings.danger_zone=Zona de Peligro
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner. settings.cannot_fork_to_same_owner=No puedes hacer fork del repositorio a su propietario original.
settings.new_owner_has_same_repo=El nuevo propietario tiene un repositorio con el mismo nombre. settings.new_owner_has_same_repo=El nuevo propietario tiene un repositorio con el mismo nombre.
settings.convert=Convertir en un repositorio normal settings.convert=Convertir en un repositorio normal
settings.convert_desc=Puedes convertir este repositorio en un repositorio normal. Este cambio no se puede deshacer. settings.convert_desc=Puedes convertir este repositorio en un repositorio normal. Este cambio no se puede deshacer.
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Los datos de la wiki del repositorio han sido bor
settings.delete=Eliminar este repositorio settings.delete=Eliminar este repositorio
settings.delete_desc=Una vez has eliminado un repositorio, no hay vuelta atrás. Por favor, asegúrate de que es lo que quieres. settings.delete_desc=Una vez has eliminado un repositorio, no hay vuelta atrás. Por favor, asegúrate de que es lo que quieres.
settings.delete_notices_1=- Esta operación <strong>NO PUEDE</strong> revertirse. settings.delete_notices_1=- Esta operación <strong>NO PUEDE</strong> revertirse.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Esta operación eliminará de manera permanente todo el contenido de este repositorio, incluyendo los datos de Git, las incidencias, los comentarios y los permisos de acceso de los colaboradores.
settings.delete_notices_fork_1=- Todos los forks se convertirán en independientes tras el borrado. settings.delete_notices_fork_1=- Todos los forks se convertirán en independientes tras el borrado.
settings.deletion_success=¡El respositorio ha sido eliminado satisfactoriamente! settings.deletion_success=¡El respositorio ha sido eliminado satisfactoriamente!
settings.update_settings_success=Las opciones del repositorio se han actualizado correctamente. settings.update_settings_success=Las opciones del repositorio se han actualizado correctamente.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Este usuario no podrá colaborar en este rep
settings.remove_collaborator_success=El colaborador ha sido eliminado. settings.remove_collaborator_success=El colaborador ha sido eliminado.
settings.search_user_placeholder=Buscar usuario... settings.search_user_placeholder=Buscar usuario...
settings.org_not_allowed_to_be_collaborator=Las organizaciones no tiene permitido ser añadidas como colaboradores. settings.org_not_allowed_to_be_collaborator=Las organizaciones no tiene permitido ser añadidas como colaboradores.
settings.add_webhook=Añadir Webhook
settings.hooks_desc=Los Webhooks permiten a servicios externos recibir notificaciones cuando sucedan ciertos eventos en Gogs. Cuando sucedan los eventos especificados, enviaremos una petición POST a cada una de las URLs indicadas. Para obtener más información, consulta nuestra <a target="_blank" href="%s">Guía de Webhooks</a>. settings.hooks_desc=Los Webhooks permiten a servicios externos recibir notificaciones cuando sucedan ciertos eventos en Gogs. Cuando sucedan los eventos especificados, enviaremos una petición POST a cada una de las URLs indicadas. Para obtener más información, consulta nuestra <a target="_blank" href="%s">Guía de Webhooks</a>.
settings.webhooks.add_new=Añadir un nuevo webhook:
settings.webhooks.choose_a_type=Elige un tipo...
settings.add_webhook=Añadir Webhook
settings.webhook_deletion=Eliminar Webhook settings.webhook_deletion=Eliminar Webhook
settings.webhook_deletion_desc=Al borrar este webhook se eliminará su información y todo su historial. ¿Desea continuar? settings.webhook_deletion_desc=Al borrar este webhook se eliminará su información y todo su historial. ¿Desea continuar?
settings.webhook_deletion_success=¡Webhook eliminado con éxito! settings.webhook_deletion_success=¡Webhook eliminado con éxito!
@@ -786,12 +808,14 @@ settings.webhook.test_delivery=Test de entrega
settings.webhook.test_delivery_desc=Enviar un falso evento Push de entrega para probar tus ajustes de webhook settings.webhook.test_delivery_desc=Enviar un falso evento Push de entrega para probar tus ajustes de webhook
settings.webhook.test_delivery_success=Probar que los webhook han sido añadidos a la cola de entrega. Esto puede tomar algunos segundos antes de aparecer en el historial de entregas. settings.webhook.test_delivery_success=Probar que los webhook han sido añadidos a la cola de entrega. Esto puede tomar algunos segundos antes de aparecer en el historial de entregas.
settings.webhook.redelivery=Reenviar settings.webhook.redelivery=Reenviar
settings.webhook.redelivery_success=Hook task '%s' has been readded to delivery queue. It may take few seconds to update delivery status in history. settings.webhook.redelivery_success=La tarea del Hook '%s' ha sido reañadida en la cola de entrega. Puede tardar unos segundos en actualizarse el historial de estado de la cola.
settings.webhook.request=Petición settings.webhook.request=Petición
settings.webhook.response=Respuesta settings.webhook.response=Respuesta
settings.webhook.headers=Encabezado settings.webhook.headers=Encabezado
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Cuerpo del mensaje settings.webhook.body=Cuerpo del mensaje
settings.webhook.err_cannot_parse_payload_url=No se puede analizar la URL de payload: %v
settings.webhook.url_resolved_to_blocked_local_address=La URL de payload se ha resuelto a una dirección de red local que está implícitamente bloqueada.
settings.githooks_desc=Los Git Hooks son una funcionalidad del propio Git, puedes editar los ficheros de los hooks soportados en la siguiente lista para aplicar operaciones personalizadas. settings.githooks_desc=Los Git Hooks son una funcionalidad del propio Git, puedes editar los ficheros de los hooks soportados en la siguiente lista para aplicar operaciones personalizadas.
settings.githook_edit_desc=Si el hook no está activo, se mostrará contenido de ejemplo. Dejar el contenido vacío deshabilitará este hook. settings.githook_edit_desc=Si el hook no está activo, se mostrará contenido de ejemplo. Dejar el contenido vacío deshabilitará este hook.
settings.githook_name=Nombre del Hook settings.githook_name=Nombre del Hook
@@ -801,7 +825,7 @@ settings.add_webhook_desc=Enviaremos una petición <code>POST</code> a la siguie
settings.payload_url=URL de Payload settings.payload_url=URL de Payload
settings.content_type=Tipo de contenido settings.content_type=Tipo de contenido
settings.secret=Secreto settings.secret=Secreto
settings.secret_desc=Secret will be sent as SHA256 HMAC hex digest of payload via <code>X-Gogs-Signature</code> header. settings.secret_desc=El secreto será enviado como un payload SHA256 HMAC hex digest vía cabecera <code>X-Gogs-Signature</code>.
settings.slack_username=Nombre de usuario settings.slack_username=Nombre de usuario
settings.slack_icon_url=URL de icono settings.slack_icon_url=URL de icono
settings.slack_color=Color settings.slack_color=Color
@@ -819,10 +843,10 @@ settings.event_push=Push
settings.event_push_desc=Git push a un repositorio settings.event_push_desc=Git push a un repositorio
settings.event_issues=Incidencias settings.event_issues=Incidencias
settings.event_issues_desc=Incidencia abierta, cerrada, reabierta, editada, asignada, desasignada, etiqueta actualizada, etiqueta limpiada, hito marcado, o desmarcado,. settings.event_issues_desc=Incidencia abierta, cerrada, reabierta, editada, asignada, desasignada, etiqueta actualizada, etiqueta limpiada, hito marcado, o desmarcado,.
settings.event_issue_comment=Comentario de incidencia
settings.event_issue_comment_desc=Comentario de incidencias creado, editado o borrado.
settings.event_pull_request=Pull Request settings.event_pull_request=Pull Request
settings.event_pull_request_desc=Pull request abierto, cerrado, reabierto, editado, asignado, desasignado, etiqueta actualizada, etiqueta limpiada, hito marcado, hito desmarcado, o sincronizado. settings.event_pull_request_desc=Pull request abierto, cerrado, reabierto, editado, asignado, desasignado, etiqueta actualizada, etiqueta limpiada, hito marcado, hito desmarcado, o sincronizado.
settings.event_issue_comment=Comentario de incidencia
settings.event_issue_comment_desc=Comentario de incidencias creado, editado o borrado.
settings.event_release=Lanzamiento settings.event_release=Lanzamiento
settings.event_release_desc=Lanzamiento publicado en un repositorio. settings.event_release_desc=Lanzamiento publicado en un repositorio.
settings.active=Activo settings.active=Activo
@@ -834,8 +858,8 @@ settings.delete_webhook=Borrar Webhook
settings.recent_deliveries=Envíos Recientes settings.recent_deliveries=Envíos Recientes
settings.hook_type=Tipo de Hook settings.hook_type=Tipo de Hook
settings.add_slack_hook_desc=Añade integración con <a href="%s">Slack</a> a tu repositorio. settings.add_slack_hook_desc=Añade integración con <a href="%s">Slack</a> a tu repositorio.
settings.add_discord_hook_desc=Añade integración con <a href="%s">Slack</a> a tu repositorio. settings.add_discord_hook_desc=Añade integración con <a href="%s">Discord</a> a tu repositorio.
settings.add_dingtalk_hook_desc=Add <a href="%s">Dingtalk</a> integration to your repository. settings.add_dingtalk_hook_desc=Añade integración con <a href="%s">Dingtalk</a> a tu repositorio.
settings.slack_token=Token settings.slack_token=Token
settings.slack_domain=Dominio settings.slack_domain=Dominio
settings.slack_channel=Canal settings.slack_channel=Canal
@@ -852,6 +876,8 @@ settings.add_key_success=¡La nueva clave de desplieque '%s' ha sido creada con
settings.deploy_key_deletion=Eliminar Clave de Despliegue settings.deploy_key_deletion=Eliminar Clave de Despliegue
settings.deploy_key_deletion_desc=Al eliminar esta clave de despliegue se perderán el permiso de acceso a este repositorio con dicha clave. ¿Deseas continuar? settings.deploy_key_deletion_desc=Al eliminar esta clave de despliegue se perderán el permiso de acceso a este repositorio con dicha clave. ¿Deseas continuar?
settings.deploy_key_deletion_success=¡Clave de despliegue eliminada con éxito! settings.deploy_key_deletion_success=¡Clave de despliegue eliminada con éxito!
settings.description_desc=Descripción del repositorio. Longitud máxima de 512 caracteres.
settings.description_length=Caracteres disponibles
diff.browse_source=Explorar el Código diff.browse_source=Explorar el Código
diff.parent=padre diff.parent=padre
@@ -916,9 +942,8 @@ team_name_helper=Utiliza este nombre para mencionar a este equipo en las convers
team_desc_helper=¿En qué consiste este equipo? team_desc_helper=¿En qué consiste este equipo?
team_permission_desc=¿Qué nivel de permisos debería tener este equipo? team_permission_desc=¿Qué nivel de permisos debería tener este equipo?
form.name_reserved=El nombre de la organización '%s' está reservado. form.name_not_allowed=El nombre de la organización o patrón %q no está permitido.
form.name_pattern_not_allowed=El patrón de nombre de la organización '%s' no está permitido. form.team_name_not_allowed=El nombre del equipo o patrón %q no está permitido.
form.team_name_reserved=El nombre de equipo '%s' está reservado.
settings=Configuración settings=Configuración
settings.options=Opciones settings.options=Opciones
@@ -990,12 +1015,19 @@ first_page=Primera
last_page=Última last_page=Última
total=Total: %d total=Total: %d
dashboard.build_info=Build Information
dashboard.app_ver=Versión de la aplicación
dashboard.git_version=Versión de Git
dashboard.go_version=Versión de Go
dashboard.build_time=Tiempo de compilación
dashboard.build_commit=Build commit
dashboard.statistic=Estadísticas dashboard.statistic=Estadísticas
dashboard.operations=Operaciones dashboard.operations=Operaciones
dashboard.system_status=Estado del Monitor del Sistema dashboard.system_status=Estado del Monitor del Sistema
dashboard.statistic_info=La base de datos de Gogs contiene <b>%d</b> usuarios, <b>%d</b> organizaciones, <b>%d</b> claves públicas, <b>%d</b> repositorios, <b>%d</b> vigilados, <b>%d</b> destacados, <b>%d</b> acciones, <b>%d</b> accesos, <b>%d</b> incidencias, <b>%d</b> comentarios, <b>%d</b> cuentas de redes sociales, <b>%d</b> seguidores, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> fuentes de login, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> etiquetas, <b>%d</b> hooks, <b>%d</b> equipos, <b>%d</b> tareas actualizadas, <b>%d</b> adjuntos. dashboard.statistic_info=La base de datos de Gogs contiene <b>%d</b> usuarios, <b>%d</b> organizaciones, <b>%d</b> claves públicas, <b>%d</b> repositorios, <b>%d</b> vigilados, <b>%d</b> destacados, <b>%d</b> acciones, <b>%d</b> accesos, <b>%d</b> incidencias, <b>%d</b> comentarios, <b>%d</b> cuentas de redes sociales, <b>%d</b> seguidores, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> fuentes de login, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> etiquetas, <b>%d</b> hooks, <b>%d</b> equipos, <b>%d</b> tareas actualizadas, <b>%d</b> adjuntos.
dashboard.operation_name=Nombre de la operación dashboard.operation_name=Nombre de la operación
dashboard.operation_switch=Interruptor dashboard.operation_switch=Interruptor
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Ejecutar dashboard.operation_run=Ejecutar
dashboard.clean_unbind_oauth=Limpiar solicitudes de OAuth sin confirmar dashboard.clean_unbind_oauth=Limpiar solicitudes de OAuth sin confirmar
dashboard.clean_unbind_oauth_success=Las solicitudes de OAuth sin confirmar se han eliminado correctamente. dashboard.clean_unbind_oauth_success=Las solicitudes de OAuth sin confirmar se han eliminado correctamente.
@@ -1009,8 +1041,8 @@ dashboard.git_gc_repos=Ejecutar la recolección de basura en los repositorios
dashboard.git_gc_repos_success=Todos los repositorios han ejecutado correctamente el recolector de basuras. dashboard.git_gc_repos_success=Todos los repositorios han ejecutado correctamente el recolector de basuras.
dashboard.resync_all_sshkeys=Reescribir el fichero '.ssh/authorized_keys'(atención: se perderán las claves que no pertenezcan a Gogs) dashboard.resync_all_sshkeys=Reescribir el fichero '.ssh/authorized_keys'(atención: se perderán las claves que no pertenezcan a Gogs)
dashboard.resync_all_sshkeys_success=Todas las claves públicas se han reescrito correctamente. dashboard.resync_all_sshkeys_success=Todas las claves públicas se han reescrito correctamente.
dashboard.resync_all_hooks=Resync pre-receive, update and post-receive hooks of all repositories dashboard.resync_all_hooks=Resincroniza los "hooks" de pre-recepción, actualización y post-recepción en todos los repositorios
dashboard.resync_all_hooks_success=All repositories' pre-receive, update and post-receive hooks have been resynced successfully. dashboard.resync_all_hooks_success=Se han vuelto a sincronizar todos los "hooks" de pre-recepción, actualización y post-recepción de los repositorios con éxito.
dashboard.reinit_missing_repos=Reinicializar todos los registros del repositorio que tienen archivos Git eliminados dashboard.reinit_missing_repos=Reinicializar todos los registros del repositorio que tienen archivos Git eliminados
dashboard.reinit_missing_repos_success=Todos los registros del repositorio con archivos Git eliminados han sido reinicializados con éxito. dashboard.reinit_missing_repos_success=Todos los registros del repositorio con archivos Git eliminados han sido reinicializados con éxito.
@@ -1087,11 +1119,12 @@ repos.stars=Estrellas
repos.issues=Incidencias repos.issues=Incidencias
repos.size=Tamaño repos.size=Tamaño
auths.auth_manage_panel=Panel de administración de autenticación auths.auth_sources=Fuentes de autentificación
auths.new=Añadir nuevo origen auths.new=Añadir nuevo origen
auths.name=Nombre auths.name=Nombre
auths.type=Tipo auths.type=Tipo
auths.enabled=Activo auths.enabled=Activo
auths.default=Por defecto
auths.updated=Actualizado auths.updated=Actualizado
auths.auth_type=Tipo de autenticación auths.auth_type=Tipo de autenticación
auths.auth_name=Nombre de autenticación auths.auth_name=Nombre de autenticación
@@ -1100,7 +1133,7 @@ auths.domain=Dominio
auths.host=Host auths.host=Host
auths.port=Puerto auths.port=Puerto
auths.bind_dn=Bind DN auths.bind_dn=Bind DN
auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s auths.bind_dn_helper=Puedes usar '%s' como marcador de posición para el nombre de usuario, ej. DOM\%s
auths.bind_password=Contraseña Bind auths.bind_password=Contraseña Bind
auths.bind_password_helper=Advertencia: La contraseña se almacena como texto plano. No utilice una cuenta con privilegios elevados. auths.bind_password_helper=Advertencia: La contraseña se almacena como texto plano. No utilice una cuenta con privilegios elevados.
auths.user_base=Base de búsqueda de usuarios auths.user_base=Base de búsqueda de usuarios
@@ -1111,10 +1144,10 @@ auths.attribute_name=Atributo nombre
auths.attribute_surname=Atributo apellido auths.attribute_surname=Atributo apellido
auths.attribute_mail=Atributo correo electrónico auths.attribute_mail=Atributo correo electrónico
auths.verify_group_membership=Verificar pertenencia a grupo auths.verify_group_membership=Verificar pertenencia a grupo
auths.group_search_base_dn=Group Search Base DN auths.group_search_base_dn=Base DN para la búsqueda de grupos
auths.group_filter=Filtro de grupo auths.group_filter=Filtro de grupo
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users auths.group_attribute_contain_user_list=Atributo de grupo que contiene la lista de usuarios
auths.user_attribute_listed_in_group=User Attribute Listed in Group auths.user_attribute_listed_in_group=Atributo de usuario listado en grupo
auths.attributes_in_bind=Buscar atributos en el contexto del Bind DN auths.attributes_in_bind=Buscar atributos en el contexto del Bind DN
auths.filter=Filtro de usuario auths.filter=Filtro de usuario
auths.admin_filter=Filtro de aministrador auths.admin_filter=Filtro de aministrador
@@ -1128,9 +1161,9 @@ auths.enable_tls=Habilitar cifrado TLS
auths.skip_tls_verify=Omitir la verificación TLS auths.skip_tls_verify=Omitir la verificación TLS
auths.pam_service_name=Nombre del Servicio PAM auths.pam_service_name=Nombre del Servicio PAM
auths.enable_auto_register=Hablilitar Auto-Registro auths.enable_auto_register=Hablilitar Auto-Registro
auths.tips=Consejos
auths.edit=Editar la Configuración de Autenticación auths.edit=Editar la Configuración de Autenticación
auths.activated=Esta autenticación ha sido activada auths.activated=Esta autenticación ha sido activada
auths.default_auth=Esta autenticación es la fuente de inicio de sesión predeterminada
auths.new_success=¡La autenticación '%s' ha sido añadida con éxito! auths.new_success=¡La autenticación '%s' ha sido añadida con éxito!
auths.update_success=La configuración de autenticación ha sido actualizada con éxito. auths.update_success=La configuración de autenticación ha sido actualizada con éxito.
auths.update=Actualizar la configuración de autenticación auths.update=Actualizar la configuración de autenticación
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Esta autenticación será eliminada. ¿Deseas continuar?
auths.still_in_used=Este método de autentificación aún es utilizado por algunos usuarios, por favor elimine o convierta estos usuarios a otro tipo de autentificación. auths.still_in_used=Este método de autentificación aún es utilizado por algunos usuarios, por favor elimine o convierta estos usuarios a otro tipo de autentificación.
auths.deletion_success=¡La autenticación ha sido eliminada con éxito! auths.deletion_success=¡La autenticación ha sido eliminada con éxito!
auths.login_source_exist=El origen de autenticación '%s' ya existe. auths.login_source_exist=El origen de autenticación '%s' ya existe.
auths.github_api_endpoint=Endpoint de la API
config.not_set=(not set) config.not_set=(sin definir)
config.server_config=Configuración del servidor config.server_config=Configuración del servidor
config.app_name=Nombre de la Aplicación config.brand_name=Nombre de la marca
config.app_ver=Versión de la Aplicación
config.app_url=URL de la Aplicación
config.domain=Dominio
config.offline_mode=Modo Sin Conexión
config.disable_router_log=Deshabilitar Log del Router
config.run_user=Ejecutada como Usuario config.run_user=Ejecutada como Usuario
config.run_mode=Modo de ejecución config.run_mode=Modo de ejecución
config.git_version=Versión de Git config.server.external_url=URL externa
config.static_file_root_path=Ruta de los Ficheros Estáticos config.server.domain=Dominio
config.log_file_root_path=Ruta de los Ficheros de Log config.server.protocol=Protocolo
config.reverse_auth_user=Autenticación Inversa de Usuario config.server.http_addr=Dirección HTTP
config.server.http_port=Puerto HTTP
config.server.cert_file=Archivo de certificado
config.server.key_file=Archivo de claves
config.server.tls_min_version=Versión mínima de TLS
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Enable Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=Configuración SSH config.ssh_config=Configuración SSH
config.ssh_enabled=Habilitado config.ssh.enabled=Activado
config.ssh_start_builtin_server=Iniciar servidor integrado config.ssh.domain=Dominio expuesto
config.ssh_domain=Dominio config.ssh.port=Puerto expuesto
config.ssh_port=Puerto config.ssh.root_path=Root path
config.ssh_listen_port=Puerto de escucha config.ssh.keygen_path=Ruta del generador de claves
config.ssh_root_path=Ruta raíz config.ssh.key_test_path=Ruta de la clave de prueba
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Comprobación del tamaño mínimo de la clave
config.ssh_key_test_path=Ruta de la clave de prueba config.ssh.minimum_key_sizes=Tamaño mínimo de las claves
config.ssh_keygen_path=Ruta del generador de claves ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Reescribir "authorized_keys" al inicio
config.ssh_minimum_key_size_check=Tamaño mínimo de la clave de verificación config.ssh.start_builtin_server=Iniciar servidor integrado
config.ssh_minimum_key_sizes=Tamaños de clave mínimos config.ssh.listen_host=Host de escucha
config.ssh.listen_port=Puerto de escucha
config.ssh.server_ciphers=Cifrados del servidor
config.ssh.server_macs=MACs del servidor
config.ssh.server_algorithms=Algoritmos del servidor
config.repo_config=Configuración del repositorio config.repo_config=Configuración del repositorio
config.repo_root_path=Ruta del Repositorio config.repo.root_path=Ruta raíz
config.script_type=Tipo de Script config.repo.script_type=Script type
config.repo_force_private=Forzar Privado config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Limite máximo de creación config.repo.force_private=Force private
config.preferred_licenses=Licencias Preferidas config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Desactivar HTTP Git config.repo.preferred_licenses=Licencias preferidas
config.enable_local_path_migration=Activar la migración de la ruta de acceso Local config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Configuración de la Base de Datos config.db_config=Configuración de la Base de Datos
config.db_type=Tipo config.db.type=Tipo
config.db_host=Host config.db.host=Host
config.db_name=Nombre config.db.name=Nombre
config.db_user=Usuario config.db.schema=Esquema
config.db_ssl_mode=Modo SSL config.db.schema_helper=(sólo para "postgres")
config.db_ssl_mode_helper=(sólo para "postgres") config.db.user=Usuario
config.db_path=Ruta config.db.ssl_mode=SSL mode
config.db_path_helper=(para "sqlite3" y "tidb") config.db.ssl_mode_helper=(sólo para "postgres")
config.db.path=Ruta
config.db.path_helper=(sólo para "sqlite3")
config.db.max_open_conns=Número máximo de conexiones abiertas
config.db.max_idle_conns=Número máximo de conexiones inactivas
config.service_config=Configuración del servicio config.security_config=Security configuration
config.register_email_confirm=Solicitar Confirmación por Correo Electrónico config.security.login_remember_days=Login remember days
config.disable_register=Deshabilitar el Registro config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Mostrar Botón de Registro config.security.cookie_username=Username cookie
config.require_sign_in_view=Solicitar la Vista de Inicio de Sesión config.security.cookie_secure=Enable secure cookie
config.mail_notify=Notificación por Correo Electrónico config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Deshabilitar la comprobación de Tamaño Mínimo de Clave config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Activar Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Habilitar Vida del Código config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Restablecer Contraseña de Vida del Código
config.webhook_config=Configuración de Webhooks config.email_config=Email configuration
config.queue_length=Tamaño de Cola de Envío config.email.enabled=Enabled
config.deliver_timeout=Timeout de Entrega config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Omitir la Verificación TLS config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Archivo de claves
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Enviar correo de prueba
config.email.test_mail_failed=Error al enviar correo electrónico de prueba a '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Configuración del servidor de correo config.auth_config=Authentication configuration
config.mailer_enabled=Activado config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Desactivar HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Host config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Usuario config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Enviar email de prueba config.auth.disable_registration=Disable registration
config.test_mail_failed=Fallo al enviar el email de prueba a '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=El email de prueba ha sido enviado a '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=Configuración OAuth config.user_config=User configuration
config.oauth_enabled=Activado config.user.enable_email_notify=Enable email notification
config.cache_config=Configuración de la Caché
config.cache_adapter=Adaptador de la Caché
config.cache_interval=Intervalo de la Caché
config.cache_conn=Conexión de la Caché
config.session_config=Configuración de la Sesión config.session_config=Configuración de la Sesión
config.session_provider=Proveedor de la Sesión config.session.provider=Provider
config.provider_config=Configuración del Proveedor config.session.provider_config=Provider config
config.cookie_name=Nombre de la Cookie config.session.cookie_name=Cookie
config.enable_set_cookie=Activar Establecimiento de Cookie config.session.https_only=HTTPS only
config.gc_interval_time=Intervalo de tiempo del GC config.session.gc_interval=GC interval
config.session_life_time=Tiempo de Vida de la Sesión config.session.max_life_time=Max life time
config.https_only=Sólo HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Tiempo de Vida de la Cookie
config.cache_config=Configuración de la Caché
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=Configuración HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Configuración de Imagen config.picture_config=Configuración de Imagen
config.picture_service=Servicio de Imágen config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Desactivar Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Habilitar Avatares Federados config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Intervalo por defecto
config.webhook_config=Configuración de Webhooks
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Configuración de Git config.git_config=Configuración de Git
config.git_disable_diff_highlight=Desactivar resaltado de sintaxis del Diff config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Líneas de Diff máximas (por un solo archivo) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Carácteres de Diff máximos (para una sola línea) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Máximo de archivos de Diff (que se mostrarán) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Argumentos de GC config.git.gc_args=GC arguments
config.git_migrate_timeout=Tiempo de espera de migración config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Tiempo de espera de actualización de réplicas config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Tiempo de espera de operación de clones config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Tiempo de espera de operación de pull config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Tiempo de espera de operación de GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Configuración del Log config.log_config=Configuración del Log
config.log_file_root_path=Ruta de los Ficheros de Log
config.log_mode=Modo config.log_mode=Modo
config.log_options=Opciones config.log_options=Opciones
@@ -1284,7 +1383,6 @@ notices.delete_success=Las notificaciones del sistema han sido eliminadas satisf
[action] [action]
create_repo=creó el repositorio <a href="%s">%s</a> create_repo=creó el repositorio <a href="%s">%s</a>
fork_repo=ha hecho un Fork en <a href="%s">%s</a>
rename_repo=repositorio renombrado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a> rename_repo=repositorio renombrado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a>
commit_repo=hizo push a <a href="%[1]s/src/%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a> commit_repo=hizo push a <a href="%[1]s/src/%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a>
compare_commits=Ver comparación de estos %d commits compare_commits=Ver comparación de estos %d commits
@@ -1296,11 +1394,15 @@ comment_issue=`comentó en la incidencia <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`creado pull request <a href="%s/pulls/%s">%s#%[2]s</a>` create_pull_request=`creado pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
close_pull_request=`cerró el pull request <a href="%s/pulls/%s">%s#%[2]s</a>` close_pull_request=`cerró el pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
reopen_pull_request=`reabrió el pull request <a href="%s/pulls/%s">%s#%[2]s</a>` reopen_pull_request=`reabrió el pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
merge_pull_request=`fusionado pull request <a href="%s/pulls/%s">%s#%[2]s</a>` merge_pull_request=`fusionó el pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
create_branch=nueva rama <a href="%[1]s/src/%[2]s">%[3]s</a> creada en <a href="%[1]s">%[4]s</a> create_branch=nueva rama <a href="%[1]s/src/%[2]s">%[3]s</a> creada en <a href="%[1]s">%[4]s</a>
delete_branch=borrada rama <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=borrada rama <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=hizo push del tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a> push_tag=hizo push del tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a>
delete_tag=borrada etiqueta <code>%[2]s</code> en <a href="%[1]s">%[3]s</a> delete_tag=borrada etiqueta <code>%[2]s</code> en <a href="%[1]s">%[3]s</a>
fork_repo=ha hecho un Fork en <a href="%s">%s</a>
mirror_sync_push=sincronizados commits a <a href="%[1]s/src/%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a> desde la réplica
mirror_sync_create=sincronizada nueva referencia <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a> desde la réplica
mirror_sync_delete=sincronizada y eliminada referencia <code>%[2]s</code> en <a href="%[1]s">%[3]s</a> desde la réplica
[tool] [tool]
ago=hace ago=hace
@@ -1322,6 +1424,7 @@ months=%[2]s %[1]d meses
years=%[2]s %[1]d años years=%[2]s %[1]d años
raw_seconds=segundos raw_seconds=segundos
raw_minutes=minutos raw_minutes=minutos
raw_hours=hours
[dropzone] [dropzone]
default_message=Suéltelos aquí o pulse para cargar archivos. default_message=Suéltelos aquí o pulse para cargar archivos.

View File

@@ -9,7 +9,6 @@ sign_out=خروج
sign_up=ثبت‌نام کنید sign_up=ثبت‌نام کنید
register=ثبت نام register=ثبت نام
website=وب‌سایت website=وب‌سایت
version=نسخه
page=صفحه page=صفحه
template=قالب template=قالب
language=زبان language=زبان
@@ -44,17 +43,22 @@ issues=مسائل
cancel=لغو cancel=لغو
[status]
page_not_found=صفحه مورد نظر یافت نشد.
internal_server_error=خطای داخلی سرور
[install] [install]
install=نصب install=نصب
title=مراحل نصب برای اولین اجرا title=مراحل نصب برای اولین اجرا
docker_helper=اگر شما Gogs را با استفاده از Docker اجرا می‌کنید، لطفا قبل از انجام هرگونه تغییر این <a target="_blank" href="%s"> راهنما</a> را به دقت مطالعه فرمایید! docker_helper=اگر شما Gogs را با استفاده از Docker اجرا می‌کنید، لطفا قبل از انجام هرگونه تغییر این <a target="_blank" href="%s"> راهنما</a> را به دقت مطالعه فرمایید!
requite_db_desc=Gogs نیاز به MySQLِ یا PostgreSQL یا SQLite3 یا MSSQL یا TiDB دارد. requite_db_desc=Gogs جهت راه‌اندازی نیازمند یکی از پایگاه داده‌های MySQL، PostgreSql، SQLite3 و TIDB می‌باشد.
db_title=تنظیمات پایگاه داده db_title=تنظیمات پایگاه داده
db_type=نوع پایگاه داده db_type=نوع پایگاه داده
host=میزبان host=میزبان
user=کاربر user=کاربر
password=رمز عبور password=رمز عبور
db_name=نام پایگاه داده db_name=نام پایگاه داده
db_schema=Schema
db_helper=در صورت استفاده از MySQL لطفا از موتور INNODB و کد کاراکتری utf8_general_ci استفاده نمایید. db_helper=در صورت استفاده از MySQL لطفا از موتور INNODB و کد کاراکتری utf8_general_ci استفاده نمایید.
ssl_mode=حالت امن (SSL) ssl_mode=حالت امن (SSL)
path=مسیر path=مسیر
@@ -84,6 +88,7 @@ log_root_path=مسیر گزارش‌ها
log_root_path_helper=پوشه‌ای برای نوشتن فایل گزارش. log_root_path_helper=پوشه‌ای برای نوشتن فایل گزارش.
enable_console_mode=فعال کردن حالت کنسول enable_console_mode=فعال کردن حالت کنسول
enable_console_mode_popup=لاگ‌ها علاوه بر ذخیره در فایل، در کنسول نیز به نمایش در آید. enable_console_mode_popup=لاگ‌ها علاوه بر ذخیره در فایل، در کنسول نیز به نمایش در آید.
default_branch=Default Branch
optional_title=تنظیمات اختیاری optional_title=تنظیمات اختیاری
email_title=تنظیمات سرویس ایمیل email_title=تنظیمات سرویس ایمیل
@@ -122,6 +127,7 @@ run_user_not_match=کاربری را اجرا کنید که کاربر فعلی
smtp_host_missing_port=شماره پورت در آدرس میزبان SMTP وارد نشده است. smtp_host_missing_port=شماره پورت در آدرس میزبان SMTP وارد نشده است.
invalid_smtp_from=مقدار وارد شده در فرم SMTP معتبر نیست: %v invalid_smtp_from=مقدار وارد شده در فرم SMTP معتبر نیست: %v
save_config_failed=تنظیمات ذخیره نشد: %v save_config_failed=تنظیمات ذخیره نشد: %v
init_failed=بارگزاری برنامه به مشکل برخورد: %v
invalid_admin_setting=تنظیمات حساب مدیر نامعتبر است: %v invalid_admin_setting=تنظیمات حساب مدیر نامعتبر است: %v
install_success=خوش آمدی! ما خوشحالیم که شما Gogs را انتخاب کردید. لذت ببرید و مراقب خودتون باشید. install_success=خوش آمدی! ما خوشحالیم که شما Gogs را انتخاب کردید. لذت ببرید و مراقب خودتون باشید.
invalid_log_root_path=آدرس روت فایل لاگ صحیح نیست: %v invalid_log_root_path=آدرس روت فایل لاگ صحیح نیست: %v
@@ -151,6 +157,8 @@ register_hepler_msg=قبلا ثبت نام کردید؟ از اینجا وارد
social_register_hepler_msg=تا به حال حسابی داشته اید؟ به ما بپیوندید! social_register_hepler_msg=تا به حال حسابی داشته اید؟ به ما بپیوندید!
disable_register_prompt=با عرض پوزش، ثبت نام غیرفعال شده است. لطفا با مدیر سایت تماس بگیرید. disable_register_prompt=با عرض پوزش، ثبت نام غیرفعال شده است. لطفا با مدیر سایت تماس بگیرید.
disable_register_mail=با عرض پوزش، تایید ایمیل ثبت نام غیر فعال شده است. disable_register_mail=با عرض پوزش، تایید ایمیل ثبت نام غیر فعال شده است.
auth_source=محل احراز هویت
local=محلی
remember_me=مرا به خاطر بسپار remember_me=مرا به خاطر بسپار
forgot_password=فراموشی رمز عبور forgot_password=فراموشی رمز عبور
forget_password=رمز عبور خود را فراموش کرده‌اید؟ forget_password=رمز عبور خود را فراموش کرده‌اید؟
@@ -229,6 +237,7 @@ org_name_been_taken=نام سازمان قبلا استفاده شده است.
team_name_been_taken=نام تیم گرفته شده است. team_name_been_taken=نام تیم گرفته شده است.
email_been_used=آدرس ایمیل قبلا استفاده شده است. email_been_used=آدرس ایمیل قبلا استفاده شده است.
username_password_incorrect=نام کاربری یا رمز عبور صحیح نیست. username_password_incorrect=نام کاربری یا رمز عبور صحیح نیست.
auth_source_mismatch=محل احراز هویت انتخاب شده با کاربر در ارتباط نمی‌باشد.
enterred_invalid_repo_name=لطفا مطمئن شوید که نام مخزن وارد شده صحیح است. enterred_invalid_repo_name=لطفا مطمئن شوید که نام مخزن وارد شده صحیح است.
enterred_invalid_owner_name=لطفا مطمئن شوید که نام مالک وارد شده صحیح است. enterred_invalid_owner_name=لطفا مطمئن شوید که نام مالک وارد شده صحیح است.
enterred_invalid_password=لطفا مطمئن شوید که رمز عبور وارد شده صحیح است. enterred_invalid_password=لطفا مطمئن شوید که رمز عبور وارد شده صحیح است.
@@ -256,8 +265,7 @@ following=دنبال می کند
follow=دنبال کردن follow=دنبال کردن
unfollow=لغو دنبال کردن unfollow=لغو دنبال کردن
form.name_reserved=نام کاربری "%s" استفاده شده است. form.name_not_allowed=الگوی نام کاربری '%s' مجاز نیست.
form.name_pattern_not_allowed=الگوی نام کاربری '%s' مجاز نیست.
[settings] [settings]
profile=پروفایل profile=پروفایل
@@ -309,6 +317,7 @@ delete_email=حذف
email_deletion=حذف ایمیل email_deletion=حذف ایمیل
email_deletion_desc=حذف این آدرس ایمیل دیگر اطلاعات مربوط به آن را هم از حساب شما حذف می‌کند. آیا مایلید ادامه دهید؟ email_deletion_desc=حذف این آدرس ایمیل دیگر اطلاعات مربوط به آن را هم از حساب شما حذف می‌کند. آیا مایلید ادامه دهید؟
email_deletion_success=ایمیل با موفقیت حذف شد! email_deletion_success=ایمیل با موفقیت حذف شد!
email_deletion_primary=Cannot delete primary email address.
add_new_email=اضافه کردن آدرس ایمیل جدید add_new_email=اضافه کردن آدرس ایمیل جدید
add_email=اضافه کردن ایمیل add_email=اضافه کردن ایمیل
add_email_confirmation_sent=یک ایمیل تایید به آدرس %s ارسال شد, لطفا صندوق خود را حداکثر تا %d ساعت دیگر برای تکمیل فرایند تایید بررسی کنید. add_email_confirmation_sent=یک ایمیل تایید به آدرس %s ارسال شد, لطفا صندوق خود را حداکثر تا %d ساعت دیگر برای تکمیل فرایند تایید بررسی کنید.
@@ -350,6 +359,7 @@ two_factor_or_enter_secret=و یا رمز را پارد کنید:
two_factor_then_enter_passcode=سپس رمز عبور را وارد کنید: two_factor_then_enter_passcode=سپس رمز عبور را وارد کنید:
two_factor_verify=تایید‌کنید two_factor_verify=تایید‌کنید
two_factor_invalid_passcode=رمز عبور وارد شده معتبر نیست, لطفا دوباره سعی کنید! two_factor_invalid_passcode=رمز عبور وارد شده معتبر نیست, لطفا دوباره سعی کنید!
two_factor_reused_passcode=رمز وارد شده قبلا استفاده شده، لطفا یک عبارت دیگر را امتحان کنید!
two_factor_enable_error=فعال کردن احراز هویت دوگانه ناموفق بود: %v two_factor_enable_error=فعال کردن احراز هویت دوگانه ناموفق بود: %v
two_factor_enable_success=احراز هویت دوگانه با موفقیت برای حساب شما فعال شد! two_factor_enable_success=احراز هویت دوگانه با موفقیت برای حساب شما فعال شد!
two_factor_recovery_codes_title=کدهای بازیابی احراز هویت دوگانه two_factor_recovery_codes_title=کدهای بازیابی احراز هویت دوگانه
@@ -364,6 +374,7 @@ two_factor_disable_success=احراز هویت دوعاملی با موفقیت
manage_access_token=مدیریت توکن دسترسی شخصی manage_access_token=مدیریت توکن دسترسی شخصی
generate_new_token=تولید توکن جدید generate_new_token=تولید توکن جدید
tokens_desc=نشانه ایجاد شده که می تواند برای دسترسی به رابط های برنامه کاربردی Gogs مورد استفاده قرار گیرد. tokens_desc=نشانه ایجاد شده که می تواند برای دسترسی به رابط های برنامه کاربردی Gogs مورد استفاده قرار گیرد.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=هر توکن می تواند دسترسی کامل به حساب شما داشته باشد. new_token_desc=هر توکن می تواند دسترسی کامل به حساب شما داشته باشد.
token_name=نام توکن token_name=نام توکن
generate_token=تولید توکن generate_token=تولید توکن
@@ -372,6 +383,7 @@ delete_token=حذف
access_token_deletion=حذف توکن دسترسی شخصی access_token_deletion=حذف توکن دسترسی شخصی
access_token_deletion_desc=حذف این توکن دسترسی شخصی ، تمام دسترسی های مرتبط به برنامه را حذف خواهد کرد. آیا ادامه می دهید؟ access_token_deletion_desc=حذف این توکن دسترسی شخصی ، تمام دسترسی های مرتبط به برنامه را حذف خواهد کرد. آیا ادامه می دهید؟
delete_token_success=رمز دسترسی شخصی با موفقیت حذف شد! به روز رسانی نرم افزار خود را نیز فراموش نکنید. delete_token_success=رمز دسترسی شخصی با موفقیت حذف شد! به روز رسانی نرم افزار خود را نیز فراموش نکنید.
token_name_exists=نشان امنیتی با این نام از قبل وجود دارد
orgs.none=شما عضو هیچ سازمانی نیستید. orgs.none=شما عضو هیچ سازمانی نیستید.
orgs.leave_title=ترک یک سازمان orgs.leave_title=ترک یک سازمان
@@ -393,7 +405,9 @@ owner=صاحب
repo_name=نام مخزن repo_name=نام مخزن
repo_name_helper=نام خوب مخزن معمولا از کلمات کلیدی کوتاه و به یاد ماندنی و منحصر به فرد تشکیل شده است. repo_name_helper=نام خوب مخزن معمولا از کلمات کلیدی کوتاه و به یاد ماندنی و منحصر به فرد تشکیل شده است.
visibility=قابل مشاهده بودن visibility=قابل مشاهده بودن
unlisted=Unlisted
visiblity_helper=این مخزن <span class="ui red text"> خصوصی</span> است visiblity_helper=این مخزن <span class="ui red text"> خصوصی</span> است
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=مدیر سایت تمام مخازن جدید را ملزم کرده است که <span class="ui red text">خصوصی</span> باشند visiblity_helper_forced=مدیر سایت تمام مخازن جدید را ملزم کرده است که <span class="ui red text">خصوصی</span> باشند
visiblity_fork_helper=(تغییر این مقدار تمام انشعاب ها را تحت تاثیر می گذارد) visiblity_fork_helper=(تغییر این مقدار تمام انشعاب ها را تحت تاثیر می گذارد)
clone_helper=برای مشابه سازی نیاز به کمک دارید؟ این <a target="_blank" href="%s">راهنمایی</a> را ببینید! clone_helper=برای مشابه سازی نیاز به کمک دارید؟ این <a target="_blank" href="%s">راهنمایی</a> را ببینید!
@@ -419,10 +433,11 @@ mirror_last_synced=آخرین همگام سازی
watchers=دنبال‌کنندگان watchers=دنبال‌کنندگان
stargazers=ستاره شناسان stargazers=ستاره شناسان
forks=انشعاب ها forks=انشعاب ها
repo_description_helper=توضیحات مخرن. حداکثر طول ۵۱۲ کاراکتر.
repo_description_length=کاراکترهای موجود
form.reach_limit_of_creation=مخزن های دارنده حساب به حداکثر تعداد مجاز %d رسیده است. form.reach_limit_of_creation=مخزن های دارنده حساب به حداکثر تعداد مجاز %d رسیده است.
form.name_reserved=یک مخزن با نام '%s' از قبل وجود دارد. form.name_not_allowed=الگو یا نام مخزن %s مجاز نیست.
form.name_pattern_not_allowed=ساختار '%s' برای نام مخزن مجاز نیست.
need_auth=نیاز به مجوز need_auth=نیاز به مجوز
migrate_type=نوع انتقال migrate_type=نوع انتقال
@@ -433,6 +448,7 @@ migrate.clone_address_desc=آدرس می تواند از نوع HTTP/HTTPS/GIT
migrate.clone_address_desc_import_local=شما همچنین می توانید یک مخزن را با یک آدرس لوکال همگام سازی نمایید. migrate.clone_address_desc_import_local=شما همچنین می توانید یک مخزن را با یک آدرس لوکال همگام سازی نمایید.
migrate.permission_denied=شما مجاز به بارگزاری مخازن لوکال نیستید. migrate.permission_denied=شما مجاز به بارگزاری مخازن لوکال نیستید.
migrate.invalid_local_path=مسیر محلی غیر‌معتبر، این مسیر یا موجود نیست و یا یک دارکتوری نیست. migrate.invalid_local_path=مسیر محلی غیر‌معتبر، این مسیر یا موجود نیست و یا یک دارکتوری نیست.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=انتقال انجام نشد: %v migrate.failed=انتقال انجام نشد: %v
mirror_from=mirrorاز mirror_from=mirrorاز
@@ -480,6 +496,8 @@ branches.stale_branches=شاخه های قدیمی
branches.all=همه شاخه branches.all=همه شاخه
branches.updated_by=%[1]s به روزشده توسط %[2]s branches.updated_by=%[1]s به روزشده توسط %[2]s
branches.change_default_branch=تغییر شاخه ی پیش فرض branches.change_default_branch=تغییر شاخه ی پیش فرض
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=پرونده جدید editor.new_file=پرونده جدید
editor.upload_file=بارگذاری پرونده editor.upload_file=بارگذاری پرونده
@@ -516,6 +534,7 @@ editor.file_changed_while_editing=محتوای فایل از زمانی که ش
editor.file_already_exists=فایلی با نام %s از قبل در مخزن موجود است. editor.file_already_exists=فایلی با نام %s از قبل در مخزن موجود است.
editor.no_changes_to_show=تغییری برای نمایش وجود ندارد. editor.no_changes_to_show=تغییری برای نمایش وجود ندارد.
editor.fail_to_update_file=خطا در ساخت/به روزرسانی فایل %. خطای رخ داده : %v editor.fail_to_update_file=خطا در ساخت/به روزرسانی فایل %. خطای رخ داده : %v
editor.fail_to_delete_file=خطا در حذف فایل '%s' رخ داده است. خطای رخ داده %v
editor.add_subdir=افزودن زیرپوشه... editor.add_subdir=افزودن زیرپوشه...
editor.unable_to_upload_files=عدم موفقیت در آپلود فایل به '%s' با خطا: %v editor.unable_to_upload_files=عدم موفقیت در آپلود فایل به '%s' با خطا: %v
editor.upload_files_to_dir=آپلود فایل به '%s' editor.upload_files_to_dir=آپلود فایل به '%s'
@@ -636,6 +655,7 @@ pulls.cannot_auto_merge_desc=این pull request به علت تداخل نمی
pulls.cannot_auto_merge_helper=لطفا عملیات ادغام را به صورت دستی انجام دهید تا این تداخل برطرف شود. pulls.cannot_auto_merge_helper=لطفا عملیات ادغام را به صورت دستی انجام دهید تا این تداخل برطرف شود.
pulls.create_merge_commit=ایجاد یک کامیت برای ادغام سازی pulls.create_merge_commit=ایجاد یک کامیت برای ادغام سازی
pulls.rebase_before_merging=Rebase قبل از ادغام pulls.rebase_before_merging=Rebase قبل از ادغام
pulls.commit_description=توضیحات کامیت
pulls.merge_pull_request=ایجاد درخواست ادغام pulls.merge_pull_request=ایجاد درخواست ادغام
pulls.open_unmerged_pull_exists=`به علت باز بودن pull request (#%d) از مخزنی مشابه و به همراه اطلاعات ادغام مشابه که در انتظار ادغام می باشد، بازگشایی مجدد مقدور نیست` pulls.open_unmerged_pull_exists=`به علت باز بودن pull request (#%d) از مخزنی مشابه و به همراه اطلاعات ادغام مشابه که در انتظار ادغام می باشد، بازگشایی مجدد مقدور نیست`
pulls.delete_branch=حذف شاخه pulls.delete_branch=حذف شاخه
@@ -740,7 +760,7 @@ settings.tracker_issue_style=سبک نامگذاری Issue Tracker خارجی:
settings.tracker_issue_style.numeric=عددی settings.tracker_issue_style.numeric=عددی
settings.tracker_issue_style.alphanumeric=عددی و الفبایی settings.tracker_issue_style.alphanumeric=عددی و الفبایی
settings.tracker_url_format_desc=شما میتوانید از <code>{user} {repo} {index}</code> برای نام کاربری ، نام مخزن و صفحه ی اول بخش مسائل استفاده کنید. settings.tracker_url_format_desc=شما میتوانید از <code>{user} {repo} {index}</code> برای نام کاربری ، نام مخزن و صفحه ی اول بخش مسائل استفاده کنید.
settings.pulls_desc=فعال سازی pull request برای پذیرش همکاری های عمومی settings.pulls_desc=پول ریکویست ها را فعال کنید تا برای مخازن و شاخه ها مشارکت را قبول کنید
settings.pulls.ignore_whitespace=نادیده گرفتن تغییرات در فضاهای خالی settings.pulls.ignore_whitespace=نادیده گرفتن تغییرات در فضاهای خالی
settings.pulls.allow_rebase_merge=مجاز کردن rebase برای ادغام کردن کامیت ها settings.pulls.allow_rebase_merge=مجاز کردن rebase برای ادغام کردن کامیت ها
settings.danger_zone=منطقه خطر settings.danger_zone=منطقه خطر
@@ -763,7 +783,7 @@ settings.wiki_deletion_success=اطلاعات عمومی درباره مخزن
settings.delete=حذف این مخزن settings.delete=حذف این مخزن
settings.delete_desc=هنگامی که یک مخزن حذف میشود ، راه برگشتی وجود ندارد. لطفا مطمئن باشید. settings.delete_desc=هنگامی که یک مخزن حذف میشود ، راه برگشتی وجود ندارد. لطفا مطمئن باشید.
settings.delete_notices_1=این عملیات <strong>غیرقابل</strong> برگشت است. settings.delete_notices_1=این عملیات <strong>غیرقابل</strong> برگشت است.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- این عملیات تمامی اطلاعات این مخزن شامل اطلاعات گیت ، مسائل ، نظرات و دسترسی همکاران را برای همیشه پاک خواهد کرد.
settings.delete_notices_fork_1=پس از حذف ارتباط همه ی نسخه های برگرفته شده قطع خواهد شد. settings.delete_notices_fork_1=پس از حذف ارتباط همه ی نسخه های برگرفته شده قطع خواهد شد.
settings.deletion_success=مخزن با موفقیت حذف شد! settings.deletion_success=مخزن با موفقیت حذف شد!
settings.update_settings_success=تنظیمات مخزن با موفقیت به روز شد. settings.update_settings_success=تنظیمات مخزن با موفقیت به روز شد.
@@ -779,8 +799,10 @@ settings.collaborator_deletion_desc=این کاربر پس از حذف دیگر
settings.remove_collaborator_success=همكار حذف شد. settings.remove_collaborator_success=همكار حذف شد.
settings.search_user_placeholder=جستجوی کاربر... settings.search_user_placeholder=جستجوی کاربر...
settings.org_not_allowed_to_be_collaborator=سازمان ها را نمیتوان به عنوان همکار افزود. settings.org_not_allowed_to_be_collaborator=سازمان ها را نمیتوان به عنوان همکار افزود.
settings.add_webhook=اضافه‌کردن Webhook
settings.hooks_desc=Webhook ها مانند یک درخواست POST در HTTP اند. هرگاه رخدادی در gogs رخ می دهد، ما نوتیفیکیشنی برای هاستی که شما تعریف کرده اید ارسال می کنیم. برای اطلاعات بیشتر <a target="_blank" href="%s"> راهنمای webhook</a> را مطالعه کنید. settings.hooks_desc=Webhook ها مانند یک درخواست POST در HTTP اند. هرگاه رخدادی در gogs رخ می دهد، ما نوتیفیکیشنی برای هاستی که شما تعریف کرده اید ارسال می کنیم. برای اطلاعات بیشتر <a target="_blank" href="%s"> راهنمای webhook</a> را مطالعه کنید.
settings.webhooks.add_new=یک webhook جدید اضافه کن:
settings.webhooks.choose_a_type=نوع را انتخاب کن...
settings.add_webhook=اضافه‌کردن Webhook
settings.webhook_deletion=حذف Webhook settings.webhook_deletion=حذف Webhook
settings.webhook_deletion_desc=حذف این webhook باعث می شود که تمامی اطلاعات آن و تاریخچه ی تمام دلیوری های آن حذف شود. آیا ادامه میدهید؟ settings.webhook_deletion_desc=حذف این webhook باعث می شود که تمامی اطلاعات آن و تاریخچه ی تمام دلیوری های آن حذف شود. آیا ادامه میدهید؟
settings.webhook_deletion_success=Webhook با موفقیت حذف شد! settings.webhook_deletion_success=Webhook با موفقیت حذف شد!
@@ -794,6 +816,8 @@ settings.webhook.response=پاسخ
settings.webhook.headers=هدر settings.webhook.headers=هدر
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=بدنه settings.webhook.body=بدنه
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git Hook ها توسط تیم Git ایجاد شده اند، شما می توانید فایل hook های پشتیبانی شده را ویرایش کنید تا بتوانید عملیات دلخواه خودتان را انجام دهید. settings.githooks_desc=Git Hook ها توسط تیم Git ایجاد شده اند، شما می توانید فایل hook های پشتیبانی شده را ویرایش کنید تا بتوانید عملیات دلخواه خودتان را انجام دهید.
settings.githook_edit_desc=در صورتیکه hook غیرفعال باشد، محتوای نمونه ای موجود در آن ارائه خواهد شد. برای اینکه به کلی غیر فعال شود، محتوا را پاک کنید تا خالی شود. settings.githook_edit_desc=در صورتیکه hook غیرفعال باشد، محتوای نمونه ای موجود در آن ارائه خواهد شد. برای اینکه به کلی غیر فعال شود، محتوا را پاک کنید تا خالی شود.
settings.githook_name=نام hook settings.githook_name=نام hook
@@ -821,10 +845,10 @@ settings.event_push=درج کردن
settings.event_push_desc=درج در مخزن توسط گیت settings.event_push_desc=درج در مخزن توسط گیت
settings.event_issues=مسائل settings.event_issues=مسائل
settings.event_issues_desc=مسئله ای باز شده ، بسته شده، بازگشایی شده، ویرایش شده، به فردی تخصیص یافته، لغو تخصیص از فردی شده، برچسب آن به روزرسانی شده، برچسب آن پاک شده، نقطه عطف برای آن تعیین شده یا نقطه عطف از آن حذف شده. settings.event_issues_desc=مسئله ای باز شده ، بسته شده، بازگشایی شده، ویرایش شده، به فردی تخصیص یافته، لغو تخصیص از فردی شده، برچسب آن به روزرسانی شده، برچسب آن پاک شده، نقطه عطف برای آن تعیین شده یا نقطه عطف از آن حذف شده.
settings.event_issue_comment=نظرات در مسئله
settings.event_issue_comment_desc=نظر در مسئله ایجاد شد، ویرایش شد یا حذف شد.
settings.event_pull_request=درخواست ادغام settings.event_pull_request=درخواست ادغام
settings.event_pull_request_desc=Pull request باز، بسته، بازگشایی شده، ویرایش شده، تخصیص داده به فردی، لغو تخصیص از فرد شده، برچسب آن به روز شده، برچسبی برای آن ساخته شده، نقطه عطف برای آن تعیین شده، نقطه عطف تعیین شده آن حذف شده، یا همگام سازی شده. settings.event_pull_request_desc=Pull request باز، بسته، بازگشایی شده، ویرایش شده، تخصیص داده به فردی، لغو تخصیص از فرد شده، برچسب آن به روز شده، برچسبی برای آن ساخته شده، نقطه عطف برای آن تعیین شده، نقطه عطف تعیین شده آن حذف شده، یا همگام سازی شده.
settings.event_issue_comment=نظرات در مسئله
settings.event_issue_comment_desc=نظر در مسئله ایجاد شد، ویرایش شد یا حذف شد.
settings.event_release=انتشار نسخه settings.event_release=انتشار نسخه
settings.event_release_desc=Release در مخزن منتشر شد. settings.event_release_desc=Release در مخزن منتشر شد.
settings.active=فعال settings.active=فعال
@@ -854,6 +878,8 @@ settings.add_key_success=کلیدDeploy جدید %s با موفقیت افزود
settings.deploy_key_deletion=حذف کلید Deploy settings.deploy_key_deletion=حذف کلید Deploy
settings.deploy_key_deletion_desc=با حذف کلید Deploy، تمام دسترسی ها به این مخزن از طریق این کلید از بین میرود. آیا ادامه می دهید؟ settings.deploy_key_deletion_desc=با حذف کلید Deploy، تمام دسترسی ها به این مخزن از طریق این کلید از بین میرود. آیا ادامه می دهید؟
settings.deploy_key_deletion_success=کلید Deploy با موفقیت حذف شد! settings.deploy_key_deletion_success=کلید Deploy با موفقیت حذف شد!
settings.description_desc=توضیحات مخرن. حداکثر طول ۵۱۲ کاراکتر.
settings.description_length=کاراکترهای موجود
diff.browse_source=فهرست منبع diff.browse_source=فهرست منبع
diff.parent=والد diff.parent=والد
@@ -918,9 +944,8 @@ team_name_helper=ما از این نام برای اشاره به این تیم
team_desc_helper=این تیم درکل در مورد چیست؟ team_desc_helper=این تیم درکل در مورد چیست؟
team_permission_desc=این تیم چه سطح دسترسی میتواند داشته باشد؟ team_permission_desc=این تیم چه سطح دسترسی میتواند داشته باشد؟
form.name_reserved=نام سازمان %s رزرو شده است. form.name_not_allowed=نام سازمان یا الگوی q% مجاز نیست.
form.name_pattern_not_allowed=الگوی نام سازمان به صورت "%s" مجاز نیست. form.team_name_not_allowed=نام تیم یا الگوی %q مجاز نیست.
form.team_name_reserved=نام تیم "%s" رزرو شده است.
settings=تنظيمات settings=تنظيمات
settings.options=گزینه‌‌‌‌‌‌ها settings.options=گزینه‌‌‌‌‌‌ها
@@ -992,12 +1017,19 @@ first_page=اولین
last_page=آخرين last_page=آخرين
total=مجموع: %d total=مجموع: %d
dashboard.build_info=اطلاعات ساخت
dashboard.app_ver=نسخه برنامه
dashboard.git_version=نسخه‌ی Git
dashboard.go_version=نسخه‌ی Go
dashboard.build_time=زمان ساخت
dashboard.build_commit=کامیت ساخت
dashboard.statistic=آمار dashboard.statistic=آمار
dashboard.operations=عملیات dashboard.operations=عملیات
dashboard.system_status=سیستم مانیتور وضعیت dashboard.system_status=سیستم مانیتور وضعیت
dashboard.statistic_info=دیتابیس gogs شامل <b>%d</b> کاربران, <b>%d</b> سازمان ها, <b>%d</b> کلید های عمومی, <b>%d</b> مخازن, <b>%d</b> مشاهده ها, <b>%d</b> ستاره دار ها, <b>%d</b> فعالیت ها, <b>%d</b> دسترسی ها, <b>%d</b> مسائل, <b>%d</b> نظرات, <b>%d</b> حساب ها کاربری شبکه های اجتماعی, <b>%d</b> دنیال کردن ها, <b>%d</b>mirror, <b>%d</b> ریلیز ها, <b>%d</b> نقاط ورود به سیستم, <b>%d</b> webhooks, <b>%d</b> نقاط عطف یا milestone ها, <b>%d</b> برچسب, <b>%d</b> hook وظایف, <b>%d</b> تیم, <b>%d</b> به روزرسانی ها وظایف افراد, <b>%d</b> پیوست هاست. dashboard.statistic_info=دیتابیس gogs شامل <b>%d</b> کاربران, <b>%d</b> سازمان ها, <b>%d</b> کلید های عمومی, <b>%d</b> مخازن, <b>%d</b> مشاهده ها, <b>%d</b> ستاره دار ها, <b>%d</b> فعالیت ها, <b>%d</b> دسترسی ها, <b>%d</b> مسائل, <b>%d</b> نظرات, <b>%d</b> حساب ها کاربری شبکه های اجتماعی, <b>%d</b> دنیال کردن ها, <b>%d</b>mirror, <b>%d</b> ریلیز ها, <b>%d</b> نقاط ورود به سیستم, <b>%d</b> webhooks, <b>%d</b> نقاط عطف یا milestone ها, <b>%d</b> برچسب, <b>%d</b> hook وظایف, <b>%d</b> تیم, <b>%d</b> به روزرسانی ها وظایف افراد, <b>%d</b> پیوست هاست.
dashboard.operation_name=نام عملیات dashboard.operation_name=نام عملیات
dashboard.operation_switch=سویچ dashboard.operation_switch=سویچ
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=اجرا dashboard.operation_run=اجرا
dashboard.clean_unbind_oauth=پاک کردن OAuthe های ناخواسته dashboard.clean_unbind_oauth=پاک کردن OAuthe های ناخواسته
dashboard.clean_unbind_oauth_success=تمامی oAuth های غیرمتصل با موفقیت حذف شدند. dashboard.clean_unbind_oauth_success=تمامی oAuth های غیرمتصل با موفقیت حذف شدند.
@@ -1089,11 +1121,12 @@ repos.stars=ستاره ها
repos.issues=مسائل repos.issues=مسائل
repos.size=اندازه repos.size=اندازه
auths.auth_manage_panel=پنل مدیریت سیستم احراز هویت auths.auth_sources=منابع احراز هویت
auths.new=اضافه کردن منبع جدید auths.new=اضافه کردن منبع جدید
auths.name=نام auths.name=نام
auths.type=نوع auths.type=نوع
auths.enabled=فعال شده auths.enabled=فعال شده
auths.default=پیش فرض
auths.updated=به روز رسانی شده auths.updated=به روز رسانی شده
auths.auth_type=نوع تأیید اعتبار auths.auth_type=نوع تأیید اعتبار
auths.auth_name=نام مجوز احراز هویت auths.auth_name=نام مجوز احراز هویت
@@ -1130,9 +1163,9 @@ auths.enable_tls=فعال کردن رمزگذاری TLS
auths.skip_tls_verify=صرف نظر از اعتبار سنجی TLS auths.skip_tls_verify=صرف نظر از اعتبار سنجی TLS
auths.pam_service_name=نام سرویس PAM auths.pam_service_name=نام سرویس PAM
auths.enable_auto_register=فعال سازی ثبت نام خودکار auths.enable_auto_register=فعال سازی ثبت نام خودکار
auths.tips=راهنمایی
auths.edit=ویرایش تنظیمات تأیید اعتبار auths.edit=ویرایش تنظیمات تأیید اعتبار
auths.activated=متد احراز هویت فعال شده است auths.activated=متد احراز هویت فعال شده است
auths.default_auth=این احراز هویت پیش فرض منبع ورود می باشد
auths.new_success=متد احرازهویت %s با موفقیت افزوده شد. auths.new_success=متد احرازهویت %s با موفقیت افزوده شد.
auths.update_success=تنظیمات سیستم احرازهویت با موفقیت به روز شد. auths.update_success=تنظیمات سیستم احرازهویت با موفقیت به روز شد.
auths.update=به روزرسانی تنظیمات سیستم احراز هویت auths.update=به روزرسانی تنظیمات سیستم احراز هویت
@@ -1142,120 +1175,186 @@ auths.delete_auth_desc=این سیستم احراز هویت حذف خواهد
auths.still_in_used=این متد اعتبار احرازهویت هنوز توسط برخی از کاربران در حال استفاده است، لطفا ابتدا این کاربران را حذف کنید یا متد احرازهویت آنان را تغییر دهید. auths.still_in_used=این متد اعتبار احرازهویت هنوز توسط برخی از کاربران در حال استفاده است، لطفا ابتدا این کاربران را حذف کنید یا متد احرازهویت آنان را تغییر دهید.
auths.deletion_success=متد احرازهویت با موفقیت حذف شد! auths.deletion_success=متد احرازهویت با موفقیت حذف شد!
auths.login_source_exist=مدخل لاگین %s قبلا موجود بوده است. auths.login_source_exist=مدخل لاگین %s قبلا موجود بوده است.
auths.github_api_endpoint=نشانه پایانی API
config.not_set=(تنظیم نشده) config.not_set=(تنظیم نشده)
config.server_config=پیکربندی سرور config.server_config=پیکربندی سرور
config.app_name=نام برنامه config.brand_name=نام برند
config.app_ver=نسخه برنامه
config.app_url=آدرس اینترنتی (URL) نرم‌افزار
config.domain=دامنه
config.offline_mode=حالت آفلاین
config.disable_router_log=غیرفعال کردن لاگ مسیریاب
config.run_user=کاربر در حال اجرا config.run_user=کاربر در حال اجرا
config.run_mode=حالت اجرا config.run_mode=حالت اجرا
config.git_version=نسخه‌ی Git config.server.external_url=آدرس خارجی
config.static_file_root_path=مسیر ریشه فایل استاتیک config.server.domain=دامنه
config.log_file_root_path=مسیر ریشه ی فایل لاگ config.server.protocol=پروتکل
config.reverse_auth_user=شیوه ی احرازهویت معکوس config.server.http_addr=آدرس HTTP
config.server.http_port=پورت HTTP
config.server.cert_file=فایل گواهی
config.server.key_file=فایل کلید
config.server.tls_min_version=کمترین نسخه TLS
config.server.unix_socket_permission=مجوز سوکت یونیکس
config.server.local_root_url=Local root URL
config.server.offline_mode=حالت آفلاین
config.server.disable_router_log=غیرفعال کردن لاگ مسیریاب
config.server.enable_gzip=فعال کردن Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=پیکربندی SSH config.ssh_config=پیکربندی SSH
config.ssh_enabled=فعال شده config.ssh.enabled=فعال شده
config.ssh_start_builtin_server=راه انداری سرور داخلی config.ssh.domain=Exposed domain
config.ssh_domain=دامنه config.ssh.port=Exposed port
config.ssh_port=پورت config.ssh.root_path=Root path
config.ssh_listen_port=گوش دادن به پورت config.ssh.keygen_path=Keygen path
config.ssh_root_path=مسیر ریشه config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=مسیر کلید تست config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=مسیر فایل ssh-keygen config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=بررسی حداقل طول کلید config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=حداقل اندازه‌ی کلید ها config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=پیکربندی مخزن config.repo_config=پیکربندی مخزن
config.repo_root_path=مسیر پوشه اصلی (روت) برای مخزن کد config.repo.root_path=Root path
config.script_type=نوع اسکریپت config.repo.script_type=Script type
config.repo_force_private=خصوصی سازی اجباری config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=محدودیت حداکثر ایجاد config.repo.force_private=Force private
config.preferred_licenses=مجوزهای پیشنهادی config.repo.max_creation_limit=Max creation limit
config.disable_http_git=غیرفعال کردنHTTP در Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=فعال سازی مسیر انتقال محلی config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=همروندی در واکشی کامیت config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=تنظیمات HTTP config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=تنظیمات پایگاه داده config.db_config=تنظیمات پایگاه داده
config.db_type=نوع config.db.type=Type
config.db_host=میزبان config.db.host=Host
config.db_name=نام config.db.name=Name
config.db_user=کاربر config.db.schema=Schema
config.db_ssl_mode=حالت SSL config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(تنها برای "postgres") config.db.user=User
config.db_path=مسیر config.db.ssl_mode=SSL mode
config.db_path_helper=(فقط برای "sqlite3" و "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=پیکربندی سرویس config.security_config=Security configuration
config.register_email_confirm=درخواست تایید ایمیل config.security.login_remember_days=Login remember days
config.disable_register=غیر فعال‌کردن ثبت نام config.security.cookie_remember_name=Remember cookie
config.show_registration_button=نشان دادن دکمه ثبت نام config.security.cookie_username=Username cookie
config.require_sign_in_view=اجبار کردن نمای ورود config.security.cookie_secure=Enable secure cookie
config.mail_notify=فعال‌سازی نوتیفکیشن ایمیل config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=غیر فعال کردن چک حداقل اندازه کلید config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=فعال‌کردن تصویر امنیتی config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=مدت زمان اعتبار کد config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=مدت زمان اعتبار کد بازنشانی پسورد
config.webhook_config=تنظیمات Webhook config.email_config=Email configuration
config.queue_length=طول صف config.email.enabled=Enabled
config.deliver_timeout=مهلت تحویل config.email.subject_prefix=Subject prefix
config.skip_tls_verify=صرف نظر از اعتبار سنجی TLS config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=پیکربندی سیستم ایمیلی config.auth_config=Authentication configuration
config.mailer_enabled=فعال شده config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=غیر فعال کردن HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=میزبان config.auth.require_email_confirm=Require email confirmation
config.mailer_user=کاربر config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=ارسال ایمیل تست config.auth.disable_registration=Disable registration
config.test_mail_failed=ارسال ایمیل ناموفق بود '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=ایمیل تست به "%s" ارسال شده است. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=پیکربندی OAuth config.user_config=User configuration
config.oauth_enabled=فعال شده config.user.enable_email_notify=Enable email notification
config.cache_config=پیکربندی cache
config.cache_adapter=آداپتور cache
config.cache_interval=وقفه cache
config.cache_conn=اتصال cache
config.session_config=پیکربندی Session ها config.session_config=پیکربندی Session ها
config.session_provider=منبع فراهم ساز Session config.session.provider=Provider
config.provider_config=پیکربندی سرویس دهنده config.session.provider_config=Provider config
config.cookie_name=نام کوکی config.session.cookie_name=Cookie
config.enable_set_cookie=فعال سازی تنظیم کردن کوکی config.session.https_only=HTTPS only
config.gc_interval_time=فاصله زمانی GC config.session.gc_interval=GC interval
config.session_life_time=طول عمر نشست config.session.max_life_time=Max life time
config.https_only=فقط HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=طول عمر کوکی
config.cache_config=پیکربندی cache
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=تنظیمات HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=تنظیمات تصویر config.picture_config=تنظیمات تصویر
config.picture_service=سرویس تصویر config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=غیر فعال کردن Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=فعال سازی آواتار مشترک config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=تنظیمات Webhook
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=پیکربندی Git config.git_config=پیکربندی Git
config.git_disable_diff_highlight=غیرفعال کردن برجسته سازی در Diff config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=حداکثر خط برای Diff (برای یک فایل) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=حداکثر کاراکتر در Diff (برای یک خط) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=حداکثر فایل های Diff (برای نمایش) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=آرگومان های GC config.git.gc_args=GC arguments
config.git_migrate_timeout=آستانه ی زمان در Migration config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=زمان آستانه در به روز رسانی Mirror config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=زمان آستانه ی عملیات Clone config.git.clone_timeout=Clone timeout
config.git_pull_timeout=زمان آستانه ی عملیات Pull config.git.pull_timeout=Pull timeout
config.git_gc_timeout=زمان آستانه ی عملیات GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=پیکربندی لاگ config.log_config=پیکربندی لاگ
config.log_file_root_path=مسیر ریشه ی فایل لاگ
config.log_mode=حالت config.log_mode=حالت
config.log_options=گزینه‌‌‌‌‌‌ها config.log_options=گزینه‌‌‌‌‌‌ها
@@ -1286,7 +1385,6 @@ notices.delete_success=اخطار های سیستم با موفقیت حذف ش
[action] [action]
create_repo=مخزن ایجاد شده <a href="%s"> %s</a> create_repo=مخزن ایجاد شده <a href="%s"> %s</a>
fork_repo=انشعاب مخزن به <a href="%s"> %s</a>
rename_repo=مخزن تغییر نام داد از <code>%[1]s</code> به <a href="%[2]s">%[3]s</a> rename_repo=مخزن تغییر نام داد از <code>%[1]s</code> به <a href="%[2]s">%[3]s</a>
commit_repo=پوش کردن به <a href="%[1]s/src/%[2]s">%[3]s</a> در <a href="%[1]s">%[4]s</a> commit_repo=پوش کردن به <a href="%[1]s/src/%[2]s">%[3]s</a> در <a href="%[1]s">%[4]s</a>
compare_commits=مشاهده مقایسه برای کامیت %d compare_commits=مشاهده مقایسه برای کامیت %d
@@ -1303,6 +1401,10 @@ create_branch=شاخه ی جدید <a href="%[1]s/src/%[2]s">%[3]s</a>در<a hre
delete_branch=شاخه ی حذف شده ی <code>%[2]s</code> در<a href="%[1]s">%[3]s</a> delete_branch=شاخه ی حذف شده ی <code>%[2]s</code> در<a href="%[1]s">%[3]s</a>
push_tag=تگ <a href="%s/src/%s">%[2]s</a>در <a href="%[1]s">%[3]s</a>پوش شد push_tag=تگ <a href="%s/src/%s">%[2]s</a>در <a href="%[1]s">%[3]s</a>پوش شد
delete_tag=برچسب <code>%[2]s</code> در <a href="%[1]s">%[3]s</a> حذف شده delete_tag=برچسب <code>%[2]s</code> در <a href="%[1]s">%[3]s</a> حذف شده
fork_repo=انشعاب مخزن به <a href="%s"> %s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=پیش ago=پیش
@@ -1324,6 +1426,7 @@ months=%d ماه %s
years=%d سال %s years=%d سال %s
raw_seconds=ثانیه raw_seconds=ثانیه
raw_minutes=دقیقه ها raw_minutes=دقیقه ها
raw_hours=ساعت
[dropzone] [dropzone]
default_message=فایل را در این محل رها کنید یا دکمه ی آپلود یا بارگزاری را فشار دهید. default_message=فایل را در این محل رها کنید یا دکمه ی آپلود یا بارگزاری را فشار دهید.

File diff suppressed because it is too large Load Diff

View File

@@ -1,4 +1,4 @@
app_desc=Un service Git auto-hébergé sans prise de tête app_desc=Un service Git auto-hébergé et indolore.
home=Accueil home=Accueil
dashboard=Tableau de bord dashboard=Tableau de bord
@@ -9,7 +9,6 @@ sign_out=Déconnexion
sign_up=Inscription sign_up=Inscription
register=S'inscrire register=S'inscrire
website=Site web website=Site web
version=Version
page=Page page=Page
template=Modèle template=Modèle
language=Langue language=Langue
@@ -29,7 +28,7 @@ mirror=Miroir
new_repo=Nouveau dépôt new_repo=Nouveau dépôt
new_migrate=Nouvelle migration new_migrate=Nouvelle migration
new_mirror=Nouveau miroir new_mirror=Nouveau miroir
new_fork=Nouveau fork new_fork=Nouveau dépôt séparé
new_org=Nouvelle organisation new_org=Nouvelle organisation
manage_org=Gérer les organisations manage_org=Gérer les organisations
admin_panel=Administration admin_panel=Administration
@@ -39,23 +38,28 @@ your_profile=Votre profil
your_settings=Vos paramètres your_settings=Vos paramètres
activities=Activités activities=Activités
pull_requests=Pull Requests pull_requests=Demandes d'admission
issues=Tickets issues=Tickets
cancel=Annuler cancel=Annuler
[status]
page_not_found=Page non trouvée
internal_server_error=Erreur interne du serveur
[install] [install]
install=Installation install=Installation
title=Instructions pour la première exécution title=Instructions pour la première exécution
docker_helper=Si vous exécutez Gogs grâce à Docker, merci de lire la <a target="_blank" href="%s">procédure</a> attentivement avant de modifier quoi que ce soit sur cette page ! docker_helper=Si vous exécutez Gogs au sein de Docker, lisez la <a target="_blank" href="%s">procédure</a> attentivement avant toute altération de cette page !
requite_db_desc=Gogs requiert MySQL, PostgreSQL, SQLite3, MSSQL ou TiDB. requite_db_desc=Gogs exige MySQL, PostgreSQL, SQLite3 or TiDB (via le protocole MySQL)
db_title=Paramètres de la base de données db_title=Paramètres de la base de données
db_type=Type de base de données db_type=Type de base de données
host=Hôte host=Hôte
user=Utilisateur user=Utilisateur
password=Mot de passe password=Mot de passe
db_name=Nom de base de données db_name=Nom de base de données
db_helper=Veuillez utiliser le moteur INNODB avec le jeu de caractères utf8_general_ci pour MySQL. db_schema=Schéma
db_helper=Employez le moteur INNODB pour MySQL avec l'encodage utf8_general_ci.
ssl_mode=Mode SSL ssl_mode=Mode SSL
path=Emplacement path=Emplacement
sqlite_helper=Le chemin du fichier de base de données SQLite3. <br>Utilisez un chemin absolu lorsque vous démarrez en tant que service. sqlite_helper=Le chemin du fichier de base de données SQLite3. <br>Utilisez un chemin absolu lorsque vous démarrez en tant que service.
@@ -63,13 +67,13 @@ err_empty_db_path=Le chemin de la base de données SQLite3 ne peut être vide.
no_admin_and_disable_registration=Vous ne pouvez pas désactiver l'enregistrement sans créer un compte administrateur. no_admin_and_disable_registration=Vous ne pouvez pas désactiver l'enregistrement sans créer un compte administrateur.
err_empty_admin_password=Le mot de passe du compte administrateur ne peut être vide. err_empty_admin_password=Le mot de passe du compte administrateur ne peut être vide.
general_title=Paramètres généraux de Gogs general_title=Réglages Généraux d'Application
app_name=Nom de l'application app_name=Nom de l'application
app_name_helper=Inscrivez fièrement le nom de votre organisation ici ! app_name_helper=Inscrivez fièrement le nom de votre organisation ici !
repo_path=Emplacement racine des dépôts repo_path=Chemin Racine des Dépôts
repo_path_helper=Tous les dépôts Git distants seront sauvegardés ici. repo_path_helper=Tous les dépôts Git distants seront sauvegardés ici.
run_user=Utilisateur système run_user=Utilisateur
run_user_helper=L'utilisateur doit avoir accès à la racine des dépôts et exécuter Gogs. run_user_helper=L'utilisateur doit avoir accès à la Racine des Dépôts et exécuter Gogs.
domain=Domaine domain=Domaine
domain_helper=Cela affecte les doublons d'URL SSH. domain_helper=Cela affecte les doublons d'URL SSH.
ssh_port=Port SSH ssh_port=Port SSH
@@ -84,6 +88,7 @@ log_root_path=Chemin des fichiers log
log_root_path_helper=Répertoire d'écriture des fichiers de log. log_root_path_helper=Répertoire d'écriture des fichiers de log.
enable_console_mode=Activer le mode Console enable_console_mode=Activer le mode Console
enable_console_mode_popup=En plus du mode fichier, également imprimer des journaux à la console. enable_console_mode_popup=En plus du mode fichier, également imprimer des journaux à la console.
default_branch=Branchepar défaut
optional_title=Paramètres facultatifs optional_title=Paramètres facultatifs
email_title=Paramètres du service de messagerie email_title=Paramètres du service de messagerie
@@ -122,6 +127,7 @@ run_user_not_match=L'utilisateur d'exécution saisi n'est pas l'utilisateur d'ex
smtp_host_missing_port=Le numéro de port est manquant dans l'adresse de l'Hôte SMTP. smtp_host_missing_port=Le numéro de port est manquant dans l'adresse de l'Hôte SMTP.
invalid_smtp_from=Le champ SMTP Provenant de n'est pas valide: %v invalid_smtp_from=Le champ SMTP Provenant de n'est pas valide: %v
save_config_failed=La sauvegarde de la configuration a échoué : %v save_config_failed=La sauvegarde de la configuration a échoué : %v
init_failed=L'initialisation de l'application a échoué.
invalid_admin_setting=Paramètres du compte administrateur invalides : %v invalid_admin_setting=Paramètres du compte administrateur invalides : %v
install_success=Bienvenue ! Nous sommes heureux que vous ayez choisi Gogs, amusez-vous et prenez soin de vous. install_success=Bienvenue ! Nous sommes heureux que vous ayez choisi Gogs, amusez-vous et prenez soin de vous.
invalid_log_root_path=L'emplacement racine des fichiers logs est invalide : %v invalid_log_root_path=L'emplacement racine des fichiers logs est invalide : %v
@@ -151,6 +157,8 @@ register_hepler_msg=Déjà enregistré ? Connectez-vous !
social_register_hepler_msg=Déjà enregistré ? Associez-le ! social_register_hepler_msg=Déjà enregistré ? Associez-le !
disable_register_prompt=Désolé, les enregistrements ont été désactivés. Veuillez contacter l'administrateur du site. disable_register_prompt=Désolé, les enregistrements ont été désactivés. Veuillez contacter l'administrateur du site.
disable_register_mail=Désolé, la confirmation par courriel des enregistrements a été désactivée. disable_register_mail=Désolé, la confirmation par courriel des enregistrements a été désactivée.
auth_source=Sources d'authentification
local=Locale
remember_me=Se souvenir de moi remember_me=Se souvenir de moi
forgot_password=Mot de passe oublié forgot_password=Mot de passe oublié
forget_password=Mot de passe oublié ? forget_password=Mot de passe oublié ?
@@ -229,6 +237,7 @@ org_name_been_taken=Nom d'organisation déjà pris.
team_name_been_taken=Nom d'équipe déjà pris. team_name_been_taken=Nom d'équipe déjà pris.
email_been_used=Adresse e-mail déjà utilisée. email_been_used=Adresse e-mail déjà utilisée.
username_password_incorrect=Nom d'utilisateur ou mot de passe incorrect. username_password_incorrect=Nom d'utilisateur ou mot de passe incorrect.
auth_source_mismatch=La source dauthentification sélectionnée nest pas associée à lutilisateur.
enterred_invalid_repo_name=Veuillez vérifier que le nom saisi du dépôt soit correct. enterred_invalid_repo_name=Veuillez vérifier que le nom saisi du dépôt soit correct.
enterred_invalid_owner_name=Veuillez vérifier que le nom du propriétaire saisi soit correct. enterred_invalid_owner_name=Veuillez vérifier que le nom du propriétaire saisi soit correct.
enterred_invalid_password=Veuillez vérifier que le mot de passe saisi soit correct. enterred_invalid_password=Veuillez vérifier que le mot de passe saisi soit correct.
@@ -256,8 +265,7 @@ following=Abonnements
follow=Suivre follow=Suivre
unfollow=Ne plus suivre unfollow=Ne plus suivre
form.name_reserved=Le nom '%s' est réservé. form.name_not_allowed=Le nom de l'utilisateur ou le schéma n'est pas autorisé
form.name_pattern_not_allowed=Motif '%s' interdit pour les noms d'utilisateur.
[settings] [settings]
profile=Profil profile=Profil
@@ -309,6 +317,7 @@ delete_email=Supprimer
email_deletion=Suppression de l'adresse e-mail email_deletion=Suppression de l'adresse e-mail
email_deletion_desc=Supprimer cette adresse e-mail supprimera les informations associées à votre compte. Voulez-vous continuer ? email_deletion_desc=Supprimer cette adresse e-mail supprimera les informations associées à votre compte. Voulez-vous continuer ?
email_deletion_success=L'adresse e-mail a été supprimée avec succès ! email_deletion_success=L'adresse e-mail a été supprimée avec succès !
email_deletion_primary=Impossible de supprimer l'adresse de courrier principale
add_new_email=Ajouter une nouvelle adresse e-mail add_new_email=Ajouter une nouvelle adresse e-mail
add_email=Ajouter un e-mail add_email=Ajouter un e-mail
add_email_confirmation_sent=Une nouvelle confirmation d'adresse e-mail a été envoyé à '%s', veuillez vérifier votre boîte de réception dans un délai de %d heures pour terminer le processus de confirmation. add_email_confirmation_sent=Une nouvelle confirmation d'adresse e-mail a été envoyé à '%s', veuillez vérifier votre boîte de réception dans un délai de %d heures pour terminer le processus de confirmation.
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Ou entrez la phrase secrète :
two_factor_then_enter_passcode=Puis entrez le mot de passe : two_factor_then_enter_passcode=Puis entrez le mot de passe :
two_factor_verify=Vérifier two_factor_verify=Vérifier
two_factor_invalid_passcode=Le mot de passe que vous avez entré n'est pas valide, veuillez réessayer. two_factor_invalid_passcode=Le mot de passe que vous avez entré n'est pas valide, veuillez réessayer.
two_factor_reused_passcode=Le mot de passe que vous avez entré a déjà été utilisé, veuillez en essayez un autre !
two_factor_enable_error=L'activation de l'authentification en deux étapes a échoué : %v two_factor_enable_error=L'activation de l'authentification en deux étapes a échoué : %v
two_factor_enable_success=L'authentification en deux étapes a été bien été activée pour votre compte. two_factor_enable_success=L'authentification en deux étapes a été bien été activée pour votre compte.
two_factor_recovery_codes_title=Codes de secours pour l'authentification en deux étapes two_factor_recovery_codes_title=Codes de secours pour l'authentification en deux étapes
@@ -362,14 +372,16 @@ two_factor_disable_success=L'authentification à deux facteurs a été désactiv
manage_access_token=Gérer les jetons d'accès personnels manage_access_token=Gérer les jetons d'accès personnels
generate_new_token=Générer le nouveau jeton generate_new_token=Générer le nouveau jeton
tokens_desc=Jetons, que vous avez généré, qui peuvent être utilisés pour accéder à l'API Gogs. tokens_desc=Jetons, que vous avez généré, qui peuvent être utilisés pour accéder à l'API Gogs.
access_token_tips=Le jeton d'accès personnel est employé soit comme nom d'utilisateur soit comme mot de passe. L'emploi du «x-access-token» comme nom d'utilisateur et le jeton d'accès personnel comme mot de passe est recommandé pour les applications Git
new_token_desc=Chaque Jeton donnera un accès complet à votre compte. new_token_desc=Chaque Jeton donnera un accès complet à votre compte.
token_name=Nom du jeton token_name=Nom du jeton
generate_token=Générer le jeton generate_token=Générer le jeton
generate_token_succees=Nouveau jeton d'accès a été généré avec succès ! Assurez-vous de copier votre nouveau jeton d'accès personnel maintenant. Vous ne serez pas en mesure de le revoir ! generate_token_succees=Nouveau jeton d'accès a été généré avec succès ! Assurez-vous de copier votre nouveau jeton d'accès personnel maintenant. Vous ne serez pas en mesure de le revoir !
delete_token=Supprimer delete_token=Supprimer
access_token_deletion=Suppression du jeton d'accès access_token_deletion=Suppression du jeton d'accès personnel
access_token_deletion_desc=Supprimer ce jeton d'accès supprimera tous les accès de l'application. Voulez-vous continuer ? access_token_deletion_desc=Supprimer ce jeton d'accès supprimera tous les accès de l'application. Voulez-vous continuer ?
delete_token_success=Le jeton d'accèsa été supprimé avec succès ! N'oubliez pas de mettre à jour vos applications. delete_token_success=Le jeton d'accès a été supprimé avec succès ! N'oubliez pas de mettre à jour vos applications.
token_name_exists=Un jeton avec le même nom existe déjà.
orgs.none=Vous n'êtes membre d'aucune organisation. orgs.none=Vous n'êtes membre d'aucune organisation.
orgs.leave_title=Quitter une organisation orgs.leave_title=Quitter une organisation
@@ -391,9 +403,11 @@ owner=Propriétaire
repo_name=Nom du dépôt repo_name=Nom du dépôt
repo_name_helper=Idéalement, le nom d'un dépot devrait être court, mémorable et <strong>unique</strong>. repo_name_helper=Idéalement, le nom d'un dépot devrait être court, mémorable et <strong>unique</strong>.
visibility=Visibilité visibility=Visibilité
unlisted=Non répertorié
visiblity_helper=Ce dépôt est <span class="ui red text"> privé</span> visiblity_helper=Ce dépôt est <span class="ui red text"> privé</span>
unlisted_helper=Ce dépôt <span class="ui red text">n'est pas répertorié</span>
visiblity_helper_forced=L'administrateur du site a forcé tous les nouveaux dépôts à être <span class="ui red text">privés</span> visiblity_helper_forced=L'administrateur du site a forcé tous les nouveaux dépôts à être <span class="ui red text">privés</span>
visiblity_fork_helper=(Les changement de cette valeur affecteront tous les forks) visiblity_fork_helper=(Les changements de cette valeur affecteront tous les forks)
clone_helper=Besoin d'aide pour dupliquer ? Visitez <a target="_blank" href="%s">l'aide</a> ! clone_helper=Besoin d'aide pour dupliquer ? Visitez <a target="_blank" href="%s">l'aide</a> !
fork_repo=Créer un fork du dépôt fork_repo=Créer un fork du dépôt
fork_from=Fork de fork_from=Fork de
@@ -417,12 +431,13 @@ mirror_last_synced=Dernière synchronisation
watchers=Observateurs watchers=Observateurs
stargazers=Stargazers stargazers=Stargazers
forks=Forks forks=Forks
repo_description_helper=Description du dépôt. 512 caractères maximum.
repo_description_length=Caractères disponibles
form.reach_limit_of_creation=Le propriétaire a atteint le nombre maximal de %d dépôts créés. form.reach_limit_of_creation=Le propriétaire a atteint le nombre maximal de %d dépôts créés.
form.name_reserved=Le nom de dépôt '%s' est réservé. form.name_not_allowed=Le nom de l'utilisateur ou le schéma n'est pas autorisé
form.name_pattern_not_allowed=Motif '%s' interdit pour les noms de dépôt.
need_auth=Nécessite une Autorisation need_auth=Nécessite une autorisation
migrate_type=Type de migration migrate_type=Type de migration
migrate_type_helper=Ce dépôt sera un <span class="text blue"> miroir</span> migrate_type_helper=Ce dépôt sera un <span class="text blue"> miroir</span>
migrate_repo=Migrer le dépôt migrate_repo=Migrer le dépôt
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Cela peut être une URL HTTP/HTTPS/GIT.
migrate.clone_address_desc_import_local=Vous êtes aussi autorisé à migrer un dépôt via un chemin local du serveur. migrate.clone_address_desc_import_local=Vous êtes aussi autorisé à migrer un dépôt via un chemin local du serveur.
migrate.permission_denied=Vous n'êtes pas autorisé à importer des dépôts locaux. migrate.permission_denied=Vous n'êtes pas autorisé à importer des dépôts locaux.
migrate.invalid_local_path=Chemin local non valide, non existant ou n'étant pas un dossier. migrate.invalid_local_path=Chemin local non valide, non existant ou n'étant pas un dossier.
migrate.clone_address_resolved_to_blocked_local_address=L'adresse de clonage correspond à une adresse réseau locale, qui est bloquée implicitement.
migrate.failed=Echec de migration: %v migrate.failed=Echec de migration: %v
mirror_from=miroir de mirror_from=miroir de
@@ -441,7 +457,7 @@ copy_link_error=Appuyez sur ⌘-C ou Ctrl-C pour copier
copied=Copié copied=Copié
unwatch=Ne plus suivre unwatch=Ne plus suivre
watch=Suivre watch=Suivre
unstar=Retirer le vote unstar=Retirer des favoris
star=Voter star=Voter
fork=Fork fork=Fork
@@ -469,7 +485,7 @@ file_raw=Raw
file_history=Historique file_history=Historique
file_view_raw=Voir le Raw file_view_raw=Voir le Raw
file_permalink=Lien permanent file_permalink=Lien permanent
file_too_large=Ce fichier est trop gros pour être afficher file_too_large=Ce fichier est trop gros pour être affiché
video_not_supported_in_browser=Votre navigateur ne supporte pas la balise video HTML5. video_not_supported_in_browser=Votre navigateur ne supporte pas la balise video HTML5.
branches.overview=Résumé branches.overview=Résumé
@@ -478,6 +494,8 @@ branches.stale_branches=Branches stagnantes
branches.all=Toutes les Branches branches.all=Toutes les Branches
branches.updated_by=Mise à jour %[1]s par %[2]s branches.updated_by=Mise à jour %[1]s par %[2]s
branches.change_default_branch=Changer la Branche par Défaut branches.change_default_branch=Changer la Branche par Défaut
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nouveau fichier editor.new_file=Nouveau fichier
editor.upload_file=Téléverser un fichier editor.upload_file=Téléverser un fichier
@@ -495,10 +513,10 @@ editor.filename_help=Pour ajouter un répertoire, il suffit de le taper puis d'a
editor.or=ou editor.or=ou
editor.cancel_lower=annuler editor.cancel_lower=annuler
editor.commit_changes=Commit les modifications editor.commit_changes=Commit les modifications
editor.add_tmpl=Ajouter '%s/<filename>' editor.add_tmpl=Ajout de '%s/<filename>'
editor.add=Ajouter '%s' editor.add=Ajout de '%s'
editor.update=Mettre à jour '%s' editor.update=Mise à jour de '%s'
editor.delete=Supprimer '%s' editor.delete=Suppression de '%s'
editor.commit_message_desc=Ajouter une optionnelle description détaillée... editor.commit_message_desc=Ajouter une optionnelle description détaillée...
editor.commit_directly_to_this_branch=Soumettre directement à la branche <strong class="branch-name">%s</strong>. editor.commit_directly_to_this_branch=Soumettre directement à la branche <strong class="branch-name">%s</strong>.
editor.create_new_branch=Créer une <strong>nouvelle branche</strong> pour cette validation et envoyer une nouvelle pull request. editor.create_new_branch=Créer une <strong>nouvelle branche</strong> pour cette validation et envoyer une nouvelle pull request.
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Le contenu du fichier à changé depuis que vo
editor.file_already_exists=La branche '%s' existe déjà dans ce dépôt. editor.file_already_exists=La branche '%s' existe déjà dans ce dépôt.
editor.no_changes_to_show=Il ny a aucun changement à afficher. editor.no_changes_to_show=Il ny a aucun changement à afficher.
editor.fail_to_update_file=Échec lors de la mise à jour/création du fichier '%s' avec l'erreur : %v editor.fail_to_update_file=Échec lors de la mise à jour/création du fichier '%s' avec l'erreur : %v
editor.fail_to_delete_file=Impossible de supprimer le fichier «%s» avec lerreur : %v
editor.add_subdir=Ajouter un sous-répertoire... editor.add_subdir=Ajouter un sous-répertoire...
editor.unable_to_upload_files=Échec lors de l'envoie du fichier '%s' avec l'erreur : %v editor.unable_to_upload_files=Échec lors de l'envoie du fichier '%s' avec l'erreur : %v
editor.upload_files_to_dir=Transférer les fichiers vers '%s' editor.upload_files_to_dir=Transférer les fichiers vers '%s'
@@ -620,7 +639,7 @@ pulls.nothing_merge_base=Il n'y a rien à comparer parce que les deux branches o
pulls.has_pull_request=`Il y a déjà une pull request entre ces deux cibles : <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>` pulls.has_pull_request=`Il y a déjà une pull request entre ces deux cibles : <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Créer une Pull Request pulls.create=Créer une Pull Request
pulls.title_desc=veut fusionner %[1]d commits à partir de <code>%[2]s</code> vers <code>%[3]s</code> pulls.title_desc=veut fusionner %[1]d commits à partir de <code>%[2]s</code> vers <code>%[3]s</code>
pulls.merged_title_desc=à fusionné %[1]d commits à partir de <code>%[2]s</code> vers <code>%[3]s</code> %[4]s pulls.merged_title_desc=a fusionné %[1]d commits à partir de <code>%[2]s</code> vers <code>%[3]s</code> %[4]s
pulls.tab_conversation=Conversation pulls.tab_conversation=Conversation
pulls.tab_commits=Commits pulls.tab_commits=Commits
pulls.tab_files=Fichiers modifiés pulls.tab_files=Fichiers modifiés
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Cette pull request ne peut être fusionnée automat
pulls.cannot_auto_merge_helper=Fusionner manuellement afin de résoudre les conflits. pulls.cannot_auto_merge_helper=Fusionner manuellement afin de résoudre les conflits.
pulls.create_merge_commit=Créer un commit de fusion pulls.create_merge_commit=Créer un commit de fusion
pulls.rebase_before_merging=Rebaser avant la fusion pulls.rebase_before_merging=Rebaser avant la fusion
pulls.commit_description=Description du commit
pulls.merge_pull_request=Fusionner la Pull Request pulls.merge_pull_request=Fusionner la Pull Request
pulls.open_unmerged_pull_exists=`Vous ne pouvez effectuer une réouverture car il y a déjà une pull-request ouverte (#%d) depuis le même dépôt avec les mêmes informations de fusion et est en attente de fusion.` pulls.open_unmerged_pull_exists=`Vous ne pouvez effectuer une réouverture car il y a déjà une pull-request ouverte (#%d) depuis le même dépôt avec les mêmes informations de fusion et est en attente de fusion.`
pulls.delete_branch=Supprimer la branche pulls.delete_branch=Supprimer la branche
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Style de nommage des bugs du tracker externe :
settings.tracker_issue_style.numeric=Numérique settings.tracker_issue_style.numeric=Numérique
settings.tracker_issue_style.alphanumeric=Alphanumérique settings.tracker_issue_style.alphanumeric=Alphanumérique
settings.tracker_url_format_desc=Vous pouvez utiliser l'espace réservé <code>{user} {repo} {index}</code> pour le nom d'utilisateur, le nom du dépôt et le numéro de bug. settings.tracker_url_format_desc=Vous pouvez utiliser l'espace réservé <code>{user} {repo} {index}</code> pour le nom d'utilisateur, le nom du dépôt et le numéro de bug.
settings.pulls_desc=Activer les pull requests pour accepter les contributions publiques settings.pulls_desc=Activer les pull requests pour accepter les contributions depuis des dépôts et des branches
settings.pulls.ignore_whitespace=Ignorer les changements quand ce sont des espaces settings.pulls.ignore_whitespace=Ignorer les changements quand ce sont des espaces
settings.pulls.allow_rebase_merge=Autoriser l'utilisation de rebase pour fusionner les validations settings.pulls.allow_rebase_merge=Autoriser l'utilisation de rebase pour fusionner les validations
settings.danger_zone=Zone de danger settings.danger_zone=Zone de danger
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Le dépôt de données wiki ont été effacés av
settings.delete=Supprimer ce dépôt settings.delete=Supprimer ce dépôt
settings.delete_desc=Attention, cette action est action irréversible. Soyez sûr de vous. settings.delete_desc=Attention, cette action est action irréversible. Soyez sûr de vous.
settings.delete_notices_1=- Cette opération <strong>ne peut pas </strong> être annulée. settings.delete_notices_1=- Cette opération <strong>ne peut pas </strong> être annulée.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Cette opération supprimera définitivement le dépôt, y compris les données Git, les tickets, les commentaires et les accès des collaborateurs.
settings.delete_notices_fork_1=-Tous les forks deviendront indépendants après l'effacement. settings.delete_notices_fork_1=-Tous les forks deviendront indépendants après l'effacement.
settings.deletion_success=Le dépôt a été supprimé avec succès! settings.deletion_success=Le dépôt a été supprimé avec succès!
settings.update_settings_success=Options mises à jour avec succès. settings.update_settings_success=Options mises à jour avec succès.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Cet utilisateur n'aura plus accès pour coll
settings.remove_collaborator_success=Collaborateur supprimé. settings.remove_collaborator_success=Collaborateur supprimé.
settings.search_user_placeholder=Rechercher un utilisateur... settings.search_user_placeholder=Rechercher un utilisateur...
settings.org_not_allowed_to_be_collaborator=Une organisation n'est pas autorisée à être ajoutée en tant que collaborateur. settings.org_not_allowed_to_be_collaborator=Une organisation n'est pas autorisée à être ajoutée en tant que collaborateur.
settings.add_webhook=Ajouter un Webhook
settings.hooks_desc=Les Webhooks sont des déclencheurs de POST HTTP . Lorsque qu'un événement se produit dans Gogs, une notification sera envoyée vers l'hôte cible préalablement spécifié. Apprenez-en davantage dans le <a target="_blank" href="%s">Guide des Webhooks</a>. settings.hooks_desc=Les Webhooks sont des déclencheurs de POST HTTP . Lorsque qu'un événement se produit dans Gogs, une notification sera envoyée vers l'hôte cible préalablement spécifié. Apprenez-en davantage dans le <a target="_blank" href="%s">Guide des Webhooks</a>.
settings.webhooks.add_new=Ajouter un nouveau rappel HTTP
settings.webhooks.choose_a_type=Choisis le type de...
settings.add_webhook=Ajouter un Webhook
settings.webhook_deletion=Supprimer le Webhook settings.webhook_deletion=Supprimer le Webhook
settings.webhook_deletion_desc=Supprimer ce webhook va supprimer ses informations et l'historique de livraison. Voulez-vous continuer ? settings.webhook_deletion_desc=Supprimer ce webhook va supprimer ses informations et l'historique de livraison. Voulez-vous continuer ?
settings.webhook_deletion_success=Le webhook a été supprimé avec succès ! settings.webhook_deletion_success=Le webhook a été supprimé avec succès !
@@ -792,6 +814,8 @@ settings.webhook.response=Réponse
settings.webhook.headers=Entêtes  settings.webhook.headers=Entêtes 
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Corps settings.webhook.body=Corps
settings.webhook.err_cannot_parse_payload_url=Impossible d'analyser l'URL : %v
settings.webhook.url_resolved_to_blocked_local_address=L'URL du contenu correspond à une adresse réseau locale qui est bloquée implicitement.
settings.githooks_desc=Les Hooks Git sont alimentés par Git lui même. Les Hooks compatibles sont modifiables dans la liste ci-dessous pour effectuer des opérations personnalisées. settings.githooks_desc=Les Hooks Git sont alimentés par Git lui même. Les Hooks compatibles sont modifiables dans la liste ci-dessous pour effectuer des opérations personnalisées.
settings.githook_edit_desc=Si un Hook est inactif, un exemple de contenu vous sera proposé. Un contenu laissé vide signifie un Hook inactif. settings.githook_edit_desc=Si un Hook est inactif, un exemple de contenu vous sera proposé. Un contenu laissé vide signifie un Hook inactif.
settings.githook_name=Nom du Hook settings.githook_name=Nom du Hook
@@ -819,10 +843,10 @@ settings.event_push=Push
settings.event_push_desc=Git push vers un dépôt settings.event_push_desc=Git push vers un dépôt
settings.event_issues=Tickets settings.event_issues=Tickets
settings.event_issues_desc=Ticket ouvert, fermé, réouvert, modifié, assigné, non-assigné, étiquette mise à jour, étiquette nettoyée, jalonnée, ou déjalonnée. settings.event_issues_desc=Ticket ouvert, fermé, réouvert, modifié, assigné, non-assigné, étiquette mise à jour, étiquette nettoyée, jalonnée, ou déjalonnée.
settings.event_issue_comment=Commentaire du ticket
settings.event_issue_comment_desc=Commentaire du ticket créé, modifié, ou supprimé.
settings.event_pull_request=Pull Request settings.event_pull_request=Pull Request
settings.event_pull_request_desc=Pull requests ouverte, fermée, réouverte, modifiée, assignée, non-assignée, étiquette mise à jour, étiquette nettoyée, jalonnée, déjalonnée, ou synchronisée. settings.event_pull_request_desc=Pull requests ouverte, fermée, réouverte, modifiée, assignée, non-assignée, étiquette mise à jour, étiquette nettoyée, jalonnée, déjalonnée, ou synchronisée.
settings.event_issue_comment=Commentaire du ticket
settings.event_issue_comment_desc=Commentaire du ticket créé, modifié, ou supprimé.
settings.event_release=Version publiée settings.event_release=Version publiée
settings.event_release_desc=Version publiée dans un dépôt. settings.event_release_desc=Version publiée dans un dépôt.
settings.active=Actif settings.active=Actif
@@ -852,6 +876,8 @@ settings.add_key_success=La nouvelle clé de déploiement '%s' a été ajoutée
settings.deploy_key_deletion=Supprimer la Clé de Déploiement settings.deploy_key_deletion=Supprimer la Clé de Déploiement
settings.deploy_key_deletion_desc=Supprimer cette clé de déploiement effacera tous les accès relatifs pour ce référentiel. Voulez-vous continuer ? settings.deploy_key_deletion_desc=Supprimer cette clé de déploiement effacera tous les accès relatifs pour ce référentiel. Voulez-vous continuer ?
settings.deploy_key_deletion_success=La clé de déploiement a été supprimée avec succès ! settings.deploy_key_deletion_success=La clé de déploiement a été supprimée avec succès !
settings.description_desc=Description du dépôt. 512 caractères maximum.
settings.description_length=Caractères disponibles
diff.browse_source=Parcourir la source diff.browse_source=Parcourir la source
diff.parent=Parent diff.parent=Parent
@@ -916,9 +942,8 @@ team_name_helper=Ce nom sera utilisé pour mentionner l'équipe dans les convers
team_desc_helper=Présentation de l'équipe team_desc_helper=Présentation de l'équipe
team_permission_desc=Quel niveau d'accès cette équipe devrait-elle posséder ? team_permission_desc=Quel niveau d'accès cette équipe devrait-elle posséder ?
form.name_reserved=Le nom d'organisation '%s' est réservé. form.name_not_allowed=Le nom de l'organisation ou le modèle n'est pas autorisé.
form.name_pattern_not_allowed=Motif '%s' interdit pour les noms d'organisation. form.team_name_not_allowed=Le nom de l'équipe ou le pattern %q n'est pas autorisé.
form.team_name_reserved=Le nom d'équipe « %s » est réservé.
settings=Paramètres settings=Paramètres
settings.options=Options settings.options=Options
@@ -935,7 +960,7 @@ settings.delete_prompt=Cela supprimera cette organisation définitivement. Cette
settings.confirm_delete_account=Confirmez la suppression settings.confirm_delete_account=Confirmez la suppression
settings.delete_org_title=Suppression d'organisation settings.delete_org_title=Suppression d'organisation
settings.delete_org_desc=Cette organisation sera définitivement supprimée. Continuer ? settings.delete_org_desc=Cette organisation sera définitivement supprimée. Continuer ?
settings.hooks_desc=Ajoute des vebhooks qui seront activés pour <strong>tous les dépôts</strong> de cette organisation. settings.hooks_desc=Ajoute des webhooks qui seront activés pour <strong>tous les dépôts</strong> de cette organisation.
members.membership_visibility=Visibilité des membres: members.membership_visibility=Visibilité des membres:
members.public=Public members.public=Public
@@ -990,12 +1015,19 @@ first_page=Première
last_page=Dernière last_page=Dernière
total=Total : %d total=Total : %d
dashboard.build_info=Informations sur la construction
dashboard.app_ver=Version de l'application
dashboard.git_version=Version de Git
dashboard.go_version=Version de Go
dashboard.build_time=Temps de compilation
dashboard.build_commit=Commit
dashboard.statistic=Statistiques dashboard.statistic=Statistiques
dashboard.operations=Opérations dashboard.operations=Opérations
dashboard.system_status=État du système dashboard.system_status=État du système
dashboard.statistic_info=La base de données Gogs contient <b>%d</b> utilisateurs, <b>%d</b> organisations, <b>%d</b> clés publiques, <b>%d</b> dépôts, <b>%d</b> surveillances de dépôts, <b>%d</b> votes, <b>%d</b> actions, <b>%d</b> accès, <b>%d</b> tickets, <b>%d</b> commentaires, <b>%d</b> comptes de réseaux sociaux, <b>%d</b> abonnements, <b>%d</b> miroirs, <b>%d</b> versions, <b>%d</b> connexions d'origine, <b>%d</b> webhooks, <b>%d</b> versions, <b>%d</b> labels, <b>%d</b> tâches hook, <b>%d</b> équipes, <b>%d</b> tâches de mise à jour, <b>%d</b> fichiers. dashboard.statistic_info=La base de données Gogs contient <b>%d</b> utilisateurs, <b>%d</b> organisations, <b>%d</b> clés publiques, <b>%d</b> dépôts, <b>%d</b> surveillances de dépôts, <b>%d</b> votes, <b>%d</b> actions, <b>%d</b> accès, <b>%d</b> tickets, <b>%d</b> commentaires, <b>%d</b> comptes de réseaux sociaux, <b>%d</b> abonnements, <b>%d</b> miroirs, <b>%d</b> versions, <b>%d</b> connexions d'origine, <b>%d</b> webhooks, <b>%d</b> versions, <b>%d</b> labels, <b>%d</b> tâches hook, <b>%d</b> équipes, <b>%d</b> tâches de mise à jour, <b>%d</b> fichiers.
dashboard.operation_name=Nom de l'Opération dashboard.operation_name=Nom de l'Opération
dashboard.operation_switch=Basculer dashboard.operation_switch=Basculer
dashboard.select_operation_to_run=Veuillez sélectionner l'opération à exécuter
dashboard.operation_run=Exécuter dashboard.operation_run=Exécuter
dashboard.clean_unbind_oauth=Nettoyer les associations OAuthes dashboard.clean_unbind_oauth=Nettoyer les associations OAuthes
dashboard.clean_unbind_oauth_success=Tous unbind OAuthes ont été supprimés avec succès. dashboard.clean_unbind_oauth_success=Tous unbind OAuthes ont été supprimés avec succès.
@@ -1087,11 +1119,12 @@ repos.stars=Votes
repos.issues=Tickets repos.issues=Tickets
repos.size=Taille repos.size=Taille
auths.auth_manage_panel=Panel d'administration des authentifications auths.auth_sources=Sources d'authentification
auths.new=Ajouter une nouvelle source d'authentification auths.new=Ajouter une nouvelle source d'authentification
auths.name=Nom auths.name=Nom
auths.type=Type auths.type=Type
auths.enabled=Activé auths.enabled=Activé
auths.default=Par défaut
auths.updated=Mis à jour auths.updated=Mis à jour
auths.auth_type=Type d'authentification auths.auth_type=Type d'authentification
auths.auth_name=Nom de l'authentification auths.auth_name=Nom de l'authentification
@@ -1128,9 +1161,9 @@ auths.enable_tls=Activer le Chiffrement TLS
auths.skip_tls_verify=Ne pas vérifier TLS auths.skip_tls_verify=Ne pas vérifier TLS
auths.pam_service_name=Nom du Service PAM auths.pam_service_name=Nom du Service PAM
auths.enable_auto_register=Connexion Automatique auths.enable_auto_register=Connexion Automatique
auths.tips=Conseils
auths.edit=Modifier les paramètres d'authentification auths.edit=Modifier les paramètres d'authentification
auths.activated=Authentification activée auths.activated=Authentification activée
auths.default_auth=Cette authentification est la source de connexion par défaut
auths.new_success=Nouvelle authentification «%s » a été ajoutée avec succès. auths.new_success=Nouvelle authentification «%s » a été ajoutée avec succès.
auths.update_success=Les paramètre d'authentification a été mis à jour avec succès. auths.update_success=Les paramètre d'authentification a été mis à jour avec succès.
auths.update=Mettre à jour les paramètres d'authentifications auths.update=Mettre à jour les paramètres d'authentifications
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Cette authentification va être supprimée. voulez-vous c
auths.still_in_used=Cette authentification est encore utilisée par d'autres utilisateurs, supprimez-les ou convertir ces utilisateurs vers un autre type de session, avant. auths.still_in_used=Cette authentification est encore utilisée par d'autres utilisateurs, supprimez-les ou convertir ces utilisateurs vers un autre type de session, avant.
auths.deletion_success=L'authentification a été supprimée avec succès ! auths.deletion_success=L'authentification a été supprimée avec succès !
auths.login_source_exist=La source de connexion « %s » existe déjà. auths.login_source_exist=La source de connexion « %s » existe déjà.
auths.github_api_endpoint=API Endpoint
config.not_set=(non défini) config.not_set=(non défini)
config.server_config=Configuration du Serveur config.server_config=Configuration du Serveur
config.app_name=Nom de l'application config.brand_name=Nom de la marque
config.app_ver=Version de l'application
config.app_url=URL de l'application
config.domain=Domaine
config.offline_mode=Mode hors-ligne
config.disable_router_log=Désactiver la Journalisation du Routeur
config.run_user=Utilisateur système config.run_user=Utilisateur système
config.run_mode=Mode d'Éxécution config.run_mode=Mode d'Éxécution
config.git_version=Version de Git config.server.external_url=URL externe
config.static_file_root_path=Chemin statique des fichiers racines config.server.domain=Domaine
config.log_file_root_path=Emplacement Racine du Fichier Journal config.server.protocol=Protocole
config.reverse_auth_user=Annuler l'Authentification de l'Utilisateur config.server.http_addr=Adresse HTTP
config.server.http_port=Port HTTP
config.server.cert_file=Fichier de certificat
config.server.key_file=Fichier de la clé
config.server.tls_min_version=Version minimale de TLS
config.server.unix_socket_permission=Autorisation du socket Unix
config.server.local_root_url=URL racine locale
config.server.offline_mode=Mode hors connexion
config.server.disable_router_log=Désactiver la journalisation du routeur
config.server.enable_gzip=Activer Gzip
config.server.app_data_path=Chemin des données de l'application
config.server.load_assets_from_disk=Charger les ressources depuis le disque
config.server.landing_url=URL de destination (collecte)
config.ssh_config=Configuration SSH config.ssh_config=Configuration SSH
config.ssh_enabled=Activé config.ssh.enabled=Activé
config.ssh_start_builtin_server=Démarrer le serveur intégré config.ssh.domain=Domaine exposé
config.ssh_domain=Domaine config.ssh.port=Port exposé
config.ssh_port=Port config.ssh.root_path=Emplacement racine
config.ssh_listen_port=Port d'écoute config.ssh.keygen_path=Chemin de la clé
config.ssh_root_path=Emplacement racine config.ssh.key_test_path=Chemin de test de la clé
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Vérification de la taille minimale des clés
config.ssh_key_test_path=Chemin de test des clés config.ssh.minimum_key_sizes=Taille minimale des clés
config.ssh_keygen_path=Chemin vers le générateur de clefs ("ssh-keygen") config.ssh.rewrite_authorized_keys_at_start=Réécriture de "authorized_keys" au démarrage
config.ssh_minimum_key_size_check=Vérification de la longueur de clé minimale config.ssh.start_builtin_server=Démarrer le serveur intégré
config.ssh_minimum_key_sizes=Tailles de clé minimales config.ssh.listen_host=Hôte en écoute
config.ssh.listen_port=Port d'écoute
config.ssh.server_ciphers=Suites de chiffrement
config.ssh.server_macs=Adresses MAC du serveur
config.ssh.server_algorithms=Algorithmes de serveur
config.repo_config=Configuration du dépôt config.repo_config=Configuration du dépôt
config.repo_root_path=Emplacement des Dépôts config.repo.root_path=Emplacement racine
config.script_type=Type de Script config.repo.script_type=Type de script
config.repo_force_private=Privé forcé config.repo.ansi_chatset=Jeu de caractères ANSI
config.max_creation_limit=Limite de création maximale config.repo.force_private=Forcer en tant que privé
config.preferred_licenses=Licences préférées config.repo.max_creation_limit=Limite de création
config.disable_http_git=Désactiver Git HTTP config.repo.preferred_licenses=Licences préférées
config.enable_local_path_migration=Activer la migration de chemin locale config.repo.disable_http_git=Désactiver Git HTTP
config.commits_fetch_concurrency=Concurrence des récupérations de commits config.repo.enable_local_path_migration=Activer la migration de chemin locale
config.repo.enable_raw_file_render_mode=Activer le mode de rendu des fichiers de manière brute
config.http_config=Configuration HTTP config.repo.commits_fetch_concurrency=Récupération simultanée des commits
config.http_access_control_allow_origin=Autoriser le partage daccès avec lorigine config.repo.editor.line_wrap_extensions=Extensions de retour à la ligne de l'éditeur
config.repo.editor.previewable_file_modes=Modes de prévisualisation des fichiers de l'éditeur
config.repo.upload.enabled=Publication activée
config.repo.upload.temp_path=Chemin du téléchargement temporaire
config.repo.upload.allowed_types=Types de publications autorisées
config.repo.upload.file_max_size=Taille maximale des fichiers envoyés
config.repo.upload.max_files=Limite sur les fichiers publiés
config.db_config=Configuration de la Base de Données config.db_config=Configuration de la Base de Données
config.db_type=Type config.db.type=Type
config.db_host=Hôte config.db.host=Serveur hôte
config.db_name=Nom config.db.name=Nom
config.db_user=Utilisateur config.db.schema=Schéma
config.db_ssl_mode=Mode SSL config.db.schema_helper=(pour "postgres" uniquement)
config.db_ssl_mode_helper=("postgres" uniquement) config.db.user=Utilisateur
config.db_path=Emplacement config.db.ssl_mode=Mode SSL
config.db_path_helper=(pour « sqlite3 » et « TIDB ») config.db.ssl_mode_helper=("postgres" uniquement)
config.db.path=Chemin
config.db.path_helper=(pour "sqlite3" seulement)
config.db.max_open_conns=Nombre maximum de connexions ouvertes
config.db.max_idle_conns=Nombre maximum de connexions inactives
config.service_config=Configuration du Service config.security_config=Configuration de sécurité
config.register_email_confirm=Nécessite une confirmation par e-mail config.security.login_remember_days=Rester connecté plusieurs jours
config.disable_register=Désactiver les inscriptions config.security.cookie_remember_name=Mémoriser le cookie
config.show_registration_button=Afficher le bouton d'enregistrement config.security.cookie_username=Cookie du nom d'utilisateur
config.require_sign_in_view=Connexion obligatoire pour visualiser config.security.cookie_secure=Activer les cookies sécurisés
config.mail_notify=Notifier par mail config.security.reverse_proxy_auth_user=Inverser l'en-tête d'authentification du proxy
config.disable_key_size_check=Désactiver la vérification de la taille de clé minimale config.security.enable_login_status_cookie=Activer le cookie d'état de connexion
config.enable_captcha=Activez le Captcha config.security.login_status_cookie_name=Cookie de statut de connexion
config.active_code_lives=Limites de Code Actif config.security.local_network_allowlist=liste des autorisations de réseau local
config.reset_password_code_lives=Réinitialiser le Mot De Passe des Limites de Code
config.webhook_config=Configuration Webhook config.email_config=Configuration de le-mail
config.queue_length=Longueur de la file d'attente config.email.enabled=Activé
config.deliver_timeout=Expiration d'Envoi config.email.subject_prefix=Préfixe du sujet
config.skip_tls_verify=Ne pas vérifier TLS config.email.host=Hôte
config.email.from=De:
config.email.user=Utilisateur
config.email.disable_helo=Désactiver HELO
config.email.helo_hostname=Nom dhôte HELO
config.email.skip_verify=Ignorer la vérification du certificat
config.email.use_certificate=Utiliser un certificat personnalisé
config.email.cert_file=Fichier de certificat
config.email.key_file=Fichier de la clé
config.email.use_plain_text=Utiliser le texte brut
config.email.add_plain_text_alt=Ajouter une alternative au texte brut
config.email.send_test_mail=Envoyer un e-mail de test
config.email.test_mail_failed=Impossible d'envoyer un e-mail de test à '%s' :
config.email.test_mail_sent=Un e-mail de test à été envoyé à '%s'.
config.mailer_config=Configuration du service de mail config.auth_config=Configuration de l'authentification
config.mailer_enabled=Activé config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Désactiver HELO config.auth.activate_code_lives=Activer les vies sur les codes
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Vies sur les codes de réinitialisation des mots de passes
config.mailer_host=Hôte config.auth.require_email_confirm=Nécessite une confirmation par e-mail
config.mailer_user=Utilisateur config.auth.require_sign_in_view=Connexion obligatoire pour visualiser
config.send_test_mail=Envoyer courriel de Test config.auth.disable_registration=Désactiver les inscriptions
config.test_mail_failed=Impossible d'envoyer un e-mail de test à '%s': %v config.auth.enable_registration_captcha=Activer le CAPTCHA à l'inscription
config.test_mail_sent=Un e-mail de test à été envoyé à '%s'. config.auth.enable_reverse_proxy_authentication=Activer l'authentification par proxy inversé
config.auth.enable_reverse_proxy_auto_registration=Activer l'enregistrement automatique du proxy inversé
config.auth.reverse_proxy_authentication_header=En-tête d'authentification du proxy inversé
config.oauth_config=Configuration OAuth config.user_config=Configuration de l'utilisateur
config.oauth_enabled=Activé config.user.enable_email_notify=Activer les notifications par e-mail
config.cache_config=Configuration du Cache
config.cache_adapter=Adaptateur du Cache
config.cache_interval=Intervales du Cache
config.cache_conn=Liaison du Cache
config.session_config=Configuration de session config.session_config=Configuration de session
config.session_provider=Fournisseur de session config.session.provider=Fournisseur
config.provider_config=Configuration du fournisseur config.session.provider_config=Configuration du fournisseur
config.cookie_name=Nom du cookie config.session.cookie_name=Cookie
config.enable_set_cookie=Activer les cookies config.session.https_only=HTTPS uniquement
config.gc_interval_time=Intervals GC config.session.gc_interval=Intervalle du GC
config.session_life_time=Durée des sessions config.session.max_life_time=Durée de vie maximale
config.https_only=HTTPS uniquement config.session.csrf_cookie_name=Cookie CSRF
config.cookie_life_time=Expiration du cookie
config.cache_config=Configuration du Cache
config.cache.adapter=Adaptateur
config.cache.interval=Intervalle du GC
config.cache.host=Serveur hôte
config.http_config=Configuration HTTP
config.http.access_control_allow_origin=Autoriser le partage daccès avec lorigine
config.attachment_config=Configuration des pièces jointes
config.attachment.enabled=Activé
config.attachment.path=Chemin
config.attachment.allowed_types=Types autorisés
config.attachment.max_size=Taille limite
config.attachment.max_files=Limite de fichiers
config.release_config=Configuration de la version
config.release.attachment.enabled=Pièces jointes activées
config.release.attachment.allowed_types=Types de pièces jointes autorisés
config.release.attachment.max_size=Limite de taille des pièces jointes
config.release.attachment.max_files=Limite du nombre de fichiers joints
config.picture_config=Configuration d'Image config.picture_config=Configuration d'Image
config.picture_service=Service d'Imagerie config.picture.avatar_upload_path=Chemin de téléchargement de l'avatar de l'utilisateur
config.disable_gravatar=Désactiver Gravatar config.picture.repo_avatar_upload_path=Chemin de téléchargement de l'avatar du référentiel de versions
config.enable_federated_avatar=Activer les avatars unifiés config.picture.gravatar_source=Origine Gravatar
config.picture.disable_gravatar=Désactiver Gravatar
config.picture.enable_federated_avatar=Activer les avatars unifiés
config.mirror_config=Configuration de mise en miroir
config.mirror.default_interval=Intervalle par défaut
config.webhook_config=Configuration Webhook
config.webhook.types=Types
config.webhook.deliver_timeout=Délai de livraison
config.webhook.skip_tls_verify=Ignorer la vérification TLS
config.git_config=Configuration de Git config.git_config=Configuration de Git
config.git_disable_diff_highlight=Désactiver la surbrillance syntaxique de Diff config.git.disable_diff_highlight=Désactiver la coloration syntaxique des différences
config.git_max_diff_lines=Lignes de Diff Max (pour un seul fichier) config.git.max_diff_lines=Limite de lignes différentes (pour un seul fichier)
config.git_max_diff_line_characters=Nombre max de caractères de Diff (pour une seule ligne) config.git.max_diff_line_characters=Limite de caractères différents (pour une seule ligne)
config.git_max_diff_files=Nombre max de fichiers de Diff (à afficher) config.git.max_diff_files=Limite de fichiers différents (pour une seule différence)
config.git_gc_args=Arguments de GC config.git.gc_args=Arguments GC
config.git_migrate_timeout=Délai imparti pour une migration config.git.migrate_timeout=Délai de migration dépassé
config.git_mirror_timeout=Délai imparti pour mettre à jour le miroir config.git.mirror_timeout=Délai de récupération du miroir dépassé
config.git_clone_timeout=Délai imparti pour l'opération "Clone" config.git.clone_timeout=Délai de clonage dépassé
config.git_pull_timeout=Délai imparti pour l'opération "Pull" config.git.pull_timeout=Délai de récupération des sources dépassé
config.git_gc_timeout=Délai imparti pour l'opération "GC" config.git.gc_timeout=GB délai expiré
config.lfs_config=Configuration LFS
config.lfs.storage=Espace de stockage
config.lfs.objects_path=Chemin d'accès des objets
config.log_config=Configuration du Journal config.log_config=Configuration du Journal
config.log_file_root_path=Emplacement Racine du Fichier Journal
config.log_mode=Mode config.log_mode=Mode
config.log_options=Options config.log_options=Options
@@ -1274,7 +1373,7 @@ notices.actions=Actions
notices.select_all=Tout Sélectionner notices.select_all=Tout Sélectionner
notices.deselect_all=Tous déselectionner notices.deselect_all=Tous déselectionner
notices.inverse_selection=Inverser la sélection notices.inverse_selection=Inverser la sélection
notices.delete_selected=Supprimé les éléments sélectionnés notices.delete_selected=Supprimer les éléments sélectionnés
notices.delete_all=Supprimer toutes les notifications notices.delete_all=Supprimer toutes les notifications
notices.type=Type notices.type=Type
notices.type_1=Dépôt notices.type_1=Dépôt
@@ -1284,7 +1383,6 @@ notices.delete_success=Notifications système supprimées avec succès.
[action] [action]
create_repo=a créé le dépôt <a href="%s">%s</a> create_repo=a créé le dépôt <a href="%s">%s</a>
fork_repo=a créé sa branche du dépôt vers <a href="%s">%s</a>
rename_repo=a rebaptisé le dépôt de <code>%[1]s</code> vers <a href="%[2]s">%[3]s</a> rename_repo=a rebaptisé le dépôt de <code>%[1]s</code> vers <a href="%[2]s">%[3]s</a>
commit_repo=a commité dans <a href="%[1]s/src/%[2]s">%[3]s</a> sur <a href="%[1]s">%[4]s</a> commit_repo=a commité dans <a href="%[1]s/src/%[2]s">%[3]s</a> sur <a href="%[1]s">%[4]s</a>
compare_commits=Comparer ces %d commits compare_commits=Comparer ces %d commits
@@ -1294,13 +1392,17 @@ close_issue=`tickets clos <a href="%s/issues/%s">%s#%[2]s</a>`
reopen_issue=`tickets ré-ouverts <a href="%s/issues/%s">%s#%[2]s</a>` reopen_issue=`tickets ré-ouverts <a href="%s/issues/%s">%s#%[2]s</a>`
comment_issue=`a commenté le problème <a href="%s/issues/%s">%s#%[2]s</a>` comment_issue=`a commenté le problème <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`pull request créée le <a href="%s/pulls/%s">%s#%[2]s</a>` create_pull_request=`pull request créée le <a href="%s/pulls/%s">%s#%[2]s</a>`
close_pull_request=`pull request fermé <a href="%s/pulls/%s">%s#%[2]s</a>` close_pull_request=`pull request fermée <a href="%s/pulls/%s">%s#%[2]s</a>`
reopen_pull_request=`pull request ré-ouverte <a href="%s/pulls/%s">%s#%[2]s</a>` reopen_pull_request=`pull request ré-ouverte <a href="%s/pulls/%s">%s#%[2]s</a>`
merge_pull_request=`pull request fusionné le <a href="%s/pulls/%s">%s#%[2]s</a>` merge_pull_request=`pull request fusionné le <a href="%s/pulls/%s">%s#%[2]s</a>`
create_branch=nouvelle branche créée <a href="%[1]s/src/%[2]s">%[3]s</a> sur <a href="%[1]s">%[4]s</a> create_branch=nouvelle branche créée <a href="%[1]s/src/%[2]s">%[3]s</a> sur <a href="%[1]s">%[4]s</a>
delete_branch=branche supprimée <code>%[2]s</code> sur <a href="%[1]s">%[3]s</a> delete_branch=branche supprimée <code>%[2]s</code> sur <a href="%[1]s">%[3]s</a>
push_tag=a soumis le tag <a href="%s/src/%s">%[2]s</a> sur <a href="%[1]s">%[3]s</a> push_tag=a soumis le tag <a href="%s/src/%s">%[2]s</a> sur <a href="%[1]s">%[3]s</a>
delete_tag=étiquette supprimée <code>%[2]s</code> sur <a href="%[1]s">%[3]s</a> delete_tag=étiquette supprimée <code>%[2]s</code> sur <a href="%[1]s">%[3]s</a>
fork_repo=a créé sa branche du dépôt vers <a href="%s">%s</a>
mirror_sync_push=a commité dans <a href="%[1]s/src/%[2]s">%[3]s</a> sur <a href="%[1]s">%[4]s</a>
mirror_sync_create=a synchronisé la nouvelle référence <a href="%s/src/%s">%[2]s</a> vers <a href="%[1]s">%[3]s</a> depuis le miroir
mirror_sync_delete=Référence synchronisés et supprimé <code>%[2]s</code> sur <a href="%[1]s">%[3]s</a>
[tool] [tool]
ago=il y a ago=il y a
@@ -1322,6 +1424,7 @@ months=%[2]s %[1]d mois
years=%[2]s %[1]d ans years=%[2]s %[1]d ans
raw_seconds=secondes raw_seconds=secondes
raw_minutes=minutes raw_minutes=minutes
raw_hours=heures
[dropzone] [dropzone]
default_message=Déposez les fichiers ici ou cliquez pour télécharger. default_message=Déposez les fichiers ici ou cliquez pour télécharger.

View File

@@ -9,7 +9,6 @@ sign_out=Cerrar sesión
sign_up=Rexistro sign_up=Rexistro
register=Rexistro register=Rexistro
website=Páxina web website=Páxina web
version=Versión
page=Páxina page=Páxina
template=Modelo template=Modelo
language=Idioma language=Idioma
@@ -44,22 +43,27 @@ issues=Incidencias
cancel=Cancelar cancel=Cancelar
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install] [install]
install=Instalación install=Instalación
title=Pasos da instalación por primeira vez title=Pasos da instalación por primeira vez
docker_helper=Se está executando Gogs usando Docker, por favor lea <a target="_blank" href="%s"> estas pautas</a> antes de cambiar nada nesta páxina! docker_helper=Se está executando Gogs usando Docker, por favor lea <a target="_blank" href="%s"> estas pautas</a> antes de cambiar nada nesta páxina!
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3, MSSQL or TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Configuración de base de datos db_title=Configuración de base de datos
db_type=Tipo de base de datos db_type=Tipo de base de datos
host=Host host=Host
user=Persoa usuaria user=Persoa usuaria
password=Contrasinal password=Contrasinal
db_name=Nome da base de datos db_name=Nome da base de datos
db_schema=Schema
db_helper=Por favor, empregue o motor INNODB coa configuración de caracteres utf8_general_ci para MySQL. db_helper=Por favor, empregue o motor INNODB coa configuración de caracteres utf8_general_ci para MySQL.
ssl_mode=Modo SSL ssl_mode=Modo SSL
path=Ruta path=Ruta
sqlite_helper=The file path of SQLite3 database. <br>Please use absolute path when you start as service. sqlite_helper=A ruta do ficheiro da base de datos SQLite3. <br> Utilice a ruta absoluta cando arrique o servicio.
err_empty_db_path=SQLite3 database path cannot be empty. err_empty_db_path=A ruta da base de datos SQLite3 non pode estar baleira.
no_admin_and_disable_registration=Non pode deshabilitar o rexistro sen crear unha conta de administrador. no_admin_and_disable_registration=Non pode deshabilitar o rexistro sen crear unha conta de administrador.
err_empty_admin_password=O contrasinal de administrador non pode estar baleiro. err_empty_admin_password=O contrasinal de administrador non pode estar baleiro.
@@ -74,16 +78,17 @@ domain=Dominio
domain_helper=Isto afecta ás URLs para clonar por SSH. domain_helper=Isto afecta ás URLs para clonar por SSH.
ssh_port=Porto SSH ssh_port=Porto SSH
ssh_port_helper=Número de porto do seu servidor SSH, déixeo en branco para desactivar SSH. ssh_port_helper=Número de porto do seu servidor SSH, déixeo en branco para desactivar SSH.
use_builtin_ssh_server=Use Builtin SSH Server use_builtin_ssh_server=Utilizar Builin en Sevidor SSH
use_builtin_ssh_server_popup=Start builtin SSH server for Git operations to distinguish from system SSH daemon. use_builtin_ssh_server_popup=Inicia o servidor SSH integrado para que as operacións de Git sexan distintas do demonio SSH do sistema.
http_port=Porto HTTP http_port=Porto HTTP
http_port_helper=Porto no que escoitará a aplicación. http_port_helper=Porto no que escoitará a aplicación.
app_url=URL da aplicación app_url=URL da aplicación
app_url_helper=Isto afecta ás URLs para clonar por HTTP/HTTPS e a algúns correos electrónicos. app_url_helper=Isto afecta ás URLs para clonar por HTTP/HTTPS e a algúns correos electrónicos.
log_root_path=Ruta do rexistro log_root_path=Ruta do rexistro
log_root_path_helper=Directorio onde almacenar os rexistros. log_root_path_helper=Directorio onde almacenar os rexistros.
enable_console_mode=Enable Console Mode enable_console_mode=Habilitar Modo Consola
enable_console_mode_popup=In addition to file mode, also print logs to console. enable_console_mode_popup=Ademáis do modo de ficheiro, tamén imprime os rexistros para a consola.
default_branch=Default Branch
optional_title=Configuración opcional optional_title=Configuración opcional
email_title=Configuración do servizo de correo email_title=Configuración do servizo de correo
@@ -119,9 +124,11 @@ sqlite3_not_available=A túa versión non soporta SQLite3, por favor, descarga o
invalid_db_setting=A configuración da base de datos non é correcta: %v invalid_db_setting=A configuración da base de datos non é correcta: %v
invalid_repo_path=A ruta da raíz do repositorio é inválida: %v invalid_repo_path=A ruta da raíz do repositorio é inválida: %v
run_user_not_match=A persoa usuaria que está executando a aplicación non é a persoa usuaria actual: %s -> %s run_user_not_match=A persoa usuaria que está executando a aplicación non é a persoa usuaria actual: %s -> %s
smtp_host_missing_port=SMTP Host is missing port in address. smtp_host_missing_port=Falta o porto do Host SMTP
invalid_smtp_from=O campo From do SMTP non é valido: %v invalid_smtp_from=O campo From do SMTP non é valido: %v
save_config_failed=Erro ao gardar a configuración: %v save_config_failed=Erro ao gardar a configuración: %v
init_failed=Failed to initialize application: %v
invalid_admin_setting=A configuración da conta de administración é inválida: %v invalid_admin_setting=A configuración da conta de administración é inválida: %v
install_success=Benvido/a! Estamos encantados de que escolleses Gogs, divírtete e cóidate. install_success=Benvido/a! Estamos encantados de que escolleses Gogs, divírtete e cóidate.
invalid_log_root_path=A ruta para os rexistros é inválida: %v invalid_log_root_path=A ruta para os rexistros é inválida: %v
@@ -151,6 +158,8 @@ register_hepler_msg=Xa tes unha conta? Inicia sesión!
social_register_hepler_msg=Xa tes unha conta? Enlázaa! social_register_hepler_msg=Xa tes unha conta? Enlázaa!
disable_register_prompt=Sentímolo, o rexistro está deshabilitado. Por favor, contacta co administrador do sitio. disable_register_prompt=Sentímolo, o rexistro está deshabilitado. Por favor, contacta co administrador do sitio.
disable_register_mail=Sentímolo. Os correos de confirmación de rexistro están deshabilitados. disable_register_mail=Sentímolo. Os correos de confirmación de rexistro están deshabilitados.
auth_source=Fonte de Autenticación
local=Configuración rexional
remember_me=Recórdame remember_me=Recórdame
forgot_password=Esquecín o meu contrasinal forgot_password=Esquecín o meu contrasinal
forget_password=Esqueciches o teu contrasinal? forget_password=Esqueciches o teu contrasinal?
@@ -169,13 +178,13 @@ reset_password_helper=Prema aquí para restablecer o seu contrasinal
password_too_short=A lonxitude do contrasinal non pode ser menor de 6. password_too_short=A lonxitude do contrasinal non pode ser menor de 6.
non_local_account=Contas que non son locais non poden cambiar os contrasinais a través de Gogs. non_local_account=Contas que non son locais non poden cambiar os contrasinais a través de Gogs.
login_two_factor=Two-factor Authentication login_two_factor=Autenticación en dous pasos
login_two_factor_passcode=Authentication Passcode login_two_factor_passcode=Código de Autenticación
login_two_factor_enter_recovery_code=Enter a two-factor recovery code login_two_factor_enter_recovery_code=Introduza o código de recuperación da verificación en dous pasos
login_two_factor_recovery=Two-factor Recovery login_two_factor_recovery=Recuperación en dous pasos
login_two_factor_recovery_code=Recovery Code login_two_factor_recovery_code=Codigo de Recuperación
login_two_factor_enter_passcode=Enter a two-factor passcode login_two_factor_enter_passcode=Introduza o código de acceso en dous pasos
login_two_factor_invalid_recovery_code=Recovery code has been used or does not valid. login_two_factor_invalid_recovery_code=O código de recuperación foi usado ou non é válido.
[mail] [mail]
activate_account=Por favor, activa a túa conta activate_account=Por favor, activa a túa conta
@@ -212,7 +221,7 @@ Content=Contido
require_error=` non pode estar baleiro.` require_error=` non pode estar baleiro.`
alpha_dash_error=` os caracteres deben ser alfanuméricos ou dash(-_).` alpha_dash_error=` os caracteres deben ser alfanuméricos ou dash(-_).`
alpha_dash_dot_error=` debe ser un carácter alfanumérivo válido, un guión alto ou baixo (-_) ou un signo de puntuación.` alpha_dash_dot_error=` debe ser un carácter alfanumérivo válido, un guión alto ou baixo (-_) ou un signo de puntuación.`
alpha_dash_dot_slash_error=` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error=` debe ser un carácter válido : numérico, alfabético, guión(-_) puntos ou barras.`
size_error=` debe ser de tamaño %s.` size_error=` debe ser de tamaño %s.`
min_size_error=` debe conter polo menos %s caracteres.` min_size_error=` debe conter polo menos %s caracteres.`
max_size_error=` debe conter como máximo %s caracteres.` max_size_error=` debe conter como máximo %s caracteres.`
@@ -229,6 +238,7 @@ org_name_been_taken=Xa existe unha organización con este nome.
team_name_been_taken=Xa existe un equipo con este nome. team_name_been_taken=Xa existe un equipo con este nome.
email_been_used=Este enderezo de correo electrónico xa está en uso. email_been_used=Este enderezo de correo electrónico xa está en uso.
username_password_incorrect=Nome de usuario ou contrasinal incorrectos. username_password_incorrect=Nome de usuario ou contrasinal incorrectos.
auth_source_mismatch=A fonte de autenticación seleccionada non está asociada co usuario.
enterred_invalid_repo_name=Por favor, asegúrate de que introduciches correctamente o nome do repositorio. enterred_invalid_repo_name=Por favor, asegúrate de que introduciches correctamente o nome do repositorio.
enterred_invalid_owner_name=Por favor, asegúrate de que introduciches correctamente o nome do propietario. enterred_invalid_owner_name=Por favor, asegúrate de que introduciches correctamente o nome do propietario.
enterred_invalid_password=Por favor, asegúrate de que introduciches correctamente o teu contrasinal. enterred_invalid_password=Por favor, asegúrate de que introduciches correctamente o teu contrasinal.
@@ -256,16 +266,15 @@ following=Seguindo
follow=Seguir follow=Seguir
unfollow=Deixar de seguir unfollow=Deixar de seguir
form.name_reserved=O usuario '%s' está reservado. form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=O patrón de nome de usuario '%s' non está permitido.
[settings] [settings]
profile=Perfil profile=Perfil
password=Contrasinal password=Contrasinal
avatar=Avatar avatar=Avatar
ssh_keys=Claves SSH ssh_keys=Claves SSH
security=Security security=Seguridade
repos=Repositories repos=Repositorios
orgs=Organizacións orgs=Organizacións
applications=Aplicacións applications=Aplicacións
delete=Eliminar conta delete=Eliminar conta
@@ -309,6 +318,7 @@ delete_email=Eliminar
email_deletion=Eliminar correo electrónico email_deletion=Eliminar correo electrónico
email_deletion_desc=Ao eliminar este enderezo de correo electrónico eliminarase toda a información asociada a esta. Desexas continuar? email_deletion_desc=Ao eliminar este enderezo de correo electrónico eliminarase toda a información asociada a esta. Desexas continuar?
email_deletion_success=O correo electrónico foi eliminado correctamente! email_deletion_success=O correo electrónico foi eliminado correctamente!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Engadir novo enderezo de correo electrónico add_new_email=Engadir novo enderezo de correo electrónico
add_email=Engadir correo electrónico add_email=Engadir correo electrónico
add_email_confirmation_sent=Un novo correo de confirmación foi enviado a '%s'. Por favor, comproba a túa bandexa de entrada nas próximas %d horas para completar o proceso. add_email_confirmation_sent=Un novo correo de confirmación foi enviado a '%s'. Por favor, comproba a túa bandexa de entrada nas próximas %d horas para completar o proceso.
@@ -334,34 +344,36 @@ no_activity=Non hai actividade recente
key_state_desc=Esta clave foi usada nos últimos 7 días key_state_desc=Esta clave foi usada nos últimos 7 días
token_state_desc=Token usado nos últimos 7 días token_state_desc=Token usado nos últimos 7 días
two_factor=Two-factor Authentication two_factor=Autenticación en Dous Pasos
two_factor_status=Status: two_factor_status=Estado:
two_factor_on=On two_factor_on=Si
two_factor_off=Off two_factor_off=Non
two_factor_enable=Enable two_factor_enable=Activar
two_factor_disable=Disable two_factor_disable=Desactivar
two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application. two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application.
two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>. two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>.
two_factor_enable_title=Enable Two-factor Authentication two_factor_enable_title=Enable Two-factor Authentication
two_factor_scan_qr=Please use your authentication application to scan the image: two_factor_scan_qr=Please use your authentication application to scan the image:
two_factor_or_enter_secret=Or enter the secret: two_factor_or_enter_secret=Or enter the secret:
two_factor_then_enter_passcode=Then enter passcode: two_factor_then_enter_passcode=A continuación, introduza o código:
two_factor_verify=Verify two_factor_verify=Verificar
two_factor_invalid_passcode=The passcode you entered is not valid, please try again! two_factor_invalid_passcode=The passcode you entered is not valid, please try again!
two_factor_reused_passcode=The passcode you entered has already been used, please try another one!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_enable_error=Enable Two-factor authentication failed: %v
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_success=Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes
two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>. two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>.
two_factor_regenerate_recovery_codes=Regenerate Recovery Codes two_factor_regenerate_recovery_codes=Rexenerar Códigos de Recuperación
two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v
two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully! two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully!
two_factor_disable_title=Disable Two-factor Authentication two_factor_disable_title=Desactivar a verificación en dous pasos
two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue? two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue?
two_factor_disable_success=Two-factor authentication has disabled successfully! two_factor_disable_success=Two-factor authentication has disabled successfully!
manage_access_token=Xestionar os tokens de acceso persoais manage_access_token=Xestionar os tokens de acceso persoais
generate_new_token=Xerar novo token generate_new_token=Xerar novo token
tokens_desc=Tokens usados para acceder ao API de Gogs. tokens_desc=Tokens usados para acceder ao API de Gogs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Dende agora, todos os tokens terán acceso completo á túa conta. new_token_desc=Dende agora, todos os tokens terán acceso completo á túa conta.
token_name=Nome do token token_name=Nome do token
generate_token=Xerar token generate_token=Xerar token
@@ -370,13 +382,14 @@ delete_token=Eliminar
access_token_deletion=Borrado de Token de Acceso Persoal access_token_deletion=Borrado de Token de Acceso Persoal
access_token_deletion_desc=Se elimina este token de acceso persoal a aplicación asociada perderá o permiso de acceso. Desexa continuar? access_token_deletion_desc=Se elimina este token de acceso persoal a aplicación asociada perderá o permiso de acceso. Desexa continuar?
delete_token_success=O token de acceso persoal foi eliminado con éxito! Non esqueza actualizar tamén as aplicacións asociadas. delete_token_success=O token de acceso persoal foi eliminado con éxito! Non esqueza actualizar tamén as aplicacións asociadas.
token_name_exists=Token with same name already exists.
orgs.none=Non es membro de nengunha organización. orgs.none=Non es membro de nengunha organización.
orgs.leave_title=Deixar unha organización orgs.leave_title=Deixar unha organización
orgs.leave_desc=Deixarás de ter aceso ao tódolos repositorios e equipos despois de deixar a organización. Desexas abandonala? orgs.leave_desc=Deixarás de ter aceso ao tódolos repositorios e equipos despois de deixar a organización. Desexas abandonala?
repos.leave=Leave repos.leave=Abandoar
repos.leave_title=Leave repository repos.leave_title=Deixar repositorio
repos.leave_desc=You will lose access to the repository after you left. Do you want to continue? repos.leave_desc=You will lose access to the repository after you left. Do you want to continue?
repos.leave_success=You have left repository '%s' successfully! repos.leave_success=You have left repository '%s' successfully!
@@ -391,7 +404,9 @@ owner=Propietario
repo_name=Nome do repositorio repo_name=Nome do repositorio
repo_name_helper=Os grandes nomes de repositorios son curtos, memorables e <strong>únicos</strong>. repo_name_helper=Os grandes nomes de repositorios son curtos, memorables e <strong>únicos</strong>.
visibility=Visibilidade visibility=Visibilidade
unlisted=Unlisted
visiblity_helper=Este repositorio é <span class="ui red text">privado</span> visiblity_helper=Este repositorio é <span class="ui red text">privado</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=O administrador web obrigou a todos os repositorios novos a ser <span class="ui red text"> privados</span> visiblity_helper_forced=O administrador web obrigou a todos os repositorios novos a ser <span class="ui red text"> privados</span>
visiblity_fork_helper=(Este cambio afectará a todos os forks) visiblity_fork_helper=(Este cambio afectará a todos os forks)
clone_helper=Necesitas axuda co clone? Consulta a <a target="_blank" href="%s">Axuda</a>! clone_helper=Necesitas axuda co clone? Consulta a <a target="_blank" href="%s">Axuda</a>!
@@ -417,10 +432,11 @@ mirror_last_synced=Sincronizado por última vez
watchers=Seguidores watchers=Seguidores
stargazers=Fans stargazers=Fans
forks=Forks forks=Forks
repo_description_helper=Description of repository. Maximum 512 characters length.
repo_description_length=Available characters
form.reach_limit_of_creation=El propietario ha alcanzado el límite máximo de %d repositorios creados.=O propietario acadou o límite máximo de %d repositorios creados. form.reach_limit_of_creation=El propietario ha alcanzado el límite máximo de %d repositorios creados.=O propietario acadou o límite máximo de %d repositorios creados.
form.name_reserved=El nombre del repositorio '%s' está reservado.=O nome do repositorio '%s' está reservado. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=El patrón del nombre del repositorio '%s' no está permitido.=O patrón do nome do repositorio '%s' non está permitido.
need_auth=Requiere autorización=Require autorización need_auth=Requiere autorización=Require autorización
migrate_type=Tipo de migración migrate_type=Tipo de migración
@@ -431,6 +447,7 @@ migrate.clone_address_desc=Pode ser unha URL HTTP/HTTPS/GIT.
migrate.clone_address_desc_import_local=Tamén podes migrar un repositorio mediante a ruta do servidor local. migrate.clone_address_desc_import_local=Tamén podes migrar un repositorio mediante a ruta do servidor local.
migrate.permission_denied=Non che está permitido importar repositorios locais. migrate.permission_denied=Non che está permitido importar repositorios locais.
migrate.invalid_local_path=Rutal local inválida, non existe ou non é un directorio. migrate.invalid_local_path=Rutal local inválida, non existe ou non é un directorio.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migración fallida: %v migrate.failed=Migración fallida: %v
mirror_from=réplica de mirror_from=réplica de
@@ -478,6 +495,8 @@ branches.stale_branches=Stale Branches
branches.all=All Branches branches.all=All Branches
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=Updated %[1]s by %[2]s
branches.change_default_branch=Change Default Branch branches.change_default_branch=Change Default Branch
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Novo arquivo editor.new_file=Novo arquivo
editor.upload_file=Subir arquivo editor.upload_file=Subir arquivo
@@ -514,6 +533,7 @@ editor.file_changed_while_editing=O contido do arquivo cambiou desde que comezac
editor.file_already_exists=Un arquivo co nome '%s' xa existe no repositorio. editor.file_already_exists=Un arquivo co nome '%s' xa existe no repositorio.
editor.no_changes_to_show=Non hai cambios que mostrar. editor.no_changes_to_show=Non hai cambios que mostrar.
editor.fail_to_update_file=Fallou o actualizar/crear o arquivo '%s' co erro: %v editor.fail_to_update_file=Fallou o actualizar/crear o arquivo '%s' co erro: %v
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
editor.add_subdir=Engadir subdirectorio... editor.add_subdir=Engadir subdirectorio...
editor.unable_to_upload_files=Fallou ao subir arquivos a '%s' co erro: %v editor.unable_to_upload_files=Fallou ao subir arquivos a '%s' co erro: %v
editor.upload_files_to_dir=Subir arquivos a '%s' editor.upload_files_to_dir=Subir arquivos a '%s'
@@ -634,6 +654,7 @@ pulls.cannot_auto_merge_desc=Este Pull Request non pode ser fusionado automatica
pulls.cannot_auto_merge_helper=Por favor, fusiona manualmente para resolver os conflitos. pulls.cannot_auto_merge_helper=Por favor, fusiona manualmente para resolver os conflitos.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=Fusionar Pull Request pulls.merge_pull_request=Fusionar Pull Request
pulls.open_unmerged_pull_exists=`Vostede non pode realizar a operación de reapertura porque nestes momentos existe unha solicitude de pull request (#%d) para o mesmo repositorio coa mesma información que se encontra á espera de aprobación` pulls.open_unmerged_pull_exists=`Vostede non pode realizar a operación de reapertura porque nestes momentos existe unha solicitude de pull request (#%d) para o mesmo repositorio coa mesma información que se encontra á espera de aprobación`
pulls.delete_branch=Eliminar branch pulls.delete_branch=Eliminar branch
@@ -738,7 +759,7 @@ settings.tracker_issue_style=Estilo de etiquetaxe do tracker externo de incidenc
settings.tracker_issue_style.numeric=Numérico settings.tracker_issue_style.numeric=Numérico
settings.tracker_issue_style.alphanumeric=Alfanumérico settings.tracker_issue_style.alphanumeric=Alfanumérico
settings.tracker_url_format_desc=Podes usar os modelos <code>{user} {repo} {index}</code> para o nome de usuario, nome do repositorio e índice da incidencia. settings.tracker_url_format_desc=Podes usar os modelos <code>{user} {repo} {index}</code> para o nome de usuario, nome do repositorio e índice da incidencia.
settings.pulls_desc=Habilitar Pull Requests para aceptar contribucións públicas settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignore changes in whitespace
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Zona de perigo settings.danger_zone=Zona de perigo
@@ -777,8 +798,10 @@ settings.collaborator_deletion_desc=Este usuario non poderá colaborar neste rep
settings.remove_collaborator_success=O colaborador foi eliminado. settings.remove_collaborator_success=O colaborador foi eliminado.
settings.search_user_placeholder=Buscar usuario... settings.search_user_placeholder=Buscar usuario...
settings.org_not_allowed_to_be_collaborator=As organizacións non teñen permitido ser engadidas como colaboradores. settings.org_not_allowed_to_be_collaborator=As organizacións non teñen permitido ser engadidas como colaboradores.
settings.add_webhook=Engadir Webhook
settings.hooks_desc=Os Webhooks permiten a servizos externos recibir notificacións cando sucedan certos eventos en Gogs. Cando sucedan os eventos especificados, enviaremos unha petición POST a cada unha das URLs indicadas. Para obter máis información, consulta a nosa <a target="_blank" href="%s">Guía de Webhooks</a>. settings.hooks_desc=Os Webhooks permiten a servizos externos recibir notificacións cando sucedan certos eventos en Gogs. Cando sucedan os eventos especificados, enviaremos unha petición POST a cada unha das URLs indicadas. Para obter máis información, consulta a nosa <a target="_blank" href="%s">Guía de Webhooks</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Engadir Webhook
settings.webhook_deletion=Eliminar Webhook settings.webhook_deletion=Eliminar Webhook
settings.webhook_deletion_desc=Ao borrar este webhook eliminarase a súa información e todo o seu historial. Desexa continuar? settings.webhook_deletion_desc=Ao borrar este webhook eliminarase a súa información e todo o seu historial. Desexa continuar?
settings.webhook_deletion_success=Webhook eliminado con éxito! settings.webhook_deletion_success=Webhook eliminado con éxito!
@@ -792,6 +815,8 @@ settings.webhook.response=Resposta
settings.webhook.headers=Encabezado settings.webhook.headers=Encabezado
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Corpo da mensaxe settings.webhook.body=Corpo da mensaxe
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Os Git Hooks son unha funcionalidade do propio Git, podes editar os ficheiros dos hooks soportados na seguinte lista para aplicar operacións personalizadas. settings.githooks_desc=Os Git Hooks son unha funcionalidade do propio Git, podes editar os ficheiros dos hooks soportados na seguinte lista para aplicar operacións personalizadas.
settings.githook_edit_desc=Se o hook non está activo, mostrarase contido de exemplo. Deixar o contido baleiro deshabilitará este hook. settings.githook_edit_desc=Se o hook non está activo, mostrarase contido de exemplo. Deixar o contido baleiro deshabilitará este hook.
settings.githook_name=Nome do Hook settings.githook_name=Nome do Hook
@@ -819,10 +844,10 @@ settings.event_push=Push
settings.event_push_desc=Git push a un repositorio settings.event_push_desc=Git push a un repositorio
settings.event_issues=Issues settings.event_issues=Issues
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Pull Request settings.event_pull_request=Pull Request
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Release settings.event_release=Release
settings.event_release_desc=Release published in a repository. settings.event_release_desc=Release published in a repository.
settings.active=Activo settings.active=Activo
@@ -852,6 +877,8 @@ settings.add_key_success=A nova clave de despregamento '%s' foi creada con éxit
settings.deploy_key_deletion=Eliminar clave de despregamento settings.deploy_key_deletion=Eliminar clave de despregamento
settings.deploy_key_deletion_desc=Ao eliminar esta clave de despregamento perderase o permiso de acceso a este repositorio coa dita clave. Desexas continuar? settings.deploy_key_deletion_desc=Ao eliminar esta clave de despregamento perderase o permiso de acceso a este repositorio coa dita clave. Desexas continuar?
settings.deploy_key_deletion_success=Clave de despregamento eliminada con éxito! settings.deploy_key_deletion_success=Clave de despregamento eliminada con éxito!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Explorar o código diff.browse_source=Explorar o código
diff.parent=pai diff.parent=pai
@@ -916,9 +943,8 @@ team_name_helper=Utiliza este nome para mencionar este equipo nas conversas.
team_desc_helper=En que consiste este equipo? team_desc_helper=En que consiste este equipo?
team_permission_desc=Que nivel de permisos debería ter este equipo? team_permission_desc=Que nivel de permisos debería ter este equipo?
form.name_reserved=O nome da organización '%s' está reservado. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=O patrón de nome da organización '%s' non está permitido. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Team name '%s' is reserved.
settings=Configuración settings=Configuración
settings.options=Opcións settings.options=Opcións
@@ -990,12 +1016,19 @@ first_page=Primeira
last_page=Última last_page=Última
total=Total: %d total=Total: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git version
dashboard.go_version=Go version
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Estatísticas dashboard.statistic=Estatísticas
dashboard.operations=Operacións dashboard.operations=Operacións
dashboard.system_status=Estado do Monitor do Sistema dashboard.system_status=Estado do Monitor do Sistema
dashboard.statistic_info=A base de datos de Gogs contén <b>%d</b> usuarios, <b>%d</b> organizacións, <b>%d</b> claves públicas, <b>%d</b> repositorios, <b>%d</b> vixiados, <b>%d</b> destacados, <b>%d</b> accións, <b>%d</b> accesos, <b>%d</b> incidencias, <b>%d</b> comentarios, <b>%d</b> contas de redes sociais, <b>%d</b> seguidores, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> fontes de login, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> etiquetas, <b>%d</b> hooks, <b>%d</b> equipos, <b>%d</b> tarefas actualizadas, <b>%d</b> adxuntos. dashboard.statistic_info=A base de datos de Gogs contén <b>%d</b> usuarios, <b>%d</b> organizacións, <b>%d</b> claves públicas, <b>%d</b> repositorios, <b>%d</b> vixiados, <b>%d</b> destacados, <b>%d</b> accións, <b>%d</b> accesos, <b>%d</b> incidencias, <b>%d</b> comentarios, <b>%d</b> contas de redes sociais, <b>%d</b> seguidores, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> fontes de login, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> etiquetas, <b>%d</b> hooks, <b>%d</b> equipos, <b>%d</b> tarefas actualizadas, <b>%d</b> adxuntos.
dashboard.operation_name=Nome da operación dashboard.operation_name=Nome da operación
dashboard.operation_switch=Interruptor dashboard.operation_switch=Interruptor
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Executar dashboard.operation_run=Executar
dashboard.clean_unbind_oauth=Limpar solicitudes de OAuth sen confirmar dashboard.clean_unbind_oauth=Limpar solicitudes de OAuth sen confirmar
dashboard.clean_unbind_oauth_success=As solicitudes de OAuth sen confirmar elimináronse correctamente. dashboard.clean_unbind_oauth_success=As solicitudes de OAuth sen confirmar elimináronse correctamente.
@@ -1087,11 +1120,12 @@ repos.stars=Estrelas
repos.issues=Incidencias repos.issues=Incidencias
repos.size=Size repos.size=Size
auths.auth_manage_panel=Panel de administración de autenticación auths.auth_sources=Authentication Sources
auths.new=Engadir nova orixe auths.new=Engadir nova orixe
auths.name=Nome auths.name=Nome
auths.type=Tipo auths.type=Tipo
auths.enabled=Activo auths.enabled=Activo
auths.default=Default
auths.updated=Actualizado auths.updated=Actualizado
auths.auth_type=Tipo de autenticación auths.auth_type=Tipo de autenticación
auths.auth_name=Nome de autenticación auths.auth_name=Nome de autenticación
@@ -1128,9 +1162,9 @@ auths.enable_tls=Habilitar cifrado TLS
auths.skip_tls_verify=Omitir a verificación TLS auths.skip_tls_verify=Omitir a verificación TLS
auths.pam_service_name=Nome do servizo PAM auths.pam_service_name=Nome do servizo PAM
auths.enable_auto_register=Habilitar auto-rexistro auths.enable_auto_register=Habilitar auto-rexistro
auths.tips=Consellos
auths.edit=Editar a configuración de autenticación auths.edit=Editar a configuración de autenticación
auths.activated=Esta autenticación foi activada auths.activated=Esta autenticación foi activada
auths.default_auth=This authentication is default login source
auths.new_success=A autenticación '%s' foi engadida con éxito! auths.new_success=A autenticación '%s' foi engadida con éxito!
auths.update_success=A configuración de autenticación foi actualizada con éxito. auths.update_success=A configuración de autenticación foi actualizada con éxito.
auths.update=Actualizar a configuración de autenticación auths.update=Actualizar a configuración de autenticación
@@ -1140,120 +1174,186 @@ auths.delete_auth_desc=Esta autenticación será eliminada. Desexas continuar?
auths.still_in_used=Este método de autentificación aínda é utilizado por algúns usuarios, por favor elimine ou converta estes usuarios a outro tipo de autentificación. auths.still_in_used=Este método de autentificación aínda é utilizado por algúns usuarios, por favor elimine ou converta estes usuarios a outro tipo de autentificación.
auths.deletion_success=A autenticación foi eliminada con éxito! auths.deletion_success=A autenticación foi eliminada con éxito!
auths.login_source_exist=Login source '%s' xa existe. auths.login_source_exist=Login source '%s' xa existe.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(not set)
config.server_config=Configuración do servidor config.server_config=Configuración do servidor
config.app_name=Nome da aplicación config.brand_name=Brand name
config.app_ver=Versión da aplicación
config.app_url=URL da aplicación
config.domain=Dominio
config.offline_mode=Modo sen conexión
config.disable_router_log=Deshabilitar log do router
config.run_user=Executada como usuario config.run_user=Executada como usuario
config.run_mode=Modo de execución config.run_mode=Modo de execución
config.git_version=Versión de Git config.server.external_url=External URL
config.static_file_root_path=Ruta dos ficheiros estáticos config.server.domain=Domain
config.log_file_root_path=Ruta dos ficheiros de log config.server.protocol=Protocol
config.reverse_auth_user=Autenticación inversa de usuario config.server.http_addr=HTTP address
config.server.http_port=HTTP port
config.server.cert_file=Certificate file
config.server.key_file=Key file
config.server.tls_min_version=Minimum TLS version
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Enable Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=Configuración SSH config.ssh_config=Configuración SSH
config.ssh_enabled=Habilitado config.ssh.enabled=Enabled
config.ssh_start_builtin_server=Iniciar servidor integrado config.ssh.domain=Exposed domain
config.ssh_domain=Dominio config.ssh.port=Exposed port
config.ssh_port=Porto config.ssh.root_path=Root path
config.ssh_listen_port=Porto de escoita config.ssh.keygen_path=Keygen path
config.ssh_root_path=Ruta raíz config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Ruta da clave de proba config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Ruta do xerador de claves ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Tamaño mínimo da clave de verificación config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Tamaños de clave mínimos config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repository Configuration config.repo_config=Repository configuration
config.repo_root_path=Ruta do repositorio config.repo.root_path=Root path
config.script_type=Tipo de Script config.repo.script_type=Script type
config.repo_force_private=Force Private config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Max Creation Limit config.repo.force_private=Force private
config.preferred_licenses=Preferred Licenses config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Disable HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Enable Local Path Migration config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Configuración da base de datos config.db_config=Configuración da base de datos
config.db_type=Tipo config.db.type=Type
config.db_host=Host config.db.host=Host
config.db_name=Nome config.db.name=Name
config.db_user=Usuario config.db.schema=Schema
config.db_ssl_mode=Modo SSL config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(só para "postgres") config.db.user=User
config.db_path=Ruta config.db.ssl_mode=SSL mode
config.db_path_helper=(para "sqlite3" e "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Configuración do servizo config.security_config=Security configuration
config.register_email_confirm=Solicitar confirmación por correo electrónico config.security.login_remember_days=Login remember days
config.disable_register=Deshabilitar o rexistro config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Mostrar botón de rexistro config.security.cookie_username=Username cookie
config.require_sign_in_view=Solicitar a vista de inicio de sesión config.security.cookie_secure=Enable secure cookie
config.mail_notify=Notificación por correo electrónico config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Deshabilitar a comprobación de tamaño mínimo de clave config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Activar captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Habilitar vida do código config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Restablecer contrasinal de vida do código
config.webhook_config=Configuración de Webhooks config.email_config=Email configuration
config.queue_length=Tamaño de cola de envío config.email.enabled=Enabled
config.deliver_timeout=Timeout de entrega config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Omitir a verificación TLS config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Configuración do servidor de correo config.auth_config=Authentication configuration
config.mailer_enabled=Activado config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Desactivar HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Host config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Usuario config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Enviar correo electrónico de proba config.auth.disable_registration=Disable registration
config.test_mail_failed=Fallo ao enviar o correo electrónico de proba a '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=O correo electrónico de proba foi enviado a '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=Configuración OAuth config.user_config=User configuration
config.oauth_enabled=Activado config.user.enable_email_notify=Enable email notification
config.cache_config=Configuración da caché
config.cache_adapter=Adaptador da caché
config.cache_interval=Intervalo da caché
config.cache_conn=Conexión da caché
config.session_config=Configuración da sesión config.session_config=Configuración da sesión
config.session_provider=Provedor da sesión config.session.provider=Provider
config.provider_config=Configuración do provedor config.session.provider_config=Provider config
config.cookie_name=Nome da cookie config.session.cookie_name=Cookie
config.enable_set_cookie=Activar establecemento de cookie config.session.https_only=HTTPS only
config.gc_interval_time=Intervalo de tempo do GC config.session.gc_interval=GC interval
config.session_life_time=Tempo de vida da sesión config.session.max_life_time=Max life time
config.https_only=Só HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Tempo de vida da cookie
config.cache_config=Configuración da caché
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=HTTP configuration
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Configuración de imaxe config.picture_config=Configuración de imaxe
config.picture_service=Servizo de imaxe config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Desactivar gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Habilitar avatares federados config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Configuración de Webhooks
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Configuración de git config.git_config=Configuración de git
config.git_disable_diff_highlight=Desactivar resaltado de sintaxe do Diff config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Liñas de Diff máximas (por un só arquivo) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Caracteres de Diff máximos (para unha soa liña) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Máximo de arquivos de Diff (que se mostrarán) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Argumentos de GC config.git.gc_args=GC arguments
config.git_migrate_timeout=Tempo de espera de migración config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Tempo de espera de actualización de réplicas config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Tempo de espera de operación de clóns config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Tempo de espera de operación de pull config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Tempo de espera de operación de GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Configuración do log config.log_config=Configuración do log
config.log_file_root_path=Ruta dos ficheiros de log
config.log_mode=Mode config.log_mode=Mode
config.log_options=Options config.log_options=Options
@@ -1284,7 +1384,6 @@ notices.delete_success=As notificacións do sistema foron eliminadas satisfactor
[action] [action]
create_repo=creou o repositorio <a href="%s">%s</a> create_repo=creou o repositorio <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=repositorio renomeado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a> rename_repo=repositorio renomeado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a>
commit_repo=fixo push a <a href="%[1]s/src/%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a> commit_repo=fixo push a <a href="%[1]s/src/%[2]s">%[3]s</a> en <a href="%[1]s">%[4]s</a>
compare_commits=Ver comparación destas %d achegas compare_commits=Ver comparación destas %d achegas
@@ -1301,6 +1400,10 @@ create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href=
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=fixo push do tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a> push_tag=fixo push do tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a>
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=hai ago=hai
@@ -1322,6 +1425,7 @@ months=%[2]s %[1]d meses
years=%s %d anos years=%s %d anos
raw_seconds=segundos raw_seconds=segundos
raw_minutes=minutos raw_minutes=minutos
raw_hours=hours
[dropzone] [dropzone]
default_message=Sólteos aquí ou pulse para cargar arquivos. default_message=Sólteos aquí ou pulse para cargar arquivos.

View File

@@ -9,7 +9,6 @@ sign_out=Kijelentkezés
sign_up=Regisztráció sign_up=Regisztráció
register=Regisztráció register=Regisztráció
website=Weboldal website=Weboldal
version=Verzió
page=Oldal page=Oldal
template=Sablon template=Sablon
language=Nyelv language=Nyelv
@@ -44,17 +43,22 @@ issues=Problémák
cancel=Mégse cancel=Mégse
[status]
page_not_found=Az oldal nem található
internal_server_error=Belső kiszolgálóhiba
[install] [install]
install=Telepítés install=Telepítés
title=Telepítés első indításkor title=Telepítés első indításkor
docker_helper=Ha Docker alatt fut a Gogs, akkor kérjük, figyelmesen olvassa el az <a target="_blank" href="%s">irányelveket</a>, mielőtt bármit megváltoztat ezen az oldalon! docker_helper=Ha Docker alatt fut a Gogs, akkor kérjük, figyelmesen olvassa el az <a target="_blank" href="%s">irányelveket</a>, mielőtt bármit megváltoztat ezen az oldalon!
requite_db_desc=A Gogs-hoz szükséges a MySQL, PostgreSQL, SQLite3, MSSQL vagy a TiDB valamelyike. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Adatbázis beállításai db_title=Adatbázis beállításai
db_type=Adatbázis-kezelő db_type=Adatbázis-kezelő
host=Kiszolgáló host=Kiszolgáló
user=Felhasználónév user=Felhasználónév
password=Jelszó password=Jelszó
db_name=Adatbázis neve db_name=Adatbázis neve
db_schema=Schema
db_helper=MySQL szerveren kérjük használjon INNODB motort utf8_general_ci karakterkészlettel. db_helper=MySQL szerveren kérjük használjon INNODB motort utf8_general_ci karakterkészlettel.
ssl_mode=SSL mód ssl_mode=SSL mód
path=Elérési út path=Elérési út
@@ -84,6 +88,7 @@ log_root_path=Naplófájl elérési útja
log_root_path_helper=Naplófájlok könyvtára. log_root_path_helper=Naplófájlok könyvtára.
enable_console_mode=Konzol-üzemmód engedélyezése enable_console_mode=Konzol-üzemmód engedélyezése
enable_console_mode_popup=Naplófájl írása mellett a naplóbejegyzések nyomtatása a konzolra. enable_console_mode_popup=Naplófájl írása mellett a naplóbejegyzések nyomtatása a konzolra.
default_branch=Default Branch
optional_title=További beállítások optional_title=További beállítások
email_title=E-mail szolgáltatás beállításai email_title=E-mail szolgáltatás beállításai
@@ -101,7 +106,7 @@ disable_gravatar=Gravatar kikapcsolása
disable_gravatar_popup=Gravatar és egyedi források kikapcsolása, minden avatárt a felhasználók töltenek fel. disable_gravatar_popup=Gravatar és egyedi források kikapcsolása, minden avatárt a felhasználók töltenek fel.
federated_avatar_lookup=Engedélyezi a független avatarokat federated_avatar_lookup=Engedélyezi a független avatarokat
federated_avatar_lookup_popup=Eggyesített profilkép keresés a nyílt forráskódú libravatar szolgáltatás segítségével. federated_avatar_lookup_popup=Eggyesített profilkép keresés a nyílt forráskódú libravatar szolgáltatás segítségével.
disable_registration=Ön-regisztráció kikapcsolása disable_registration=Önregisztráció kikapcsolása
disable_registration_popup=Ön-regisztráció kikapcsolása, csak a rendszergazda hozhat létre fiókot. disable_registration_popup=Ön-regisztráció kikapcsolása, csak a rendszergazda hozhat létre fiókot.
enable_captcha=Ellenőrző kód engedélyezése enable_captcha=Ellenőrző kód engedélyezése
enable_captcha_popup=Ellenőrző kódot kér a felhasználói regisztrációnál. enable_captcha_popup=Ellenőrző kódot kér a felhasználói regisztrációnál.
@@ -122,6 +127,7 @@ run_user_not_match=Futtató felhasználó más, mint az aktuális felhasználó:
smtp_host_missing_port=Az SMTP kiszolgáló címéből hiányzik a portszám. smtp_host_missing_port=Az SMTP kiszolgáló címéből hiányzik a portszám.
invalid_smtp_from=Érvénytelen SMTP Feladó mező: %v invalid_smtp_from=Érvénytelen SMTP Feladó mező: %v
save_config_failed=Hiba a beállítások tárolásakor: %v save_config_failed=Hiba a beállítások tárolásakor: %v
init_failed=Nem sikerült inicializálni az alkalmazást: %v
invalid_admin_setting=Hibás a rendszergazdai fiók beállítása: %v invalid_admin_setting=Hibás a rendszergazdai fiók beállítása: %v
install_success=Üdv! Örülünk, hogy a Gogs-ot választottad, érezd jól magad és viseld gondját. install_success=Üdv! Örülünk, hogy a Gogs-ot választottad, érezd jól magad és viseld gondját.
invalid_log_root_path=Naplózás gyökérmappa érvénytelen: %v invalid_log_root_path=Naplózás gyökérmappa érvénytelen: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Van már felhasználói fiókja? Jelentkezz be!
social_register_hepler_msg=Van már fiókod? Csatold most! social_register_hepler_msg=Van már fiókod? Csatold most!
disable_register_prompt=Elnézést, a regisztrációt kikapcsolták. Kérlek szólj az oldal adminisztrátorának. disable_register_prompt=Elnézést, a regisztrációt kikapcsolták. Kérlek szólj az oldal adminisztrátorának.
disable_register_mail=Elnézést, az email regisztráció megerősítését kikapcsolták. disable_register_mail=Elnézést, az email regisztráció megerősítését kikapcsolták.
auth_source=Hitelesítési forrás
local=Helyi
remember_me=Emlékezz rám remember_me=Emlékezz rám
forgot_password=Elfelejtett jelszó forgot_password=Elfelejtett jelszó
forget_password=Elfelejtette a jelszavát? forget_password=Elfelejtette a jelszavát?
@@ -229,6 +237,7 @@ org_name_been_taken=A szervezet neve már foglalt.
team_name_been_taken=Az a csapatnév már foglalt. team_name_been_taken=Az a csapatnév már foglalt.
email_been_used=Ezt az email címet már felhasználták. email_been_used=Ezt az email címet már felhasználták.
username_password_incorrect=Felhasználó név vagy jelszó hibás. username_password_incorrect=Felhasználó név vagy jelszó hibás.
auth_source_mismatch=A kijelölt hitelesítési forráshoz nincs társítva a felhasználó.
enterred_invalid_repo_name=Kérjük, ellenőrizze, hogy a tároló neve helyes. enterred_invalid_repo_name=Kérjük, ellenőrizze, hogy a tároló neve helyes.
enterred_invalid_owner_name=Kérjük, ellenőrizze, hogy a tulajdonos neve helyes. enterred_invalid_owner_name=Kérjük, ellenőrizze, hogy a tulajdonos neve helyes.
enterred_invalid_password=Kérlek ellenőrizd, hogy a beírt jelszó helyes. enterred_invalid_password=Kérlek ellenőrizd, hogy a beírt jelszó helyes.
@@ -256,8 +265,7 @@ following=Követve
follow=Követés follow=Követés
unfollow=Követés törlése unfollow=Követés törlése
form.name_reserved='%s' felhasználónév már foglalt. form.name_not_allowed=A %q felhasználónév, vagy minta nem engedélyezett.
form.name_pattern_not_allowed=A felhasználónév ('%s') nem engedélyezett.
[settings] [settings]
profile=Profil profile=Profil
@@ -309,6 +317,7 @@ delete_email=Törlés
email_deletion=E-mail cím törlése email_deletion=E-mail cím törlése
email_deletion_desc=Az e-mail cím törlése kapcsolódó adatokat is eltávolít a fiókjából. Biztosan folytatja? email_deletion_desc=Az e-mail cím törlése kapcsolódó adatokat is eltávolít a fiókjából. Biztosan folytatja?
email_deletion_success=Az e-mail címet töröltük! email_deletion_success=Az e-mail címet töröltük!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Új email cím felvétele add_new_email=Új email cím felvétele
add_email=Email felvétele add_email=Email felvétele
add_email_confirmation_sent=Egy új megerősítő e-mailt küldtünk a(z) '%s' címre. Kérlek ellenőrizd a beérkező üzeneteidet %d órán belül, hogy befejezd a megerősítési folyamatot. add_email_confirmation_sent=Egy új megerősítő e-mailt küldtünk a(z) '%s' címre. Kérlek ellenőrizd a beérkező üzeneteidet %d órán belül, hogy befejezd a megerősítési folyamatot.
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Vagy adja meg a titkos kódot:
two_factor_then_enter_passcode=Ezután írja be ezt a jelkódot: two_factor_then_enter_passcode=Ezután írja be ezt a jelkódot:
two_factor_verify=Ellenőrzés two_factor_verify=Ellenőrzés
two_factor_invalid_passcode=Érvénytelen a megadott jelkód, próbálja meg újra! two_factor_invalid_passcode=Érvénytelen a megadott jelkód, próbálja meg újra!
two_factor_reused_passcode=A megadott PIN-kód már használatban van. Kérem válasszon másikat!
two_factor_enable_error=Kétlépcsős hitelesítés engedélyezése sikertelen: %v two_factor_enable_error=Kétlépcsős hitelesítés engedélyezése sikertelen: %v
two_factor_enable_success=Kétlépcsős hitelesítés sikeresen engedélyezve a fiókjához! two_factor_enable_success=Kétlépcsős hitelesítés sikeresen engedélyezve a fiókjához!
two_factor_recovery_codes_title=Kettőlépcsős hitelesítés helyreállítási kódok two_factor_recovery_codes_title=Kettőlépcsős hitelesítés helyreállítási kódok
@@ -362,6 +372,7 @@ two_factor_disable_success=Kétlépcsős hitelesítés sikeresen letiltva a fió
manage_access_token=Személyes hozzáférési jegyek kezelése manage_access_token=Személyes hozzáférési jegyek kezelése
generate_new_token=Új jegy generálása generate_new_token=Új jegy generálása
tokens_desc=A generált jegyekkel hozzáférhetsz a Gogs API-hoz. tokens_desc=A generált jegyekkel hozzáférhetsz a Gogs API-hoz.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Minden jegy teljes hozzáférést ad a fiókodhoz. new_token_desc=Minden jegy teljes hozzáférést ad a fiókodhoz.
token_name=Jegy neve token_name=Jegy neve
generate_token=Jegy generálása generate_token=Jegy generálása
@@ -370,6 +381,7 @@ delete_token=Törlés
access_token_deletion=Személyes hozzáférési jegy törlése access_token_deletion=Személyes hozzáférési jegy törlése
access_token_deletion_desc=Az SSH kulcs törlése minden kapcsolódó hozzáférést töröl a fiókodból. Biztosan folytatod? access_token_deletion_desc=Az SSH kulcs törlése minden kapcsolódó hozzáférést töröl a fiókodból. Biztosan folytatod?
delete_token_success=A személyes hozzáférési tokened eltávolítása megtörtént! Ne felejtsd el frissíteni az alkalmazásod is. delete_token_success=A személyes hozzáférési tokened eltávolítása megtörtént! Ne felejtsd el frissíteni az alkalmazásod is.
token_name_exists=Már létezik ilyen nevű szerepkör.
orgs.none=Nem vagy tagja egy szervezeti elemnek sem. orgs.none=Nem vagy tagja egy szervezeti elemnek sem.
orgs.leave_title=Szervezet elhagyása orgs.leave_title=Szervezet elhagyása
@@ -391,7 +403,9 @@ owner=Tulajdonos
repo_name=Tároló neve repo_name=Tároló neve
repo_name_helper=A jó tárolónév általában rövid, megjegyezhető és egyedi kulcsszavakból tevődik össze. repo_name_helper=A jó tárolónév általában rövid, megjegyezhető és egyedi kulcsszavakból tevődik össze.
visibility=Láthatóság visibility=Láthatóság
unlisted=Unlisted
visiblity_helper=Ez egy <span class="ui red text">privát</span> tároló visiblity_helper=Ez egy <span class="ui red text">privát</span> tároló
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Az oldal adminisztrátora kötelezővé tette, hogy minden új repository <span class="ui red text">Privát</span> legyen visiblity_helper_forced=Az oldal adminisztrátora kötelezővé tette, hogy minden új repository <span class="ui red text">Privát</span> legyen
visiblity_fork_helper=(Az érték megváltoztatása kihat minden fork-ra) visiblity_fork_helper=(Az érték megváltoztatása kihat minden fork-ra)
clone_helper=Segítség kell a klónozáshoz? Látogasd meg a <a target="_blank" href="%s">Súgó</a>t! clone_helper=Segítség kell a klónozáshoz? Látogasd meg a <a target="_blank" href="%s">Súgó</a>t!
@@ -417,10 +431,11 @@ mirror_last_synced=Utoljára szinkr.
watchers=Figyelők watchers=Figyelők
stargazers=Csillagvizsgálók stargazers=Csillagvizsgálók
forks=Másolások forks=Másolások
repo_description_helper=Tároló leírása. Maximum 512 karakter hosszúságú.
repo_description_length=Rendelkezésre álló karakterek
form.reach_limit_of_creation=A tulajdonos túllépte a maximum létrehozható tárolók számát (%d). form.reach_limit_of_creation=A tulajdonos túllépte a maximum létrehozható tárolók számát (%d).
form.name_reserved=Ez a tároló név ('%s') le van foglalva. form.name_not_allowed=A %q repository név, vagy minta nem engedélyezett.
form.name_pattern_not_allowed=Ez a tároló név ('%s') nem megengedett.
need_auth=Hitelesítés szükséges need_auth=Hitelesítés szükséges
migrate_type=Migráció típusa migrate_type=Migráció típusa
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Ez lehet egy HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local=Migrálhat tárolót a helyi fájlrendszerből is az útvonal megadásával. migrate.clone_address_desc_import_local=Migrálhat tárolót a helyi fájlrendszerből is az útvonal megadásával.
migrate.permission_denied=Az Ön számára nem engedélyezett a helyi tároló importálása. migrate.permission_denied=Az Ön számára nem engedélyezett a helyi tároló importálása.
migrate.invalid_local_path=Érvénytelen helyi elérési út; nem létezik vagy nem mappára mutat. migrate.invalid_local_path=Érvénytelen helyi elérési út; nem létezik vagy nem mappára mutat.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migráció sikertelen: %v migrate.failed=Migráció sikertelen: %v
mirror_from=tükrözi: mirror_from=tükrözi:
@@ -478,6 +494,8 @@ branches.stale_branches=Elavult ágak
branches.all=Minden ág branches.all=Minden ág
branches.updated_by=Frissítve ekkor: %[1]s %[2]s által branches.updated_by=Frissítve ekkor: %[1]s %[2]s által
branches.change_default_branch=Alapértelmezett ág megváltoztatása branches.change_default_branch=Alapértelmezett ág megváltoztatása
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Új fájl editor.new_file=Új fájl
editor.upload_file=Fájl feltöltése editor.upload_file=Fájl feltöltése
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=A fájl tartalma megváltozott mióta elkezdte
editor.file_already_exists=A(z) '%s' nevű fájl már létezik a tárolóban. editor.file_already_exists=A(z) '%s' nevű fájl már létezik a tárolóban.
editor.no_changes_to_show=Nincsen megjeleníthető változás. editor.no_changes_to_show=Nincsen megjeleníthető változás.
editor.fail_to_update_file=Nem sikerült frissíteni/létrehozni a következő fájlt: '%s' A hiba oka: %v editor.fail_to_update_file=Nem sikerült frissíteni/létrehozni a következő fájlt: '%s' A hiba oka: %v
editor.fail_to_delete_file=Nem sikerült törölni a következő fájlt: '%s' A hiba oka: %v
editor.add_subdir=Alkönyvtár hozzáadása... editor.add_subdir=Alkönyvtár hozzáadása...
editor.unable_to_upload_files=Nem sikerült feltölteni a fájlokat a "%s" hiba: %v editor.unable_to_upload_files=Nem sikerült feltölteni a fájlokat a "%s" hiba: %v
editor.upload_files_to_dir=Fájlok feltöltése '%s' editor.upload_files_to_dir=Fájlok feltöltése '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Ez a beolvasztási kérés ütközések miatt nem e
pulls.cannot_auto_merge_helper=Kérlek, egyesítsd kézileg a konfliktusok megoldásához. pulls.cannot_auto_merge_helper=Kérlek, egyesítsd kézileg a konfliktusok megoldásához.
pulls.create_merge_commit=Eggyesítő commit létrehozása pulls.create_merge_commit=Eggyesítő commit létrehozása
pulls.rebase_before_merging=Rebase eggyesítés előtt pulls.rebase_before_merging=Rebase eggyesítés előtt
pulls.commit_description=Commit leírása
pulls.merge_pull_request=Beolvasztási kérés egyesítése pulls.merge_pull_request=Beolvasztási kérés egyesítése
pulls.open_unmerged_pull_exists=`Nem tudja újranyitni, mert már van egy nyitott egyesítési kérés (#%d) ugyanebben a tárolóban, ugyanezekket az egyesítési információkkal, és végrehajtásra vár.` pulls.open_unmerged_pull_exists=`Nem tudja újranyitni, mert már van egy nyitott egyesítési kérés (#%d) ugyanebben a tárolóban, ugyanezekket az egyesítési információkkal, és végrehajtásra vár.`
pulls.delete_branch=Ág törlése pulls.delete_branch=Ág törlése
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Külső hibajegykezelő elnevezési stílus:
settings.tracker_issue_style.numeric=Numerikus settings.tracker_issue_style.numeric=Numerikus
settings.tracker_issue_style.alphanumeric=Alfanumerikus settings.tracker_issue_style.alphanumeric=Alfanumerikus
settings.tracker_url_format_desc=Az alábbiak helyettesítik a felhasználónevet, repository nevet és hibajegy számot: <code>{user} {repo} {index}</code>. settings.tracker_url_format_desc=Az alábbiak helyettesítik a felhasználónevet, repository nevet és hibajegy számot: <code>{user} {repo} {index}</code>.
settings.pulls_desc=Beolvasztási kérések engedélyezése a nyilvános hozzájárulások végett settings.pulls_desc=Beolvasztási kérések engedélyezése tárolók és ágak közi hozzájárulásokhoz
settings.pulls.ignore_whitespace=Whitespacek figyelmen kívül hagyása settings.pulls.ignore_whitespace=Whitespacek figyelmen kívül hagyása
settings.pulls.allow_rebase_merge=Rebase engedélyezése eggyesítő commitokhoz settings.pulls.allow_rebase_merge=Rebase engedélyezése eggyesítő commitokhoz
settings.danger_zone=Veszélyes terület settings.danger_zone=Veszélyes terület
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=A repository-hoz tartozó wiki adatok törlése s
settings.delete=Repository Törlése settings.delete=Repository Törlése
settings.delete_desc=Miután kitörölted a repository-t nincs visszaút. Jól gondold meg. settings.delete_desc=Miután kitörölted a repository-t nincs visszaút. Jól gondold meg.
settings.delete_notices_1=- Ez a művelet <strong>NEM</strong> vonható vissza. settings.delete_notices_1=- Ez a művelet <strong>NEM</strong> vonható vissza.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Ez a művelet véglegesen töröl minden repository-val kapcsolatos dolgot, beleértve a Git adatokat, hibajegyeket, megjegyzéseket és a közreműködők hozzáférési jogát.
settings.delete_notices_fork_1=- Minden fork önállóvá válik a törlés után. settings.delete_notices_fork_1=- Minden fork önállóvá válik a törlés után.
settings.deletion_success=A tároló sikeresen törölve! settings.deletion_success=A tároló sikeresen törölve!
settings.update_settings_success=A tároló beállításai sikeresen frissítve. settings.update_settings_success=A tároló beállításai sikeresen frissítve.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Ennek a felhasználónak nem lesz joga közr
settings.remove_collaborator_success=Az eggyüttműködő eltávolítva. settings.remove_collaborator_success=Az eggyüttműködő eltávolítva.
settings.search_user_placeholder=Felhasználók keresése... settings.search_user_placeholder=Felhasználók keresése...
settings.org_not_allowed_to_be_collaborator=Szervezet hozzáadása együttműködőként nem engedélyezett. settings.org_not_allowed_to_be_collaborator=Szervezet hozzáadása együttműködőként nem engedélyezett.
settings.add_webhook=Webhook hozzáadása
settings.hooks_desc=A Webhook-ok olyanok, mint az alapvető HTTP POST esemény triggerek. Amikor valami történik a Gogsban, akkor küldünk róla értesítést a címre amit beállítasz. Többet olvashatsz erről a <a target="_blank" href="%s">Webhooks Guide-ban</a>. settings.hooks_desc=A Webhook-ok olyanok, mint az alapvető HTTP POST esemény triggerek. Amikor valami történik a Gogsban, akkor küldünk róla értesítést a címre amit beállítasz. Többet olvashatsz erről a <a target="_blank" href="%s">Webhooks Guide-ban</a>.
settings.webhooks.add_new=Új webhook készítése:
settings.webhooks.choose_a_type=Válassz egy típust...
settings.add_webhook=Webhook hozzáadása
settings.webhook_deletion=Webhook Törlése settings.webhook_deletion=Webhook Törlése
settings.webhook_deletion_desc=Ennek a Webhook-nak a törlése eltávolít róla minden információt, és a korábbi kézbesítéseknek a naplóját is. Biztosan folytatja? settings.webhook_deletion_desc=Ennek a Webhook-nak a törlése eltávolít róla minden információt, és a korábbi kézbesítéseknek a naplóját is. Biztosan folytatja?
settings.webhook_deletion_success=Webhook sikeresen törölve lett! settings.webhook_deletion_success=Webhook sikeresen törölve lett!
@@ -792,6 +814,8 @@ settings.webhook.response=Válasz
settings.webhook.headers=Fejlécek settings.webhook.headers=Fejlécek
settings.webhook.payload=Tartalom settings.webhook.payload=Tartalom
settings.webhook.body=Törzs settings.webhook.body=Törzs
settings.webhook.err_cannot_parse_payload_url=Nem sikerült feldolgozni a végpont URL címet: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=A GIT hook-okat maga a Git működteti, szerkesztheted a támogatott hook-ok fájljait a következő listában hogy egyéni műveleteket is végezzenek. settings.githooks_desc=A GIT hook-okat maga a Git működteti, szerkesztheted a támogatott hook-ok fájljait a következő listában hogy egyéni műveleteket is végezzenek.
settings.githook_edit_desc=Ha a hook nincs aktiválva, akkor egy minta sablon lesz mutatva. Ha a tartalmát üresen hagyja, akkor ez a hook ki lesz kapcsolva. settings.githook_edit_desc=Ha a hook nincs aktiválva, akkor egy minta sablon lesz mutatva. Ha a tartalmát üresen hagyja, akkor ez a hook ki lesz kapcsolva.
settings.githook_name=Hook megnevezés settings.githook_name=Hook megnevezés
@@ -819,10 +843,10 @@ settings.event_push=Push
settings.event_push_desc=Push-olás egy repository-ba settings.event_push_desc=Push-olás egy repository-ba
settings.event_issues=Problémák settings.event_issues=Problémák
settings.event_issues_desc=A probléma meg left nyitva, le left zárva, újranyitva, szerkesztve, hozzárendelve, visszarendelve, cimkézve, cimketelenítve, mérföldkövezve, vagy mérföldkőtelenítve. settings.event_issues_desc=A probléma meg left nyitva, le left zárva, újranyitva, szerkesztve, hozzárendelve, visszarendelve, cimkézve, cimketelenítve, mérföldkövezve, vagy mérföldkőtelenítve.
settings.event_issue_comment=Probléma hozzászólás
settings.event_issue_comment_desc=Probléma megjegyzés létrehozva, szerkesztve vagy törölve.
settings.event_pull_request=Beolvasztási kérés settings.event_pull_request=Beolvasztási kérés
settings.event_pull_request_desc=Beolvasztási kérés megnyitva, lezárva, újranyitva, hozzárendelve, visszarendelve, címkézve, címke eltávolítva, mérföldkövezve, mérföldkő eltávolítva vagy szinkronizálva. settings.event_pull_request_desc=Beolvasztási kérés megnyitva, lezárva, újranyitva, hozzárendelve, visszarendelve, címkézve, címke eltávolítva, mérföldkövezve, mérföldkő eltávolítva vagy szinkronizálva.
settings.event_issue_comment=Probléma hozzászólás
settings.event_issue_comment_desc=Probléma megjegyzés létrehozva, szerkesztve vagy törölve.
settings.event_release=Kiadás settings.event_release=Kiadás
settings.event_release_desc=Kiadás publikálva a tárolóban. settings.event_release_desc=Kiadás publikálva a tárolóban.
settings.active=Aktív settings.active=Aktív
@@ -852,6 +876,8 @@ settings.add_key_success=Az új deploy kulcsot ('%s') sikeresen hozzáadtuk!
settings.deploy_key_deletion=Deploy Kulcs Törlése settings.deploy_key_deletion=Deploy Kulcs Törlése
settings.deploy_key_deletion_desc=A deploy kulcs törlése minden kapcsolódó hozzáférést töröl a repository-ból. Biztosan folytatod? settings.deploy_key_deletion_desc=A deploy kulcs törlése minden kapcsolódó hozzáférést töröl a repository-ból. Biztosan folytatod?
settings.deploy_key_deletion_success=A deploy kulcs sikeresen törölve! settings.deploy_key_deletion_success=A deploy kulcs sikeresen törölve!
settings.description_desc=Tároló leírása. Maximum 512 karakter hosszúságú.
settings.description_length=Rendelkezésre álló karakterek
diff.browse_source=Forráskód Böngészése diff.browse_source=Forráskód Böngészése
diff.parent=szülő diff.parent=szülő
@@ -916,9 +942,8 @@ team_name_helper=Ezzel a névvel tudsz majd a csapatra hivatkozni.
team_desc_helper=Miről szól ez a csapat? team_desc_helper=Miről szól ez a csapat?
team_permission_desc=Milyen jogosultsága legyen ennek a csapatnak? team_permission_desc=Milyen jogosultsága legyen ennek a csapatnak?
form.name_reserved=Ez a szervezetnév ('%s') le van foglalva. form.name_not_allowed=A szervezetnév, vagy minta '%q' nem engedélyezett.
form.name_pattern_not_allowed=A szervezetnév ('%s') nem engedélyezett. form.team_name_not_allowed=A '%q' csapatnév, vagy minta nem engedélyezett
form.team_name_reserved=A csoportnév ('%s') a rendszer számára van fenntartva.
settings=Beállítások settings=Beállítások
settings.options=Opciók settings.options=Opciók
@@ -990,12 +1015,19 @@ first_page=Első
last_page=Utolsó last_page=Utolsó
total=Összesen: %d total=Összesen: %d
dashboard.build_info=Program építési információi
dashboard.app_ver=Alkalmazás verziója
dashboard.git_version=Git verzió
dashboard.go_version=Go verzió
dashboard.build_time=Program építésének időtartama
dashboard.build_commit=Program építési commit-ja
dashboard.statistic=Statisztika dashboard.statistic=Statisztika
dashboard.operations=Műveletek dashboard.operations=Műveletek
dashboard.system_status=Rendszerfigyelő Állapota dashboard.system_status=Rendszerfigyelő Állapota
dashboard.statistic_info=Az adatbázisban található: <b>%d</b> felhasználó, <b>%d</b> szervezet, <b>%d</b> publikus kulcs, <b>%d</b> tároló, <b>%d</b> figyelő, <b>%d</b> csillagozás, <b>%d</b> művelet, <b>%d</b> hozzáférés, <b>%d</b> probléma, <b>%d</b> megjegyzés, <b>%d</b> közösségi fiók, <b>%d</b> követő, <b>%d</b> tükör, <b>%d</b> kiadás, <b>%d</b> authentikáció, <b>%d</b> webhook, <b>%d</b> mérföldkő, <b>%d</b> cimke, <b>%d</b> hook feladat, <b>%d</b> csoport, <b>%d</b> frissítési feladat, <b>%d</b> csatolmány. dashboard.statistic_info=Az adatbázisban található: <b>%d</b> felhasználó, <b>%d</b> szervezet, <b>%d</b> publikus kulcs, <b>%d</b> tároló, <b>%d</b> figyelő, <b>%d</b> csillagozás, <b>%d</b> művelet, <b>%d</b> hozzáférés, <b>%d</b> probléma, <b>%d</b> megjegyzés, <b>%d</b> közösségi fiók, <b>%d</b> követő, <b>%d</b> tükör, <b>%d</b> kiadás, <b>%d</b> authentikáció, <b>%d</b> webhook, <b>%d</b> mérföldkő, <b>%d</b> cimke, <b>%d</b> hook feladat, <b>%d</b> csoport, <b>%d</b> frissítési feladat, <b>%d</b> csatolmány.
dashboard.operation_name=Művelet neve dashboard.operation_name=Művelet neve
dashboard.operation_switch=Átváltás dashboard.operation_switch=Átváltás
dashboard.select_operation_to_run=Kérlek válaszd ki a futtatandó műveletet
dashboard.operation_run=Futtatás dashboard.operation_run=Futtatás
dashboard.clean_unbind_oauth=A nem használt OAuthok kitakarítása dashboard.clean_unbind_oauth=A nem használt OAuthok kitakarítása
dashboard.clean_unbind_oauth_success=Minden nem használt OAuth sikeresen kitakarítva. dashboard.clean_unbind_oauth_success=Minden nem használt OAuth sikeresen kitakarítva.
@@ -1087,11 +1119,12 @@ repos.stars=Csillagok
repos.issues=Problémák repos.issues=Problémák
repos.size=Méret repos.size=Méret
auths.auth_manage_panel=Hitelesítés kezelő Panel auths.auth_sources=Hitelesítési források
auths.new=Új forrás hozzáadása auths.new=Új forrás hozzáadása
auths.name=Név auths.name=Név
auths.type=Típus auths.type=Típus
auths.enabled=Engedélyezett auths.enabled=Engedélyezett
auths.default=Alapértelmezett
auths.updated=Frissítve auths.updated=Frissítve
auths.auth_type=Hitelesítés típusa auths.auth_type=Hitelesítés típusa
auths.auth_name=Hitelesítési név auths.auth_name=Hitelesítési név
@@ -1128,9 +1161,9 @@ auths.enable_tls=TLS titkosítás engedélyezése
auths.skip_tls_verify=TLS ellenőrzése mellőzése auths.skip_tls_verify=TLS ellenőrzése mellőzése
auths.pam_service_name=PAM szolgáltatás neve auths.pam_service_name=PAM szolgáltatás neve
auths.enable_auto_register=Automatikus regisztráció engedélyezése auths.enable_auto_register=Automatikus regisztráció engedélyezése
auths.tips=Tippek
auths.edit=Hitelesítési beállítások szerkesztése auths.edit=Hitelesítési beállítások szerkesztése
auths.activated=Ez a hitelesítés mód aktiválva van auths.activated=Ez a hitelesítés mód aktiválva van
auths.default_auth=Ez a hitelesítés az alapértelmezett bejelentkezési forrás
auths.new_success=Az új hitelesítési mód '%s' sikeresen hozzáadva. auths.new_success=Az új hitelesítési mód '%s' sikeresen hozzáadva.
auths.update_success=A hitelesítési beállítások sikeresen firssítve lettek. auths.update_success=A hitelesítési beállítások sikeresen firssítve lettek.
auths.update=Hitelesítési forrás frissítése auths.update=Hitelesítési forrás frissítése
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=A hitelesítési mód törlésre kerül, biztosan folytat
auths.still_in_used=A hitelesítési mód még használatban van, mielőtt törölné válasszon más hitelesítési módot az érintett fiókokhoz. auths.still_in_used=A hitelesítési mód még használatban van, mielőtt törölné válasszon más hitelesítési módot az érintett fiókokhoz.
auths.deletion_success=Hitelesítési forrás sikeresen törölve! auths.deletion_success=Hitelesítési forrás sikeresen törölve!
auths.login_source_exist=Bejelentkezési forrás "%s" már létezik. auths.login_source_exist=Bejelentkezési forrás "%s" már létezik.
auths.github_api_endpoint=API végpont
config.not_set=(nincs beállítva) config.not_set=(nincs beállítva)
config.server_config=Kiszolgáló konfiguráció config.server_config=Kiszolgáló konfiguráció
config.app_name=Alkalmazás neve config.brand_name=Oldalnév kiválasztása
config.app_ver=Alkalmazás verziója
config.app_url=Alkalmazás URL-je
config.domain=Tartomány
config.offline_mode=Kapcsolat nélküli mód
config.disable_router_log=Útválasztás naplózásának letiltása
config.run_user=Futtató felhasználó config.run_user=Futtató felhasználó
config.run_mode=Futtatás módja config.run_mode=Futtatás módja
config.git_version=Git verzió config.server.external_url=Külső URL
config.static_file_root_path=Statikus fájl gyökérútvonal config.server.domain=Domain
config.log_file_root_path=Naplófájl gyökérútvonal config.server.protocol=Protokoll
config.reverse_auth_user=Visszafelé hitelesítés felhasználója config.server.http_addr=HTTP cím
config.server.http_port=HTTP port
config.server.cert_file=Tanusítvány fájl
config.server.key_file=Kulcsfájl
config.server.tls_min_version=Legalacsonyabb TLS verzió
config.server.unix_socket_permission=Unix socket engedély
config.server.local_root_url=Helyi gyökér URL
config.server.offline_mode=Offline mód
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Gzip bekapcsolása
config.server.app_data_path=Alkalmazás adatok elérési útvonala
config.server.load_assets_from_disk=Program hozzávalók betöltése lemezről
config.server.landing_url=Beérkezési URL
config.ssh_config=SSH konfiguráció config.ssh_config=SSH konfiguráció
config.ssh_enabled=Engedélyezett config.ssh.enabled=Bekapcsolva
config.ssh_start_builtin_server=Beépített kiszolgáló indítása config.ssh.domain=Külső domain
config.ssh_domain=Tartomány config.ssh.port=Nyitott port
config.ssh_port=Port config.ssh.root_path=Gyökér elérési útvonal
config.ssh_listen_port=Figyelő port config.ssh.keygen_path=ssh-keygen elérési útvonala
config.ssh_root_path=Gyökér elérési útvonal config.ssh.key_test_path=Kulcs ellenőrzés útvonala
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimális kulcsméret ellenőrzés
config.ssh_key_test_path=Kulcs ellenőrzés útvonala config.ssh.minimum_key_sizes=Kulcsok minimális mérete
config.ssh_keygen_path=Kulcsgeneráló ('ssh-keygen') elérési útja config.ssh.rewrite_authorized_keys_at_start=SSH "authorized_keys" fájl újraírása indításnál
config.ssh_minimum_key_size_check=Minimális kulcsméret ellenőrzés config.ssh.start_builtin_server=Beépített kiszolgáló indítása
config.ssh_minimum_key_sizes=Kulcsok Minimális Mérete config.ssh.listen_host=Hallgatási cím
config.ssh.listen_port=Hallgatási port
config.ssh.server_ciphers=Kiszolgáló titkosítás módszerei
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Tároló konfiguráció config.repo_config=Tároló konfiguráció
config.repo_root_path=Tárolók gyökérkönyvtára config.repo.root_path=Gyökér elérési útvonal
config.script_type=Szkript típus config.repo.script_type=Szkript típus
config.repo_force_private=Privát erőltetése config.repo.ansi_chatset=ANSI karakterkészlet
config.max_creation_limit=Maximum létrehozási korlát config.repo.force_private=Privát erőltetése
config.preferred_licenses=Előnyben részesített licencek config.repo.max_creation_limit=Maximum repo létrehozási korlát
config.disable_http_git=A HTTP protokoll letiltása GIT-hez config.repo.preferred_licenses=Előnyben részesített licencek
config.enable_local_path_migration=Engedélyezi a migrációt helyi elérési út alapján config.repo.disable_http_git=HTTP-n keresztüli git kikapcsolása
config.commits_fetch_concurrency=Konkurens lekérés config.repo.enable_local_path_migration=Engedélyezi a migrációt helyi elérési út alapján
config.repo.enable_raw_file_render_mode=nyers fájl kijelzés bekapcsolása
config.http_config=HTTP beállítások config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Hozzáférés vezérlés forrás szerint config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Feltöltés bekapcsolva
config.repo.upload.temp_path=Ideiglenes feltöltési útvonal
config.repo.upload.allowed_types=Feltöltésnél engedélyezett típusok
config.repo.upload.file_max_size=Maximálisan feltölthető fájlméret
config.repo.upload.max_files=Upload files limit
config.db_config=Adatbázis konfiguráció config.db_config=Adatbázis konfiguráció
config.db_type=Típus config.db.type=Típus
config.db_host=Állomás config.db.host=Kiszolgáló
config.db_name=Név config.db.name=Név
config.db_user=Felhasználó config.db.schema=Schema
config.db_ssl_mode=SSL-mód config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(csak "postgres" ) config.db.user=Felhasználó
config.db_path=Elérési út config.db.ssl_mode=SSL mód
config.db_path_helper=("sqlite3" és "tidb") config.db.ssl_mode_helper=(csak "postgres" esetében)
config.db.path=Útvonal
config.db.path_helper=(csak "sqlite3" esetében)
config.db.max_open_conns=Maximum egyszerre nyitott csatlakozások
config.db.max_idle_conns=Maximum tétlen kapcsolatok száma
config.service_config=Szolgáltatás beállításai config.security_config=Biztonsági beállítások
config.register_email_confirm=E-mail megerősítés szükséges config.security.login_remember_days=Bejelentkezési adatok megjegyzésének napjai
config.disable_register=Regisztráció tiltása config.security.cookie_remember_name=Emlékezési süti elnevezése
config.show_registration_button=Regisztráció gomb megjelenítése config.security.cookie_username=Felhasználónév süti
config.require_sign_in_view=Bejelentkező Nézet config.security.cookie_secure=Biztonságos sütik engedélyezése
config.mail_notify=E-mail értesítés config.security.reverse_proxy_auth_user=Fordított proxy hitelesítési fejléc
config.disable_key_size_check=Minimális kulcsméret ellenőrzés letiltása config.security.enable_login_status_cookie=Bejelentkezési állapot süti bekapcsolása
config.enable_captcha=Ellenőrző kód engedélyezése config.security.login_status_cookie_name=Bejelentkezési állapot süti neve
config.active_code_lives=Aktivál kód élet config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Jelkód élettartamának visszaálítása
config.webhook_config=Webhook beállítás config.email_config=E-mail beállítások
config.queue_length=Várólista hossza config.email.enabled=Bekapcsolva
config.deliver_timeout=Kézbesítési időtúllépés config.email.subject_prefix=Tárgy előtag
config.skip_tls_verify=TLS ellenőrzése mellőzése config.email.host=Kiszolgáló
config.email.from=Tól/től
config.email.user=Felhasználó
config.email.disable_helo=HELO letiltása
config.email.helo_hostname=HELO állományneve
config.email.skip_verify=Tanusítvány igazolásának átugrása
config.email.use_certificate=Egyedi tanusítvány használata
config.email.cert_file=Tanusítvány fájl
config.email.key_file=Kulcsfájl
config.email.use_plain_text=Sima szöveg (plaintext) használata
config.email.add_plain_text_alt=Sima szöveg (plaintext) alternatív szövege
config.email.send_test_mail=Teszt e-mail küldése
config.email.test_mail_failed=Nem sikerült kiküldeni a teszt e-mailt '%s'-nek: %v
config.email.test_mail_sent=Teszt e-mail kiküldve '%s'-nek.
config.mailer_config=Levelező beállítások config.auth_config=Hitelesítési beállítások
config.mailer_enabled=Engedélyezett config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=HELO letiltása config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Jelszó visszaállítási kód élettartama
config.mailer_host=Állomás config.auth.require_email_confirm=E-mail megerősítés szükségessé tétele
config.mailer_user=Felhasználó config.auth.require_sign_in_view=Bejelentkező nézet követelése
config.send_test_mail=Teszt E-mail küldése config.auth.disable_registration=Regisztráció kikapcsolása
config.test_mail_failed=Nem sikerült kiküldeni az e-mailt '%s': %v config.auth.enable_registration_captcha=CAPTCHA engedélyezése regisztrációhoz
config.test_mail_sent=Teszt e-mail kiküldve '%s'. config.auth.enable_reverse_proxy_authentication=Fordított proxy hitelesítés bekapcsolása
config.auth.enable_reverse_proxy_auto_registration=Fordított proxy automatikus regisztrációjának bekapcsolása
config.auth.reverse_proxy_authentication_header=Fordított proxy hitelesítési fejléc
config.oauth_config=OAuth-konfiguráció config.user_config=Felhasználói beállítások
config.oauth_enabled=Engedélyezett config.user.enable_email_notify=Email értesítés engedélyezése
config.cache_config=Cache beállítás
config.cache_adapter=Gyorsítótár-adapter
config.cache_interval=Gyorsítótár intervallum
config.cache_conn=Cache kapcsolat
config.session_config=Munkamenet beállítások config.session_config=Munkamenet beállítások
config.session_provider=Munkamenet szolgálta config.session.provider=Session ellá
config.provider_config=Szolgáltató beállítás config.session.provider_config=Session ellátó konfigurációja
config.cookie_name=Süti neve config.session.cookie_name=Süti
config.enable_set_cookie=Süti használatának engedélyezése config.session.https_only=Csak HTTPS
config.gc_interval_time=GC intervallum idő config.session.gc_interval=Szemétgyűjtés intervalluma
config.session_life_time=Munkamenet élettartama config.session.max_life_time=Maximális élettartam
config.https_only=Csak HTTPS config.session.csrf_cookie_name=CSRF süti neve
config.cookie_life_time=Cookie-k élettartama
config.cache_config=Cache beállítás
config.cache.adapter=Adapter
config.cache.interval=Szemétgyűjtés intervalluma
config.cache.host=Kiszolgáló
config.http_config=HTTP beállítások
config.http.access_control_allow_origin=Access-Control-Allow-Origin fejléc
config.attachment_config=Melléklet beállítás
config.attachment.enabled=Bekapcsolva
config.attachment.path=Elérési útvonal
config.attachment.allowed_types=Engedélyezett típusok
config.attachment.max_size=Maximum méret
config.attachment.max_files=Maximálisan feltölthető fájlok mennyisége
config.release_config=Szoftver kiadás beállítás
config.release.attachment.enabled=Mellékletek bekapcsolva
config.release.attachment.allowed_types=Engedélyezett melléklet típusok
config.release.attachment.max_size=Melléklet maximális mérete
config.release.attachment.max_files=Maximális mellékelt fájlok mennyisége
config.picture_config=Kép beállítások config.picture_config=Kép beállítások
config.picture_service=Kép szolgáltatás config.picture.avatar_upload_path=Profilkép feltöltési útvonal
config.disable_gravatar=Tiltsa le a Gravatart config.picture.repo_avatar_upload_path=Repository kép feltöltési útvonal
config.enable_federated_avatar=Összevont profilkép lekérés engedélyezése config.picture.gravatar_source=Gravatar forrás
config.picture.disable_gravatar=Gravatar Kikapcsolása
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Tükrözés beállítás
config.mirror.default_interval=Alapértelmezett intervallum
config.webhook_config=Webhook beállítás
config.webhook.types=Típusok
config.webhook.deliver_timeout=Kézbesítési időtúllépés
config.webhook.skip_tls_verify=TLS ellenőrzés kihagyása
config.git_config=Git konfiguráció config.git_config=Git konfiguráció
config.git_disable_diff_highlight=Különbségi nézetben a szintakszis kiemelés kikapcsolása config.git.disable_diff_highlight=Különbségi szintakszis kiemelésének kikapcsolása
config.git_max_diff_lines=Maximális sorok száma különbségi nézetben (egy fájl esetén) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Maximális karakterek száma különbségi nézetben (egy fájl esetén) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Maximális fájlok száma különbségi nézetben config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Szemétgyűjtő (GC) argumentumok config.git.gc_args=Szemétgyűjtő (GC) argumentumok
config.git_migrate_timeout=Migráció időtúllépés config.git.migrate_timeout=Migráció időtúllépés
config.git_mirror_timeout=Tükör frissítési időtúllépés config.git.mirror_timeout=Tükör fetch időtúllépés
config.git_clone_timeout=Migráció időtúllépés config.git.clone_timeout=Klónozási időtúllépés
config.git_pull_timeout=Frissítő időtúllépés config.git.pull_timeout=Lehúzási időtúllépés
config.git_gc_timeout=Szemétgyűjtő (GC) időtúllépés config.git.gc_timeout=Szemétgyűjtés időtúllépése
config.lfs_config=LFS Beállítások
config.lfs.storage=Tárhely
config.lfs.objects_path=Objektumok elérési útvonala
config.log_config=Naplózás beállítása config.log_config=Naplózás beállítása
config.log_file_root_path=Naplófájl gyökérútvonal
config.log_mode=Mód config.log_mode=Mód
config.log_options=Opciók config.log_options=Opciók
@@ -1284,7 +1383,6 @@ notices.delete_success=A rendszer értesítések sikeresen törölve.
[action] [action]
create_repo=létrehozott tárolót: <a href="%s"> %s</a> create_repo=létrehozott tárolót: <a href="%s"> %s</a>
fork_repo=lemásolta a(z) <a href="%s">%s</a> tárolót
rename_repo=átnevezte a <code>%[1]s</code> tárolót <a href="%[2]s">%[3]s</a>-ra rename_repo=átnevezte a <code>%[1]s</code> tárolót <a href="%[2]s">%[3]s</a>-ra
commit_repo=feltöltött a <a href="%[1]s/src/%[2]s">%[3]s</a> ágba ide: <a href="%[1]s">%[4]s</a> commit_repo=feltöltött a <a href="%[1]s/src/%[2]s">%[3]s</a> ágba ide: <a href="%[1]s">%[4]s</a>
compare_commits=%d commit összehasonlítása compare_commits=%d commit összehasonlítása
@@ -1301,6 +1399,10 @@ create_branch=létrehozott egy új <a href="%[1]s/src/%[2]s">%[3]s</a> ágat ebb
delete_branch=törölt egy ágat <code>%[2]s</code> ekkor: <a href="%[1]s">%[3]s</a> delete_branch=törölt egy ágat <code>%[2]s</code> ekkor: <a href="%[1]s">%[3]s</a>
push_tag=feltöltött egy cimkét: <a href="%s/src/%s">%[2]s</a> ide: <a href="%[1]s">%[3]s</a> push_tag=feltöltött egy cimkét: <a href="%s/src/%s">%[2]s</a> ide: <a href="%[1]s">%[3]s</a>
delete_tag=törölt egy cimkét <code>%[2]s</code> ekkor: <a href="%[1]s">%[3]s</a> delete_tag=törölt egy cimkét <code>%[2]s</code> ekkor: <a href="%[1]s">%[3]s</a>
fork_repo=lemásolta a(z) <a href="%s">%s</a> tárolót
mirror_sync_push=commitok szinkronizálva a <a href="%[1]s/src/%[2]s">%[3]s</a> ágba a <a href="%[1]s">%[4]s</a> tárolóban, tükörről
mirror_sync_create=új hivatkozás szinkronizálva: <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a> tárolóban, tükörről
mirror_sync_delete=szinkronizálva és törölve a <code>%[2]s</code> hivatkozás a <a href="%[1]s">%[3]s</a> tárolóból, tükörről
[tool] [tool]
ago= ago=
@@ -1308,20 +1410,21 @@ from_now=mostantól
now=most now=most
1s=1 másodperce %s 1s=1 másodperce %s
1m=1 perce %s 1m=1 perce %s
1h=1 órája 1h=1 órája %s
1d=1 napja %s 1d=1 napja %s
1w=1 hete %s 1w=1 hete %s
1mon=1 hónapja %s 1mon=1 hónapja %s
1y=1 éve %s 1y=1 éve %s
seconds=%d másodperce %s seconds=%d másodperce %s
minutes=%d perce %s minutes=%d perce %s
hours=%d órája hours=%d órája %s
days=%d napja %s days=%d napja %s
weeks=%d hete %s weeks=%d hete %s
months=%d hónapja %s months=%d hónapja %s
years=%d éve %s years=%d éve %s
raw_seconds=másodperc raw_seconds=másodperc
raw_minutes=perc raw_minutes=perc
raw_hours=órák
[dropzone] [dropzone]
default_message=Húzz ide fájlokat vagy kattints a feltöltéshez. default_message=Húzz ide fájlokat vagy kattints a feltöltéshez.

View File

@@ -9,7 +9,6 @@ sign_out=Keluar
sign_up=Daftar sign_up=Daftar
register=Daftar register=Daftar
website=Situs web website=Situs web
version=Versi
page=Halaman page=Halaman
template=Templat template=Templat
language=Bahasa language=Bahasa
@@ -44,17 +43,22 @@ issues=Masalah
cancel=Batal cancel=Batal
[status]
page_not_found=Halaman tidak ditemukan
internal_server_error=Kesalahan Server Internal
[install] [install]
install=Instalasi install=Instalasi
title=Langkah-langkah untuk Menjalankan Pertama Kali title=Langkah-langkah untuk Menjalankan Pertama Kali
docker_helper=Jika Anda menjalankan Gogs dalam Docker, silakan baca <a target="_blank" href="%s"> Petunjuk</a> dengan hati-hati sebelum Anda mengubah sesuatu di Halaman ini! docker_helper=Jika Anda menjalankan Gogs dalam Docker, silakan baca <a target="_blank" href="%s"> Petunjuk</a> dengan hati-hati sebelum Anda mengubah sesuatu di Halaman ini!
requite_db_desc=Gogs memerlukan MySQL, PostgreSQL, SQLite3, MSSQL atau TiDB. requite_db_desc=Gogs memerlukan MySQL, PostgreSQL, SQLite3 atau TiDB.
db_title=Pengaturan Basisdata db_title=Pengaturan Basisdata
db_type=Tipe Basisdata db_type=Tipe Basisdata
host=Host host=Host
user=Pengguna user=Pengguna
password=Sandi password=Sandi
db_name=Nama Basisdata db_name=Nama Basisdata
db_schema=Skema
db_helper=Harap menggunakan INNODB engine dengan charset utf8_general_ci untuk MySQL. db_helper=Harap menggunakan INNODB engine dengan charset utf8_general_ci untuk MySQL.
ssl_mode=Mode SSL ssl_mode=Mode SSL
path=Path path=Path
@@ -71,7 +75,7 @@ repo_path_helper=Semua repositori Git akan disimpan ke direktori ini.
run_user=Menjalankan pengguna run_user=Menjalankan pengguna
run_user_helper=Pengguna harus memiliki akses ke path akar repositori dan menjalankan Gogs. run_user_helper=Pengguna harus memiliki akses ke path akar repositori dan menjalankan Gogs.
domain=Domain domain=Domain
domain_helper=Ini mempengaruhi URL klon SSH. domain_helper=Ini memengaruhi URL kloning SSH.
ssh_port=Port SSH ssh_port=Port SSH
ssh_port_helper=Nomor port yang menggunakan SSH server, biarkan kosong untuk menonaktifkan fitur SSH. ssh_port_helper=Nomor port yang menggunakan SSH server, biarkan kosong untuk menonaktifkan fitur SSH.
use_builtin_ssh_server=Menggunakan Builtin SSH Server use_builtin_ssh_server=Menggunakan Builtin SSH Server
@@ -82,8 +86,9 @@ app_url=URL Aplikasi
app_url_helper=Ini mempengaruhi URL klon HTTP/HTTPS dan di suatu tempat dalam email. app_url_helper=Ini mempengaruhi URL klon HTTP/HTTPS dan di suatu tempat dalam email.
log_root_path=Path log log_root_path=Path log
log_root_path_helper=Direktori untuk menulis berkas log. log_root_path_helper=Direktori untuk menulis berkas log.
enable_console_mode=Mengaktifkan Mode konsol enable_console_mode=Mengaktifkan Mode Konsol
enable_console_mode_popup=Selain mode file, juga mencetak log ke konsol. enable_console_mode_popup=Selain mode file, juga mencetak log ke konsol.
default_branch=Default Branch
optional_title=Pengaturan opsional optional_title=Pengaturan opsional
email_title=Pengaturan layanan email email_title=Pengaturan layanan email
@@ -122,6 +127,7 @@ run_user_not_match=Pengguna yang sedang menjalankan bukanlah pengguna saat ini:
smtp_host_missing_port=Alamat Host SMTP hilang di alamat. smtp_host_missing_port=Alamat Host SMTP hilang di alamat.
invalid_smtp_from=SMTP Dari lapangan tidak sesuai: %v invalid_smtp_from=SMTP Dari lapangan tidak sesuai: %v
save_config_failed=Gagal untuk menyimpan konfigurasi: %v save_config_failed=Gagal untuk menyimpan konfigurasi: %v
init_failed=Gagal melakukan inisialiasi aplikasi: %v
invalid_admin_setting=Pengaturan akun admin tidak valid: %v invalid_admin_setting=Pengaturan akun admin tidak valid: %v
install_success=Selamat datang! Kami senang bahwa Anda memilih Gogs, bersenang-senang dan berhati-hatilah. install_success=Selamat datang! Kami senang bahwa Anda memilih Gogs, bersenang-senang dan berhati-hatilah.
invalid_log_root_path=Path akar log tidak valid: %v invalid_log_root_path=Path akar log tidak valid: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Sudah memiliki account? Sign in sekarang!
social_register_hepler_msg=Sudah memiliki account? Ikat sekarang! social_register_hepler_msg=Sudah memiliki account? Ikat sekarang!
disable_register_prompt=Maaf, pendaftaran telah dinonaktifkan. Hubungi administrator situs. disable_register_prompt=Maaf, pendaftaran telah dinonaktifkan. Hubungi administrator situs.
disable_register_mail=Maaf, konfirmasi pendaftaran melalui email telah dinonaktifkan. disable_register_mail=Maaf, konfirmasi pendaftaran melalui email telah dinonaktifkan.
auth_source=Sumber Autentikasi
local=Lokal
remember_me=Ingat saya remember_me=Ingat saya
forgot_password=Lupa Sandi forgot_password=Lupa Sandi
forget_password=Lupa sandi? forget_password=Lupa sandi?
@@ -158,7 +166,7 @@ sign_up_now=Membutuhkan akun? Daftar sekarang.
confirmation_mail_sent_prompt=Email konfirmasi baru telah terkirim ke <b>%s</b>, silakan cek inbox Anda dalam waktu %d jam untuk menyelesaikan proses pendaftaran. confirmation_mail_sent_prompt=Email konfirmasi baru telah terkirim ke <b>%s</b>, silakan cek inbox Anda dalam waktu %d jam untuk menyelesaikan proses pendaftaran.
active_your_account=Aktifkan Akun Anda active_your_account=Aktifkan Akun Anda
prohibit_login=Login tidak diperbolehkan prohibit_login=Login tidak diperbolehkan
prohibit_login_desc=Account Anda tidak diperbolehkan untuk login, silahkan hubungi admin situs. prohibit_login_desc=Akun Anda tidak diperbolehkan untuk masuk, silakan hubungi admin situs.
resent_limit_prompt=Maaf, Anda telah meminta email aktivasi beberapa saat lalu. Silakan tunggu 3 menit kemudian untuk dapat mencoba lagi. resent_limit_prompt=Maaf, Anda telah meminta email aktivasi beberapa saat lalu. Silakan tunggu 3 menit kemudian untuk dapat mencoba lagi.
has_unconfirmed_mail=Hi %s, Anda memiliki alamat email yang belum terkonfirmasi (<b>%s</b>). Jika Anda belum menerima email konfirmasi atau perlu untuk mengirim ulang yang baru, silakan klik pada tombol di bawah ini. has_unconfirmed_mail=Hi %s, Anda memiliki alamat email yang belum terkonfirmasi (<b>%s</b>). Jika Anda belum menerima email konfirmasi atau perlu untuk mengirim ulang yang baru, silakan klik pada tombol di bawah ini.
resend_mail=Klik di sini untuk mengirim kembali email aktivasi resend_mail=Klik di sini untuk mengirim kembali email aktivasi
@@ -169,10 +177,10 @@ reset_password_helper=Klik di sini untuk menyetel ulang sandi
password_too_short=Panjang sandi tidak bisa kurang dari 6 huruf. password_too_short=Panjang sandi tidak bisa kurang dari 6 huruf.
non_local_account=Akun non-lokal tidak dapat mengganti password lewat Gogs. non_local_account=Akun non-lokal tidak dapat mengganti password lewat Gogs.
login_two_factor=Dua faktor otentikasi login_two_factor=Autentikasi Dua Faktor
login_two_factor_passcode=Kode otentikasi login_two_factor_passcode=Kode Akses Autentikasi
login_two_factor_enter_recovery_code=Masukkan kode pemulihan dua faktor login_two_factor_enter_recovery_code=Masukkan kode pemulihan dua faktor
login_two_factor_recovery=Dua faktor pemulihan login_two_factor_recovery=Pemulihan Dua Faktor
login_two_factor_recovery_code=Kode pemulihan login_two_factor_recovery_code=Kode pemulihan
login_two_factor_enter_passcode=Masukkan kode akses dua faktor login_two_factor_enter_passcode=Masukkan kode akses dua faktor
login_two_factor_invalid_recovery_code=Kode pemulihan telah digunakan atau tidak sesuai. login_two_factor_invalid_recovery_code=Kode pemulihan telah digunakan atau tidak sesuai.
@@ -229,6 +237,7 @@ org_name_been_taken=Nama organisasi telah diambil.
team_name_been_taken=Nama tim telah diambil. team_name_been_taken=Nama tim telah diambil.
email_been_used=Alamat email telah digunakan. email_been_used=Alamat email telah digunakan.
username_password_incorrect=Nama pengguna atau sandi tidak benar. username_password_incorrect=Nama pengguna atau sandi tidak benar.
auth_source_mismatch=Sumber autentikasi yang dipilih tidak terkait dengan pengguna.
enterred_invalid_repo_name=Pastikan bahwa nama repositori yang Anda masukkan benar. enterred_invalid_repo_name=Pastikan bahwa nama repositori yang Anda masukkan benar.
enterred_invalid_owner_name=Pastikan bahwa nama pemilik yang Anda masukkan benar. enterred_invalid_owner_name=Pastikan bahwa nama pemilik yang Anda masukkan benar.
enterred_invalid_password=Harap pastikan bahwa sandi yang Anda masukkan benar. enterred_invalid_password=Harap pastikan bahwa sandi yang Anda masukkan benar.
@@ -237,7 +246,7 @@ last_org_owner=Menghapus pengguna terakhir dari tim pemilik tidak diperbolehkan,
invalid_ssh_key=Maaf, kami tidak dapat memverifikasi kunci SSH Anda: %s invalid_ssh_key=Maaf, kami tidak dapat memverifikasi kunci SSH Anda: %s
unable_verify_ssh_key=Gogs tidak dapat memverifikasi kunci SSH Anda, tetapi kita menganggap bahwa itu sah, silakan periksa kembali. unable_verify_ssh_key=Gogs tidak dapat memverifikasi kunci SSH Anda, tetapi kita menganggap bahwa itu sah, silakan periksa kembali.
auth_failed=Otentikasi gagal: %v auth_failed=Autentikasi gagal: %v
still_own_repo=Akun Anda masih memiliki kepemilikan atas setidaknya satu repositori, Anda harus menghapus atau mentransfernya terlebih dahulu. still_own_repo=Akun Anda masih memiliki kepemilikan atas setidaknya satu repositori, Anda harus menghapus atau mentransfernya terlebih dahulu.
still_has_org=Akun Anda masih memiliki keanggotaan dalam setidaknya satu organisasi, Anda harus meninggalkan atau menghapus keanggotaan Anda terlebih dahulu. still_has_org=Akun Anda masih memiliki keanggotaan dalam setidaknya satu organisasi, Anda harus meninggalkan atau menghapus keanggotaan Anda terlebih dahulu.
@@ -256,8 +265,7 @@ following=Mengikuti
follow=Ikuti follow=Ikuti
unfollow=Berhenti mengikuti unfollow=Berhenti mengikuti
form.name_reserved=Username '%s' tidak tersedia. form.name_not_allowed=Nama pengguna atau pola %q tidak diizinkan.
form.name_pattern_not_allowed=Pola username '%s' tidak diperbolehkan.
[settings] [settings]
profile=Profil profile=Profil
@@ -271,7 +279,7 @@ applications=Aplikasi
delete=Menghapus akun delete=Menghapus akun
public_profile=Profil publik public_profile=Profil publik
profile_desc=Alamat email Anda bersifat publik dan akan digunakan untuk setiap akun pemberitahuan terkait, dan setiap operasi berbasis web yang dilakukan melalui situs. profile_desc=Alamat email Anda bersifat publik dan akan digunakan untuk setiap akun yang terkait pemberitahuan dan setiap operasi berbasis web yang dilakukan melalui situs.
password_username_disabled=Pengguna jenis bebas-lokal tidak diperbolehkan untuk mengubah nama pengguna mereka. password_username_disabled=Pengguna jenis bebas-lokal tidak diperbolehkan untuk mengubah nama pengguna mereka.
full_name=Nama lengkap full_name=Nama lengkap
website=Situs web website=Situs web
@@ -285,7 +293,7 @@ cancel=Batal
lookup_avatar_by_mail=Cari avatar dari email lookup_avatar_by_mail=Cari avatar dari email
federated_avatar_lookup=Aktifkan Pencarian Avatar Representasi federated_avatar_lookup=Aktifkan Pencarian Avatar Representasi
enable_custom_avatar=Mengaktifkan avatar kustom enable_custom_avatar=Gunakan Avatar Kostum
choose_new_avatar=Pilih avatar baru choose_new_avatar=Pilih avatar baru
update_avatar=Ubah pengaturan avatar update_avatar=Ubah pengaturan avatar
delete_current_avatar=Hapus avatar terkini delete_current_avatar=Hapus avatar terkini
@@ -309,6 +317,7 @@ delete_email=Hapus
email_deletion=Penghapusan email email_deletion=Penghapusan email
email_deletion_desc=Menghapus alamat email ini akan menghapus informasi yang berhubungan dengan akun Anda. Lanjutkan? email_deletion_desc=Menghapus alamat email ini akan menghapus informasi yang berhubungan dengan akun Anda. Lanjutkan?
email_deletion_success=Email telah berhasil diperbarui! email_deletion_success=Email telah berhasil diperbarui!
email_deletion_primary=Tidak bisa menghapus email utama
add_new_email=Menambah alamat email baru add_new_email=Menambah alamat email baru
add_email=Tambahkan email add_email=Tambahkan email
add_email_confirmation_sent=Email konfirmasi baru telah dikirim ke '%s', silakan cek inboxmu dalam waktu %d jam untuk menyelesaikan proses konfirmasi. add_email_confirmation_sent=Email konfirmasi baru telah dikirim ke '%s', silakan cek inboxmu dalam waktu %d jam untuk menyelesaikan proses konfirmasi.
@@ -317,7 +326,7 @@ add_email_success=Alamat email barumu telah berhasil ditambahkan.
manage_ssh_keys=Kelola Kunci SSH manage_ssh_keys=Kelola Kunci SSH
add_key=Tambah kunci add_key=Tambah kunci
ssh_desc=Ini adalah daftar kunci SSH yang terkait dengan akun Anda. Karena kunci ini memungkinkan seseorang menggunakannya untuk mendapatkan akses ke repositori Anda, sangat penting bagi Anda untuk memastikan Anda mengenalinya. ssh_desc=Ini adalah daftar kunci SSH yang terkait dengan akun Anda. Karena kunci ini memungkinkan seseorang menggunakannya untuk mendapatkan akses ke repositori Anda, sangat penting bagi Anda untuk memastikan Anda mengenalinya.
ssh_helper=<strong>Nggak tau gimana?</strong> Cek arahannya GitHub buat<a href="%s">bikin kunci SSH-mu sendiri</a> atau benerin <a href="%s">masalah yang umum</a> yang mungkin sedang kamu alami dengan SSH-mu. ssh_helper=<strong>Tidak tahu caranya?</strong> Kunjungi petunjuk GitHub untuk <a href="%s">membuat kunci SSH Anda sendiri</a> atau perbaiki <a href="%s">masalah umum</a> yang mungkin sedang Anda alami dengan SSH.
add_new_key=Tambah kunci SSH add_new_key=Tambah kunci SSH
ssh_key_been_used=Public key telah digunakan. ssh_key_been_used=Public key telah digunakan.
ssh_key_name_used=Public key dengan nama itu udah pernah ada. ssh_key_name_used=Public key dengan nama itu udah pernah ada.
@@ -334,7 +343,7 @@ no_activity=Tidak ada aktifitas terakhir
key_state_desc=Kunci ini digunakan dalam 7 hari terakhir key_state_desc=Kunci ini digunakan dalam 7 hari terakhir
token_state_desc=Token ini digunakan dalam 7 hari terakhir token_state_desc=Token ini digunakan dalam 7 hari terakhir
two_factor=Otentikasi dua faktor two_factor=Autentikasi dua faktor
two_factor_status=Status: two_factor_status=Status:
two_factor_on=Nyala two_factor_on=Nyala
two_factor_off=Mati two_factor_off=Mati
@@ -342,26 +351,28 @@ two_factor_enable=Aktifkan
two_factor_disable=Nonaktifkan two_factor_disable=Nonaktifkan
two_factor_view_recovery_codes=Lihat dan simpan <a href="%s%s"> kode pemulihan anda</a> di tempat yang aman. Anda dapat menggunakannya sebagai kode akses jika Anda kehilangan akses otentikasi aplikasi. two_factor_view_recovery_codes=Lihat dan simpan <a href="%s%s"> kode pemulihan anda</a> di tempat yang aman. Anda dapat menggunakannya sebagai kode akses jika Anda kehilangan akses otentikasi aplikasi.
two_factor_http=Untuk operasi HTTP/HTTPS, Anda tidak lagi mampu menggunakan nama pengguna dan kata sandi. Silakan membuat dan menggunakan <a href="%[1]s%[2]s"> Token akses pribadi</a> sebagai kredensial Anda, misalnya <code>%[3]s</code>. two_factor_http=Untuk operasi HTTP/HTTPS, Anda tidak lagi mampu menggunakan nama pengguna dan kata sandi. Silakan membuat dan menggunakan <a href="%[1]s%[2]s"> Token akses pribadi</a> sebagai kredensial Anda, misalnya <code>%[3]s</code>.
two_factor_enable_title=Aktifkan Otentikasi Dua-faktor two_factor_enable_title=Aktifkan Autentikasi Dua Faktor
two_factor_scan_qr=Silakan gunakan aplikasi autentikasi Anda untuk memindai gambar: two_factor_scan_qr=Silakan gunakan aplikasi autentikasi Anda untuk memindai gambar:
two_factor_or_enter_secret=Atau masukkan rahasianya: two_factor_or_enter_secret=Atau masukkan rahasianya:
two_factor_then_enter_passcode=Masukan kode akses: two_factor_then_enter_passcode=Kemudian, masukkan kode akses:
two_factor_verify=Verifikasi two_factor_verify=Verifikasi
two_factor_invalid_passcode=Kode akses yang Anda masukan tidak sah, silahkan coba lagi! two_factor_invalid_passcode=Kode akses yang Anda masukkan tidak sah, silakan coba lagi!
two_factor_enable_error=Aktifkan Autentikasi dua faktor gagal: %v two_factor_reused_passcode=Kode akses yang Anda masukkan sudah digunakan, coba yang lain!
two_factor_enable_success=Autentikasi dua faktor telah memungkinkan akun Anda berhasil! two_factor_enable_error=Gagal mengaktifkan autentikasi Dua Faktor: %v
two_factor_recovery_codes_title=Kode Pemulihan Otentikasi dua faktor two_factor_enable_success=Autentikasi Dua faktor untuk akun Anda berhasil diaktifkan!
two_factor_recovery_codes_title=Kode Pemulihan Autentikasi Dua Faktor
two_factor_recovery_codes_desc=Kode pemulihan digunakan saat Anda sementara kehilangan akses ke aplikasi autentikasi Anda. Setiap kode pemulihan hanya dapat digunakan satu kali, <b> simpan kode ini di tempat yang aman </ b>. two_factor_recovery_codes_desc=Kode pemulihan digunakan saat Anda sementara kehilangan akses ke aplikasi autentikasi Anda. Setiap kode pemulihan hanya dapat digunakan satu kali, <b> simpan kode ini di tempat yang aman </ b>.
two_factor_regenerate_recovery_codes=Regenerate Recovery Codes two_factor_regenerate_recovery_codes=Regenerate Recovery Codes
two_factor_regenerate_recovery_codes_error=Regenerasi kode pemulihan gagal: %v two_factor_regenerate_recovery_codes_error=Regenerasi kode pemulihan gagal: %v
two_factor_regenerate_recovery_codes_success=Kode pemulihan baru telah berhasil dibuat! two_factor_regenerate_recovery_codes_success=Kode pemulihan baru telah berhasil dibuat!
two_factor_disable_title=Nonaktifkan Otentikasi Dua Faktor two_factor_disable_title=Nonaktifkan Autentikasi Dua Faktor
two_factor_disable_desc=Tingkat keamanan akun Anda akan menurun setelah autentikasi dua faktor dinonaktifkan. Apakah Anda ingin melanjutkan? two_factor_disable_desc=Tingkat keamanan akun Anda akan menurun setelah autentikasi dua faktor dinonaktifkan. Apakah Anda ingin melanjutkan?
two_factor_disable_success=Autentikasi dua faktor telah berhasil dilakukan! two_factor_disable_success=Autentikasi dua faktor telah berhasil dilakukan!
manage_access_token=Kelola Akses Token pribadi manage_access_token=Kelola Akses Token pribadi
generate_new_token=Buat Token Baru generate_new_token=Buat Token Baru
tokens_desc=Token yang Anda buat dapat digunakan untuk mengakses API-nya Gogs. tokens_desc=Token yang Anda buat dapat digunakan untuk mengakses API-nya Gogs.
access_token_tips=Personal access token mungkin digunakan sebagai username atau password. Sangatn direkomendasikan untuk menggunakan "x-access-token" sebagai username atau personal access token sebagai password untuk aplikasi git.
new_token_desc=Setiap token akan memiliki akses penuh ke akunmu. new_token_desc=Setiap token akan memiliki akses penuh ke akunmu.
token_name=Nama Token token_name=Nama Token
generate_token=Buat Token generate_token=Buat Token
@@ -370,6 +381,7 @@ delete_token=Hapus
access_token_deletion=Penghapusan Akses Token Pribadi access_token_deletion=Penghapusan Akses Token Pribadi
access_token_deletion_desc=Hapus token akses pribadi ini akan menghapus semua akses aplikasi yang terkait. Apakah Anda ingin melanjutkan? access_token_deletion_desc=Hapus token akses pribadi ini akan menghapus semua akses aplikasi yang terkait. Apakah Anda ingin melanjutkan?
delete_token_success=Token akses pribadi telah berhasil dihapus! Jangan lupa untuk mengupdate aplikasi anda juga. delete_token_success=Token akses pribadi telah berhasil dihapus! Jangan lupa untuk mengupdate aplikasi anda juga.
token_name_exists=Token dengan nama yang sama telah digunakan.
orgs.none=Anda bukan anggota organisasi manapun. orgs.none=Anda bukan anggota organisasi manapun.
orgs.leave_title=Meninggalkan organisasi orgs.leave_title=Meninggalkan organisasi
@@ -391,7 +403,9 @@ owner=Pemilik
repo_name=Nama Repositori repo_name=Nama Repositori
repo_name_helper=Nama repositori yang baik biasanya terdiri dari kata kunci yang pendek, mudah diingat dan unik. repo_name_helper=Nama repositori yang baik biasanya terdiri dari kata kunci yang pendek, mudah diingat dan unik.
visibility=Visibilitas visibility=Visibilitas
unlisted=Tidak terdaftar
visiblity_helper=Repositori ini <span class="ui red text">Pribadi</span> visiblity_helper=Repositori ini <span class="ui red text">Pribadi</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Situs admin telah memaksa semua repositori baru menjadi <span class="ui red text">Pribadi</span> visiblity_helper_forced=Situs admin telah memaksa semua repositori baru menjadi <span class="ui red text">Pribadi</span>
visiblity_fork_helper=(Perubahan nilai ini akan mempengaruhi semua garpu) visiblity_fork_helper=(Perubahan nilai ini akan mempengaruhi semua garpu)
clone_helper=Butuh bantuan kloning? Kunjungi <a target="_blank" href=" %s ">Bantuan</a>! clone_helper=Butuh bantuan kloning? Kunjungi <a target="_blank" href=" %s ">Bantuan</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Terakhir disinkronkan
watchers=Watchers watchers=Watchers
stargazers=Stargazers stargazers=Stargazers
forks=Forks forks=Forks
repo_description_helper=Deskripsi repositori maksimal 512 karakter.
repo_description_length=Karakter tersedia
form.reach_limit_of_creation=Pemiliknya telah mencapai batas pembuatan maksimum %d repositori. form.reach_limit_of_creation=Pemiliknya telah mencapai batas pembuatan maksimum %d repositori.
form.name_reserved=Nama repositori '%s' dicadangkan. form.name_not_allowed=Nama atau pola repositori %q tidak diizinkan.
form.name_pattern_not_allowed=Pola nama repositori '%s' tidak diperbolehkan.
need_auth=Butuh Otorisasi need_auth=Butuh Otorisasi
migrate_type=Jenis migrasi migrate_type=Jenis migrasi
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Ini bisa berupa HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local=Anda juga diizinkan untuk memindahkan repositori dengan jalur server lokal. migrate.clone_address_desc_import_local=Anda juga diizinkan untuk memindahkan repositori dengan jalur server lokal.
migrate.permission_denied=Anda tidak diperbolehkan mengimpor repositori lokal. migrate.permission_denied=Anda tidak diperbolehkan mengimpor repositori lokal.
migrate.invalid_local_path=Jalur lokal tidak valid, tidak ada atau tidaknya sebuah direktori. migrate.invalid_local_path=Jalur lokal tidak valid, tidak ada atau tidaknya sebuah direktori.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migrasi gagal: %v migrate.failed=Migrasi gagal: %v
mirror_from=cermin dari mirror_from=cermin dari
@@ -447,7 +463,7 @@ fork=Fork
no_desc=Tidak Ada Deskripsi no_desc=Tidak Ada Deskripsi
quick_guide=Petunjuk Cepat quick_guide=Petunjuk Cepat
clone_this_repo=Klon repositori ini clone_this_repo=Kloning repositori ini
create_new_repo_command=Buat repositori baru di command line create_new_repo_command=Buat repositori baru di command line
push_exist_repo=Dorong repositori yang ada dari baris perintah push_exist_repo=Dorong repositori yang ada dari baris perintah
bare_message=Ini repositori tidak memiliki konten apa pun. bare_message=Ini repositori tidak memiliki konten apa pun.
@@ -459,7 +475,7 @@ filter_branch_and_tag=Filter cabang atau tag
branches=Ranting branches=Ranting
tags=Tag tags=Tag
issues=Masalah issues=Masalah
pulls=Tarik Permintaan pulls=Permintaan Tarik
labels=Label labels=Label
milestones=Tonggak sejarah milestones=Tonggak sejarah
commits=Komitmen commits=Komitmen
@@ -478,6 +494,8 @@ branches.stale_branches=Cabang Basi
branches.all=Semua Cabang branches.all=Semua Cabang
branches.updated_by=Diperbarui %[1]s oleh %[2]s branches.updated_by=Diperbarui %[1]s oleh %[2]s
branches.change_default_branch=Ubah Cabang Default branches.change_default_branch=Ubah Cabang Default
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Berkas baru editor.new_file=Berkas baru
editor.upload_file=Unggah Berkas editor.upload_file=Unggah Berkas
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Konten file telah berubah sejak Anda mulai men
editor.file_already_exists=File dengan nama '%s' sudah ada di repositori ini. editor.file_already_exists=File dengan nama '%s' sudah ada di repositori ini.
editor.no_changes_to_show=Tidak ada perubahan untuk ditunjukkan. editor.no_changes_to_show=Tidak ada perubahan untuk ditunjukkan.
editor.fail_to_update_file=Gagal memperbarui / membuat file '%s' dengan error: %v editor.fail_to_update_file=Gagal memperbarui / membuat file '%s' dengan error: %v
editor.fail_to_delete_file=Gagal menghapus file '%s' dengan error: %v
editor.add_subdir=Tambahkan subdirektori... editor.add_subdir=Tambahkan subdirektori...
editor.unable_to_upload_files=Gagal mengunggah file ke '%s' dengan kesalahan: %v editor.unable_to_upload_files=Gagal mengunggah file ke '%s' dengan kesalahan: %v
editor.upload_files_to_dir=Upload file ke '%s' editor.upload_files_to_dir=Upload file ke '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Permintaan tarik ini tidak bisa digabungkan secara
pulls.cannot_auto_merge_helper=Silahkan bergabung secara manual untuk menyelesaikan konflik. pulls.cannot_auto_merge_helper=Silahkan bergabung secara manual untuk menyelesaikan konflik.
pulls.create_merge_commit=Membuat komit penggabungan pulls.create_merge_commit=Membuat komit penggabungan
pulls.rebase_before_merging=Rebase sebelum penggabungan pulls.rebase_before_merging=Rebase sebelum penggabungan
pulls.commit_description=Deskripsi Commit
pulls.merge_pull_request=Permintaan tarik gabungan pulls.merge_pull_request=Permintaan tarik gabungan
pulls.open_unmerged_pull_exists='Anda tidak dapat melakukan operasi membuka kembali karena sudah ada permintaan tarik terbuka (#%d) dari repositori yang sama dengan penggabungan informasi yang sama dan menunggu penggabungan. ' pulls.open_unmerged_pull_exists='Anda tidak dapat melakukan operasi membuka kembali karena sudah ada permintaan tarik terbuka (#%d) dari repositori yang sama dengan penggabungan informasi yang sama dan menunggu penggabungan. '
pulls.delete_branch=Menghapus cabang pulls.delete_branch=Menghapus cabang
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Isu Penamaan Tracker Isu Eksternal:
settings.tracker_issue_style.numeric=Numerik settings.tracker_issue_style.numeric=Numerik
settings.tracker_issue_style.alphanumeric=Alfanumerik settings.tracker_issue_style.alphanumeric=Alfanumerik
settings.tracker_url_format_desc=Anda dapat menggunakan placeholder <code>{user}{repo}{index</code> untuk nama pengguna, nama repositori dan indeks masalah. settings.tracker_url_format_desc=Anda dapat menggunakan placeholder <code>{user}{repo}{index</code> untuk nama pengguna, nama repositori dan indeks masalah.
settings.pulls_desc=Aktifkan permintaan tarik untuk menerima kontribusi publik settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Abaikan perubahan di spasi settings.pulls.ignore_whitespace=Abaikan perubahan di spasi
settings.pulls.allow_rebase_merge=Izinkan gunakan rebase untuk menggabungkan komit settings.pulls.allow_rebase_merge=Izinkan gunakan rebase untuk menggabungkan komit
settings.danger_zone=Zona Bahaya settings.danger_zone=Zona Bahaya
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Pengguna ini tidak lagi memiliki akses kolab
settings.remove_collaborator_success=Kolaborator telah dihapus. settings.remove_collaborator_success=Kolaborator telah dihapus.
settings.search_user_placeholder=Cari pengguna... settings.search_user_placeholder=Cari pengguna...
settings.org_not_allowed_to_be_collaborator=Organisasi tidak diperbolehkan untuk ditambahkan sebagai kolaborator. settings.org_not_allowed_to_be_collaborator=Organisasi tidak diperbolehkan untuk ditambahkan sebagai kolaborator.
settings.add_webhook=Tambahkan Webhook
settings.hooks_desc=Webhooks seperti pemicu peristiwa HTTP POST dasar. Kapan pun terjadi sesuatu di Gog, kami akan menangani pemberitahuan tersebut ke host target yang Anda tentukan. Pelajari lebih lanjut di <a target="_blank" href=" %s "> Panduan Webhooks </a> ini. settings.hooks_desc=Webhooks seperti pemicu peristiwa HTTP POST dasar. Kapan pun terjadi sesuatu di Gog, kami akan menangani pemberitahuan tersebut ke host target yang Anda tentukan. Pelajari lebih lanjut di <a target="_blank" href=" %s "> Panduan Webhooks </a> ini.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Pilih jenis...
settings.add_webhook=Tambahkan Webhook
settings.webhook_deletion=Hapus Webhook settings.webhook_deletion=Hapus Webhook
settings.webhook_deletion_desc=Hapus halaman web ini akan menghapus informasinya dan semua riwayat pengiriman. Apakah Anda ingin melanjutkan? settings.webhook_deletion_desc=Hapus halaman web ini akan menghapus informasinya dan semua riwayat pengiriman. Apakah Anda ingin melanjutkan?
settings.webhook_deletion_success=Webhook telah berhasil dihapus! settings.webhook_deletion_success=Webhook telah berhasil dihapus!
@@ -792,6 +814,8 @@ settings.webhook.response=Tanggapan
settings.webhook.headers=Header settings.webhook.headers=Header
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Tubuh settings.webhook.body=Tubuh
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git Hooks didukung oleh Git itu sendiri, Anda dapat mengedit file kait yang didukung dalam daftar di bawah untuk melakukan operasi kustom. settings.githooks_desc=Git Hooks didukung oleh Git itu sendiri, Anda dapat mengedit file kait yang didukung dalam daftar di bawah untuk melakukan operasi kustom.
settings.githook_edit_desc=Jika hook tidak aktif, konten sampel akan disajikan. Meninggalkan konten ke nilai kosong akan menonaktifkan hook ini. settings.githook_edit_desc=Jika hook tidak aktif, konten sampel akan disajikan. Meninggalkan konten ke nilai kosong akan menonaktifkan hook ini.
settings.githook_name=Nama Hook settings.githook_name=Nama Hook
@@ -819,10 +843,10 @@ settings.event_push=Dorong
settings.event_push_desc=Git mendorong ke repositori settings.event_push_desc=Git mendorong ke repositori
settings.event_issues=Masalah settings.event_issues=Masalah
settings.event_issues_desc=Masalah dibuka, ditutup, dibuka kembali, diedit, ditugaskan, belum ditetapkan, label diperbarui, label dihapus, dirham, atau demilestoned. settings.event_issues_desc=Masalah dibuka, ditutup, dibuka kembali, diedit, ditugaskan, belum ditetapkan, label diperbarui, label dihapus, dirham, atau demilestoned.
settings.event_issue_comment=Isu Komentar
settings.event_issue_comment_desc=Komentar terbitan dibuat, diedit, atau dihapus.
settings.event_pull_request=Permintaan tarik settings.event_pull_request=Permintaan tarik
settings.event_pull_request_desc=Tarik permintaan dibuka, ditutup, dibuka kembali, diedit, ditugaskan, belum ditetapkan, label diperbarui, label dibersihkan, dirender, diremilahkan, atau disinkronkan. settings.event_pull_request_desc=Tarik permintaan dibuka, ditutup, dibuka kembali, diedit, ditugaskan, belum ditetapkan, label diperbarui, label dibersihkan, dirender, diremilahkan, atau disinkronkan.
settings.event_issue_comment=Isu Komentar
settings.event_issue_comment_desc=Komentar terbitan dibuat, diedit, atau dihapus.
settings.event_release=Melepaskan settings.event_release=Melepaskan
settings.event_release_desc=Rilis diterbitkan dalam repositori. settings.event_release_desc=Rilis diterbitkan dalam repositori.
settings.active=Aktif settings.active=Aktif
@@ -852,6 +876,8 @@ settings.add_key_success=Kunci penerapan baru '%s' telah berhasil ditambahkan!
settings.deploy_key_deletion=Hapus Kunci Deploy settings.deploy_key_deletion=Hapus Kunci Deploy
settings.deploy_key_deletion_desc=Menghapus kunci penggelaran ini akan menghapus semua akses yang terkait untuk repositori ini. Apakah Anda ingin melanjutkan? settings.deploy_key_deletion_desc=Menghapus kunci penggelaran ini akan menghapus semua akses yang terkait untuk repositori ini. Apakah Anda ingin melanjutkan?
settings.deploy_key_deletion_success=Kunci penempatan telah berhasil dihapus! settings.deploy_key_deletion_success=Kunci penempatan telah berhasil dihapus!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Karakter tersedia
diff.browse_source=Jelajahi Sumber diff.browse_source=Jelajahi Sumber
diff.parent=induk diff.parent=induk
@@ -916,9 +942,8 @@ team_name_helper=Anda akan menggunakan nama ini lagi tim ini dalam percakapan.
team_desc_helper=Apa tentang semua tim ini? team_desc_helper=Apa tentang semua tim ini?
team_permission_desc=Apa tingkat izin ini harus? team_permission_desc=Apa tingkat izin ini harus?
form.name_reserved=Nama organisasi %s" di sediakan. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Organization name pattern '%s' is not allowed. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Team name '%s' is reserved.
settings=Pengaturan settings=Pengaturan
settings.options=Opsi settings.options=Opsi
@@ -941,7 +966,7 @@ members.membership_visibility=Keanggotaan Visibilitas:
members.public=Umum members.public=Umum
members.public_helper=jadilah pribadi members.public_helper=jadilah pribadi
members.private=Pribadi members.private=Pribadi
members.private_helper=make public members.private_helper=jadikan publik
members.member_role=Anggota Peran: members.member_role=Anggota Peran:
members.owner=Pemilik members.owner=Pemilik
members.member=Anggota members.member=Anggota
@@ -953,10 +978,10 @@ members.invite_now=Undang Sekarang
teams.join=Bergabung teams.join=Bergabung
teams.leave=Tinggalkan teams.leave=Tinggalkan
teams.read_access=Baca Akses teams.read_access=Baca Akses
teams.read_access_helper=This team will be able to view and clone its repositories. teams.read_access_helper=Tim ini dapat melihat dan mencabangkan repositori.
teams.write_access=Akses menulis teams.write_access=Akses menulis
teams.write_access_helper=This team will be able to read its repositories, as well as push to them. teams.write_access_helper=This team will be able to read its repositories, as well as push to them.
teams.admin_access=Admin Access teams.admin_access=Akses Admin
teams.admin_access_helper=Tim ini akan dapat mendorong / menarik ke repositorinya, dan juga menambahkan kolaborator lainnya kepada mereka. teams.admin_access_helper=Tim ini akan dapat mendorong / menarik ke repositorinya, dan juga menambahkan kolaborator lainnya kepada mereka.
teams.no_desc=Tim ini tidak memiliki deskripsi teams.no_desc=Tim ini tidak memiliki deskripsi
teams.settings=Pengaturan teams.settings=Pengaturan
@@ -982,7 +1007,7 @@ dashboard=Dasbor
users=Pengguna users=Pengguna
organizations=Organisasi organizations=Organisasi
repositories=Repositori repositories=Repositori
authentication=Otentikasi authentication=Autentikasi
config=Konfigurasi config=Konfigurasi
notices=Pemberitahuan sistem notices=Pemberitahuan sistem
monitor=Pemantauan monitor=Pemantauan
@@ -990,12 +1015,19 @@ first_page=Pertama
last_page=Terakhir last_page=Terakhir
total=Total: %d total=Total: %d
dashboard.build_info=Informasi build
dashboard.app_ver=Versi aplikasi
dashboard.git_version=Versi Git
dashboard.go_version=Versi Go (Golang)
dashboard.build_time=Durasi
dashboard.build_commit=Setuju Membangun
dashboard.statistic=Statistik dashboard.statistic=Statistik
dashboard.operations=Operasi dashboard.operations=Operasi
dashboard.system_status=Status Monitor Sistem dashboard.system_status=Status Monitor Sistem
dashboard.statistic_info=GogsDatabase memiliki <b>%d</b> pengguna, <b>%d</b> organisasi, <b>%d</b> kunci publik, <b>%d</b> repositori, <b>%d</b> jamtangan, <b>%d</b> bintang, <b>%d</b>actions, <b>%d</b> akses, <b>%d</b> isu, <b>%d</b> komentar, <b>%d</b> akun sosial, <b>%d</b> berikut, <b>%d<b> mirror, <b>%d</b> rilis, <b>%d</b> sumber masuk, <b>%d</b> webhooks, <b>%d</b> tonggak,<b>%d</b> label, <b>%d</b> tugas hook, <b>%d</b> tim, <b>%d</b> memperbarui tugas, <b>%d</b> lampiran. dashboard.statistic_info=GogsDatabase memiliki <b>%d</b> pengguna, <b>%d</b> organisasi, <b>%d</b> kunci publik, <b>%d</b> repositori, <b>%d</b> jamtangan, <b>%d</b> bintang, <b>%d</b>actions, <b>%d</b> akses, <b>%d</b> isu, <b>%d</b> komentar, <b>%d</b> akun sosial, <b>%d</b> berikut, <b>%d<b> mirror, <b>%d</b> rilis, <b>%d</b> sumber masuk, <b>%d</b> webhooks, <b>%d</b> tonggak,<b>%d</b> label, <b>%d</b> tugas hook, <b>%d</b> tim, <b>%d</b> memperbarui tugas, <b>%d</b> lampiran.
dashboard.operation_name=Nama operasi dashboard.operation_name=Nama operasi
dashboard.operation_switch=Beralih dashboard.operation_switch=Beralih
dashboard.select_operation_to_run=Harap menentukan operasi yang dijalankan
dashboard.operation_run=Menjalankan dashboard.operation_run=Menjalankan
dashboard.clean_unbind_oauth=Bersihkan OAuth yang tidak terikat dashboard.clean_unbind_oauth=Bersihkan OAuth yang tidak terikat
dashboard.clean_unbind_oauth_success=Semua unbind OAuthes telah berhasil dihapus. dashboard.clean_unbind_oauth_success=Semua unbind OAuthes telah berhasil dihapus.
@@ -1054,16 +1086,16 @@ users.created=Dibuat
users.send_register_notify=Kirim Pemberitahuan Pendaftaran ke Pengguna users.send_register_notify=Kirim Pemberitahuan Pendaftaran ke Pengguna
users.new_success=Akun baru '%s' telah berhasil dibuat. users.new_success=Akun baru '%s' telah berhasil dibuat.
users.edit=Edit users.edit=Edit
users.auth_source=Sumber Otentikasi users.auth_source=Sumber Autentikasi
users.local=Lokal users.local=Lokal
users.auth_login_name=Nama login otentikasi users.auth_login_name=Nama Masuk Autentikasi
users.password_helper=Biarkan kosong agar tetap tidak berubah. users.password_helper=Biarkan kosong agar tetap tidak berubah.
users.update_profile_success=Profil akun telah berhasil diupdate. users.update_profile_success=Profil akun telah berhasil diupdate.
users.edit_account=Mengedit akun users.edit_account=Mengedit akun
users.max_repo_creation=Maximum Repository Creation Limit users.max_repo_creation=Maximum Repository Creation Limit
users.max_repo_creation_desc=(Set -1 untuk menggunakan batas default global) users.max_repo_creation_desc=(Set -1 untuk menggunakan batas default global)
users.is_activated=Akun ini diaktifkan users.is_activated=Akun ini diaktifkan
users.prohibit_login=Akun ini dilarang masuk users.prohibit_login=Akun ini tidak diperbolekan masuk
users.is_admin=Akun ini memiliki izin administrator users.is_admin=Akun ini memiliki izin administrator
users.allow_git_hook=Akun ini memiliki izin untuk membuat kait Git users.allow_git_hook=Akun ini memiliki izin untuk membuat kait Git
users.allow_import_local=Akun ini memiliki izin untuk mengimpor repositori lokal users.allow_import_local=Akun ini memiliki izin untuk mengimpor repositori lokal
@@ -1087,14 +1119,15 @@ repos.stars=Bintang
repos.issues=Masalah repos.issues=Masalah
repos.size=Ukuran repos.size=Ukuran
auths.auth_manage_panel=Authentication Manage Panel auths.auth_sources=Sumber Autentikasi
auths.new=Tambahkan Sumber Baru auths.new=Tambahkan Sumber Baru
auths.name=Nama auths.name=Nama
auths.type=Mengetik auths.type=Mengetik
auths.enabled=Diaktifkan auths.enabled=Diaktifkan
auths.default=Standar
auths.updated=Diperbarui auths.updated=Diperbarui
auths.auth_type=Jenis Autentikasi auths.auth_type=Jenis Autentikasi
auths.auth_name=Nama Otentikasi auths.auth_name=Nama Autentikasi
auths.security_protocol=Protokol Keamanan auths.security_protocol=Protokol Keamanan
auths.domain=Domain auths.domain=Domain
auths.host=Tuan rumah auths.host=Tuan rumah
@@ -1117,143 +1150,209 @@ auths.group_attribute_contain_user_list=Atribut Grup yang Mengandung Daftar Peng
auths.user_attribute_listed_in_group=Atribut Pengguna Terdaftar di Grup auths.user_attribute_listed_in_group=Atribut Pengguna Terdaftar di Grup
auths.attributes_in_bind=Ambil atribut dalam konteks Bind DN auths.attributes_in_bind=Ambil atribut dalam konteks Bind DN
auths.filter=Pengguna saringan auths.filter=Pengguna saringan
auths.admin_filter=Admin Filter auths.admin_filter=Filter Admin
auths.ms_ad_sa=Ms Ad SA auths.ms_ad_sa=Otentifikasi sistem
auths.smtp_auth=SMTP Authentication Type auths.smtp_auth=Autentikasi tipe SMTP
auths.smtphost=Host SMTP auths.smtphost=Host SMTP
auths.smtpport=Port SMTP auths.smtpport=Port SMTP
auths.allowed_domains=Domains di izinkan auths.allowed_domains=Domains di izinkan
auths.allowed_domains_helper=Biarkan kosong untuk tidak membatasi setiap domain, beberapa Domain harus dipisahkan oleh koma ',',. auths.allowed_domains_helper=Biarkan kosong untuk tidak membatasi setiap domain, beberapa Domain harus dipisahkan oleh koma ',',.
auths.enable_tls=Enable TLS Encryption auths.enable_tls=Aktifkan Enkripsi TLS
auths.skip_tls_verify=Skip TLS Verify auths.skip_tls_verify=Lewati Verifikasi TLS
auths.pam_service_name=Nama layanan PAM auths.pam_service_name=Nama layanan PAM
auths.enable_auto_register=Mengaktifkan pendaftaran otomatis auths.enable_auto_register=Mengaktifkan pendaftaran otomatis
auths.tips=Cara auths.edit=Ubah Pengaturan Autentikasi
auths.edit=Mengubah pengaturan pembuktian auths.activated=Autentikasi ini diaktifkan
auths.activated=This authentication is activated auths.default_auth=Autentikasi ini adalah sumber masuk bawaan
auths.new_success=New authentication '%s' has been added successfully. auths.new_success=Autentikasi baru %s berhasil ditambahkan.
auths.update_success=Authentication setting has been updated successfully. auths.update_success=Pengaturan autentikasi berhasil diperbarui.
auths.update=Memperbarui pengetahuan otentikasi auths.update=Perbarui Pengaturan Autentikasi
auths.delete=Hapus otentikasi ini auths.delete=Hapus Autentikasi Ini
auths.delete_auth_title=Authentication Deletion auths.delete_auth_title=Penghapusan Autentikasi
auths.delete_auth_desc=Otentikasi ini akan dihapus, apakah anda ingin melanjutkan? auths.delete_auth_desc=Autentikasi ini akan dihapus, apakah Anda ingin melanjutkan?
auths.still_in_used=This authentication is still used by some users, please delete or convert these users to another login type first. auths.still_in_used=Autentikasi ini masih digunakan oleh pengguna lain, silakan hapus atau ubah pengguna tersebut ke tipe masuk lainnya.
auths.deletion_success=Authentication has been deleted successfully! auths.deletion_success=Autentikasi berhasil dihapus!
auths.login_source_exist=Login source '%s' already exists. auths.login_source_exist=Sumber masuk %s sudah tersedia.
auths.github_api_endpoint=Titik akhir API
config.not_set=(tidak diterapkan) config.not_set=(tidak diterapkan)
config.server_config=Server Configuration config.server_config=Konfigurasi Server
config.app_name=Nama aplikasi config.brand_name=Nama Merek/Logo/Perusahaan
config.app_ver=Versi aplikasi
config.app_url=Aplikasi URL
config.domain=Domain
config.offline_mode=Offline Mode
config.disable_router_log=Disable Router Log
config.run_user=Menjalankan penggunaa config.run_user=Menjalankan penggunaa
config.run_mode=Run Mode config.run_mode=Run mode
config.git_version=Git Version config.server.external_url=URL eksternal
config.static_file_root_path=Static File Root Path config.server.domain=Domain
config.log_file_root_path=Log File Root Path config.server.protocol=Protokol
config.reverse_auth_user=Reverse Authentication User config.server.http_addr=Alamat HTTP
config.server.http_port=Port HTTP
config.server.cert_file=Berkas Sertifikat
config.server.key_file=Berkas baru
config.server.tls_min_version=Minimum versi TLS
config.server.unix_socket_permission=Aturan unix socket
config.server.local_root_url=Lokal root url
config.server.offline_mode=mode luring
config.server.disable_router_log=Menonaktifkan router log
config.server.enable_gzip=aktifkan gzip
config.server.app_data_path=target data aplikasi
config.server.load_assets_from_disk=memanggil asset dari disk
config.server.landing_url=Landing URL
config.ssh_config=SSH Configuration config.ssh_config=Konfigurasi SSH
config.ssh_enabled=Diaktifkan config.ssh.enabled=Diaktifkan
config.ssh_start_builtin_server=Start Builtin Server config.ssh.domain=Exposed domain
config.ssh_domain=Domain config.ssh.port=Exposed port
config.ssh_port=Pelabuhan config.ssh.root_path=Path akar
config.ssh_listen_port=Listen Port config.ssh.keygen_path=Path keygen
config.ssh_root_path=Path akar config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Key Test Path config.ssh.minimum_key_sizes=Ukuran kunci minimum
config.ssh_keygen_path=Keygen ('ssh-keygen') Path config.ssh.rewrite_authorized_keys_at_start=Tulis ulang "authorized_keys" saat memulai
config.ssh_minimum_key_size_check=Minimum Key Size Check config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Minimum Key Sizes config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Cipher server
config.ssh.server_macs=MAC server
config.ssh.server_algorithms=Algoritma server
config.repo_config=Repository Configuration config.repo_config=Konfigurasi Repositori
config.repo_root_path=Repository Root Path config.repo.root_path=Path akar
config.script_type=Jenis Skrip config.repo.script_type=Jenis skrip
config.repo_force_private=Paksa Pribadi config.repo.ansi_chatset=Set karakter ANSI
config.max_creation_limit=Max Creation Limit config.repo.force_private=Paksa pribadi
config.preferred_licenses=Lisensi yang Diutamakan config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Nonaktifkan HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Aktifkan Migrasi Jalur Lokal config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Komitmen Ambil Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=Konfigurasi HTTP config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Kontrol Akses Memungkinkan Asal config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Pengunggahan diaktifkan
config.repo.upload.temp_path=Path unggah sementara
config.repo.upload.allowed_types=Tipe unggah yang diizinkan
config.repo.upload.file_max_size=Batas ukuran unggah berkas
config.repo.upload.max_files=Batas unggah berkas
config.db_config=Konfigurasi Basis Data config.db_config=Konfigurasi Basis Data
config.db_type=Mengetik config.db.type=Tipe
config.db_host=Rumah config.db.host=Host
config.db_name=Nama config.db.name=Nama
config.db_user=Pengguna config.db.schema=Skema
config.db_ssl_mode=Mode SSL config.db.schema_helper=(hanya untuk "postgres")
config.db_ssl_mode_helper=(untuk "postgres" saja) config.db.user=Pengguna
config.db_path=Jalan config.db.ssl_mode=Modus SSL
config.db_path_helper=(untuk "sqlite3" dan "tidb") config.db.ssl_mode_helper=(hanya untuk "postgres")
config.db.path=Path
config.db.path_helper=(hanya untuk "sqlite3")
config.db.max_open_conns=Maksimum koneksi yang terbuka
config.db.max_idle_conns=Maksimum koneksi menganggur
config.service_config=Konfigurasi Layanan config.security_config=Konfigurasi keamanan
config.register_email_confirm=Perlu konfirmasi email config.security.login_remember_days=Berapa hari mengingat log masuk
config.disable_register=Nonaktifkan Pendaftaran config.security.cookie_remember_name=Ingat cookie
config.show_registration_button=Tampilkan Tombol Register config.security.cookie_username=Cookie pengguna
config.require_sign_in_view=Memerlukan Tampilan Masuk config.security.cookie_secure=Aktifkan cookie aman
config.mail_notify=Pemberitahuan Mail config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Nonaktifkan Minimum Key Size Check config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Aktifkan Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Kode aktif hidup config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Reset Password Code Lives
config.webhook_config=Webhook Konfigurasi config.email_config=Konfigurasi surel
config.queue_length=Panjang Antrian config.email.enabled=Enabled
config.deliver_timeout=Berikan waktu habis config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Lewati TLS Verifikasi config.email.host=Host
config.email.from=Dari
config.email.user=Pengguna
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Lewati verifikasi sertifikat
config.email.use_certificate=Pakai sertifikat ubahan
config.email.cert_file=Berkas sertifikat
config.email.key_file=Berkas kunci
config.email.use_plain_text=Gunakan teks polos
config.email.add_plain_text_alt=Tambahkan alternatif teks polos
config.email.send_test_mail=Kirim surel uji
config.email.test_mail_failed=Gagal mengirim surel uji ke '%s': %v
config.email.test_mail_sent=Surel uji telah dikirim ke '%s'.
config.mailer_config=Mailer Konfigurasi config.auth_config=Konfigurasi otentikasi
config.mailer_enabled=Diaktifkan config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Nonaktifkan HALO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Rumah config.auth.require_email_confirm=Perlu konfirmasi surel
config.mailer_user=Pengguna config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Kirim Email Uji config.auth.disable_registration=Nonaktifkan pendaftaran
config.test_mail_failed=Gagal mengirim email uji ke '%s': %v config.auth.enable_registration_captcha=Aktifkan captcha pendaftaran
config.test_mail_sent=Email percobaan telah dikirim ke ' % s '. config.auth.enable_reverse_proxy_authentication=Aktifkan otentikasi proksi balik
config.auth.enable_reverse_proxy_auto_registration=Aktifkan pendaftaran otomatis proksi balik
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=OAuth Konfigurasi config.user_config=Konfigurasi pengguna
config.oauth_enabled=Diaktifkan config.user.enable_email_notify=Aktifkan notifikasi surel
config.cache_config=Konfigurasi Cache
config.cache_adapter=Adaptor Cache
config.cache_interval=Interval Cache
config.cache_conn=Koneksi Cache
config.session_config=Konfigurasi Sesi config.session_config=Konfigurasi Sesi
config.session_provider=Penyedia Sesi config.session.provider=Penyedia
config.provider_config=Konfigurasi Penyedia config.session.provider_config=Konfigurasi penyedia
config.cookie_name=Cookie Name config.session.cookie_name=Cookie
config.enable_set_cookie=Pengatur cookle diaktifkan config.session.https_only=Hanya HTTPS
config.gc_interval_time=GC Interval Time config.session.gc_interval=Interval GC
config.session_life_time=Sesi jangka Waktu config.session.max_life_time=Max life time
config.https_only=HTTPS Only config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Cookie Life Time
config.picture_config=Picture Configuration config.cache_config=Konfigurasi Cache
config.picture_service=Gambar layanan config.cache.adapter=Adaptor
config.disable_gravatar=Disable Gravatar config.cache.interval=Interval GC
config.enable_federated_avatar=Enable Federated Avatars config.cache.host=Host
config.git_config=Git Configuration config.http_config=Konfigurasi HTTP
config.git_disable_diff_highlight=Disable Diff Syntax Highlight config.http.access_control_allow_origin=Access control allow origin
config.git_max_diff_lines=Max Diff Lines (for a single file)
config.git_max_diff_line_characters=Max Diff Characters (for a single line)
config.git_max_diff_files=Max Diff Files (to be shown)
config.git_gc_args=GC Arguments
config.git_migrate_timeout=Jenis migrasi
config.git_mirror_timeout=Mirror Update Timeout
config.git_clone_timeout=Clone Operation Timeout
config.git_pull_timeout=Pull Operation Timeout
config.git_gc_timeout=GC Operation Timeout
config.log_config=Log Configuration config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Batas ukuran
config.attachment.max_files=Batas berkas
config.release_config=Release configuration
config.release.attachment.enabled=Lampiran diaktifkan
config.release.attachment.allowed_types=Jens lampiran yang diizinkan
config.release.attachment.max_size=Batas ukuran lampiran
config.release.attachment.max_files=Batas berkas lampiran
config.picture_config=Konfigurasi Gambar
config.picture.avatar_upload_path=Path unggah avatar pengguna
config.picture.repo_avatar_upload_path=Path unggah avatar repositori
config.picture.gravatar_source=Sumber gravatar
config.picture.disable_gravatar=Nonaktifkan Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Konfigurasi cermin
config.mirror.default_interval=Interval baku
config.webhook_config=Webhook Konfigurasi
config.webhook.types=Tipe
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Konfigurasi Git
config.git.disable_diff_highlight=Disable diff syntax highlight
config.git.max_diff_lines=Diff lines limit (for a single file)
config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git.max_diff_files=Diff files limit (for a single diff)
config.git.gc_args=GC arguments
config.git.migrate_timeout=Migration timeout
config.git.mirror_timeout=Mirror fetch timeout
config.git.clone_timeout=Tenggat waktu klon
config.git.pull_timeout=Tenggat waktu pull
config.git.gc_timeout=Tenggat waktu GC
config.lfs_config=Konfigurasi LFS
config.lfs.storage=Penyimpanan
config.lfs.objects_path=Path obyek
config.log_config=Konfigurasi log
config.log_file_root_path=Path akar berkas log
config.log_mode=Mode config.log_mode=Mode
config.log_options=Pilihan config.log_options=Pilihan
@@ -1273,7 +1372,7 @@ notices.view_detail_header=Lihat Pemberitahuan Detail
notices.actions=Tindakan notices.actions=Tindakan
notices.select_all=Pilih Semua notices.select_all=Pilih Semua
notices.deselect_all=Batalkan semua pilihan notices.deselect_all=Batalkan semua pilihan
notices.inverse_selection=Inverse Selection notices.inverse_selection=Pilih Terbalaik
notices.delete_selected=Hapus yang dipilih notices.delete_selected=Hapus yang dipilih
notices.delete_all=Menghapus semua pemberitahuan notices.delete_all=Menghapus semua pemberitahuan
notices.type=Jenis notices.type=Jenis
@@ -1284,30 +1383,33 @@ notices.delete_success=Sistem pemberitahuan telah berhasil dihapus.
[action] [action]
create_repo=repositori dibuat <a href="%s">%s</a> create_repo=repositori dibuat <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=repositori berganti nama dari <code>%[1]s</code> ke <a href="%[2]s">%[3]s</a> rename_repo=repositori berganti nama dari <code>%[1]s</code> ke <a href="%[2]s">%[3]s</a>
commit_repo=didorong ke <a href="%[1]s/src/%[2]s">%[3]s</a> di <a href="%[1]s">%[4]s</a> commit_repo=didorong ke <a href="%[1]s/src/%[2]s">%[3]s</a> di <a href="%[1]s">%[4]s</a>
compare_commits=View comparison for these %d commits compare_commits=Lihat perbandingan dari komit ini %d
transfer_repo=transfered repository <code>%s</code> to <a href="%s">%s</a> transfer_repo=repositori <code>%s</code> ditransfer ke <a href="%s">%s</a>
create_issue=`opened issue <a href="%s/issues/%s">%s#%[2]s</a>` create_issue=`masalah yang dibuka <a href="%s/issues/%s">%s#%[2]s</a>`
close_issue=`closed issue <a href="%s/issues/%s">%s#%[2]s</a>` close_issue=`masalah yang ditutup <a href="%s/issues/%s">%s#%[2]s</a>`
reopen_issue=`reopened issue <a href="%s/issues/%s">%s#%[2]s</a>` reopen_issue=`masalah yang dibuka kembali <a href="%s/issues/%s">%s#%[2]s</a>`
comment_issue=`commented on issue <a href="%s/issues/%s">%s#%[2]s</a>` comment_issue=`mengomentari masalah <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`created pull request <a href="%s/pulls/%s">%s#%[2]s</a>` create_pull_request=`membuat permintaan tarik <a href="%s/pulls/%s">%s#%[2]s</a>`
close_pull_request=`closed pull request <a href="%s/pulls/%s">%s#%[2]s</a>` close_pull_request=`permintaan tarik yang ditutup <a href="%s/pulls/%s">%s#%[2]s</a>`
reopen_pull_request=`reopened pull request <a href="%s/pulls/%s">%s#%[2]s</a>` reopen_pull_request=`permintaan tarik dibuka kembali <a href="%s/pulls/%s">%s#%[2]s</a>`
merge_pull_request=`merged pull request <a href="%s/pulls/%s">%s#%[2]s</a>` merge_pull_request=`menggabungkan permintaan tarik <a href="%s/pulls/%s">%s#%[2]s</a>`
create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a>
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> push_tag=pushed tag <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a>
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo=cabangkan repositori ke <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=lalu ago=lalu
from_now=dari sekarang from_now=dari sekarang
now=sekarang now=sekarang
1s=1detik %s 1s=1 detik %s
1m=1menit %s 1m=1 menit %s
1h=1 jam %s 1h=1 jam %s
1d=1 hari %s 1d=1 hari %s
1w=1 Minggu %s 1w=1 Minggu %s
@@ -1322,6 +1424,7 @@ months=%d bulan %s
years=%d tahun %s years=%d tahun %s
raw_seconds=detik raw_seconds=detik
raw_minutes=menit raw_minutes=menit
raw_hours=jam
[dropzone] [dropzone]
default_message=Jatuhkan berkas disini atau klik untuk mengunggah. default_message=Jatuhkan berkas disini atau klik untuk mengunggah.

View File

@@ -9,7 +9,6 @@ sign_out=Esci
sign_up=Registrati sign_up=Registrati
register=Registrati register=Registrati
website=Sito Web website=Sito Web
version=Versione
page=Pagina page=Pagina
template=Template template=Template
language=Lingua language=Lingua
@@ -44,17 +43,22 @@ issues=Problemi
cancel=Annulla cancel=Annulla
[status]
page_not_found=Pagina Non Trovata
internal_server_error=Errore Interno del Server
[install] [install]
install=Installazione install=Installazione
title=Passi d'installazione per il primo avvio title=Passi d'installazione per il primo avvio
docker_helper=Se stai utilizzando Gogs su Docker, per favore leggi le <a target="_blank" href="%s">Linee guida</a> con attenzione prima di cambiare qualcosa su questa pagina! docker_helper=Se stai utilizzando Gogs su Docker, per favore leggi le <a target="_blank" href="%s">Linee guida</a> con attenzione prima di cambiare qualcosa su questa pagina!
requite_db_desc=Gogs richiede MySQL, PostgreSQL, SQLite3, MSSQL o TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Impostazioni Database db_title=Impostazioni Database
db_type=Tipo di database db_type=Tipo di database
host=Host host=Host
user=Utente user=Utente
password=Password password=Password
db_name=Nome del database db_name=Nome del database
db_schema=Schema
db_helper=Utilizza il motore INNODB con codifica utf8_general_ci per MySQL. db_helper=Utilizza il motore INNODB con codifica utf8_general_ci per MySQL.
ssl_mode=Modalità SSL ssl_mode=Modalità SSL
path=Percorso path=Percorso
@@ -84,6 +88,7 @@ log_root_path=Percorso dei log
log_root_path_helper=Directory in cui scrivere i file di log. log_root_path_helper=Directory in cui scrivere i file di log.
enable_console_mode=Abilita modalità Terminale enable_console_mode=Abilita modalità Terminale
enable_console_mode_popup=In aggiunta alla modalità file, invia i log anche al terminale. enable_console_mode_popup=In aggiunta alla modalità file, invia i log anche al terminale.
default_branch=Default Branch
optional_title=Impostazioni Facoltative optional_title=Impostazioni Facoltative
email_title=Impostazioni E-mail email_title=Impostazioni E-mail
@@ -119,9 +124,10 @@ sqlite3_not_available=Questa versione non supporta SQLite3, si prega di scaricar
invalid_db_setting=La configurazione del database non è corretta: %v invalid_db_setting=La configurazione del database non è corretta: %v
invalid_repo_path=Percorso root del repository invalido: %v invalid_repo_path=Percorso root del repository invalido: %v
run_user_not_match=Run user non è l'utente corrente: %s -> %s run_user_not_match=Run user non è l'utente corrente: %s -> %s
smtp_host_missing_port=SMTP Host is missing port in address. smtp_host_missing_port=All'Host SMTP manca la porta nell'indirizzo.
invalid_smtp_from=Campo SMTP From non valido: %v invalid_smtp_from=Campo SMTP From non valido: %v
save_config_failed=Fallito il salvataggio della configurazione: %v save_config_failed=Fallito il salvataggio della configurazione: %v
init_failed=Impossibile inizializzare l'applicazione: %v
invalid_admin_setting=Impostazioni account Admin non valide: %v invalid_admin_setting=Impostazioni account Admin non valide: %v
install_success=Benvenuto! Siamo felici che tu abbia scelto Gogs, buon divertimento. install_success=Benvenuto! Siamo felici che tu abbia scelto Gogs, buon divertimento.
invalid_log_root_path=Percorso deilog non valido: %v invalid_log_root_path=Percorso deilog non valido: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Hai già un account? Accedi ora!
social_register_hepler_msg=Hai già un account? Associalo ora! social_register_hepler_msg=Hai già un account? Associalo ora!
disable_register_prompt=Siamo spiacenti, registrazione è stata disabilitata. Si prega di contattare l'amministratore del sito. disable_register_prompt=Siamo spiacenti, registrazione è stata disabilitata. Si prega di contattare l'amministratore del sito.
disable_register_mail=Siamo spiacenti, la conferma di registrazione via Mail è stata disattivata. disable_register_mail=Siamo spiacenti, la conferma di registrazione via Mail è stata disattivata.
auth_source=Fonte di autenticazione
local=Locale
remember_me=Ricordami remember_me=Ricordami
forgot_password=Password dimenticata forgot_password=Password dimenticata
forget_password=Password dimenticata? forget_password=Password dimenticata?
@@ -170,12 +178,12 @@ password_too_short=La lunghezza della password non può essere meno 6 caratteri.
non_local_account=Gli account non locali non possono modificare le password tramite Gogs. non_local_account=Gli account non locali non possono modificare le password tramite Gogs.
login_two_factor=Autenticazione in Due Passaggi login_two_factor=Autenticazione in Due Passaggi
login_two_factor_passcode=Authentication Passcode login_two_factor_passcode=Codice di autenticazione
login_two_factor_enter_recovery_code=Inserisci il codice di recupero dell'Autenticazione a due Fattori login_two_factor_enter_recovery_code=Inserisci il codice di recupero dell'Autenticazione a due Fattori
login_two_factor_recovery=Two-factor Recovery login_two_factor_recovery=Recupero a due fattori
login_two_factor_recovery_code=Recupera il codice login_two_factor_recovery_code=Recupera il codice
login_two_factor_enter_passcode=Enter a two-factor passcode login_two_factor_enter_passcode=Inserisci un codice di accesso a due fattori
login_two_factor_invalid_recovery_code=Recovery code has been used or does not valid. login_two_factor_invalid_recovery_code=Il codice di recupero è stato utilizzato o non è valido.
[mail] [mail]
activate_account=Per favore attiva il tuo account activate_account=Per favore attiva il tuo account
@@ -212,7 +220,7 @@ Content=Contenuto
require_error=` non può essere vuoto.` require_error=` non può essere vuoto.`
alpha_dash_error=` ammessi solo caratteri alfanumerici o trattini(-_).` alpha_dash_error=` ammessi solo caratteri alfanumerici o trattini(-_).`
alpha_dash_dot_error=` ammessi solo caratteri alfanumerici o trattini(-_) o punti.` alpha_dash_dot_error=` ammessi solo caratteri alfanumerici o trattini(-_) o punti.`
alpha_dash_dot_slash_error=` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error=` ammessi solo caratteri alfanumerici o trattini(-_) o punti o slash.`
size_error='deve essere %s.' size_error='deve essere %s.'
min_size_error=` deve contenere almeno %s caratteri.` min_size_error=` deve contenere almeno %s caratteri.`
max_size_error=` deve contenere massimo %s caratteri.` max_size_error=` deve contenere massimo %s caratteri.`
@@ -229,6 +237,7 @@ org_name_been_taken=Il nome dell'Organizzazione è già utlizzato.
team_name_been_taken=Il nome del Team è già utilizzato. team_name_been_taken=Il nome del Team è già utilizzato.
email_been_used=L'indirizzo E-mail è già utilizzato. email_been_used=L'indirizzo E-mail è già utilizzato.
username_password_incorrect=Nome utente o password incorretti. username_password_incorrect=Nome utente o password incorretti.
auth_source_mismatch=La sorgente di autenticazione selezionata non è associata all'utente.
enterred_invalid_repo_name=Si prega di assicurarsi che il nome del repository inserito sia corretto. enterred_invalid_repo_name=Si prega di assicurarsi che il nome del repository inserito sia corretto.
enterred_invalid_owner_name=Si prega di assicurarsi che il nome del proprietario inserito sia corretto. enterred_invalid_owner_name=Si prega di assicurarsi che il nome del proprietario inserito sia corretto.
enterred_invalid_password=Verificare che la password inserita sia corretta. enterred_invalid_password=Verificare che la password inserita sia corretta.
@@ -256,15 +265,14 @@ following=Seguiti
follow=Segui follow=Segui
unfollow=Non seguire più unfollow=Non seguire più
form.name_reserved=L'username '%s' è riservato. form.name_not_allowed=Nome utente o schema %q non consentito.
form.name_pattern_not_allowed=La struttura del nome utente '%s' non è consentita.
[settings] [settings]
profile=Profilo profile=Profilo
password=Password password=Password
avatar=Avatar avatar=Avatar
ssh_keys=Chiavi SSH ssh_keys=Chiavi SSH
security=Security security=Sicurezza
repos=Repository repos=Repository
orgs=Organizzazioni orgs=Organizzazioni
applications=Applicazioni applications=Applicazioni
@@ -309,6 +317,7 @@ delete_email=Elimina
email_deletion=Eliminazione e-mail email_deletion=Eliminazione e-mail
email_deletion_desc=La procedura di rimozione indirizzo email eliminerà tutte le informazioni correlate dal tuo account. Si desidera continuare? email_deletion_desc=La procedura di rimozione indirizzo email eliminerà tutte le informazioni correlate dal tuo account. Si desidera continuare?
email_deletion_success=Indirizzo e-mail eliminato con successo! email_deletion_success=Indirizzo e-mail eliminato con successo!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Aggiungi un nuovo indirizzo E-mail add_new_email=Aggiungi un nuovo indirizzo E-mail
add_email=Aggiungi E-mail add_email=Aggiungi E-mail
add_email_confirmation_sent=Una nuova email di conferma è stata inviata a '%s', per favore controlla la tua posta in arrivo nelle prossime %d ore per completare il processo di registrazione. add_email_confirmation_sent=Una nuova email di conferma è stata inviata a '%s', per favore controlla la tua posta in arrivo nelle prossime %d ore per completare il processo di registrazione.
@@ -335,33 +344,35 @@ key_state_desc=Hai utilizzato questa chiave negli ultimi 7 giorni
token_state_desc=Questo token e' satato utilizzato negli ultimi 7 giorni token_state_desc=Questo token e' satato utilizzato negli ultimi 7 giorni
two_factor=Autenticazione in Due Passaggi two_factor=Autenticazione in Due Passaggi
two_factor_status=Status: two_factor_status=Stato:
two_factor_on=Attiva two_factor_on=Attiva
two_factor_off=Off two_factor_off=Non attivo
two_factor_enable=Enable two_factor_enable=Abilita
two_factor_disable=Disattivata two_factor_disable=Disattivata
two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application. two_factor_view_recovery_codes=Visualizza e memorizza i tuoi <a href="%s%s">codici di recupero</a> in un posto sicuro. Puoi utilizzarli come codice di sicurezza se perdi gli accessi all'applicazione di autenticazione.
two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>. two_factor_http=Per le operazioni HTTP/HTTPS, non sei più in grado di utilizzare nome utente e password. Si prega di creare e utilizzare <a href="%[1]s%[2]s">Token di accesso personale</a> come credenziali, ad esempio. <code>%[3]s</code>.
two_factor_enable_title=Abilita l'autenticazione in due passaggi two_factor_enable_title=Abilita l'autenticazione in due passaggi
two_factor_scan_qr=Please use your authentication application to scan the image: two_factor_scan_qr=Per favore, utilizza la tua applicazione di autenticazione per scansionare l'immagine:
two_factor_or_enter_secret=Or enter the secret: two_factor_or_enter_secret=O inserisci la chiave segreta:
two_factor_then_enter_passcode=Then enter passcode: two_factor_then_enter_passcode=Poi inserisci la chiave di sicurezza:
two_factor_verify=Verifica two_factor_verify=Verifica
two_factor_invalid_passcode=The passcode you entered is not valid, please try again! two_factor_invalid_passcode=La chiave di sicurezza che hai inserito non è valida, riprova!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_reused_passcode=La chiave di sicurezza che hai inserito è già stata utilizzata, provane un'altra!
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_error=Impossibile abilitare l'autenticazione a due fattori: %v
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_enable_success=Autenticazione a due fattori abilitata per il tuo account con successo!
two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>. two_factor_recovery_codes_title=Codici di recupero autenticazione a due fattori
two_factor_regenerate_recovery_codes=Regenerate Recovery Codes two_factor_recovery_codes_desc=I codici di recupero vengono utilizzati quando si perde temporaneamente l'accesso all'applicazione di autenticazione. Ogni codice di recupero può essere utilizzato solo una volta, <b>si prega di mantenere questi codici in un posto sicuro</b>.
two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v two_factor_regenerate_recovery_codes=Rigenera codici di recupero
two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully! two_factor_regenerate_recovery_codes_error=Impossibile rigenerare codici di recupero: %v
two_factor_disable_title=Disable Two-factor Authentication two_factor_regenerate_recovery_codes_success=I nuovi codici di recupero sono stati generati correttamente!
two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue? two_factor_disable_title=Disabilita autenticazione a due fattori
two_factor_disable_success=Two-factor authentication has disabled successfully! two_factor_disable_desc=Il livello di sicurezza del tuo account diminuirà disabilitando l'autenticazione a due fattori. Vuoi continuare?
two_factor_disable_success=L'autenticazione a due fattori è stata disabilitata!
manage_access_token=Gestisci i Token di Accesso Personale manage_access_token=Gestisci i Token di Accesso Personale
generate_new_token=Genera Nuovo Token generate_new_token=Genera Nuovo Token
tokens_desc=I Token che hai generato e che possono essere utilizzati per accedere alle API Gogs. tokens_desc=I Token che hai generato e che possono essere utilizzati per accedere alle API Gogs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Da questo momento, ogni token avrà pieno accesso al tuo account. new_token_desc=Da questo momento, ogni token avrà pieno accesso al tuo account.
token_name=Nome Token token_name=Nome Token
generate_token=Genera Token generate_token=Genera Token
@@ -370,15 +381,16 @@ delete_token=Elimina
access_token_deletion=Eliminazione Token di accesso personale access_token_deletion=Eliminazione Token di accesso personale
access_token_deletion_desc=Eliminare questo token di accesso personale rimuoverà tutti i relativi accessi di applicazione. Si desidera continuare? access_token_deletion_desc=Eliminare questo token di accesso personale rimuoverà tutti i relativi accessi di applicazione. Si desidera continuare?
delete_token_success=Il token di accesso personale è stato eliminato! Non dimenticare di aggiornare anche l'applicazione. delete_token_success=Il token di accesso personale è stato eliminato! Non dimenticare di aggiornare anche l'applicazione.
token_name_exists=Un token con lo stesso nome esiste già.
orgs.none=Non sei membro di alcuna organizzazione. orgs.none=Non sei membro di alcuna organizzazione.
orgs.leave_title=Abbandona una organizzazione orgs.leave_title=Abbandona una organizzazione
orgs.leave_desc=Abbandonando l'organizzazione perderai l'accesso a tutti i repository e i gruppi. Confermi? orgs.leave_desc=Abbandonando l'organizzazione perderai l'accesso a tutti i repository e i gruppi. Confermi?
repos.leave=Abbandona repos.leave=Abbandona
repos.leave_title=Leave repository repos.leave_title=Lascia il repository
repos.leave_desc=You will lose access to the repository after you left. Do you want to continue? repos.leave_desc=Perderai l'accesso al repository dopo che hai lasciato. Vuoi continuare?
repos.leave_success=You have left repository '%s' successfully! repos.leave_success=Hai lasciato il repository '%s' con successo!
delete_account=Elimina Account delete_account=Elimina Account
delete_prompt=L'operazione eliminerà permanentemente l'account e <strong>NON POTRÀ</strong> essere annullata! delete_prompt=L'operazione eliminerà permanentemente l'account e <strong>NON POTRÀ</strong> essere annullata!
@@ -391,7 +403,9 @@ owner=Proprietario
repo_name=Nome Repository repo_name=Nome Repository
repo_name_helper=I migliori nomi dei repository sono brevi, facili da memorizzare e <strong>univoci</strong>. repo_name_helper=I migliori nomi dei repository sono brevi, facili da memorizzare e <strong>univoci</strong>.
visibility=Visibilità visibility=Visibilità
unlisted=Unlisted
visiblity_helper=Questo repository è <span class="ui red text"> privato</span> visiblity_helper=Questo repository è <span class="ui red text"> privato</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=L'amministratore del sito ha deciso che tutti i nuovi repository devono essere <span class="ui red text">privati</span> visiblity_helper_forced=L'amministratore del sito ha deciso che tutti i nuovi repository devono essere <span class="ui red text">privati</span>
visiblity_fork_helper=(La modifica di questo valore avrà effetto su tutti i fork) visiblity_fork_helper=(La modifica di questo valore avrà effetto su tutti i fork)
clone_helper=Hai bisogno di aiuto per la clonazione? Visita <a target="_blank" href="%s">Aiuto</a>! clone_helper=Hai bisogno di aiuto per la clonazione? Visita <a target="_blank" href="%s">Aiuto</a>!
@@ -409,7 +423,7 @@ auto_init=Inizializzare questo repository con i file e il modello selezionati
create_repo=Crea Repository create_repo=Crea Repository
default_branch=Ramo (Branch) predefinito default_branch=Ramo (Branch) predefinito
mirror_prune=Rimuovi mirror_prune=Rimuovi
mirror_prune_desc=Remove any remote-tracking references that no longer exist on the remote mirror_prune_desc=Rimuovi ogni riferimento di monitoraggio remoto che non esiste più sul telecomando
mirror_interval=Intervallo Mirror (in ore) mirror_interval=Intervallo Mirror (in ore)
mirror_address=Indirizzo del mirror mirror_address=Indirizzo del mirror
mirror_address_desc=Si prega di includere nell'indirizzo le credenziali utente necessarie. mirror_address_desc=Si prega di includere nell'indirizzo le credenziali utente necessarie.
@@ -417,10 +431,11 @@ mirror_last_synced=Ultimo aggiornamento
watchers=Osservatori watchers=Osservatori
stargazers=Fan stargazers=Fan
forks=Fork forks=Fork
repo_description_helper=Descrizione della repository. Lunghezza massima di 512 caratteri.
repo_description_length=Caratteri disponibili
form.reach_limit_of_creation=Il proprietario ha raggiunto il limite massimo di %d repository creati. form.reach_limit_of_creation=Il proprietario ha raggiunto il limite massimo di %d repository creati.
form.name_reserved=Il nome repository %s è riservato. form.name_not_allowed=Nome della repository o schema %q non consentiti.
form.name_pattern_not_allowed=La struttura del nome del repository %s non è consentita.
need_auth=Richiesta di autorizzazione need_auth=Richiesta di autorizzazione
migrate_type=Tipo di migrazione migrate_type=Tipo di migrazione
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Può essere un url HTTP/HTTPS/GIT.
migrate.clone_address_desc_import_local=Puoi anche migrare un repository usando un path locale sul server. migrate.clone_address_desc_import_local=Puoi anche migrare un repository usando un path locale sul server.
migrate.permission_denied=Non è consentito importare repository locali. migrate.permission_denied=Non è consentito importare repository locali.
migrate.invalid_local_path=Percorso locale non valido, non esiste o non è una cartella. migrate.invalid_local_path=Percorso locale non valido, non esiste o non è una cartella.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migrazione non riuscita: %v migrate.failed=Migrazione non riuscita: %v
mirror_from=mirror da mirror_from=mirror da
@@ -463,7 +479,7 @@ pulls=Pull Requests
labels=Etichette labels=Etichette
milestones=Traguardi milestones=Traguardi
commits=Commit commits=Commit
git_branches=Branches git_branches=Rami (Branch)
releases=Rilasci releases=Rilasci
file_raw=Originale file_raw=Originale
file_history=Cronologia file_history=Cronologia
@@ -472,12 +488,14 @@ file_permalink=Permalink
file_too_large=Questo file è troppo grande per essere mostrato file_too_large=Questo file è troppo grande per essere mostrato
video_not_supported_in_browser=Il tuo browser non supporta i tag "video" di HTML5. video_not_supported_in_browser=Il tuo browser non supporta i tag "video" di HTML5.
branches.overview=Overview branches.overview=Panoramica
branches.active_branches=Active Branches branches.active_branches=Rami (Branch) attivi
branches.stale_branches=Stale Branches branches.stale_branches=Stale Branches
branches.all=All Branches branches.all=Tutti i rami (branch)
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=Updated %[1]s by %[2]s
branches.change_default_branch=Change Default Branch branches.change_default_branch=Cambia branch di default
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nuovo file editor.new_file=Nuovo file
editor.upload_file=Carica File editor.upload_file=Carica File
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Il file è stato cambiato in un'altra posizion
editor.file_already_exists=Un file di nome '%s' esiste già in questo repository. editor.file_already_exists=Un file di nome '%s' esiste già in questo repository.
editor.no_changes_to_show=Nessuna modifica da mostrare. editor.no_changes_to_show=Nessuna modifica da mostrare.
editor.fail_to_update_file=La creazione o la modifica del file '%s' è fallita: %v editor.fail_to_update_file=La creazione o la modifica del file '%s' è fallita: %v
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
editor.add_subdir=Aggiungi sottocartella... editor.add_subdir=Aggiungi sottocartella...
editor.unable_to_upload_files=È fallito il caricamento dei file su '%s': %v editor.unable_to_upload_files=È fallito il caricamento dei file su '%s': %v
editor.upload_files_to_dir=Carica file su '%s' editor.upload_files_to_dir=Carica file su '%s'
@@ -576,8 +595,8 @@ issues.next=Pagina successiva
issues.open_title=Aperto issues.open_title=Aperto
issues.closed_title=Chiuso issues.closed_title=Chiuso
issues.num_comments=%d commenti issues.num_comments=%d commenti
issues.commented_at=`commented <a href="#%s">%s</a>` issues.commented_at=`ha commentato <a href="#%s">%s</a>`
issues.delete_comment_confirm=Are you sure you want to delete this comment? issues.delete_comment_confirm=Sei sicuro/a di voler eliminare questo commento?
issues.no_content=Non ci sono ancora contenuti. issues.no_content=Non ci sono ancora contenuti.
issues.close_issue=Chiudi issues.close_issue=Chiudi
issues.close_comment_issue=Commenta e chiudi issues.close_comment_issue=Commenta e chiudi
@@ -633,10 +652,11 @@ pulls.can_auto_merge_desc=La pull request può essere mergiata automaticamente.
pulls.cannot_auto_merge_desc=Questa pull request non può essere mergiata automaticamente perchè ci sono dei conflitti. pulls.cannot_auto_merge_desc=Questa pull request non può essere mergiata automaticamente perchè ci sono dei conflitti.
pulls.cannot_auto_merge_helper=Effettua il merge manualmente per risolvere i conflitti. pulls.cannot_auto_merge_helper=Effettua il merge manualmente per risolvere i conflitti.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Effettua un Rebase prima del Merge
pulls.commit_description=Descrizione del Commit
pulls.merge_pull_request=Unisci Pull Request pulls.merge_pull_request=Unisci Pull Request
pulls.open_unmerged_pull_exists=`You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.` pulls.open_unmerged_pull_exists=`You can't perform reopen operation because there is already an open pull request (#%d) from same repository with same merge information and is waiting for merging.`
pulls.delete_branch=Delete Branch pulls.delete_branch=Elimina Ramo
pulls.delete_branch_has_new_commits=Branch cannot be deleted because it has new commits after mergence. pulls.delete_branch_has_new_commits=Branch cannot be deleted because it has new commits after mergence.
milestones.new=Nuova Milestone milestones.new=Nuova Milestone
@@ -684,62 +704,62 @@ wiki.last_updated=Ultimo aggiornamento: %s
settings=Impostazioni settings=Impostazioni
settings.options=Opzioni settings.options=Opzioni
settings.collaboration=Collaborazione settings.collaboration=Collaborazione
settings.collaboration.admin=Admin settings.collaboration.admin=Amministratore
settings.collaboration.write=Write settings.collaboration.write=Scrivi
settings.collaboration.read=Read settings.collaboration.read=Leggi
settings.collaboration.undefined=Undefined settings.collaboration.undefined=Indefinito
settings.branches=Branches settings.branches=Divisioni
settings.branches_bare=You cannot manage branches for bare repository. Please push some content first. settings.branches_bare=You cannot manage branches for bare repository. Please push some content first.
settings.default_branch=Default Branch settings.default_branch=Ramo di default
settings.default_branch_desc=The default branch is considered the "base" branch for code commits, pull requests and online editing. settings.default_branch_desc=The default branch is considered the "base" branch for code commits, pull requests and online editing.
settings.update=Aggiorna settings.update=Aggiorna
settings.update_default_branch_unsupported=Change default branch is not supported by the Git version on server. settings.update_default_branch_unsupported=Change default branch is not supported by the Git version on server.
settings.update_default_branch_success=Default branch of this repository has been updated successfully! settings.update_default_branch_success=Default branch of this repository has been updated successfully!
settings.protected_branches=Branch protetti settings.protected_branches=Branch protetti
settings.protected_branches_desc=Protect branches from force pushing, accidental deletion and whitelist code committers. settings.protected_branches_desc=Protect branches from force pushing, accidental deletion and whitelist code committers.
settings.choose_a_branch=Choose a branch... settings.choose_a_branch=Scegli un ramo...
settings.branch_protection=Branch Protection settings.branch_protection=Protezione Ramo
settings.branch_protection_desc=Please choose protect options for branch <b>%s</b>. settings.branch_protection_desc=Please choose protect options for branch <b>%s</b>.
settings.protect_this_branch=Protect this branch settings.protect_this_branch=Proteggere questo ramo
settings.protect_this_branch_desc=Disable force pushes and prevent from deletion. settings.protect_this_branch_desc=Disable force pushes and prevent from deletion.
settings.protect_require_pull_request=Require pull request instead direct pushing settings.protect_require_pull_request=Require pull request instead direct pushing
settings.protect_require_pull_request_desc=Enable this option to disable direct pushing to this branch. Commits have to be pushed to another non-protected branch and merged to this branch through pull request. settings.protect_require_pull_request_desc=Enable this option to disable direct pushing to this branch. Commits have to be pushed to another non-protected branch and merged to this branch through pull request.
settings.protect_whitelist_committers=Whitelist who can push to this branch settings.protect_whitelist_committers=Whitelist who can push to this branch
settings.protect_whitelist_committers_desc=Add people or teams to whitelist of direct push to this branch. Users in whitelist will bypass require pull request check. settings.protect_whitelist_committers_desc=Add people or teams to whitelist of direct push to this branch. Users in whitelist will bypass require pull request check.
settings.protect_whitelist_users=Users who can push to this branch settings.protect_whitelist_users=Users who can push to this branch
settings.protect_whitelist_search_users=Search users settings.protect_whitelist_search_users=Cerca utenti
settings.protect_whitelist_teams=Teams for which members of them can push to this branch settings.protect_whitelist_teams=Teams for which members of them can push to this branch
settings.protect_whitelist_search_teams=Search teams settings.protect_whitelist_search_teams=Cerca Teams
settings.update_protect_branch_success=Protect options for this branch has been updated successfully! settings.update_protect_branch_success=Protect options for this branch has been updated successfully!
settings.hooks=Webhooks settings.hooks=Webhooks
settings.githooks=Git Hooks settings.githooks=Git Hooks
settings.basic_settings=Impostazioni di Base settings.basic_settings=Impostazioni di Base
settings.mirror_settings=Mirror Settings settings.mirror_settings=Impostazioni mirror
settings.sync_mirror=Sync Now settings.sync_mirror=Sincronizza ora
settings.mirror_sync_in_progress=Mirror syncing is in progress, please refresh page in about a minute. settings.mirror_sync_in_progress=Sincronizzazione del mirror in corso, aggiorna la pagina tra un minuto.
settings.site=Sito Ufficiale settings.site=Sito Ufficiale
settings.update_settings=Aggiorna Impostazioni settings.update_settings=Aggiorna Impostazioni
settings.change_reponame_prompt=Questa modifica influirà i link al repository. settings.change_reponame_prompt=Questa modifica influirà i link al repository.
settings.advanced_settings=Opzioni avanzate settings.advanced_settings=Opzioni avanzate
settings.wiki_desc=Enable wiki system settings.wiki_desc=Abilita wiki
settings.use_internal_wiki=Use builtin wiki settings.use_internal_wiki=Usa wiki incorporato
settings.allow_public_wiki_desc=Allow public access to wiki when repository is private settings.allow_public_wiki_desc=Allow public access to wiki when repository is private
settings.use_external_wiki=Usa Wiki esterno settings.use_external_wiki=Usa Wiki esterno
settings.external_wiki_url=URL Wiki esterno settings.external_wiki_url=URL Wiki esterno
settings.external_wiki_url_desc=I visitatori verranno reindirizzati all'URL quando cliccano sulla scheda. settings.external_wiki_url_desc=I visitatori verranno reindirizzati all'URL quando cliccano sulla scheda.
settings.issues_desc=Enable issue tracker settings.issues_desc=Abilita tracking problemi
settings.use_internal_issue_tracker=Use builtin lightweight issue tracker settings.use_internal_issue_tracker=Utilizza il segnalatore di problemi integrato (molto leggero)
settings.allow_public_issues_desc=Allow public access to issues when repository is private settings.allow_public_issues_desc=Allow public access to issues when repository is private
settings.use_external_issue_tracker=Utilizza gestore di problemi esterno settings.use_external_issue_tracker=Utilizza gestore di problemi esterno
settings.external_tracker_url=External Issue Tracker URL settings.external_tracker_url=URL di un segnalatore di problemi esterno
settings.external_tracker_url_desc=Visitors will be redirected to URL when they click on the tab. settings.external_tracker_url_desc=I visitatori verranno reindirizzati all'URL quando faranno click sulla scheda.
settings.tracker_url_format=Formato URL Gestore Problemi Esterno settings.tracker_url_format=Formato URL Gestore Problemi Esterno
settings.tracker_issue_style=External Issue Tracker Naming Style: settings.tracker_issue_style=External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric=Numeric settings.tracker_issue_style.numeric=Numerico
settings.tracker_issue_style.alphanumeric=Alphanumeric settings.tracker_issue_style.alphanumeric=Alfanumerico
settings.tracker_url_format_desc=You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index. settings.tracker_url_format_desc=You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index.
settings.pulls_desc=Abilita le pull requests per accettare contributi pubblici settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignora cambiamenti di spazi bianchi
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Zona Pericolosa settings.danger_zone=Zona Pericolosa
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner. settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Questo utente non potrà più collaborare a
settings.remove_collaborator_success=Il collaboratore è stato rimosso. settings.remove_collaborator_success=Il collaboratore è stato rimosso.
settings.search_user_placeholder=Cerca utente... settings.search_user_placeholder=Cerca utente...
settings.org_not_allowed_to_be_collaborator=Un'organizzazione non può essere aggiunta come collaboratore. settings.org_not_allowed_to_be_collaborator=Un'organizzazione non può essere aggiunta come collaboratore.
settings.add_webhook=Aggiungi Webhook
settings.hooks_desc=I Webhooks sono molto simili a un basilare evento trigger HTTP POST. Ogni volta che qualcosa si verifica in Gogs, tratteremo la notifica all'host di destinazione specificato. Ulteriori informazioni in questa <a target="_blank" href="%s">Guida ai Webhooks</a>. settings.hooks_desc=I Webhooks sono molto simili a un basilare evento trigger HTTP POST. Ogni volta che qualcosa si verifica in Gogs, tratteremo la notifica all'host di destinazione specificato. Ulteriori informazioni in questa <a target="_blank" href="%s">Guida ai Webhooks</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Aggiungi Webhook
settings.webhook_deletion=Elimina Webhook settings.webhook_deletion=Elimina Webhook
settings.webhook_deletion_desc=Delete this webhook will remove its information and all delivery history. Do you want to continue? settings.webhook_deletion_desc=Delete this webhook will remove its information and all delivery history. Do you want to continue?
settings.webhook_deletion_success=Il Webhook è stato eliminato con successo! settings.webhook_deletion_success=Il Webhook è stato eliminato con successo!
@@ -792,6 +814,8 @@ settings.webhook.response=Risposta
settings.webhook.headers=Headers settings.webhook.headers=Headers
settings.webhook.payload=Payload settings.webhook.payload=Payload
settings.webhook.body=Body settings.webhook.body=Body
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Gli Hooks di Git sono una funzionalità di Git stesso, puoi modificare i file degli hooks supportati nell'elenco qui sotto per compiere azioni personalizzate. settings.githooks_desc=Gli Hooks di Git sono una funzionalità di Git stesso, puoi modificare i file degli hooks supportati nell'elenco qui sotto per compiere azioni personalizzate.
settings.githook_edit_desc=Se l'hook è inattivo, sarà presentato un contenuto esempio. Lasciando il contenuto vuoto disattiverai questo hook. settings.githook_edit_desc=Se l'hook è inattivo, sarà presentato un contenuto esempio. Lasciando il contenuto vuoto disattiverai questo hook.
settings.githook_name=Nome hook settings.githook_name=Nome hook
@@ -811,19 +835,19 @@ settings.event_send_everything=Ho bisogno di <strong>tutto</strong>.
settings.event_choose=Lasciami scegliere ciò di cui ho bisogno. settings.event_choose=Lasciami scegliere ciò di cui ho bisogno.
settings.event_create=Crea settings.event_create=Crea
settings.event_create_desc=Branch, o tag creato settings.event_create_desc=Branch, o tag creato
settings.event_delete=Delete settings.event_delete=Elimina
settings.event_delete_desc=Branch or tag deleted settings.event_delete_desc=Branch o tag eliminato
settings.event_fork=Forka settings.event_fork=Forka
settings.event_fork_desc=Repository Forkata settings.event_fork_desc=Repository Forkata
settings.event_push=Push settings.event_push=Push
settings.event_push_desc=Git push in un repository settings.event_push_desc=Git push in un repository
settings.event_issues=Issues settings.event_issues=Problemi
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Pull request settings.event_pull_request=Pull request
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_release=Release settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Versione
settings.event_release_desc=Release published in a repository. settings.event_release_desc=Release published in a repository.
settings.active=Attivo settings.active=Attivo
settings.active_helper=Anche i dettagli riguardanti l'evento che ha innescato l'hook saranno inviati. settings.active_helper=Anche i dettagli riguardanti l'evento che ha innescato l'hook saranno inviati.
@@ -852,6 +876,8 @@ settings.add_key_success=La nuova deploy key '%s' è stata aggiunta con successo
settings.deploy_key_deletion=Elimina Deploy Key settings.deploy_key_deletion=Elimina Deploy Key
settings.deploy_key_deletion_desc=Cancellando questa deploy key verrà rismosso ogni accesso relativo a questa repository. Vuoi continuare? settings.deploy_key_deletion_desc=Cancellando questa deploy key verrà rismosso ogni accesso relativo a questa repository. Vuoi continuare?
settings.deploy_key_deletion_success=Deploy key eliminata con successo! settings.deploy_key_deletion_success=Deploy key eliminata con successo!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Sfoglia il codice sorgente diff.browse_source=Sfoglia il codice sorgente
diff.parent=parent diff.parent=parent
@@ -889,12 +915,12 @@ release.cancel=Annulla
release.publish=Pubblica Rilascio release.publish=Pubblica Rilascio
release.save_draft=Salva Bozza release.save_draft=Salva Bozza
release.edit_release=Modifica Rilascio release.edit_release=Modifica Rilascio
release.delete_release=Cancela questa Release release.delete_release=Cancella questa Release
release.deletion=Eliminazione Release release.deletion=Eliminazione Release
release.deletion_desc=Eliminando questa release cancellarai anche i tag Git corrispondenti. Vuoi continuare? release.deletion_desc=Eliminando questa release cancellarai anche i tag Git corrispondenti. Vuoi continuare?
release.deletion_success=La release è stata eliminata con successo! release.deletion_success=La release è stata eliminata con successo!
release.tag_name_already_exist=Un rilascio con questo tag esiste già. release.tag_name_already_exist=Un rilascio con questo tag esiste già.
release.tag_name_invalid=Tag name is not valid. release.tag_name_invalid=Il nome del Tag non è valido.
release.downloads=Download release.downloads=Download
[org] [org]
@@ -916,9 +942,8 @@ team_name_helper=Verrà usato questo nome per riferirsi a questo team nella conv
team_desc_helper=In cosa consiste questo team? team_desc_helper=In cosa consiste questo team?
team_permission_desc=Quale livello di autorizzazione dovrebbe avere questa squadra? team_permission_desc=Quale livello di autorizzazione dovrebbe avere questa squadra?
form.name_reserved=Il nome organizzazione '%s' è riservato. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=La struttura del nome dell'organizzazione '%s' non è consentita. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Team name '%s' is reserved.
settings=Impostazioni settings=Impostazioni
settings.options=Opzioni settings.options=Opzioni
@@ -990,12 +1015,19 @@ first_page=Prima
last_page=Ultima last_page=Ultima
total=Totale: %d total=Totale: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git version
dashboard.go_version=Go version
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Statistiche dashboard.statistic=Statistiche
dashboard.operations=Operazioni dashboard.operations=Operazioni
dashboard.system_status=Stato del Monitor di Sistema dashboard.system_status=Stato del Monitor di Sistema
dashboard.statistic_info=Il database di Gogs ha <b>%d</b> utenti, <b>%d</b> organizzazioni, <b>%d</b> chiavi pubbliche, <b>%d</b> repository, <b>%d</b> utenti che seguono, <b>%d</b> voti, <b>%d</b> azioni, <b>%d</b> accessi, <b>%d</b> problemi, <b>%d</b> commenti, <b>%d</b> account sociali, <b>%d</b> utenti seguiti, <b>%d</b> mirror, <b>%d</b> rilasci, <b>%d</b> fonti di accesso, <b>%d</b> webhook, <b>%d</b> traguardi, <b>%d</b> etichette, <b>%d</b> incarichi hook, <b>%d</b> team, <b>%d</b> attività di aggiornamento, <b>%d</b> allegati. dashboard.statistic_info=Il database di Gogs ha <b>%d</b> utenti, <b>%d</b> organizzazioni, <b>%d</b> chiavi pubbliche, <b>%d</b> repository, <b>%d</b> utenti che seguono, <b>%d</b> voti, <b>%d</b> azioni, <b>%d</b> accessi, <b>%d</b> problemi, <b>%d</b> commenti, <b>%d</b> account sociali, <b>%d</b> utenti seguiti, <b>%d</b> mirror, <b>%d</b> rilasci, <b>%d</b> fonti di accesso, <b>%d</b> webhook, <b>%d</b> traguardi, <b>%d</b> etichette, <b>%d</b> incarichi hook, <b>%d</b> team, <b>%d</b> attività di aggiornamento, <b>%d</b> allegati.
dashboard.operation_name=Nome Operazione dashboard.operation_name=Nome Operazione
dashboard.operation_switch=Cambia dashboard.operation_switch=Cambia
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Esegui dashboard.operation_run=Esegui
dashboard.clean_unbind_oauth=Pulire OAuthes non associati dashboard.clean_unbind_oauth=Pulire OAuthes non associati
dashboard.clean_unbind_oauth_success=Tutti gli OAuthes non associati eliminati con successo. dashboard.clean_unbind_oauth_success=Tutti gli OAuthes non associati eliminati con successo.
@@ -1085,13 +1117,14 @@ repos.private=Privati
repos.watches=Segue repos.watches=Segue
repos.stars=Voti repos.stars=Voti
repos.issues=Problemi repos.issues=Problemi
repos.size=Size repos.size=Dimensione
auths.auth_manage_panel=Pannello di configurazione dei meccanismi di autenticazione auths.auth_sources=Authentication Sources
auths.new=Aggiungi Nuova Origine auths.new=Aggiungi Nuova Origine
auths.name=Nome auths.name=Nome
auths.type=Tipo auths.type=Tipo
auths.enabled=Attivo auths.enabled=Attivo
auths.default=Default
auths.updated=Aggiornato auths.updated=Aggiornato
auths.auth_type=Tipo di autenticazione auths.auth_type=Tipo di autenticazione
auths.auth_name=Nome di autenticazione auths.auth_name=Nome di autenticazione
@@ -1110,7 +1143,7 @@ auths.attribute_username_placeholder=Se vuoto, verrà usato il nome di login del
auths.attribute_name=First Name Attribute auths.attribute_name=First Name Attribute
auths.attribute_surname=Attributo Cognome auths.attribute_surname=Attributo Cognome
auths.attribute_mail=Attributo Email auths.attribute_mail=Attributo Email
auths.verify_group_membership=Verify group membership auths.verify_group_membership=Verifica gruppo di appartenenza
auths.group_search_base_dn=Group Search Base DN auths.group_search_base_dn=Group Search Base DN
auths.group_filter=Group Filter auths.group_filter=Group Filter
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users auths.group_attribute_contain_user_list=Group Attribute Containing List of Users
@@ -1128,9 +1161,9 @@ auths.enable_tls=Abilitare Crittografia TLS
auths.skip_tls_verify=Salta verifica TLS auths.skip_tls_verify=Salta verifica TLS
auths.pam_service_name=Nome del Servizio PAM auths.pam_service_name=Nome del Servizio PAM
auths.enable_auto_register=Abilitare Registrazione Automatica auths.enable_auto_register=Abilitare Registrazione Automatica
auths.tips=Consigli
auths.edit=Modifica impostazioni di autenticazione auths.edit=Modifica impostazioni di autenticazione
auths.activated=Questa Autenticazione è stata attivata auths.activated=Questa Autenticazione è stata attivata
auths.default_auth=This authentication is default login source
auths.new_success=Nuovo meccanismo di autenticazione '%s' aggiunto. auths.new_success=Nuovo meccanismo di autenticazione '%s' aggiunto.
auths.update_success=Parametro di autenticazione aggiornato. auths.update_success=Parametro di autenticazione aggiornato.
auths.update=Aggiornare le impostazioni di autenticazione auths.update=Aggiornare le impostazioni di autenticazione
@@ -1140,122 +1173,188 @@ auths.delete_auth_desc=Eliminazione del meccanismo di autenticazione. Continuare
auths.still_in_used=Questo meccanismo di autenticazione è ancora attivo per alcuni utenti. Eliminare gli utenti o cambiare il loro meccanismo di autenticazione prima di ritentare. auths.still_in_used=Questo meccanismo di autenticazione è ancora attivo per alcuni utenti. Eliminare gli utenti o cambiare il loro meccanismo di autenticazione prima di ritentare.
auths.deletion_success=Il meccanismo di autenticazione è stato eliminato! auths.deletion_success=Il meccanismo di autenticazione è stato eliminato!
auths.login_source_exist=La fonte di autenticazione '%s' esiste già. auths.login_source_exist=La fonte di autenticazione '%s' esiste già.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(non impostata)
config.server_config=Configurazione Server config.server_config=Configurazione Server
config.app_name=Nome Applicazione config.brand_name=Brand name
config.app_ver=Versione Applicazione
config.app_url=URL Applicazione
config.domain=Dominio
config.offline_mode=Modalità Offline
config.disable_router_log=Disattivare Log del Router
config.run_user=Utente Esecutore config.run_user=Utente Esecutore
config.run_mode=Modalità Esecuzione config.run_mode=Modalità Esecuzione
config.git_version=Versione Git config.server.external_url=External URL
config.static_file_root_path=Percorso Root del File Statico config.server.domain=Domain
config.log_file_root_path=Percorso Root del File di Log config.server.protocol=Protocol
config.reverse_auth_user=Autenticazione Utente Inversa config.server.http_addr=HTTP address
config.server.http_port=HTTP port
config.server.cert_file=Certificate file
config.server.key_file=Key file
config.server.tls_min_version=Minimum TLS version
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Abilita Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=Configurazione SSH config.ssh_config=Configurazione SSH
config.ssh_enabled=Attivo config.ssh.enabled=Enabled
config.ssh_start_builtin_server=Avvia server builtin config.ssh.domain=Exposed domain
config.ssh_domain=Dominio config.ssh.port=Exposed port
config.ssh_port=Porta config.ssh.root_path=Root path
config.ssh_listen_port=Porta in ascolto config.ssh.keygen_path=Keygen path
config.ssh_root_path=Percorso Root config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Percorso chiave di test config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Percorso Keygen ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Verifica delle dimensioni minime della chiave config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Dimensioni minime della chiave config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repository Configuration config.repo_config=Configurazione Repository
config.repo_root_path=Percorso Root del Repository config.repo.root_path=Root path
config.script_type=Tipo di Script config.repo.script_type=Script type
config.repo_force_private=Force Private config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Max Creation Limit config.repo.force_private=Force private
config.preferred_licenses=Preferred Licenses config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Disable HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Enable Local Path Migration config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Configurazione Database config.db_config=Configurazione Database
config.db_type=Tipo config.db.type=Tipo
config.db_host=Host config.db.host=Host
config.db_name=Nome config.db.name=Nome
config.db_user=Utente config.db.schema=Schema
config.db_ssl_mode=Modalità SSL config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(solo per "postgres") config.db.user=Utente
config.db_path=Percorso config.db.ssl_mode=modalità SSL
config.db_path_helper=(per "sqlite3" e "tidb") config.db.ssl_mode_helper=(solo per "postgres")
config.db.path=Percorso
config.db.path_helper=(solo per "sqlite3")
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Configurazione Servizio config.security_config=Security configuration
config.register_email_confirm=Richiedono Conferma dell'Email config.security.login_remember_days=Login remember days
config.disable_register=Disabilita Registrazione config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Mostra Pulsante Registrazione config.security.cookie_username=Username cookie
config.require_sign_in_view=Richiesto Accesso per Vedere config.security.cookie_secure=Enable secure cookie
config.mail_notify=Email di Notifica config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Disabilita controllo sulle dimensioni minime della chiave config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Abilita Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Attiva Vita del Codice config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Reimpostare Password della Vita del Codice
config.webhook_config=Configurazione Webhook config.email_config=Email configuration
config.queue_length=Lunghezza della coda config.email.enabled=Enabled
config.deliver_timeout=Tempo Limite di Consegna config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Salta verifiche TLS config.email.host=Host
config.email.from=Da
config.email.user=Utente
config.email.disable_helo=Disattiva HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=File certificato
config.email.key_file=Key file
config.email.use_plain_text=Usa testo semplice
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Invia email di test
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Configurazione Mailer config.auth_config=Authentication configuration
config.mailer_enabled=Attivo config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Disattiva HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Host config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Utente config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Invia email di test config.auth.disable_registration=Disable registration
config.test_mail_failed=Impossibile inviare mail a '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Una mail di prova è stata inviata a '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=Configurazione OAuth config.user_config=User configuration
config.oauth_enabled=Attivo config.user.enable_email_notify=Enable email notification
config.cache_config=Configurazione Cache
config.cache_adapter=Adattatore Cache
config.cache_interval=Intervallo Cache
config.cache_conn=Connessione Cache
config.session_config=Configurazione Sessione config.session_config=Configurazione Sessione
config.session_provider=Fornitore Sessione config.session.provider=Provider
config.provider_config=Impostazioni Provider config.session.provider_config=Provider config
config.cookie_name=Nome del Cookie config.session.cookie_name=Cookie
config.enable_set_cookie=Abilita Uso dei Cookie config.session.https_only=Solo HTTPS
config.gc_interval_time=Intervallo di tempo della GC config.session.gc_interval=GC interval
config.session_life_time=Durata Sessione config.session.max_life_time=Max life time
config.https_only=Solo HTTPS config.session.csrf_cookie_name=Cookie CSRF
config.cookie_life_time=Durata Cookie
config.cache_config=Configurazione Cache
config.cache.adapter=Adattatore
config.cache.interval=Intervallo GC
config.cache.host=Host
config.http_config=Configurazione HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Attivo
config.attachment.path=Percorso
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Configurazione Foto config.picture_config=Configurazione Foto
config.picture_service=Servizio foto config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Disabilita Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Attiva Federated Avatars config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Configurazione Webhook
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Configurazione Git config.git_config=Configurazione Git
config.git_disable_diff_highlight=Disattiva evidenziazione delle differenze config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Numero massimo di righe di diff (per singolo file) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Numero massimo di caratteri di diff (per singola riga) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Numero massimo di file diff mostrati config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Parametri GC config.git.gc_args=GC arguments
config.git_migrate_timeout=Timeout per la migrazione config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Timeoute per l'aggiornamento del mirror config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Timeout per il clone config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Timeout per il pull config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Timeout per le operazioni di GC config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Configurazione Log config.log_config=Configurazione Log
config.log_file_root_path=Percorso Root del File di Log
config.log_mode=Modalità config.log_mode=Modalità
config.log_options=Options config.log_options=Opzioni
monitor.cron=Incarici di cron monitor.cron=Incarici di cron
monitor.name=Nome monitor.name=Nome
@@ -1284,7 +1383,6 @@ notices.delete_success=Gli avvisi di sistema sono stati successivamente eliminat
[action] [action]
create_repo=ha creato il repository <a href="%s">%s</a> create_repo=ha creato il repository <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=repository rinominato da <code>%[1]s</code> a <a href="%[2]s">[3]s</a> rename_repo=repository rinominato da <code>%[1]s</code> a <a href="%[2]s">[3]s</a>
commit_repo=ha pushato nel <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> commit_repo=ha pushato nel <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a>
compare_commits=Visualizza comparazione tra questi %d commit compare_commits=Visualizza comparazione tra questi %d commit
@@ -1301,6 +1399,10 @@ create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href=
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=ha pushato il tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a> push_tag=ha pushato il tag <a href="%s/src/%s">%[2]s</a> a <a href="%[1]s">%[3]s</a>
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=fa ago=fa
@@ -1322,6 +1424,7 @@ months=%d mesi %s
years=%d anni %s years=%d anni %s
raw_seconds=secondi raw_seconds=secondi
raw_minutes=minuti raw_minutes=minuti
raw_hours=ore
[dropzone] [dropzone]
default_message=Trascina i file qui o clicca per caricare. default_message=Trascina i file qui o clicca per caricare.

View File

@@ -9,15 +9,14 @@ sign_out=サインアウト
sign_up=サインアップ sign_up=サインアップ
register=登録 register=登録
website=WEBサイト website=WEBサイト
version=バージョン
page=ページ page=ページ
template=テンプレート template=テンプレート
language=言語 language=言語
create_new=作成... create_new=作成...
user_profile_and_more=ユーザープロファイルなど user_profile_and_more=ユーザープロフィールなど
signed_in_as=サインイン済み signed_in_as=サインイン済み
username=ユーザ名 username=ユーザ
email=メールアドレス email=メールアドレス
password=パスワード password=パスワード
re_type=再入力 re_type=再入力
@@ -44,6 +43,10 @@ issues=課題
cancel=キャンセル cancel=キャンセル
[status]
page_not_found=ページが見つかりません
internal_server_error=サーバ内部エラー
[install] [install]
install=インストール install=インストール
title=インストールをする前に必要な準備をしましょう title=インストールをする前に必要な準備をしましょう
@@ -52,13 +55,14 @@ requite_db_desc=Gogs は、MySQL、PostgreSQL、SQLite3 または TiDB が必要
db_title=データベース設定 db_title=データベース設定
db_type=データベースの種類 db_type=データベースの種類
host=ホスト host=ホスト
user=ユーザ user=ユーザ
password=パスワード password=パスワード
db_name=データベース名 db_name=データベース名
db_schema=Schema
db_helper=MySQLではエンジンがINNODB、文字セットがutf8_general_ciである必要があります。 db_helper=MySQLではエンジンがINNODB、文字セットがutf8_general_ciである必要があります。
ssl_mode=SSL モード ssl_mode=SSL モード
path=パス path=パス
sqlite_helper=SQLite3データベースのファイルパスです。<br>serviceとして起動する場合は、絶対パスを使用してください。 sqlite_helper=SQLite3かTiDBのデータベースのファイルパス。<br>サービスとして開始する際には絶対パスを用してください。
err_empty_db_path=SQLite3 データベースのPATHを空にすることはできません。 err_empty_db_path=SQLite3 データベースのPATHを空にすることはできません。
no_admin_and_disable_registration=管理者アカウントを作成せずに登録を無効にすることはできません。 no_admin_and_disable_registration=管理者アカウントを作成せずに登録を無効にすることはできません。
err_empty_admin_password=管理者パスワードは空白にできません。 err_empty_admin_password=管理者パスワードは空白にできません。
@@ -68,7 +72,7 @@ app_name=アプリケーション名
app_name_helper=素晴らしい組織名を入れてください! app_name_helper=素晴らしい組織名を入れてください!
repo_path=リポジトリのルートパス repo_path=リポジトリのルートパス
repo_path_helper=すべての Git リモート リポジトリはこのディレクトリに保存されます。 repo_path_helper=すべての Git リモート リポジトリはこのディレクトリに保存されます。
run_user=実行ユーザ run_user=実行ユーザ
run_user_helper=ユーザーはリポジトリのルートパスへのアクセス権限、及び Gogs の実行権限を持っている必要があります。 run_user_helper=ユーザーはリポジトリのルートパスへのアクセス権限、及び Gogs の実行権限を持っている必要があります。
domain=ドメイン domain=ドメイン
domain_helper=これはSSH用クローンURLに影響します。 domain_helper=これはSSH用クローンURLに影響します。
@@ -84,6 +88,7 @@ log_root_path=ログのパス
log_root_path_helper=ログファイルを書き込むディレクトリ。 log_root_path_helper=ログファイルを書き込むディレクトリ。
enable_console_mode=コンソールモードの有効化 enable_console_mode=コンソールモードの有効化
enable_console_mode_popup=ファイルモードに加えて、コンソールにもログを表示します。 enable_console_mode_popup=ファイルモードに加えて、コンソールにもログを表示します。
default_branch=Default Branch
optional_title=オプション設定 optional_title=オプション設定
email_title=メールサービス設定 email_title=メールサービス設定
@@ -101,35 +106,36 @@ disable_gravatar=Gravatarのサービスを無効にします
disable_gravatar_popup=Gravatarとカスタムソースを無効にして、全てのアバターをユーザーによってアップロードされたものかデフォルトなものにします。 disable_gravatar_popup=Gravatarとカスタムソースを無効にして、全てのアバターをユーザーによってアップロードされたものかデフォルトなものにします。
federated_avatar_lookup=連合アバター検索を有効にする federated_avatar_lookup=連合アバター検索を有効にする
federated_avatar_lookup_popup=Libavatarに基づいたオープンソースサービスを使用するには、連合アバター検索を有効にします。 federated_avatar_lookup_popup=Libavatarに基づいたオープンソースサービスを使用するには、連合アバター検索を有効にします。
disable_registration=自己登録を無効にする disable_registration=誰でもユーザ登録ができないようにする
disable_registration_popup=自己登録を無効にし、管理者のみアカウント作成できる disable_registration_popup=誰でもユーザ登録ができないようにすることで、管理者のみアカウント作成できるようになります。
enable_captcha=Captchaを有効にする enable_captcha=CAPTCHAを有効にする
enable_captcha_popup=ユーザによる自己登録のため、有効なcaptchaが必要です。 enable_captcha_popup=ユーザ登録にはCAPTCHA認証が必要です。
require_sign_in_view=サインインしたユーザのみページ閲覧を許可 require_sign_in_view=サインインしたユーザのみページ閲覧を許可
require_sign_in_view_popup=サインインしたユーザのみがページを閲覧できます。ビジターはサインインもしくはサインアップページのみ見られます。 require_sign_in_view_popup=サインインしたユーザのみがページを閲覧できます。ビジターはサインインもしくはサインアップページのみ見られます。
admin_setting_desc=今管理者アカウントを作成する必要はありません。ID = 1のユーザ は自動的に管理者の権限を獲得します。 admin_setting_desc=今管理者アカウントを作成する必要はありません。ID = 1のユーザ は自動的に管理者の権限を獲得します。
admin_title=管理者アカウントの設定 admin_title=管理者アカウントの設定
admin_name=ユーザ名 admin_name=ユーザ
admin_password=パスワード admin_password=パスワード
confirm_password=パスワード確認 confirm_password=パスワード確認
admin_email=管理者の電子メール admin_email=管理者のメールアドレス
install_gogs=Gogs をインストール install_gogs=Gogs をインストール
test_git_failed='Git' コマンドテストに失敗: %v test_git_failed='Git' コマンドテストに失敗: %v
sqlite3_not_available=このリリース バージョンは SQLite3 をサポートしていません。gobuild バージョンではない、公式のバイナリ バージョンを %s からダウンロードしてください。 sqlite3_not_available=このリリース バージョンは SQLite3 をサポートしていません。gobuild バージョンではない、公式のバイナリ バージョンを %s からダウンロードしてください。
invalid_db_setting=データベースの設定が正しくありません: %v invalid_db_setting=データベースの設定が正しくありません: %v
invalid_repo_path=リポジトリのルートパスが無効です: %v invalid_repo_path=リポジトリのルートパスが無効です: %v
run_user_not_match=実行ユーザーは現在のユーザーではない: %s-> %s run_user_not_match=実行ユーザーは現在のユーザーではありません: %s -> %s
smtp_host_missing_port=SMTPホストのポートが見つかりません。 smtp_host_missing_port=SMTPホストのポートが見つかりません。
invalid_smtp_from=SMTP From フィールドの値が有効ではありません: %v invalid_smtp_from=SMTP From フィールドの値が有効ではありません: %v
save_config_failed=構成の保存に失敗した: %v save_config_failed=構成の保存に失敗した: %v
init_failed=アプリケーションの初期化に失敗しました: %v
invalid_admin_setting=管理者アカウントの設定が無効です: %v invalid_admin_setting=管理者アカウントの設定が無効です: %v
install_success=ようこそ!我々はあなたが Gogs を選んでくれて嬉しいです!楽しみましょう! install_success=ようこそ!我々はあなたが Gogs を選んでくれて嬉しいです!楽しみましょう!
invalid_log_root_path=ログのルートパスがむこうです: %v invalid_log_root_path=リポジトリのルート パスが無効です: %v
[home] [home]
uname_holder=ユーザー名またはEメール uname_holder=ユーザー名またはメールアドレス
password_holder=パスワード password_holder=パスワード
switch_dashboard_context=ダッシュ ボードコンテキスト切替 switch_dashboard_context=ダッシュボードコンテキスト切替
my_repos=自分のリポジトリ my_repos=自分のリポジトリ
show_more_repos=リポジトリをさらに表示… show_more_repos=リポジトリをさらに表示…
collaborative_repos=共同リポジトリ collaborative_repos=共同リポジトリ
@@ -141,7 +147,7 @@ issues.in_your_repos=あなたのリポジトリ
[explore] [explore]
repos=リポジトリ repos=リポジトリ
users=ユーザ users=ユーザ
organizations=組織 organizations=組織
search=検索 search=検索
@@ -151,6 +157,8 @@ register_hepler_msg=既にアカウントをお持ちですか?今すぐログ
social_register_hepler_msg=既にアカウントをお持ちですか?連携しましょう! social_register_hepler_msg=既にアカウントをお持ちですか?連携しましょう!
disable_register_prompt=申し訳ありませんが、現在登録は受け付けておりません。サイトの管理者にお問い合わせください。 disable_register_prompt=申し訳ありませんが、現在登録は受け付けておりません。サイトの管理者にお問い合わせください。
disable_register_mail=申し訳ありませんが、登録メールの確認機能が無効になっています。 disable_register_mail=申し訳ありませんが、登録メールの確認機能が無効になっています。
auth_source=認証ソース
local=ローカル
remember_me=ログインしたままにする remember_me=ログインしたままにする
forgot_password=パスワードを忘れた forgot_password=パスワードを忘れた
forget_password=パスワードを忘れましたか? forget_password=パスワードを忘れましたか?
@@ -178,10 +186,10 @@ login_two_factor_enter_passcode=2段階認証用パスコードを入力
login_two_factor_invalid_recovery_code=このリカバリーコードは使用済みか、正しくありません。 login_two_factor_invalid_recovery_code=このリカバリーコードは使用済みか、正しくありません。
[mail] [mail]
activate_account=あなたのアカウントを有効してください。 activate_account=アカウントを有効してください。
activate_email=電子メール アドレスを確認します。 activate_email=メールアドレスを確認
reset_password=パスワードをリセットします. reset_password=パスワードをリセットします.
register_success=ようこそ、登録成功 register_success=登録完了です。ようこそ!
register_notify=ボードへようこそ register_notify=ボードへようこそ
[modal] [modal]
@@ -200,7 +208,7 @@ HttpsUrl=HTTPS URL
PayloadUrl=ペイロードの URL PayloadUrl=ペイロードの URL
TeamName=チーム名 TeamName=チーム名
AuthName=承認名 AuthName=承認名
AdminEmail=管理者の電子メール AdminEmail=管理者のメールアドレス
NewBranchName=新しいブランチ名 NewBranchName=新しいブランチ名
CommitSummary=コミットの概要 CommitSummary=コミットの概要
@@ -211,7 +219,7 @@ Content=コンテンツ
require_error=空にできません require_error=空にできません
alpha_dash_error=アルファベット、数字、ハイフン"-"、アンダースコア"_"のいずれかの必要があります alpha_dash_error=アルファベット、数字、ハイフン"-"、アンダースコア"_"のいずれかの必要があります
alpha_dash_dot_error=' アルファベット、数値、ダッシュ(-)、アンダースコア(_) 、ドット(.)のいずれかを入力する必要があります。 ' alpha_dash_dot_error=' アルファベット、数値、ハイフン(-)、アンダースコア(_) 、ドット(.) のいずれかを入力する必要があります。 '
alpha_dash_dot_slash_error=` アルファベット、数字、ハイフン(-)、アンダースコア(_)、ドット(.)、スラッシュ(/) のみ利用できます。` alpha_dash_dot_slash_error=` アルファベット、数字、ハイフン(-)、アンダースコア(_)、ドット(.)、スラッシュ(/) のみ利用できます。`
size_error=`サイズは %s である必要があります` size_error=`サイズは %s である必要があります`
min_size_error=' 少なくとも %s 文字の必要があります ' min_size_error=' 少なくとも %s 文字の必要があります '
@@ -220,15 +228,16 @@ email_error=' は有効なメールアドレスではありません '
url_error=' は有効な URL はありません。 ' url_error=' は有効な URL はありません。 '
include_error=' 文字列 '%s' を含める必要があります。 ' include_error=' 文字列 '%s' を含める必要があります。 '
unknown_error=不明なエラー: unknown_error=不明なエラー:
captcha_incorrect=Captcha が一致しませんでした。 captcha_incorrect=CAPTCHAが一致しませんでした。
password_not_match=パスワードと確認用パスワードが一致していません。 password_not_match=パスワードと確認用パスワードが一致していません。
username_been_taken=ユーザー名は既に使用されています。 username_been_taken=ユーザー名は既に使用されています。
repo_name_been_taken=リポジトリ名は既に使用されています。 repo_name_been_taken=リポジトリ名は既に使用されています。
org_name_been_taken=組織名は既に使用されています。 org_name_been_taken=組織名は既に使用されています。
team_name_been_taken=チーム名は既に使用されています。 team_name_been_taken=チーム名は既に使用されています。
email_been_used=電子メール アドレスは既に使用されています。 email_been_used=メールアドレスは既に使用されています。
username_password_incorrect=ユーザー名またはパスワードが正しくありません。 username_password_incorrect=ユーザー名またはパスワードが正しくありません。
auth_source_mismatch=選択されている認証ソースは、ユーザーに関連付けられていません。
enterred_invalid_repo_name=入力したリポジトリの名前が正しいかどうかを確認してください。 enterred_invalid_repo_name=入力したリポジトリの名前が正しいかどうかを確認してください。
enterred_invalid_owner_name=入力された所有者名が正しいかどうかを確認してください。 enterred_invalid_owner_name=入力された所有者名が正しいかどうかを確認してください。
enterred_invalid_password=入力したパスワードが正しいか確認してください。 enterred_invalid_password=入力したパスワードが正しいか確認してください。
@@ -256,8 +265,7 @@ following=フォロー
follow=フォロー follow=フォロー
unfollow=フォロー解除 unfollow=フォロー解除
form.name_reserved=ユーザー名 '%s' は使用されています。 form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=ユーザ名のパターン '%s' は許可されていません。
[settings] [settings]
profile=プロフィール profile=プロフィール
@@ -272,7 +280,7 @@ delete=アカウントを削除
public_profile=パブリック プロフィール public_profile=パブリック プロフィール
profile_desc=あなたのメールアドレスは公開され、任意のアカウント関連の通知に使用されます。また、Webベースの操作はサイトを介して行います。 profile_desc=あなたのメールアドレスは公開され、任意のアカウント関連の通知に使用されます。また、Webベースの操作はサイトを介して行います。
password_username_disabled=ローカルユーザ以外はユーザ名を変更できません。 password_username_disabled=ローカルユーザ以外はユーザ名を変更できません。
full_name=フルネーム full_name=フルネーム
website=WEBサイト website=WEBサイト
location=ロケーション location=ロケーション
@@ -298,7 +306,7 @@ new_password=新しいパスワード
retype_new_password=新しいパスワードを再入力します。 retype_new_password=新しいパスワードを再入力します。
password_incorrect=現在のパスワードが正しくありません。 password_incorrect=現在のパスワードが正しくありません。
change_password_success=パスワードが正常に変更されました。今すぐ新しいパスワードを使用してサインインすることができます。 change_password_success=パスワードが正常に変更されました。今すぐ新しいパスワードを使用してサインインすることができます。
password_change_disabled=ローカルユーザ以外はパスワードを変更できません。 password_change_disabled=ローカルユーザ以外はパスワードを変更できません。
emails=メールアドレス emails=メールアドレス
manage_emails=メールアドレスを管理 manage_emails=メールアドレスを管理
@@ -309,6 +317,7 @@ delete_email=削除
email_deletion=電子メールの削除 email_deletion=電子メールの削除
email_deletion_desc=このメールアドレスを削除すると、あなたのアカウントの関連情報も削除されます。続行しますか? email_deletion_desc=このメールアドレスを削除すると、あなたのアカウントの関連情報も削除されます。続行しますか?
email_deletion_success=電子メールが正常に削除されました。 email_deletion_success=電子メールが正常に削除されました。
email_deletion_primary=Cannot delete primary email address.
add_new_email=新しいメールアドレスを追加 add_new_email=新しいメールアドレスを追加
add_email=メールアドレスの追加 add_email=メールアドレスの追加
add_email_confirmation_sent='%s' に新しい確認メールを送信しました。%d 時間以内に受信トレイを確認し、確認プロセスを完了してください。 add_email_confirmation_sent='%s' に新しい確認メールを送信しました。%d 時間以内に受信トレイを確認し、確認プロセスを完了してください。
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=またはシークレットを入力:
two_factor_then_enter_passcode=パスコードを入力してください: two_factor_then_enter_passcode=パスコードを入力してください:
two_factor_verify=確認 two_factor_verify=確認
two_factor_invalid_passcode=入力されたパスコードは使用できません。もう一度お試しください。 two_factor_invalid_passcode=入力されたパスコードは使用できません。もう一度お試しください。
two_factor_reused_passcode=入力したパスコードは既に使用されています。別のパスコードを試してください。
two_factor_enable_error=2段階認証の有効化に失敗しました: %v two_factor_enable_error=2段階認証の有効化に失敗しました: %v
two_factor_enable_success=2段階認証があなたのアカウントで有効化されました two_factor_enable_success=2段階認証があなたのアカウントで有効化されました
two_factor_recovery_codes_title=2段階認証のリカバリーコード two_factor_recovery_codes_title=2段階認証のリカバリーコード
@@ -362,6 +372,7 @@ two_factor_disable_success=2段階認証があなたのアカウントで無効
manage_access_token=パーソナルアクセス トークンを管理 manage_access_token=パーソナルアクセス トークンを管理
generate_new_token=新しいトークンを生成 generate_new_token=新しいトークンを生成
tokens_desc=生成したトークンを利用して Gogs の API にアクセスすることができます。 tokens_desc=生成したトークンを利用して Gogs の API にアクセスすることができます。
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=今のところ、全てのトークンはあなたのアカウントにフルアクセスできます。 new_token_desc=今のところ、全てのトークンはあなたのアカウントにフルアクセスできます。
token_name=トークン名 token_name=トークン名
generate_token=トークンを生成 generate_token=トークンを生成
@@ -370,6 +381,7 @@ delete_token=削除
access_token_deletion=パーソナルアクセストークンの削除 access_token_deletion=パーソナルアクセストークンの削除
access_token_deletion_desc=パーソナルアクセストークンを削除すると、関連するアプリケーションのすべてのアクセスが削除されます。続行しますか? access_token_deletion_desc=パーソナルアクセストークンを削除すると、関連するアプリケーションのすべてのアクセスが削除されます。続行しますか?
delete_token_success=パーソナルアクセストークンは正常に削除されました!同時にあなたのアプリケーションを更新することを忘れないでください。 delete_token_success=パーソナルアクセストークンは正常に削除されました!同時にあなたのアプリケーションを更新することを忘れないでください。
token_name_exists=同じ名前のトークンがあります。
orgs.none=あなたはどの組織のメンバーでもありません。 orgs.none=あなたはどの組織のメンバーでもありません。
orgs.leave_title=組織からの脱退 orgs.leave_title=組織からの脱退
@@ -391,7 +403,9 @@ owner=オーナー
repo_name=リポジトリ名 repo_name=リポジトリ名
repo_name_helper=短くて分かりやすく<strong>重複しない</strong>リポジトリ名を決めてください。 repo_name_helper=短くて分かりやすく<strong>重複しない</strong>リポジトリ名を決めてください。
visibility=公開/非公開 visibility=公開/非公開
unlisted=Unlisted
visiblity_helper=このリポジトリは<span class="ui red text">非公開</span>です visiblity_helper=このリポジトリは<span class="ui red text">非公開</span>です
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=サイト管理者が、すべての新しいリポジトリを<span class="ui red text">非公開</span>にすることを強制しています visiblity_helper_forced=サイト管理者が、すべての新しいリポジトリを<span class="ui red text">非公開</span>にすることを強制しています
visiblity_fork_helper=(この値の変更はすべてのフォークに適用されます) visiblity_fork_helper=(この値の変更はすべてのフォークに適用されます)
clone_helper=クローンに関してお困りであれば<a target="_blank"href="%s"> ヘルプ</a> を参照しましょう。 clone_helper=クローンに関してお困りであれば<a target="_blank"href="%s"> ヘルプ</a> を参照しましょう。
@@ -412,15 +426,16 @@ mirror_prune=Prune
mirror_prune_desc=リモートに存在しないリモート追跡参照を削除する mirror_prune_desc=リモートに存在しないリモート追跡参照を削除する
mirror_interval=ミラー 間隔(時) mirror_interval=ミラー 間隔(時)
mirror_address=ミラー アドレス mirror_address=ミラー アドレス
mirror_address_desc=アドレスに必要なユーザー資格情報を入力してください。 mirror_address_desc=必要なユーザー資格情報をアドレスに含めてください。
mirror_last_synced=最終同期 mirror_last_synced=最終同期
watchers=ウォッチャー watchers=ウォッチャー
stargazers=スターゲイザー stargazers=スターゲイザー
forks=フォーク forks=フォーク
repo_description_helper=リポジトリの説明 (512文字以内)
repo_description_length=利用可能な文字
form.reach_limit_of_creation=リポジトリの最大作成数 %d にすでに達しています。 form.reach_limit_of_creation=リポジトリの最大作成数 %d にすでに達しています。
form.name_reserved=リポジトリ名 '%s' は使用されています。 form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=リポジトリ名に '%s' は使用できません。
need_auth=認証が必要 need_auth=認証が必要
migrate_type=マイグレーションの種類 migrate_type=マイグレーションの種類
@@ -431,6 +446,7 @@ migrate.clone_address_desc=HTTP/HTTPS/GIT URLを設定できます。
migrate.clone_address_desc_import_local=ローカルサーバーのパスでリポジトリを移行することもできます。 migrate.clone_address_desc_import_local=ローカルサーバーのパスでリポジトリを移行することもできます。
migrate.permission_denied=ローカル リポジトリをインポートすることはできません。 migrate.permission_denied=ローカル リポジトリをインポートすることはできません。
migrate.invalid_local_path=ローカルパスが無効です。存在しないかディレクトリではありません。 migrate.invalid_local_path=ローカルパスが無効です。存在しないかディレクトリではありません。
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=移行に失敗しました: %v migrate.failed=移行に失敗しました: %v
mirror_from=同期ミラー mirror_from=同期ミラー
@@ -439,11 +455,11 @@ copy_link=コピー
copy_link_success=コピーされました! copy_link_success=コピーされました!
copy_link_error=⌘ C または Ctrl-C キーを押してコピー copy_link_error=⌘ C または Ctrl-C キーを押してコピー
copied=コピー成功 copied=コピー成功
unwatch=Unwatch unwatch=ウォッチ解除
watch=Watch watch=ウォッチ
unstar=Unstar unstar=スターを外す
star=Star star=スター
fork=Fork fork=フォーク
no_desc=説明なし no_desc=説明なし
quick_guide=クイック ガイド quick_guide=クイック ガイド
@@ -478,6 +494,8 @@ branches.stale_branches=古いブランチ
branches.all=すべてのブランチ branches.all=すべてのブランチ
branches.updated_by=%[1]s が %[2]s によって更新されました branches.updated_by=%[1]s が %[2]s によって更新されました
branches.change_default_branch=デフォルトブランチの変更 branches.change_default_branch=デフォルトブランチの変更
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=新規ファイル editor.new_file=新規ファイル
editor.upload_file=ファイルをアップロード editor.upload_file=ファイルをアップロード
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=あなたが編集を開始してから、フ
editor.file_already_exists=ファイル名 '%s' は、このリポジトリに既に存在します。 editor.file_already_exists=ファイル名 '%s' は、このリポジトリに既に存在します。
editor.no_changes_to_show=表示する変更箇所はありません。 editor.no_changes_to_show=表示する変更箇所はありません。
editor.fail_to_update_file=ファイル '%s' の作成/更新に失敗しました: %v editor.fail_to_update_file=ファイル '%s' の作成/更新に失敗しました: %v
editor.fail_to_delete_file=ファイル '%s' エラーを削除できませんでした: %v
editor.add_subdir=サブディレクトリを追加... editor.add_subdir=サブディレクトリを追加...
editor.unable_to_upload_files='%s' へのファイルアップロード中にエラーが発生し、失敗しました: %v editor.unable_to_upload_files='%s' へのファイルアップロード中にエラーが発生し、失敗しました: %v
editor.upload_files_to_dir='%s' にファイルをアップロード editor.upload_files_to_dir='%s' にファイルをアップロード
@@ -626,7 +645,7 @@ pulls.tab_commits=コミット
pulls.tab_files=変更されたファイル pulls.tab_files=変更されたファイル
pulls.reopen_to_merge=マージ操作を実行するには、このプルリクエストを再び開いてください。 pulls.reopen_to_merge=マージ操作を実行するには、このプルリクエストを再び開いてください。
pulls.merged=マージされた pulls.merged=マージされた
pulls.has_merged=このプルプルリクエストは正常にマージされました! pulls.has_merged=このプルリクエストは正常にマージされました!
pulls.data_broken=フォーク情報の削除によってこのプルリクエストのデータは壊れています。 pulls.data_broken=フォーク情報の削除によってこのプルリクエストのデータは壊れています。
pulls.is_checking=コンフリクトが発生していないかチェック中です、しばらく待ったのちページを更新してください。 pulls.is_checking=コンフリクトが発生していないかチェック中です、しばらく待ったのちページを更新してください。
pulls.can_auto_merge_desc=このプルリクエストは自動的にマージできます。 pulls.can_auto_merge_desc=このプルリクエストは自動的にマージできます。
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=コンフリクトが発生しているため、こ
pulls.cannot_auto_merge_helper=競合を解決するためには、手動でマージする必要があります。 pulls.cannot_auto_merge_helper=競合を解決するためには、手動でマージする必要があります。
pulls.create_merge_commit=マージコミットを作成する pulls.create_merge_commit=マージコミットを作成する
pulls.rebase_before_merging=マージする前に再配置します。 pulls.rebase_before_merging=マージする前に再配置します。
pulls.commit_description=コミットの説明
pulls.merge_pull_request=プルリクエストをマージします。 pulls.merge_pull_request=プルリクエストをマージします。
pulls.open_unmerged_pull_exists=`同じリポジトリに同じマージ情報持つ未解決のプルリクエスト (#%d) が存在するため再び開くことができません。` pulls.open_unmerged_pull_exists=`同じリポジトリに同じマージ情報持つ未解決のプルリクエスト (#%d) が存在するため再び開くことができません。`
pulls.delete_branch=ブランチの削除 pulls.delete_branch=ブランチの削除
@@ -738,7 +758,7 @@ settings.tracker_issue_style=外部課題トラッキングシステムの命名
settings.tracker_issue_style.numeric=数値 settings.tracker_issue_style.numeric=数値
settings.tracker_issue_style.alphanumeric=英数字 settings.tracker_issue_style.alphanumeric=英数字
settings.tracker_url_format_desc=ユーザー名、リポジトリ名、課題番号を埋め込むために <code>{user} {repo} {index}</code> が使用できます。 settings.tracker_url_format_desc=ユーザー名、リポジトリ名、課題番号を埋め込むために <code>{user} {repo} {index}</code> が使用できます。
settings.pulls_desc=誰でもコントリビュートできるよう、プルリクエストの受け付けを有効にします settings.pulls_desc=プルリクエストを有効にし、リポジトリとブランチ間のコントリビューションを受け入れる
settings.pulls.ignore_whitespace=空白の変更を無視する settings.pulls.ignore_whitespace=空白の変更を無視する
settings.pulls.allow_rebase_merge=コミットをマージするためのリベースの使用を許可する settings.pulls.allow_rebase_merge=コミットをマージするためのリベースの使用を許可する
settings.danger_zone=危険地帯 settings.danger_zone=危険地帯
@@ -750,7 +770,7 @@ settings.convert_notices_1=- この操作によりリポジトリはミラーリ
settings.convert_confirm=変更を確認 settings.convert_confirm=変更を確認
settings.convert_succeed=リポジトリは正常に通常リポジトリへ変更されました。 settings.convert_succeed=リポジトリは正常に通常リポジトリへ変更されました。
settings.transfer=オーナー移転 settings.transfer=オーナー移転
settings.transfer_desc=リポジトリをあなたが管理者権限を持っている別のユーザーまた組織に譲します。 settings.transfer_desc=このリポジトリを、別のユーザーまたはあなたが管理者権限を所持している組織に譲します。
settings.transfer_notices_1=-新しい所有者が個人ユーザーの場合、あなたがアクセスできなくなります。 settings.transfer_notices_1=-新しい所有者が個人ユーザーの場合、あなたがアクセスできなくなります。
settings.transfer_notices_2=- 新しい所有者が組織で、あなたがその組織の所有者である場合はアクセス権が残ります。 settings.transfer_notices_2=- 新しい所有者が組織で、あなたがその組織の所有者である場合はアクセス権が残ります。
settings.transfer_form_title=操作を確認するために、以下の情報を入力してください。 settings.transfer_form_title=操作を確認するために、以下の情報を入力してください。
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Wikiのデータ消去が完了しました。
settings.delete=このリポジトリを削除 settings.delete=このリポジトリを削除
settings.delete_desc=リポジトリを削除すると元に戻せません。確実に確認してください。 settings.delete_desc=リポジトリを削除すると元に戻せません。確実に確認してください。
settings.delete_notices_1=-この操作は<strong>元に戻せません</strong> 。 settings.delete_notices_1=-この操作は<strong>元に戻せません</strong> 。
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=-この操作はこのリポジトリで、Git データ、問題、コメント協力アクセスなどすべて削除されます。
settings.delete_notices_fork_1=- 削除後、すべてのフォークは独立したリポジトリになります。 settings.delete_notices_fork_1=- 削除後、すべてのフォークは独立したリポジトリになります。
settings.deletion_success=リポジトリが正常に削除されました。 settings.deletion_success=リポジトリが正常に削除されました。
settings.update_settings_success=リポジトリ オプションが更新されました。 settings.update_settings_success=リポジトリ オプションが更新されました。
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=削除後、このユーザーはこのリ
settings.remove_collaborator_success=共同編集者が削除されました。 settings.remove_collaborator_success=共同編集者が削除されました。
settings.search_user_placeholder=ユーザーを検索... settings.search_user_placeholder=ユーザーを検索...
settings.org_not_allowed_to_be_collaborator=組織を共同編集者として追加することはできません。 settings.org_not_allowed_to_be_collaborator=組織を共同編集者として追加することはできません。
settings.add_webhook=Webhook を追加
settings.hooks_desc=Webhooksは、Gogsで特定のイベントの発生時に指定された外部サービスに通知を許可します。イベントが発生すると、それぞれ指定されたUrlに、POSTリクエストが送られます。詳細はこちらのの <a target="_blank"href="%s"> Webhooks ガイド</a>をご覧ください。 settings.hooks_desc=Webhooksは、Gogsで特定のイベントの発生時に指定された外部サービスに通知を許可します。イベントが発生すると、それぞれ指定されたUrlに、POSTリクエストが送られます。詳細はこちらのの <a target="_blank"href="%s"> Webhooks ガイド</a>をご覧ください。
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Webhook を追加
settings.webhook_deletion=Webhook を削除 settings.webhook_deletion=Webhook を削除
settings.webhook_deletion_desc=このwebhookを削除すると、すべての情報と配信履歴が削除されます。続行しますか settings.webhook_deletion_desc=このwebhookを削除すると、すべての情報と配信履歴が削除されます。続行しますか
settings.webhook_deletion_success=Webhook が正常に削除されました。 settings.webhook_deletion_success=Webhook が正常に削除されました。
@@ -792,6 +814,8 @@ settings.webhook.response=レスポンス
settings.webhook.headers=ヘッダ settings.webhook.headers=ヘッダ
settings.webhook.payload=ペイロード settings.webhook.payload=ペイロード
settings.webhook.body=ボディ settings.webhook.body=ボディ
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git のフックは Git 自体によって提供されています。以下のリストのファイルを編集して、サポートされているフックのカスタム操作を適用することができます。 settings.githooks_desc=Git のフックは Git 自体によって提供されています。以下のリストのファイルを編集して、サポートされているフックのカスタム操作を適用することができます。
settings.githook_edit_desc=もしフックがアクティブではない場合は、サンプルコンテンツが表示されます。コンテンツを空白にするにはこのフックを無効にします。 settings.githook_edit_desc=もしフックがアクティブではない場合は、サンプルコンテンツが表示されます。コンテンツを空白にするにはこのフックを無効にします。
settings.githook_name=フックの名前 settings.githook_name=フックの名前
@@ -802,7 +826,7 @@ settings.payload_url=ペイロードの URL
settings.content_type=コンテンツ タイプ settings.content_type=コンテンツ タイプ
settings.secret=秘密 settings.secret=秘密
settings.secret_desc=秘密キーは、 <code>X-Gogs-Signature</code> ヘッダーを介してペイロードの HMAC SHA256 六角ダイジェストとして送信されます。 settings.secret_desc=秘密キーは、 <code>X-Gogs-Signature</code> ヘッダーを介してペイロードの HMAC SHA256 六角ダイジェストとして送信されます。
settings.slack_username=ユーザ名 settings.slack_username=ユーザ
settings.slack_icon_url=アイコン URL settings.slack_icon_url=アイコン URL
settings.slack_color=カラー settings.slack_color=カラー
settings.event_desc=どのイベントをこの Webhook のトリガーにしますか? settings.event_desc=どのイベントをこの Webhook のトリガーにしますか?
@@ -819,10 +843,10 @@ settings.event_push=プッシュ
settings.event_push_desc=リポジトリへのプッシュがされた時 settings.event_push_desc=リポジトリへのプッシュがされた時
settings.event_issues=課題 settings.event_issues=課題
settings.event_issues_desc=課題の開始・終了・再開・編集・アサイン・アサイン解除・ラベル更新・ラベル削除・マイルストーン紐付け・マイルストーン紐付け解除がされた時 settings.event_issues_desc=課題の開始・終了・再開・編集・アサイン・アサイン解除・ラベル更新・ラベル削除・マイルストーン紐付け・マイルストーン紐付け解除がされた時
settings.event_issue_comment=課題へのコメント
settings.event_issue_comment_desc=課題へのコメントが作成・編集・削除された時
settings.event_pull_request=プルリクエスト settings.event_pull_request=プルリクエスト
settings.event_pull_request_desc=プルリクエストの開始・終了・再開・編集・アサイン・アサイン解除・ラベル更新・ラベル削除・マイルストーン紐付け・マイルストーン紐付け解除・同期がされた時 settings.event_pull_request_desc=プルリクエストの開始・終了・再開・編集・アサイン・アサイン解除・ラベル更新・ラベル削除・マイルストーン紐付け・マイルストーン紐付け解除・同期がされた時
settings.event_issue_comment=課題へのコメント
settings.event_issue_comment_desc=課題へのコメントが作成・編集・削除された時
settings.event_release=リリース settings.event_release=リリース
settings.event_release_desc=リポジトリでリリースが公開された時 settings.event_release_desc=リポジトリでリリースが公開された時
settings.active=アクティブ settings.active=アクティブ
@@ -852,6 +876,8 @@ settings.add_key_success=新しいデプロイキー '%s'が正常に追加さ
settings.deploy_key_deletion=デプロイキーを削除 settings.deploy_key_deletion=デプロイキーを削除
settings.deploy_key_deletion_desc=このデプロイキーを削除すると、このリポジトリに関連するすべてのアクセス権も削除されます。続行しますか。 settings.deploy_key_deletion_desc=このデプロイキーを削除すると、このリポジトリに関連するすべてのアクセス権も削除されます。続行しますか。
settings.deploy_key_deletion_success=デプロイキーが正常に削除された! settings.deploy_key_deletion_success=デプロイキーが正常に削除された!
settings.description_desc=リポジトリの説明(512文字以内)
settings.description_length=利用可能な文字
diff.browse_source=ソースを参照 diff.browse_source=ソースを参照
diff.parent= diff.parent=
@@ -894,7 +920,7 @@ release.deletion=リリースの削除
release.deletion_desc=このリリースを削除すると、対応するGitのタグも削除されます。よろしいですか release.deletion_desc=このリリースを削除すると、対応するGitのタグも削除されます。よろしいですか
release.deletion_success=リリースが正常に削除されました。 release.deletion_success=リリースが正常に削除されました。
release.tag_name_already_exist=このタグ名には既にリリースが存在します。 release.tag_name_already_exist=このタグ名には既にリリースが存在します。
release.tag_name_invalid=使用できないタグ名です。 release.tag_name_invalid=タグ名が不正です。
release.downloads=ダウンロード release.downloads=ダウンロード
[org] [org]
@@ -916,9 +942,8 @@ team_name_helper=会話の時、この名前を使用しチーム名を表明し
team_desc_helper=このチームに関する全ての情報は? team_desc_helper=このチームに関する全ての情報は?
team_permission_desc=このチームに必要な権限レベルは? team_permission_desc=このチームに必要な権限レベルは?
form.name_reserved=組織名 '%s' は使用されています。 form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=組織名のパターン '%s' は許可されていません。 form.team_name_not_allowed=チーム名またはパターン %q は許可されていません。
form.team_name_reserved=チーム名 '%s' は使用されています。
settings=設定 settings=設定
settings.options=オプション settings.options=オプション
@@ -979,7 +1004,7 @@ teams.add_nonexistent_repo=追加しようとしているリポジトリは存
[admin] [admin]
dashboard=ダッシュボード dashboard=ダッシュボード
users=ユーザ users=ユーザ
organizations=組織 organizations=組織
repositories=リポジトリ repositories=リポジトリ
authentication=認証 authentication=認証
@@ -990,12 +1015,19 @@ first_page=First
last_page=Last last_page=Last
total=合計: %d total=合計: %d
dashboard.build_info=ビルド情報
dashboard.app_ver=アプリケーションのバージョン
dashboard.git_version=Git バージョン
dashboard.go_version=Go バージョン
dashboard.build_time=ビルド日時
dashboard.build_commit=Build commit
dashboard.statistic=統計 dashboard.statistic=統計
dashboard.operations=操作 dashboard.operations=操作
dashboard.system_status=システム モニターのステータス dashboard.system_status=システム モニターのステータス
dashboard.statistic_info=Gogs データベースは <b>%d</b> ユーザー, <b>%d</b> 組織, <b>%d</b> 公開鍵, <b>%d</b> リポジトリ, <b>%d</b> ウォッチ, <b>%d</b> スター, <b>%d</b> 行動, <b>%d</b> アクセス, <b>%d</b> 課題, <b>%d</b> コメント, <b>%d</b> ソーシャルアカウント, <b>%d</b> フォロー, <b>%d</b> ミラー, <b>%d</b> リリース, <b>%d</b> ログイン元, <b>%d</b> webhook, <b>%d</b> マイルストーン, <b>%d</b> ラベル, <b>%d</b> フックタスク, <b>%d</b> チーム, <b>%d</b> アップデートタスク, <b>%d</b> 添付ファイル の情報を持っています。 dashboard.statistic_info=Gogs データベースは <b>%d</b> 人のユーザー<b>%d</b> 個の組織、<b>%d</b> 個の公開鍵<b>%d</b> 個のリポジトリ<b>%d</b> 個のウォッチ<b>%d</b> 個のスター<b>%d</b> 回のアクション、<b>%d</b> 回のアクセス<b>%d</b> 個の課題、<b>%d</b> 個のコメント<b>%d</b> 個のソーシャルアカウント<b>%d</b> 個のフォロー<b>%d</b> 個のミラー<b>%d</b> 個のリリース<b>%d</b> 個のログイン元<b>%d</b> 個のwebフック、<b>%d</b> 個のマイルストーン<b>%d</b> 個のラベル<b>%d</b> 個のフックタスク<b>%d</b> 個のチーム<b>%d</b> 更新タスク<b>%d</b> 個の添付ファイルの情報を保持しています。
dashboard.operation_name=操作の名前 dashboard.operation_name=操作の名前
dashboard.operation_switch=スイッチ dashboard.operation_switch=スイッチ
dashboard.select_operation_to_run=操作を選択してください
dashboard.operation_run=実行 dashboard.operation_run=実行
dashboard.clean_unbind_oauth=結び付けられていない OAuth をクリーン dashboard.clean_unbind_oauth=結び付けられていない OAuth をクリーン
dashboard.clean_unbind_oauth_success=結び付けられていない全ての OAuth を正常に削除しました。 dashboard.clean_unbind_oauth_success=結び付けられていない全ての OAuth を正常に削除しました。
@@ -1082,16 +1114,17 @@ repos.repo_manage_panel=リポジトリの管理パネル
repos.owner=オーナー repos.owner=オーナー
repos.name=名前 repos.name=名前
repos.private=非公開 repos.private=非公開
repos.watches=Watches repos.watches=ウォッチ
repos.stars=Stars repos.stars=スター
repos.issues=課題 repos.issues=課題
repos.size=容量 repos.size=容量
auths.auth_manage_panel=認証管理パネル auths.auth_sources=認証ソース
auths.new=新しいソースを追加 auths.new=新しいソースを追加
auths.name=名前 auths.name=名前
auths.type=タイプ auths.type=タイプ
auths.enabled=有効 auths.enabled=有効
auths.default=デフォルト
auths.updated=更新しました auths.updated=更新しました
auths.auth_type=認証タイプ auths.auth_type=認証タイプ
auths.auth_name=認証名 auths.auth_name=認証名
@@ -1103,7 +1136,7 @@ auths.bind_dn=バインド DN
auths.bind_dn_helper='%s'はユーザー名のプレースホルダとして使用できます。 例DOM \%s auths.bind_dn_helper='%s'はユーザー名のプレースホルダとして使用できます。 例DOM \%s
auths.bind_password=バインド パスワード auths.bind_password=バインド パスワード
auths.bind_password_helper=警告: このパスワードは暗号化されずに格納されます。特権を持つアカウントに使用しないでください。 auths.bind_password_helper=警告: このパスワードは暗号化されずに格納されます。特権を持つアカウントに使用しないでください。
auths.user_base=ユーザ検索ベース auths.user_base=ユーザ検索ベース
auths.user_dn=User DN auths.user_dn=User DN
auths.attribute_username=ユーザー名属性 auths.attribute_username=ユーザー名属性
auths.attribute_username_placeholder=ログインフォームの値を使う場合は空にしてください。 auths.attribute_username_placeholder=ログインフォームの値を使う場合は空にしてください。
@@ -1116,7 +1149,7 @@ auths.group_filter=グループ フィルター
auths.group_attribute_contain_user_list=ユーザーのリストを含むグループ属性 auths.group_attribute_contain_user_list=ユーザーのリストを含むグループ属性
auths.user_attribute_listed_in_group=グループのユーザー属性 auths.user_attribute_listed_in_group=グループのユーザー属性
auths.attributes_in_bind=属性をバインドDNのコンテクストから取得する auths.attributes_in_bind=属性をバインドDNのコンテクストから取得する
auths.filter=User フィルター auths.filter=ユーザーフィルター
auths.admin_filter=Admin フィルター auths.admin_filter=Admin フィルター
auths.ms_ad_sa=Ms Ad SA auths.ms_ad_sa=Ms Ad SA
auths.smtp_auth=SMTP 認証の種類 auths.smtp_auth=SMTP 認証の種類
@@ -1128,9 +1161,9 @@ auths.enable_tls=TLS 暗号化を有効にする
auths.skip_tls_verify=TLSベリファイを省略 auths.skip_tls_verify=TLSベリファイを省略
auths.pam_service_name=PAMサービス名 auths.pam_service_name=PAMサービス名
auths.enable_auto_register=自動登録を有効にする auths.enable_auto_register=自動登録を有効にする
auths.tips=ヒント
auths.edit=認証設定を編集 auths.edit=認証設定を編集
auths.activated=認証の有効化 auths.activated=認証の有効化
auths.default_auth=この認証を、既定のログイン ソースとする
auths.new_success=新しい認証 '%s' が正常に追加されました。 auths.new_success=新しい認証 '%s' が正常に追加されました。
auths.update_success=認証の設定が正常に更新されました。 auths.update_success=認証の設定が正常に更新されました。
auths.update=認証設定を更新 auths.update=認証設定を更新
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=認証を削除します、継続しますか?
auths.still_in_used=この認証を使用しているユーザーがいます。ユーザーを削除するか、別のログイン方法に割り当ててください。 auths.still_in_used=この認証を使用しているユーザーがいます。ユーザーを削除するか、別のログイン方法に割り当ててください。
auths.deletion_success=認証が正常に削除されました。 auths.deletion_success=認証が正常に削除されました。
auths.login_source_exist=ログイン ソース '%s' は既に存在します。 auths.login_source_exist=ログイン ソース '%s' は既に存在します。
auths.github_api_endpoint=APIエンドポイント
config.not_set=(未設定) config.not_set=(未設定)
config.server_config=サーバーの構成 config.server_config=サーバーの構成
config.app_name=アプリケーション config.brand_name=ブランド
config.app_ver=アプリケーションのバージョン config.run_user=実行ユーザー
config.app_url=アプリケーションの URL
config.domain=ドメイン
config.offline_mode=オフラインモード
config.disable_router_log=ルーターのログを無効にする
config.run_user=実行ユーザ
config.run_mode=実行モード config.run_mode=実行モード
config.git_version=Git バージョン config.server.external_url=外部 URL
config.static_file_root_path=静的ファイルのルートパス config.server.domain=ドメイン
config.log_file_root_path=ログファイルのルートパス config.server.protocol=プロトコル
config.reverse_auth_user=リバース認証ユーザ config.server.http_addr=HTTPアドレス
config.server.http_port=HTTP ポート
config.server.cert_file=証明書ファイル
config.server.key_file=キーファイル
config.server.tls_min_version=最小TLSバージョン
config.server.unix_socket_permission=Unixソケットの権限
config.server.local_root_url=ローカル ルート URL
config.server.offline_mode=オフラインモード
config.server.disable_router_log=ルーターログを無効にする
config.server.enable_gzip=Gzip を有効化
config.server.app_data_path=アプリケーション データ パス
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=SSH設定 config.ssh_config=SSH設定
config.ssh_enabled=有効 config.ssh.enabled=有効
config.ssh_start_builtin_server=内蔵サーバーの起動 config.ssh.domain=Exposed domain
config.ssh_domain=ドメイン config.ssh.port=Exposed port
config.ssh_port=ポート config.ssh.root_path=Root path
config.ssh_listen_port=リッスンポート config.ssh.keygen_path=Keygen パス
config.ssh_root_path=ルートパス config.ssh.key_test_path=鍵テストパス
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=最小キーサイズチェック
config.ssh_key_test_path=キーテストパス config.ssh.minimum_key_sizes=最小キーサイズ
config.ssh_keygen_path=鍵生成コマンド ('ssh-keygen') のパス config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=最小キーサイズチェック config.ssh.start_builtin_server=内蔵サーバーを起動
config.ssh_minimum_key_sizes=最小キーサイズ config.ssh.listen_host=待受ホスト
config.ssh.listen_port=待受ポート
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=リポジトリの設定 config.repo_config=リポジトリの設定
config.repo_root_path=リポジトリのルートパス config.repo.root_path=ルートパス
config.script_type=スクリプトの種類 config.repo.script_type=Script type
config.repo_force_private=非公開リポジトリの強制 config.repo.ansi_chatset=ANSI 文字コード
config.max_creation_limit=最大作成数 config.repo.force_private=非公開にする
config.preferred_licenses=優先ライセンス config.repo.max_creation_limit=最大作成数
config.disable_http_git=HTTP Git の無効化 config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=ローカルパス移行の有効化 config.repo.disable_http_git=HTTP Git の無効化
config.commits_fetch_concurrency=コミットのフェッチの並行数 config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP の設定 config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=データベース設定 config.db_config=データベース設定
config.db_type=タイプ config.db.type=DB種類
config.db_host=ホスト config.db.host=DBホスト
config.db_name= config.db.name=DB
config.db_user=ユーザ config.db.schema=Schema
config.db_ssl_mode=SSL モード config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(「postgres」のみ config.db.user=DBユーザー
config.db_path=パス config.db.ssl_mode=SSL モード
config.db_path_helper="sqlite3" および "tidb" の場合) config.db.ssl_mode_helper=("postgres"のみ)
config.db.path=DBパス
config.db.path_helper=("sqlite3"のみ)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=サービスの設定 config.security_config=セキュリティ設定
config.register_email_confirm=電子メールの確認を必要 config.security.login_remember_days=Login remember days
config.disable_register=登録を無効にする config.security.cookie_remember_name=Remember cookie
config.show_registration_button=登録ボタンを表示 config.security.cookie_username=Username cookie
config.require_sign_in_view=サインインを要求 config.security.cookie_secure=セキュアなクッキーを有効にする
config.mail_notify=メール通知 config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=最小キーサイズチェックを無効にする config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Captchaを有効にする config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=コードリンクの有効期限をアクティブ config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=パスワードリンクの有効期限をリセット
config.webhook_config=Webhook設定 config.email_config=Email configuration
config.queue_length=キューの長さ config.email.enabled=Enabled
config.deliver_timeout=送信タイムアウト config.email.subject_prefix=Subject prefix
config.skip_tls_verify=TLSの確認を省略 config.email.host=ホスト
config.email.from=From
config.email.user=ユーザー
config.email.disable_helo=HELOを無効にする
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=プレーンテキストを使用する
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=メーラーの設定 config.auth_config=Authentication configuration
config.mailer_enabled=有効にした config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=HELOコマンド無効 config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=ホスト config.auth.require_email_confirm=Require email confirmation
config.mailer_user=ユーザ config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=テストメールの送信 config.auth.disable_registration=登録を無効にする
config.test_mail_failed='%s' 宛のテストメールの送信に失敗しました: %v config.auth.enable_registration_captcha=登録時のCAPTCHAを有効にする
config.test_mail_sent=テストメールが '%s' に送信されました。 config.auth.enable_reverse_proxy_authentication=リバースプロキシ認証を有効にする
config.auth.enable_reverse_proxy_auto_registration=リバースプロキシの自動登録を有効にする
config.auth.reverse_proxy_authentication_header=リバースプロキシ認証ヘッダー
config.oauth_config=OAuth 構成 config.user_config=ユーザー設定
config.oauth_enabled=有効 config.user.enable_email_notify=メール通知を有効にする
config.cache_config=キャッシュの設定
config.cache_adapter=キャッシュ アダプター
config.cache_interval=キャッシュ間隔
config.cache_conn=キャッシュ接続
config.session_config=セッションの設定 config.session_config=セッションの設定
config.session_provider=セッション プロバイダー config.session.provider=Provider
config.provider_config=プロバイダーの構成 config.session.provider_config=Provider config
config.cookie_name=クッキーの名前 config.session.cookie_name=Cookie
config.enable_set_cookie=クッキーの設定を有効にする config.session.https_only=HTTPS のみ
config.gc_interval_time=GC 間隔 config.session.gc_interval=GC 間隔
config.session_life_time=セッションのライフタイム config.session.max_life_time=Max life time
config.https_only=HTTPS のみ config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=クッキーのライフタイム
config.cache_config=キャッシュの設定
config.cache.adapter=Adapter
config.cache.interval=GC 間隔
config.cache.host=ホスト
config.http_config=HTTP の設定
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=パス
config.attachment.allowed_types=Allowed types
config.attachment.max_size=サイズ制限
config.attachment.max_files=ファイルの制限
config.release_config=リリースの構成
config.release.attachment.enabled=添付ファイルが有効になっています
config.release.attachment.allowed_types=添付ファイルで許可されるタイプ
config.release.attachment.max_size=添付ファイルのサイズ制限
config.release.attachment.max_files=添付ファイルのサイズ制限
config.picture_config=画像の設定 config.picture_config=画像の設定
config.picture_service=画像サービス config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Gravatarを無効にする config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=連合アバターを有効にする config.picture.gravatar_source=Gravatarのソース
config.picture.disable_gravatar=Gravatarを無効にする
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=ミラー構成
config.mirror.default_interval=Default interval
config.webhook_config=Webhook設定
config.webhook.types=Types
config.webhook.deliver_timeout=配信のタイムアウト
config.webhook.skip_tls_verify=TLS検証をスキップ
config.git_config=Git 設定 config.git_config=Git 設定
config.git_disable_diff_highlight=Diff のシンタックスハイライトを無効にする config.git.disable_diff_highlight=Diff のシンタックスハイライトを無効にする
config.git_max_diff_lines=Diff の最大行数(1ファイルあたり) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Diff の最大文字数(1行あたり) config.git.max_diff_line_characters=Diff の最大文字数(1行あたり)
config.git_max_diff_files=Diff の最大ファイル数(表示) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=GC の引数 config.git.gc_args=GC の引数
config.git_migrate_timeout=移行タイムアウト config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=ミラー更新タイムアウト config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Clone 操作のタイムアウト config.git.clone_timeout=クローンのタイムアウト
config.git_pull_timeout=Pull 操作のタイムアウト config.git.pull_timeout=Pull タイムアウト
config.git_gc_timeout=GC 操作のタイムアウト config.git.gc_timeout=GC タイムアウト
config.lfs_config=LFS設定
config.lfs.storage=ストレージ
config.lfs.objects_path=Objects path
config.log_config=ログの設定 config.log_config=ログの設定
config.log_file_root_path=ログファイルのルートパス
config.log_mode=モード config.log_mode=モード
config.log_options=オプション config.log_options=オプション
@@ -1284,7 +1383,6 @@ notices.delete_success=システム通知が正常に削除されました。
[action] [action]
create_repo=がリポジトリ <a href="%s"> %s</a> を作成しました create_repo=がリポジトリ <a href="%s"> %s</a> を作成しました
fork_repo=リポジトリを <a href="%s">%s</a> にフォークしました
rename_repo=が <code>%[1]s</code> から <a href="%[2]s">%[3]s</a> にリポジトリ名を変更しました rename_repo=が <code>%[1]s</code> から <a href="%[2]s">%[3]s</a> にリポジトリ名を変更しました
commit_repo=が <a href="%[1]s">%[4]s</a> に <a href="%[1]s/src/%[2]s">%[3]s</a> をプッシュしました commit_repo=が <a href="%[1]s">%[4]s</a> に <a href="%[1]s/src/%[2]s">%[3]s</a> をプッシュしました
compare_commits=これらの %d コミットの比較を表示 compare_commits=これらの %d コミットの比較を表示
@@ -1301,6 +1399,10 @@ create_branch=が <a href="%[1]s">%[4]s</a> に新しいブランチ <a href="%[
delete_branch=<a href="%[1]s">%[3]s</a> のブランチ <code>%[2]s</code> を削除しました delete_branch=<a href="%[1]s">%[3]s</a> のブランチ <code>%[2]s</code> を削除しました
push_tag=が <a href="%[1]s">%[3]s</a> にタグ <a href="%[1]s/src/%[2]s">%[2]s</a> をプッシュしました push_tag=が <a href="%[1]s">%[3]s</a> にタグ <a href="%[1]s/src/%[2]s">%[2]s</a> をプッシュしました
delete_tag=<a href="%[1]s">%[3]s</a> のタグ <code>%[2]s</code> を削除しました delete_tag=<a href="%[1]s">%[3]s</a> のタグ <code>%[2]s</code> を削除しました
fork_repo=リポジトリを <a href="%s">%s</a> にフォークしました
mirror_sync_push=<a href="%[1]s">%[4]s</a> の <a href="%[1]s/src/%[2]s">%[3]s</a> へのコミットをミラーから反映しました
mirror_sync_create=新しい参照<a href="%s/src/%s">%[2]s</a>を<a href="%[1]s">%[3]s</a>にミラーから反映しました
mirror_sync_delete=<a href="%[1]s">%[3]s</a> の参照 <code>%[2]s</code> をミラーから同期および削除しました
[tool] [tool]
ago= ago=
@@ -1322,6 +1424,7 @@ months=%d ヶ月 %s
years=%d 年 %s years=%d 年 %s
raw_seconds= raw_seconds=
raw_minutes= raw_minutes=
raw_hours=時間
[dropzone] [dropzone]
default_message=ここにファイルをドロップまたはクリックしてアップロードします。 default_message=ここにファイルをドロップまたはクリックしてアップロードします。

View File

@@ -9,7 +9,6 @@ sign_out=로그아웃
sign_up=가입하기 sign_up=가입하기
register=가입하기 register=가입하기
website=웹 사이트 website=웹 사이트
version=버전
page=페이지 page=페이지
template=템플릿 template=템플릿
language=언어 language=언어
@@ -44,17 +43,22 @@ issues=이슈
cancel=취소 cancel=취소
[status]
page_not_found=페이지를 찾을 수 없음
internal_server_error=내부 서버 오류
[install] [install]
install=설치 install=설치
title=첫 실행을 위한 설치단계 title=첫 실행을 위한 설치단계
docker_helper=Gogs를 Docker에서 운영하고 있다면 <a target="_blank" href="%s">안내</a>를 읽고 변경해 주세요! docker_helper=Gogs를 Docker에서 운영하고 있다면 <a target="_blank" href="%s">안내</a>를 읽고 변경해 주세요!
requite_db_desc=Gogs 는 MySQL, PostgreSQL, SQLite3, MSSQL 또는 TiDB 를 필요로 합니다. requite_db_desc=Gogs는 MySQL, PostgreSQL, SQLite3, TiDB (MySQL protocol)을 필요로 합니다.
db_title=데이터베이스 설정 db_title=데이터베이스 설정
db_type=데이터베이스 유형 db_type=데이터베이스 유형
host=호스트 host=호스트
user=사용자 user=사용자
password=비밀번호 password=비밀번호
db_name=데이터베이스 이름 db_name=데이터베이스 이름
db_schema=스키마
db_helper=MySQL에서는 utf8_general_ci 캐릭터셋으로 INNODB엔진을 이용해 주세요 db_helper=MySQL에서는 utf8_general_ci 캐릭터셋으로 INNODB엔진을 이용해 주세요
ssl_mode=SSL 모드 ssl_mode=SSL 모드
path=경로 path=경로
@@ -84,6 +88,7 @@ log_root_path=로그 경로
log_root_path_helper=로그 파일을 쓸 디렉터리. log_root_path_helper=로그 파일을 쓸 디렉터리.
enable_console_mode=콘솔 모드 활성화 enable_console_mode=콘솔 모드 활성화
enable_console_mode_popup=파일 모드 외에 콘솔에 로그를 인쇄하세요. enable_console_mode_popup=파일 모드 외에 콘솔에 로그를 인쇄하세요.
default_branch=기본 브랜치
optional_title=추가설정 optional_title=추가설정
email_title=이메일 서비스 설정 email_title=이메일 서비스 설정
@@ -122,6 +127,7 @@ run_user_not_match=실행 유저가 현재 유저가 아닙니다: %s -> %s
smtp_host_missing_port=SMTP 호스트 포트가 주소에 없습니다. smtp_host_missing_port=SMTP 호스트 포트가 주소에 없습니다.
invalid_smtp_from=SMTP 보낸 사람 필드가 유효하지 않습니다: %v invalid_smtp_from=SMTP 보낸 사람 필드가 유효하지 않습니다: %v
save_config_failed=설정을 저장할 수 없습니다: %v save_config_failed=설정을 저장할 수 없습니다: %v
init_failed=프로그램을 초기화하는데 실패하였습니다: %v
invalid_admin_setting=관리자 계정 설정이 잘못되었습니다: %v invalid_admin_setting=관리자 계정 설정이 잘못되었습니다: %v
install_success=환영합니다! Gogs를 선택해 주셔서 감사합니다. install_success=환영합니다! Gogs를 선택해 주셔서 감사합니다.
invalid_log_root_path=로그 루트 경로가 올바르지 않습니다: %v invalid_log_root_path=로그 루트 경로가 올바르지 않습니다: %v
@@ -151,6 +157,8 @@ register_hepler_msg=이미 계정을 가지고 계신가요? 로그인하세요!
social_register_hepler_msg=계정을 가지고 계신가요? 연결하세요! social_register_hepler_msg=계정을 가지고 계신가요? 연결하세요!
disable_register_prompt=죄송합니다, 가입이 비활성화 되어있습니다. 사이트 관리자에게 문의 해주세요. disable_register_prompt=죄송합니다, 가입이 비활성화 되어있습니다. 사이트 관리자에게 문의 해주세요.
disable_register_mail=죄송합니다. 메일 등록이 비활성화 되었습니다. disable_register_mail=죄송합니다. 메일 등록이 비활성화 되었습니다.
auth_source=인증 소스 편집
local=로컬
remember_me=자동 로그인 remember_me=자동 로그인
forgot_password=비밀번호 찾기 forgot_password=비밀번호 찾기
forget_password=비밀번호를 잊으셨습니까? forget_password=비밀번호를 잊으셨습니까?
@@ -229,6 +237,7 @@ org_name_been_taken=이미 사용중인 조직 이름입니다.
team_name_been_taken=이미 사용중인 팀 이름입니다. team_name_been_taken=이미 사용중인 팀 이름입니다.
email_been_used=이미 사용중인 이메일 주소입니다. email_been_used=이미 사용중인 이메일 주소입니다.
username_password_incorrect=사용자 이름이나 비밀번호가 올바르지 않습니다. username_password_incorrect=사용자 이름이나 비밀번호가 올바르지 않습니다.
auth_source_mismatch=선택 인증 소스는 사용자와 연결 됩니다.
enterred_invalid_repo_name=입력한 저장소 이름이 올바른지 확인하십시오. enterred_invalid_repo_name=입력한 저장소 이름이 올바른지 확인하십시오.
enterred_invalid_owner_name=입력한 사용자 이름이 올바른지 확인하십시오. enterred_invalid_owner_name=입력한 사용자 이름이 올바른지 확인하십시오.
enterred_invalid_password=입력한 비밀번호가 올바른지 확인하십시오. enterred_invalid_password=입력한 비밀번호가 올바른지 확인하십시오.
@@ -256,8 +265,7 @@ following=팔로우 중
follow=추적하기 follow=추적하기
unfollow=추적해제 unfollow=추적해제
form.name_reserved=사용자 이름 '%s'는 예약되어 있습니다. form.name_not_allowed=사용자 이름 또는 패턴 %q 은(는) 허용되지 않습니다.
form.name_pattern_not_allowed=사용자 이름 패턴 '%s'은 허용 되지 않습니다.
[settings] [settings]
profile=프로필 profile=프로필
@@ -309,6 +317,7 @@ delete_email=삭제
email_deletion=이메일 삭제 email_deletion=이메일 삭제
email_deletion_desc=이메일 주소를 삭제하면 당신의 계정과 연관된 정보도 함께 삭제됩니다. 계속 하시겠습니까? email_deletion_desc=이메일 주소를 삭제하면 당신의 계정과 연관된 정보도 함께 삭제됩니다. 계속 하시겠습니까?
email_deletion_success=이메일 주소를 성공적으로 삭제되하였습니다! email_deletion_success=이메일 주소를 성공적으로 삭제되하였습니다!
email_deletion_primary=기본 이메일 주소를 삭제할 수 없습니다.
add_new_email=새 이메일 주소 추가 add_new_email=새 이메일 주소 추가
add_email=이메일 추가 add_email=이메일 추가
add_email_confirmation_sent=새로운 이메일 주소 인증이 '%s'로 발송되었습니다. %d시간 안에 확인 절차를 완료하셔야 합니다. add_email_confirmation_sent=새로운 이메일 주소 인증이 '%s'로 발송되었습니다. %d시간 안에 확인 절차를 완료하셔야 합니다.
@@ -348,20 +357,23 @@ two_factor_or_enter_secret=또는 이 비밀키를 입력하세요:
two_factor_then_enter_passcode=그리고 코드를 입력하세요: two_factor_then_enter_passcode=그리고 코드를 입력하세요:
two_factor_verify=확인 two_factor_verify=확인
two_factor_invalid_passcode=입력한 코드가 올바르지 않습니다. 다시 시도해 주세요! two_factor_invalid_passcode=입력한 코드가 올바르지 않습니다. 다시 시도해 주세요!
two_factor_reused_passcode=입력하신 비밀번호가 이미 사용되였습니.다른 비밀번호를 사용해보십시오!.
two_factor_enable_error=2단계 인증 활성화 실패: %v two_factor_enable_error=2단계 인증 활성화 실패: %v
two_factor_enable_success=2단계 인증이 성공적으로 활성화되었습니다! two_factor_enable_success=2단계 인증이 성공적으로 활성화되었습니다!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=2단계 인증 복구 코드
two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>. two_factor_recovery_codes_desc=복구 코드는 당신이 2단계 인증 프로그램에 접근할 수 없을때 사용합니다. 각 코드들은 한 번만 사용될 수 있습니다. <b>이 코드들은 안전한 장소에 보관하세요.</b>
two_factor_regenerate_recovery_codes=Regenerate Recovery Codes two_factor_regenerate_recovery_codes=복구 코드 재생성
two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v two_factor_regenerate_recovery_codes_error=복구 코드 재생성 실패: %v
two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully! two_factor_regenerate_recovery_codes_success=성공적으로 새로운 복구 코드가 생성되었습니다!
two_factor_disable_title=2단계 인증 비활성화 two_factor_disable_title=2단계 인증 비활성화
two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue? two_factor_disable_desc=2단계 인증을 끄면 보안 수준이 낮아집니다. 계속하시겠습니까?
two_factor_disable_success=2단계 인증이 성공적으로 비활성화되었습니다! two_factor_disable_success=2단계 인증이 성공적으로 비활성화되었습니다!
manage_access_token=개인 액세스 토큰 관리 manage_access_token=개인 액세스 토큰 관리
generate_new_token=새 토큰을 생성 generate_new_token=새 토큰을 생성
tokens_desc=Gogs Api에 액세스 하는 데 사용할 수 있는 토큰입니다. tokens_desc=Gogs Api에 액세스 하는 데 사용할 수 있는 토큰입니다.
access_token_tips=개인 액세스 토큰은 사용자 이름 또는 비밀번호로 사용할 수 있습니다. Git 애플리케이션에서는 'x-access-token'을 사용자 이름으로 사용하고, 개인 액세스 토큰을 비밀번호로 사용하는 것이 권장됩니다.
new_token_desc=각 토큰은 당신의 모든 권한을 행사할 수 있습니다. new_token_desc=각 토큰은 당신의 모든 권한을 행사할 수 있습니다.
token_name=토큰 이름 token_name=토큰 이름
generate_token=토큰 생성 generate_token=토큰 생성
@@ -370,15 +382,16 @@ delete_token=삭제
access_token_deletion=개인 액세스 토큰 삭제 access_token_deletion=개인 액세스 토큰 삭제
access_token_deletion_desc=이 토큰을 사용하는 애플리케이션의 접근권한 또한 삭제됩니다. 계속 하시겠습니까? access_token_deletion_desc=이 토큰을 사용하는 애플리케이션의 접근권한 또한 삭제됩니다. 계속 하시겠습니까?
delete_token_success=액세스 토큰이 삭제되었습니다. 애플리케이션의 업데이트도 잊지 마세요. delete_token_success=액세스 토큰이 삭제되었습니다. 애플리케이션의 업데이트도 잊지 마세요.
token_name_exists=같은 이름의 토큰이 이미 존재합니다.
orgs.none=당신은 어떤 조직의 구성원도 아닙니다. orgs.none=당신은 어떤 조직의 구성원도 아닙니다.
orgs.leave_title=조직 떠나기 orgs.leave_title=조직 떠나기
orgs.leave_desc=조직을 떠난 후에는 모든 리포지토리와 팀에 액세스 할 수 없게 됩니다. 계속 하시겠습니까? orgs.leave_desc=조직을 떠난 후에는 모든 리포지토리와 팀에 액세스 할 수 없게 됩니다. 계속 하시겠습니까?
repos.leave=Leave repos.leave=나가기
repos.leave_title=Leave repository repos.leave_title=저장소 나가기
repos.leave_desc=You will lose access to the repository after you left. Do you want to continue? repos.leave_desc=이 페지를 떠나면 저장소에 액세스할수 없게 됩니다. 계속하시겠습니까?
repos.leave_success=You have left repository '%s' successfully! repos.leave_success=당신은 저장소 '%s' 에서 성공적으로 탈퇴하였습니다.!
delete_account=계정 삭제 delete_account=계정 삭제
delete_prompt=당신의 계정을 삭제합니다. 완료된 후에는 <strong>취소할 수 없습니다</strong>. delete_prompt=당신의 계정을 삭제합니다. 완료된 후에는 <strong>취소할 수 없습니다</strong>.
@@ -391,7 +404,9 @@ owner=소유자
repo_name=저장소 이름 repo_name=저장소 이름
repo_name_helper=좋은 저장소 이름은 짧고 기억하기 좋은 유니크한 키워드로 이루어 집니다. repo_name_helper=좋은 저장소 이름은 짧고 기억하기 좋은 유니크한 키워드로 이루어 집니다.
visibility=가시성 visibility=가시성
unlisted=비공개
visiblity_helper=이 저장소는 <span class="ui red text">비공개</span> 저장소입니다 visiblity_helper=이 저장소는 <span class="ui red text">비공개</span> 저장소입니다
unlisted_helper=이 저장소는 <span class="ui red text">비공개</span> 저장소입니다.
visiblity_helper_forced=사이트 관리자가 모든 저장소를 <span class="ui red text">비공개</span>로 변경하였습니다. visiblity_helper_forced=사이트 관리자가 모든 저장소를 <span class="ui red text">비공개</span>로 변경하였습니다.
visiblity_fork_helper=(이 값의 변경은 모든 포크에 영향을 줍니다) visiblity_fork_helper=(이 값의 변경은 모든 포크에 영향을 줍니다)
clone_helper=클론하는데에 도움이 필요하면 <a target="_blank" href="%s">Help</a>에 방문하세요. clone_helper=클론하는데에 도움이 필요하면 <a target="_blank" href="%s">Help</a>에 방문하세요.
@@ -417,10 +432,11 @@ mirror_last_synced=마지막으로 동기화됨
watchers=주시하고 있는 사람들 watchers=주시하고 있는 사람들
stargazers=별을 준 사람들 stargazers=별을 준 사람들
forks=포크 forks=포크
repo_description_helper=저장소 설명.최대 512길이의 문자열이 가능합니다.
repo_description_length=가능한 문자열입니다.
form.reach_limit_of_creation=소유자가 저장소 만들기 최대 제한에 (%d개) 도달했습니다. form.reach_limit_of_creation=소유자가 저장소 만들기 최대 제한에 (%d개) 도달했습니다.
form.name_reserved=저장소 이름 '%s'은 예약 되어 있습니다. form.name_not_allowed=저장소명 또는 패턴 %q 은(는) 허용되지 않습니다.
form.name_pattern_not_allowed=저장소 이름 패턴 '%s'은 허용 되지 않습니다.
need_auth=인증 필요 need_auth=인증 필요
migrate_type=마이그레이션 유형 migrate_type=마이그레이션 유형
@@ -431,6 +447,7 @@ migrate.clone_address_desc=HTTP/HTTPS/GIT URL일 수 있습니다.
migrate.clone_address_desc_import_local=로컬 서버 경로를 기준으로 저장소를 마이그레이션 할 수도 있습니다. migrate.clone_address_desc_import_local=로컬 서버 경로를 기준으로 저장소를 마이그레이션 할 수도 있습니다.
migrate.permission_denied=로컬 저장소는 가져오기를 할 수 없습니다. migrate.permission_denied=로컬 저장소는 가져오기를 할 수 없습니다.
migrate.invalid_local_path=잘못된 로컬 경로입니다. 존재하지 않는 경로거나 폴더가 아닙니다. migrate.invalid_local_path=잘못된 로컬 경로입니다. 존재하지 않는 경로거나 폴더가 아닙니다.
migrate.clone_address_resolved_to_blocked_local_address=복제 주소는 암묵적으로 차단된 로컬 네트워크 주소로 확인되었습니다.
migrate.failed=마이그레이션 실패: %v migrate.failed=마이그레이션 실패: %v
mirror_from=의 미러 mirror_from=의 미러
@@ -472,12 +489,14 @@ file_permalink=고유링크
file_too_large=이 파일은 표시하기엔 너무 큽니다. file_too_large=이 파일은 표시하기엔 너무 큽니다.
video_not_supported_in_browser=이 브라우저는 HTML5 비디오 태그를 지원하지 않습니다. video_not_supported_in_browser=이 브라우저는 HTML5 비디오 태그를 지원하지 않습니다.
branches.overview=Overview branches.overview=개요
branches.active_branches=활성 브랜치 branches.active_branches=활성 브랜치
branches.stale_branches=오래된 브랜치 branches.stale_branches=오래된 브랜치
branches.all=모든 브랜치 branches.all=모든 브랜치
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=%[2]s %[1]s를 업데이트
branches.change_default_branch=기본 브랜치 변경 branches.change_default_branch=기본 브랜치 변경
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=파일 생성 editor.new_file=파일 생성
editor.upload_file=파일 업로드 editor.upload_file=파일 업로드
@@ -514,6 +533,7 @@ editor.file_changed_while_editing=편집을 시작한 이후 파일 내용이
editor.file_already_exists=이 저장소에 이름이 '%s'인 파일이 이미 존재합니다. editor.file_already_exists=이 저장소에 이름이 '%s'인 파일이 이미 존재합니다.
editor.no_changes_to_show=표시할 변경사항이 없습니다. editor.no_changes_to_show=표시할 변경사항이 없습니다.
editor.fail_to_update_file=파일 '%s'를 변경/추가 하는데 실패하였습니다. 에러: %v editor.fail_to_update_file=파일 '%s'를 변경/추가 하는데 실패하였습니다. 에러: %v
editor.fail_to_delete_file=파일 '%s'를 삭제하는데 실패하였습니다. 오유: %v
editor.add_subdir=하위 디렉토리 추가... editor.add_subdir=하위 디렉토리 추가...
editor.unable_to_upload_files=파일 '%s'를 업로드하는데 실패하였습니다. 에러: %v editor.unable_to_upload_files=파일 '%s'를 업로드하는데 실패하였습니다. 에러: %v
editor.upload_files_to_dir=파일 업로드 '%s' editor.upload_files_to_dir=파일 업로드 '%s'
@@ -616,7 +636,7 @@ pulls.compare_compare=비교
pulls.filter_branch=Filter Branch pulls.filter_branch=Filter Branch
pulls.no_results=결과 없음 pulls.no_results=결과 없음
pulls.nothing_to_compare=Base 와 head 브랜치가 동일해서 비교할 게 없습니다. pulls.nothing_to_compare=Base 와 head 브랜치가 동일해서 비교할 게 없습니다.
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history. pulls.nothing_merge_base=두 브런치의 리력이 완전히 다르므로 비교할수 없습니다.
pulls.has_pull_request=`이 두 타겟 사이엔 이미 풀 리퀘스트가 있습니다:<a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>` pulls.has_pull_request=`이 두 타겟 사이엔 이미 풀 리퀘스트가 있습니다:<a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=풀 리퀘스트 생성 pulls.create=풀 리퀘스트 생성
pulls.title_desc=<code>%[2]s</code> 에서 <code>%[3]s</code> 로 %[1]d commits 를 머지하려 합니다 pulls.title_desc=<code>%[2]s</code> 에서 <code>%[3]s</code> 로 %[1]d commits 를 머지하려 합니다
@@ -633,8 +653,9 @@ pulls.is_checking=아직 컨플릭트 여부 체크 중입니다, 잠시 후 이
pulls.can_auto_merge_desc=이 풀리퀘스트는 자동적으로 머지될 수 있습니다. pulls.can_auto_merge_desc=이 풀리퀘스트는 자동적으로 머지될 수 있습니다.
pulls.cannot_auto_merge_desc=컨플릭이 존재해서 이 풀리퀘스트는 자동을 머지될 수 없습니다. pulls.cannot_auto_merge_desc=컨플릭이 존재해서 이 풀리퀘스트는 자동을 머지될 수 없습니다.
pulls.cannot_auto_merge_helper=컨플릭을 해결하려면 수동으로 머지해 주십시오. pulls.cannot_auto_merge_helper=컨플릭을 해결하려면 수동으로 머지해 주십시오.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=합치기커밋 생성
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=병합 하기 전에 리베이스
pulls.commit_description=커밋설명
pulls.merge_pull_request=풀리퀘스트 머지 pulls.merge_pull_request=풀리퀘스트 머지
pulls.open_unmerged_pull_exists=`같은 리파지토리에서 같은 머지 정보로 만들어진 풀리퀘스트 (#%d) 가 이미 오픈 상태이고 머지를 기다리고 있기 때문에 다시 열기 작업을 할 수 없습니다.` pulls.open_unmerged_pull_exists=`같은 리파지토리에서 같은 머지 정보로 만들어진 풀리퀘스트 (#%d) 가 이미 오픈 상태이고 머지를 기다리고 있기 때문에 다시 열기 작업을 할 수 없습니다.`
pulls.delete_branch=브랜치 삭제 pulls.delete_branch=브랜치 삭제
@@ -690,11 +711,11 @@ settings.collaboration.write=쓰기
settings.collaboration.read=읽기 settings.collaboration.read=읽기
settings.collaboration.undefined=미정의 settings.collaboration.undefined=미정의
settings.branches=브랜치 settings.branches=브랜치
settings.branches_bare=You cannot manage branches for bare repository. Please push some content first. settings.branches_bare=당신은 빈 저장소에 대한 브런치를 관리할수 없습니다. 먼저 저장소에 내용을 푸쉬하십시오.
settings.default_branch=기본 브랜치 settings.default_branch=기본 브랜치
settings.default_branch_desc=The default branch is considered the "base" branch for code commits, pull requests and online editing. settings.default_branch_desc=기본 브랜치는 코드 커밋, 풀 리퀘스트 및 온라인 편집을 위한 "기본" 브랜치로 간주됩니다.
settings.update=업데이트 settings.update=업데이트
settings.update_default_branch_unsupported=Change default branch is not supported by the Git version on server. settings.update_default_branch_unsupported=서버의 Git 버전에서는 기본 브랜치 변경이 지원되지 않습니다.
settings.update_default_branch_success=이 레포지토리의 기본 브랜치가 성공적으로 설정되었습니다! settings.update_default_branch_success=이 레포지토리의 기본 브랜치가 성공적으로 설정되었습니다!
settings.protected_branches=보호된 브랜치 settings.protected_branches=보호된 브랜치
settings.protected_branches_desc=보호된 브랜치는 force 푸시, 실수로 인한 코드 삭제를 방지하며 코드 커미터를 화이트리스트 합니다. settings.protected_branches_desc=보호된 브랜치는 force 푸시, 실수로 인한 코드 삭제를 방지하며 코드 커미터를 화이트리스트 합니다.
@@ -706,12 +727,12 @@ settings.protect_this_branch_desc=Force 푸시와 삭제를 비활성화합니
settings.protect_require_pull_request=직접 push 를 하지 않고 Pull Request 를 필요로 하도록 합니다. settings.protect_require_pull_request=직접 push 를 하지 않고 Pull Request 를 필요로 하도록 합니다.
settings.protect_require_pull_request_desc=이 브랜치에 직접 푸시를 하는 것을 막고 싶다면 이 옵션을 활성화하세요. 커밋은 다른 비보호 브랜치에 푸시되어야 하며 이 브랜치에는 Pull Request 를 통해 병합될 것입니다. settings.protect_require_pull_request_desc=이 브랜치에 직접 푸시를 하는 것을 막고 싶다면 이 옵션을 활성화하세요. 커밋은 다른 비보호 브랜치에 푸시되어야 하며 이 브랜치에는 Pull Request 를 통해 병합될 것입니다.
settings.protect_whitelist_committers=이 브랜치에 푸시할 수 있는 유저 settings.protect_whitelist_committers=이 브랜치에 푸시할 수 있는 유저
settings.protect_whitelist_committers_desc=Add people or teams to whitelist of direct push to this branch. Users in whitelist will bypass require pull request check. settings.protect_whitelist_committers_desc=이 브랜치에 직접 푸시할 수 있는 허용 목록에 사람 또는 팀을 추가합니다. 허용 목록에 있는 사용자는 풀 리퀘스트 확인을 거치지 않습니다.
settings.protect_whitelist_users=이 브랜치에 푸시를 할 수 있는 유저 settings.protect_whitelist_users=이 브랜치에 푸시를 할 수 있는 유저
settings.protect_whitelist_search_users=유저 검색 settings.protect_whitelist_search_users=유저 검색
settings.protect_whitelist_teams=Teams for which members of them can push to this branch settings.protect_whitelist_teams=이 브랜치에 푸시할 수 있는 팀의 멤버들
settings.protect_whitelist_search_teams=Search teams settings.protect_whitelist_search_teams=팀 검색
settings.update_protect_branch_success=Protect options for this branch has been updated successfully! settings.update_protect_branch_success=브랜치의 보호 옵션이 성공적으로 업데이트되었습니다!
settings.hooks=Webhooks settings.hooks=Webhooks
settings.githooks=Git Hooks settings.githooks=Git Hooks
settings.basic_settings=기본 설정 settings.basic_settings=기본 설정
@@ -724,13 +745,13 @@ settings.change_reponame_prompt=이 변경은 이 저장소와 연관된 링크
settings.advanced_settings=고급 설정 settings.advanced_settings=고급 설정
settings.wiki_desc=위키 시스템 활성화 settings.wiki_desc=위키 시스템 활성화
settings.use_internal_wiki=내장 위키 사용 settings.use_internal_wiki=내장 위키 사용
settings.allow_public_wiki_desc=Allow public access to wiki when repository is private settings.allow_public_wiki_desc=저장소가 비공개되어 있으면 위키에 공개적으로 접속할 수 있도록 허용하기
settings.use_external_wiki=외부 위키 사용하기 settings.use_external_wiki=외부 위키 사용하기
settings.external_wiki_url=외부 위키 URL settings.external_wiki_url=외부 위키 URL
settings.external_wiki_url_desc=탭을 클릭하면 URL로 리다이렉트됩니다. settings.external_wiki_url_desc=탭을 클릭하면 URL로 리다이렉트됩니다.
settings.issues_desc=이슈 추적기를 사용하도록 설정 settings.issues_desc=이슈 추적기를 사용하도록 설정
settings.use_internal_issue_tracker=내장된 경량 이슈 트레커를 사용 settings.use_internal_issue_tracker=내장된 경량 이슈 트레커를 사용
settings.allow_public_issues_desc=Allow public access to issues when repository is private settings.allow_public_issues_desc=저장소가 비공개인 경우 이슈에 공개적으로 접속할 수 있도록 허용하기
settings.use_external_issue_tracker=외부 이슈 트래커 사용하기 settings.use_external_issue_tracker=외부 이슈 트래커 사용하기
settings.external_tracker_url=외부 이슈 트래커 URL settings.external_tracker_url=외부 이슈 트래커 URL
settings.external_tracker_url_desc=방문자는 탭을 클릭하면 URL로 리다이렉트 됩니다. settings.external_tracker_url_desc=방문자는 탭을 클릭하면 URL로 리다이렉트 됩니다.
@@ -739,9 +760,9 @@ settings.tracker_issue_style=외부 이슈 트래커 명명 스타일:
settings.tracker_issue_style.numeric=숫자 settings.tracker_issue_style.numeric=숫자
settings.tracker_issue_style.alphanumeric=문자 숫자 settings.tracker_issue_style.alphanumeric=문자 숫자
settings.tracker_url_format_desc=<code>{user} {repo} {index}</code> 사용자 명, 저장소 명, 이슈 인덱스를 사용하여 표시자를 사용할 수 있습니다. settings.tracker_url_format_desc=<code>{user} {repo} {index}</code> 사용자 명, 저장소 명, 이슈 인덱스를 사용하여 표시자를 사용할 수 있습니다.
settings.pulls_desc=끌어오기 요청을 공개적으로 기여받을 수 있도록 활성화합니다. settings.pulls_desc=다른 저장소와 브랜치 간의 기여를 수용할 수 있도록 풀 리퀘스트 활성화
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=공백 변경 무시
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=커밋을 머지하기 위해 리베이스 사용 허용
settings.danger_zone=위험 설정 settings.danger_zone=위험 설정
settings.cannot_fork_to_same_owner=본인 소유의 저장소를 본인 명의로 포크할 수 없습니다. settings.cannot_fork_to_same_owner=본인 소유의 저장소를 본인 명의로 포크할 수 없습니다.
settings.new_owner_has_same_repo=새로운 소유자가 같은 이름의 저장소를 이미 가지고 있습니다. 다른 이름을 선택해주세요. settings.new_owner_has_same_repo=새로운 소유자가 같은 이름의 저장소를 이미 가지고 있습니다. 다른 이름을 선택해주세요.
@@ -762,7 +783,7 @@ settings.wiki_deletion_success=저장소의 Wiki 데이터가 성공적으로
settings.delete=이 저장소 삭제 settings.delete=이 저장소 삭제
settings.delete_desc=저장소를 지우고 나면 되돌릴 수 없습니다. 다시 한번 확인하세요. settings.delete_desc=저장소를 지우고 나면 되돌릴 수 없습니다. 다시 한번 확인하세요.
settings.delete_notices_1=- 이 작업은 취소할 수 <strong>없습니다.</strong> settings.delete_notices_1=- 이 작업은 취소할 수 <strong>없습니다.</strong>
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- 이 작업을 수행하면 Git 데이터, 이슈, 댓글, 협업자 액세스 등 이 저장소의 모든 내용이 영구적으로 삭제됩니다.
settings.delete_notices_fork_1=- 모든 포크들은 삭제 후에도 독립적으로 유지됩니다. settings.delete_notices_fork_1=- 모든 포크들은 삭제 후에도 독립적으로 유지됩니다.
settings.deletion_success=저장소가 성공적으로 삭제 되었습니다! settings.deletion_success=저장소가 성공적으로 삭제 되었습니다!
settings.update_settings_success=저장소 옵션이 성공적으로 업데이트 되었습니다. settings.update_settings_success=저장소 옵션이 성공적으로 업데이트 되었습니다.
@@ -778,21 +799,25 @@ settings.collaborator_deletion_desc=이 사용자는 더 이상 이 저장소의
settings.remove_collaborator_success=공동작업자가 삭제 되었습니다. settings.remove_collaborator_success=공동작업자가 삭제 되었습니다.
settings.search_user_placeholder=사용자 검색... settings.search_user_placeholder=사용자 검색...
settings.org_not_allowed_to_be_collaborator=조직을 공동 작업자로 추가할 수 없습니다. settings.org_not_allowed_to_be_collaborator=조직을 공동 작업자로 추가할 수 없습니다.
settings.add_webhook=Webhook 추가
settings.hooks_desc=웹후크는 기본적인 HTTP POST 이벤트 트리거입니다. Gogs에서 무슨 일이 발생할 때마다, 지정한 대상 호스트에 알림을 보냅니다. <a target="_blank" href="%s">웹후크 안내서</a>에서 자세히 알아보십시오. settings.hooks_desc=웹후크는 기본적인 HTTP POST 이벤트 트리거입니다. Gogs에서 무슨 일이 발생할 때마다, 지정한 대상 호스트에 알림을 보냅니다. <a target="_blank" href="%s">웹후크 안내서</a>에서 자세히 알아보십시오.
settings.webhooks.add_new=새 웹훅 추가
settings.webhooks.choose_a_type=유형 선택...
settings.add_webhook=Webhook 추가
settings.webhook_deletion=Webhook 삭제 settings.webhook_deletion=Webhook 삭제
settings.webhook_deletion_desc=이 웹훅을 삭제하면 정보와 모든 전송기록이 제거됩니다. 계속 하시겠습니까? settings.webhook_deletion_desc=이 웹훅을 삭제하면 정보와 모든 전송기록이 제거됩니다. 계속 하시겠습니까?
settings.webhook_deletion_success=Webhook을 성공적으로 삭제했습니다! settings.webhook_deletion_success=Webhook을 성공적으로 삭제했습니다!
settings.webhook.test_delivery=전달 시험 settings.webhook.test_delivery=전달 시험
settings.webhook.test_delivery_desc=가짜 푸시 이벤트 전달하여 웹훅 설정을 테스트합니다. settings.webhook.test_delivery_desc=가짜 푸시 이벤트 전달하여 웹훅 설정을 테스트합니다.
settings.webhook.test_delivery_success=Webhook 테스트가 delivery 큐에 추가되었습니다. delivery 기록에서 나오기까지 몇 초의 시간이 걸릴 것입니다. settings.webhook.test_delivery_success=Webhook 테스트가 delivery 큐에 추가되었습니다. delivery 기록에서 나오기까지 몇 초의 시간이 걸릴 것입니다.
settings.webhook.redelivery=Redelivery settings.webhook.redelivery=재전송
settings.webhook.redelivery_success=Hook task '%s' has been readded to delivery queue. It may take few seconds to update delivery status in history. settings.webhook.redelivery_success=웹훅 작업 '%s'이(가) 다시 전달 큐에 추가되었습니다. 전달 상태는 이력에서 잠시 후 반영됩니다.
settings.webhook.request=요청 settings.webhook.request=요청
settings.webhook.response=응답 settings.webhook.response=응답
settings.webhook.headers=제목 settings.webhook.headers=제목
settings.webhook.payload=페이로드 settings.webhook.payload=페이로드
settings.webhook.body=본문 settings.webhook.body=본문
settings.webhook.err_cannot_parse_payload_url=페이로드 URL을 구문 분석할 수 없습니다: %v
settings.webhook.url_resolved_to_blocked_local_address=로컬 네트워크 주소로 확인된 페이로드 URL이 암묵적으로 차단되었습니다.
settings.githooks_desc=Git Hooks는 Git 자체에서 제공되며, 아래 목록에서 지원되는 후크 파일을 편집하여 사용자 정의 작업을 수행 할 수 있습니다. settings.githooks_desc=Git Hooks는 Git 자체에서 제공되며, 아래 목록에서 지원되는 후크 파일을 편집하여 사용자 정의 작업을 수행 할 수 있습니다.
settings.githook_edit_desc=후크가 비활성인 경우 샘플 콘텐츠가 표시됩니다. 내용을 빈 값으로 두면 이 훅은 비활성화됩니다. settings.githook_edit_desc=후크가 비활성인 경우 샘플 콘텐츠가 표시됩니다. 내용을 빈 값으로 두면 이 훅은 비활성화됩니다.
settings.githook_name=Hook 이름 settings.githook_name=Hook 이름
@@ -802,7 +827,7 @@ settings.add_webhook_desc=Gogs는 발생한 이벤트와 관련하여 지정한
settings.payload_url=페이로드 URL settings.payload_url=페이로드 URL
settings.content_type=컨텐츠 타입 settings.content_type=컨텐츠 타입
settings.secret=비밀 settings.secret=비밀
settings.secret_desc=Secret will be sent as SHA256 HMAC hex digest of payload via <code>X-Gogs-Signature</code> header. settings.secret_desc=시크릿은 <code>X-Gogs-Signature</code> 헤더를 통해 페이로드의 SHA256 HMAC 16진수 다이제스트로 전송됩니다.
settings.slack_username=사용자 이름 settings.slack_username=사용자 이름
settings.slack_icon_url=아이콘 URL settings.slack_icon_url=아이콘 URL
settings.slack_color= settings.slack_color=
@@ -815,17 +840,17 @@ settings.event_create_desc=브랜치 또는 태그를 생성합니다.
settings.event_delete=삭제 settings.event_delete=삭제
settings.event_delete_desc=브랜치나 태그 삭제됨 settings.event_delete_desc=브랜치나 태그 삭제됨
settings.event_fork=포크 settings.event_fork=포크
settings.event_fork_desc=Repository forked settings.event_fork_desc=저장소 포크됨
settings.event_push=푸시 settings.event_push=푸시
settings.event_push_desc=깃 저장소로 푸시 settings.event_push_desc=깃 저장소로 푸시
settings.event_issues=이슈 settings.event_issues=이슈
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=이슈가 생성됨, 닫힘, 다시 열림, 편집됨, 담당자 지정 또는 해제, 라벨 업데이트 또는 제거, 마일스톤 지정 또는 해제됨.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=끌어오기 요청 settings.event_pull_request=끌어오기 요청
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_release=Release settings.event_issue_comment=이슈 댓글
settings.event_release_desc=Release published in a repository. settings.event_issue_comment_desc=이슈 댓글이 작성, 편집 또는 삭제되었습니다.
settings.event_release=릴리즈
settings.event_release_desc=저장소에 릴리즈가 출시되었습니다.
settings.active=활성 settings.active=활성
settings.active_helper=후크를 트리거하면 이벤트에 대한 세부 정보도 전달됩니다. settings.active_helper=후크를 트리거하면 이벤트에 대한 세부 정보도 전달됩니다.
settings.add_hook_success=새로운 웹훅이 생성되었습니다. settings.add_hook_success=새로운 웹훅이 생성되었습니다.
@@ -853,6 +878,8 @@ settings.add_key_success=새로운 배포 키 '%s'가 성공적으로 추가 되
settings.deploy_key_deletion=배포 키 삭제 settings.deploy_key_deletion=배포 키 삭제
settings.deploy_key_deletion_desc=이 배포키를 삭제하면 이 저장소와 관련된 모든 접근 권한이 삭제됩니다. 계속 하시겠습니까? settings.deploy_key_deletion_desc=이 배포키를 삭제하면 이 저장소와 관련된 모든 접근 권한이 삭제됩니다. 계속 하시겠습니까?
settings.deploy_key_deletion_success=배포 키가 성공적으로 삭제되었습니다! settings.deploy_key_deletion_success=배포 키가 성공적으로 삭제되었습니다!
settings.description_desc=저장소 설명입니다. 최대 512길이의 문자열이 가능합니다.
settings.description_length=사용 가능한 문자열
diff.browse_source=소스 검색 diff.browse_source=소스 검색
diff.parent=부모 diff.parent=부모
@@ -917,9 +944,8 @@ team_name_helper=대화에서 이 팀을 언급할 때 이 이름을 사용합
team_desc_helper=이 팀은 무엇입니까? team_desc_helper=이 팀은 무엇입니까?
team_permission_desc=이 팀이 가진 권한이 무엇입니까? team_permission_desc=이 팀이 가진 권한이 무엇입니까?
form.name_reserved=조직이름 '%s'는 예약되어있습니다. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=조직이름 패턴 '%s'는 허용되지 않았습니다. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Team name '%s' is reserved.
settings=설정 settings=설정
settings.options=옵션 settings.options=옵션
@@ -991,12 +1017,19 @@ first_page=처음
last_page=마지막 last_page=마지막
total=총: %d total=총: %d
dashboard.build_info=빌드정보
dashboard.app_ver=애플리케이션 버전
dashboard.git_version=Git 버전
dashboard.go_version=Go 버전
dashboard.build_time=태그 만들기
dashboard.build_commit=빌드 커밋
dashboard.statistic=통계 dashboard.statistic=통계
dashboard.operations=작업 dashboard.operations=작업
dashboard.system_status=시스템 모니터 상태 dashboard.system_status=시스템 모니터 상태
dashboard.statistic_info=Gogs 데이터베이스에는 <b>%d</b>명의 사용자, <b>%d</b> 조직, <b>%d</b> 공개 키, <b>%d</b> 저장소, <b>%d</b> 주시, <b>%d</b> 별, <b>%d</b> 활동, <b>%d</b> 접근, <b>%d</b> 이슈, <b>%d</b> 댓글, <b>%d</b> 소셜 계정, <b>%d</b> 팔로우, <b>%d</b> 미러, <b>%d</b> 릴리즈, <b>%d</b> 로그인 소스, <b>%d</b> 웹훅, <b>%d</b> 마일스톤, <b>%d</b> 라벨, <b>%d</b> 훅 태스크, <b>%d</b> 팀, <b>%d</b> 업데이트 태스크, <b>%d</b> 첨부파일이 있습니다. dashboard.statistic_info=Gogs 데이터베이스에는 <b>%d</b>명의 사용자, <b>%d</b> 조직, <b>%d</b> 공개 키, <b>%d</b> 저장소, <b>%d</b> 주시, <b>%d</b> 별, <b>%d</b> 활동, <b>%d</b> 접근, <b>%d</b> 이슈, <b>%d</b> 댓글, <b>%d</b> 소셜 계정, <b>%d</b> 팔로우, <b>%d</b> 미러, <b>%d</b> 릴리즈, <b>%d</b> 로그인 소스, <b>%d</b> 웹훅, <b>%d</b> 마일스톤, <b>%d</b> 라벨, <b>%d</b> 훅 태스크, <b>%d</b> 팀, <b>%d</b> 업데이트 태스크, <b>%d</b> 첨부파일이 있습니다.
dashboard.operation_name=작업 명 dashboard.operation_name=작업 명
dashboard.operation_switch=스위치 dashboard.operation_switch=스위치
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=실행 dashboard.operation_run=실행
dashboard.clean_unbind_oauth=연결되지 않은 OAuth들을 정리 dashboard.clean_unbind_oauth=연결되지 않은 OAuth들을 정리
dashboard.clean_unbind_oauth_success=연결되지 않은 모든 OAuth들이 성공적으로 삭제되었습니다. dashboard.clean_unbind_oauth_success=연결되지 않은 모든 OAuth들이 성공적으로 삭제되었습니다.
@@ -1086,13 +1119,14 @@ repos.private=비공개
repos.watches=지켜보기 repos.watches=지켜보기
repos.stars=Stars repos.stars=Stars
repos.issues=이슈 repos.issues=이슈
repos.size=Size repos.size=크기
auths.auth_manage_panel=인증 관리 패널 auths.auth_sources=인증 소스
auths.new=새로운 소스를 추가 auths.new=새로운 소스를 추가
auths.name=이름 auths.name=이름
auths.type=유형 auths.type=유형
auths.enabled=활성화됨 auths.enabled=활성화됨
auths.default=기본값
auths.updated=업데이트됨 auths.updated=업데이트됨
auths.auth_type=인증 유형 auths.auth_type=인증 유형
auths.auth_name=인증 이름 auths.auth_name=인증 이름
@@ -1108,12 +1142,12 @@ auths.user_base=사용자 검색 기준
auths.user_dn=사용자 DN auths.user_dn=사용자 DN
auths.attribute_username=유저 명 속성 auths.attribute_username=유저 명 속성
auths.attribute_username_placeholder=사용자 이름에 대한 로그인 폼 필드 값을 사용하려면 비워 둡니다. auths.attribute_username_placeholder=사용자 이름에 대한 로그인 폼 필드 값을 사용하려면 비워 둡니다.
auths.attribute_name=First Name Attribute auths.attribute_name=첫번째 이름 속성
auths.attribute_surname=성씨 속성 auths.attribute_surname=성씨 속성
auths.attribute_mail=이메일 속성 auths.attribute_mail=이메일 속성
auths.verify_group_membership=Verify group membership auths.verify_group_membership=그룹 구성원 자격을 확인
auths.group_search_base_dn=Group Search Base DN auths.group_search_base_dn=그룹 설정 Base DN
auths.group_filter=Group Filter auths.group_filter=그룹 필터
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users auths.group_attribute_contain_user_list=Group Attribute Containing List of Users
auths.user_attribute_listed_in_group=User Attribute Listed in Group auths.user_attribute_listed_in_group=User Attribute Listed in Group
auths.attributes_in_bind=DN 컨텍스트에서 속성을 가져와 연결합니다. auths.attributes_in_bind=DN 컨텍스트에서 속성을 가져와 연결합니다.
@@ -1129,9 +1163,9 @@ auths.enable_tls=TLS 암호화 활성화
auths.skip_tls_verify=TLS 검증 건너뛰기 auths.skip_tls_verify=TLS 검증 건너뛰기
auths.pam_service_name=PAM 서비스 명 auths.pam_service_name=PAM 서비스 명
auths.enable_auto_register=자동 등록을 활성화 auths.enable_auto_register=자동 등록을 활성화
auths.tips=도움말
auths.edit=인증 설정 편집 auths.edit=인증 설정 편집
auths.activated=이 인증정보는 활성화되어있습니다. auths.activated=이 인증정보는 활성화되어있습니다.
auths.default_auth=This authentication is default login source
auths.new_success=새로운 인증 '%s'가 성공적으로 추가 되었습니다. auths.new_success=새로운 인증 '%s'가 성공적으로 추가 되었습니다.
auths.update_success=인증 설정이 성공적으로 변경되었습니다. auths.update_success=인증 설정이 성공적으로 변경되었습니다.
auths.update=인증 설정 업데이트 auths.update=인증 설정 업데이트
@@ -1141,122 +1175,188 @@ auths.delete_auth_desc=이 인증이 삭제됩니다. 정말로 진행하시겠
auths.still_in_used=이 인증은 아직 몇몇 사용자들이 사용하고 있습니다, 먼저 사용자들의 로그인 유형을 삭제하거나 변경해주십시오. auths.still_in_used=이 인증은 아직 몇몇 사용자들이 사용하고 있습니다, 먼저 사용자들의 로그인 유형을 삭제하거나 변경해주십시오.
auths.deletion_success=인증이 성공적으로 삭제 되었습니다! auths.deletion_success=인증이 성공적으로 삭제 되었습니다!
auths.login_source_exist=로그인 소스 '%s'는 이미 존재합니다. auths.login_source_exist=로그인 소스 '%s'는 이미 존재합니다.
auths.github_api_endpoint=API 끝점
config.not_set=(not set) config.not_set=(설정되지 않음)
config.server_config=서버 설정 config.server_config=서버 설정
config.app_name=애플리케이션 이름 config.brand_name=브랜드 이름
config.app_ver=응용 프로그램 버전
config.app_url=애플리케이션 URL
config.domain=도메인
config.offline_mode=오프라인 모드
config.disable_router_log=라우터 로그 비활성화
config.run_user=데몬 실행 계정 config.run_user=데몬 실행 계정
config.run_mode=실행 모드 config.run_mode=실행 모드
config.git_version=Git 버전 config.server.external_url=외부 URL
config.static_file_root_path=정적 파일 최상위 경로 config.server.domain=도메인
config.log_file_root_path=로그 파일 최상위 경로 config.server.protocol=프로토콜
config.reverse_auth_user=역방향 사용자 인증 config.server.http_addr=HTTP 주소
config.server.http_port=HTTP 포트
config.server.cert_file=인증서 파일
config.server.key_file=키 파일
config.server.tls_min_version=최소 TLS 버전
config.server.unix_socket_permission=Unix 소켓 권한
config.server.local_root_url=로컬 최상위 URL
config.server.offline_mode=오프라인 모드
config.server.disable_router_log=라우터 로그 비활성화
config.server.enable_gzip=Gzip 활성화
config.server.app_data_path=애플리케이션 데이터 경로
config.server.load_assets_from_disk=디스크에서 요소 불러오기
config.server.landing_url=랜딩 URL
config.ssh_config=SSH 설정 config.ssh_config=SSH 설정
config.ssh_enabled=활성화됨 config.ssh.enabled=활성화됨
config.ssh_start_builtin_server=빌트인 서버 시작 config.ssh.domain=노출된 도메인
config.ssh_domain=도메인 config.ssh.port=노출 포트
config.ssh_port=포트 config.ssh.root_path=최상위 경로
config.ssh_listen_port=수신 대기 포트 config.ssh.keygen_path=키 생성 경로
config.ssh_root_path=최상위 경로 config.ssh.key_test_path=키 테스트 경로
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=최소 키 크기 검사
config.ssh_key_test_path=주 테스트 경로 config.ssh.minimum_key_sizes=최소 키 사이즈
config.ssh_keygen_path=키 생성 ('ssh-keygen') 경로 config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=최소 키 사이즈 검사 config.ssh.start_builtin_server=빌트인 서버 시작
config.ssh_minimum_key_sizes=최소 키 사이즈 config.ssh.listen_host=수신 대기 호스트
config.ssh.listen_port=수신 대기 포트
config.ssh.server_ciphers=서버 암호화
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repository Configuration config.repo_config=저장소 설정
config.repo_root_path=저장소 최상위 경로 config.repo.root_path=최상위 경로
config.script_type=스크립트 유형 config.repo.script_type=스크립트 유형
config.repo_force_private=Force Private config.repo.ansi_chatset=ANSI 문자열
config.max_creation_limit=Max Creation Limit config.repo.force_private=비공개 강제
config.preferred_licenses=Preferred Licenses config.repo.max_creation_limit=최대 생성 제한
config.disable_http_git=Disable HTTP Git config.repo.preferred_licenses=선호 라이선스
config.enable_local_path_migration=Enable Local Path Migration config.repo.disable_http_git=HTTP Git 비활성화
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=로컬 경로 마이그레이션 활성화
config.repo.enable_raw_file_render_mode=raw 파일 렌더링 모드 활성화
config.http_config=HTTP 설정 config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=편집기 줄 바꿈 확장
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=업로드 활성화됨
config.repo.upload.temp_path=임시 경로 업로드
config.repo.upload.allowed_types=허용되는 유형 업로드
config.repo.upload.file_max_size=업로드 파일 크기 제한
config.repo.upload.max_files=업로드 파일 제한
config.db_config=데이터베이스 설정 config.db_config=데이터베이스 설정
config.db_type=유형 config.db.type=유형
config.db_host=호스트 config.db.host=호스트
config.db_name=이름 config.db.name=이름
config.db_user=사용자 config.db.schema=스키마
config.db_ssl_mode=SSL 모드 config.db.schema_helper=("postgres" 전용)
config.db_ssl_mode_helper=("postgres" 전용) config.db.user=사용자
config.db_path=경로 config.db.ssl_mode=SSL 모드
config.db_path_helper=("sqlite3" 및 "tidb"만) config.db.ssl_mode_helper=("postgres" 전용)
config.db.path=경로
config.db.path_helper={"sqlite3" 전용)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=서비스 설정 config.security_config=보안 설정
config.register_email_confirm=이메일 확인 필수 config.security.login_remember_days=로그인 기억 날짜
config.disable_register=등록 비활성화 config.security.cookie_remember_name=쿠키 기억하기
config.show_registration_button=등록 버튼을 표시 config.security.cookie_username=사용자 이름 쿠키
config.require_sign_in_view=보기 위해선 로그인 필수 config.security.cookie_secure=보안 쿠키 활성화
config.mail_notify=메일 알림 config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=최소 키 크기 검사를 비활성화 config.security.enable_login_status_cookie=로그인 상태 쿠키 활성화
config.enable_captcha=Captcha 활성화 config.security.login_status_cookie_name=로그인 상태 쿠키
config.active_code_lives=코드 만료 기한 config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=비밀번호 코드 만료 기한
config.webhook_config=웹훅 설정 config.email_config=이메일 설정
config.queue_length=큐 길이 config.email.enabled=활성화됨
config.deliver_timeout=시간 제한 사용 config.email.subject_prefix=제목 접두어
config.skip_tls_verify=TLS 확인 건너뛰기 config.email.host=호스트
config.email.from=보내는 사람
config.email.user=사용자
config.email.disable_helo=HELO 비활성화
config.email.helo_hostname=HELO 호스트 이름
config.email.skip_verify=인증서 검증 건너뛰기
config.email.use_certificate=커스텀 인증서 사용하기
config.email.cert_file=인증서 파일
config.email.key_file=키 파일
config.email.use_plain_text=평문 텍스트 사용
config.email.add_plain_text_alt=평문 텍스트 대체 추가
config.email.send_test_mail=테스트 이메일 보내기
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent='%s'로 테스트 이메일을 보냈습니다.
config.mailer_config=메일러 설정 config.auth_config=Authentication configuration
config.mailer_enabled=활성화됨 config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=HELO 비활성화 config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=호스트 config.auth.require_email_confirm=이메일 인증 필요
config.mailer_user=사용자 config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=테스트 이메일 보내기 config.auth.disable_registration=등록 비활성화
config.test_mail_failed='%s'로 테스트 이메일을 보내는데 실패하였습니다.: %v config.auth.enable_registration_captcha=등록시 CAPTCHA 사용
config.test_mail_sent='%s'로 테스트 이메일을 보냈습니다. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=OAuth 설정 config.user_config=User configuration
config.oauth_enabled=활성화 config.user.enable_email_notify=이메일 알림 활성화
config.cache_config=캐시 설정
config.cache_adapter=캐시 어댑터
config.cache_interval=캐시 간격
config.cache_conn=캐시 연결
config.session_config=세션 설정 config.session_config=세션 설정
config.session_provider=세션 공급자 config.session.provider=공급자
config.provider_config=공급자 설정 config.session.provider_config=공급자 설정
config.cookie_name=쿠키 이름 config.session.cookie_name=쿠키
config.enable_set_cookie=쿠키 활성화 config.session.https_only=HTTPS만
config.gc_interval_time=GC 인터벌 시 config.session.gc_interval=GC 간
config.session_life_time=세션 수명 config.session.max_life_time=Max life time
config.https_only=HTTPS만 config.session.csrf_cookie_name=CSRF 쿠키
config.cookie_life_time=쿠키 수명
config.cache_config=캐시 설정
config.cache.adapter=Adapter
config.cache.interval=GC 간격
config.cache.host=호스트
config.http_config=HTTP 설정
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=첨부 파일 설정
config.attachment.enabled=활성화됨
config.attachment.path=경로
config.attachment.allowed_types=허용 유형
config.attachment.max_size=크기 제한
config.attachment.max_files=파일 제한
config.release_config=릴리즈 설정
config.release.attachment.enabled=첨부 파일 활성화됨
config.release.attachment.allowed_types=허용되는 첨부 파일 유형
config.release.attachment.max_size=첨부 파일 크기 제한
config.release.attachment.max_files=첨부 파일 제한
config.picture_config=이미지 설정 config.picture_config=이미지 설정
config.picture_service=이미지 서비스 config.picture.avatar_upload_path=사용자 아바타 업로드 경로
config.disable_gravatar=Gravatar 사용안함 config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=연합 아바타 사용 config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Gravatar 비활성화
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=미러 설정
config.mirror.default_interval=기본 간격
config.webhook_config=웹훅 설정
config.webhook.types=유형
config.webhook.deliver_timeout=배달 제한 시간
config.webhook.skip_tls_verify=TLS 검증 건너뛰기
config.git_config=깃 설정 config.git_config=깃 설정
config.git_disable_diff_highlight=변경 사항 구문 강조 비활성화 config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=변경사항 최대 표시 줄 수 (단일 파일에 대해) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=변경사항 최대 표시 문자 수 (단일 행에 대해) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=변경사항 최대 파일 개 수 (표시 되는) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=가비지 콜렉션 인수 config.git.gc_args=GC 인수
config.git_migrate_timeout=마이그레이션 제한 시간 config.git.migrate_timeout=마이그레이션 제한 시간
config.git_mirror_timeout=미러 업데이트 시간 제한 config.git.mirror_timeout=미러 페치 제한 시간
config.git_clone_timeout=복제 작업 시간 제한 config.git.clone_timeout=클론 제한 시간
config.git_pull_timeout=끌어오기 작업 시간 제한 config.git.pull_timeout=풀 제한 시간
config.git_gc_timeout=가비지 콜렉션 작업 시간 제한 config.git.gc_timeout=GC 제한 시간
config.lfs_config=LFS 구성
config.lfs.storage=저장소
config.lfs.objects_path=Objects path
config.log_config=로그 설정 config.log_config=로그 설정
config.log_mode=Mode config.log_file_root_path=로그 파일 최상위 경로
config.log_options=Options config.log_mode=모드
config.log_options=설정
monitor.cron=Cron 작업 monitor.cron=Cron 작업
monitor.name=이름 monitor.name=이름
@@ -1285,7 +1385,6 @@ notices.delete_success=시스템 알림들이 성공적으로 삭제되었습니
[action] [action]
create_repo=저장소를 만들었습니다. <a href="%s">%s</a> create_repo=저장소를 만들었습니다. <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=<code>%[1]s에서</code>에서 <a href="%[2]s"> %[3]s</a>으로 저장소 이름을 바꾸었습니다. rename_repo=<code>%[1]s에서</code>에서 <a href="%[2]s"> %[3]s</a>으로 저장소 이름을 바꾸었습니다.
commit_repo=<a href="%[1]s">%[4]s</a>에서 <a href="%[1]s/src/%[2]s">%[3]s</a>으로 푸시함 commit_repo=<a href="%[1]s">%[4]s</a>에서 <a href="%[1]s/src/%[2]s">%[3]s</a>으로 푸시함
compare_commits=이 %d개의 커밋에 대한 비교 보기 compare_commits=이 %d개의 커밋에 대한 비교 보기
@@ -1301,7 +1400,11 @@ merge_pull_request=`병합된 끌어오기 요청 <a href="%s/pulls/%s"> %s #%[2
create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a>
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=태그 <a href="%s/src/%s">%[2]s</a>를 <a href="%[1]s">%[3]s</a>로 푸시함 push_tag=태그 <a href="%s/src/%s">%[2]s</a>를 <a href="%[1]s">%[3]s</a>로 푸시함
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=<a href="%[1]s">%[3]s</a>에서 code>%[2]s</code> 태그 삭제됨
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago= ago=
@@ -1323,6 +1426,7 @@ months=%d 달 %s
years=%d 년 %s years=%d 년 %s
raw_seconds= raw_seconds=
raw_minutes= raw_minutes=
raw_hours=시간
[dropzone] [dropzone]
default_message=여기에 파일을 끌어 놓거나 클릭하여 업로드하세요. default_message=여기에 파일을 끌어 놓거나 클릭하여 업로드하세요.

View File

@@ -9,7 +9,6 @@ sign_out=Izrakstīties
sign_up=Reģistrēties sign_up=Reģistrēties
register=Reģistrēties register=Reģistrēties
website=Mājas lapa website=Mājas lapa
version=Versija
page=Lapa page=Lapa
template=Sagatave template=Sagatave
language=Valoda language=Valoda
@@ -44,17 +43,22 @@ issues=Problēmas
cancel=Atcelt cancel=Atcelt
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install] [install]
install=Instalācija install=Instalācija
title=Instalācijas soļi pirmo reizi palaižot title=Instalācijas soļi pirmo reizi palaižot
docker_helper=Ja Gogs tiek lietots zem Docker, izlasiet uzmanīgi <a target="_blank" href="%s">vadlīnijas</a>, pirms ko maināt šajā lapā! docker_helper=Ja Gogs tiek lietots zem Docker, izlasiet uzmanīgi <a target="_blank" href="%s">vadlīnijas</a>, pirms ko maināt šajā lapā!
requite_db_desc=Gogs ir nepieciešams MySQL, PostgreSQL, SQLite3, MSSQL vai TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Datu bāzes iestatījumi db_title=Datu bāzes iestatījumi
db_type=Datu bāzes veids db_type=Datu bāzes veids
host=Resursdators host=Resursdators
user=Lietotājs user=Lietotājs
password=Parole password=Parole
db_name=Datu bāzes nosaukums db_name=Datu bāzes nosaukums
db_schema=Schema
db_helper=Nepieciešams izmantot MySQL INNODB dzini ar rakstzīmju kopu utf8_general_ci. db_helper=Nepieciešams izmantot MySQL INNODB dzini ar rakstzīmju kopu utf8_general_ci.
ssl_mode=SSL režīms ssl_mode=SSL režīms
path=Ceļš path=Ceļš
@@ -84,6 +88,7 @@ log_root_path=Žurnalizēšanas direktorija
log_root_path_helper=Direktorija, kurā tiks glabāti žurnāla faili. log_root_path_helper=Direktorija, kurā tiks glabāti žurnāla faili.
enable_console_mode=Iespējot konsoles režīmu enable_console_mode=Iespējot konsoles režīmu
enable_console_mode_popup=Papildus faila režīmam, papildus rakstīt žurnāla ierakstus konsolē. enable_console_mode_popup=Papildus faila režīmam, papildus rakstīt žurnāla ierakstus konsolē.
default_branch=Default Branch
optional_title=Neobligātie iestatījumi optional_title=Neobligātie iestatījumi
email_title=E-pasta pakalpojuma iestatījumi email_title=E-pasta pakalpojuma iestatījumi
@@ -119,9 +124,10 @@ sqlite3_not_available=Jūsu versija neatbalsta SQLite3, lūdzu lejupielādējiet
invalid_db_setting=Datu bāzes iestatījums nav pareizs: %v invalid_db_setting=Datu bāzes iestatījums nav pareizs: %v
invalid_repo_path=Repozitorija atrašanās vieta ir nekorekta: %v invalid_repo_path=Repozitorija atrašanās vieta ir nekorekta: %v
run_user_not_match=Izpildes lietotājs nav pašreizējais lietotājs: %s -> %s run_user_not_match=Izpildes lietotājs nav pašreizējais lietotājs: %s -> %s
smtp_host_missing_port=SMTP Host is missing port in address. smtp_host_missing_port=SMTP adresē nav norādīts ports.
invalid_smtp_from=SMTP sūtītāja lauks ir nekorekts: %v invalid_smtp_from=SMTP sūtītāja lauks ir nekorekts: %v
save_config_failed=Neizdevās saglabāt konfigurāciju: %v save_config_failed=Neizdevās saglabāt konfigurāciju: %v
init_failed=Failed to initialize application: %v
invalid_admin_setting=Nekorekts admin konta iestatījums: %v invalid_admin_setting=Nekorekts admin konta iestatījums: %v
install_success=Laipni lūdzam! Mēs priecājamies, ka Jūs izvēlaties Gogs, patīkamu lietošanu! install_success=Laipni lūdzam! Mēs priecājamies, ka Jūs izvēlaties Gogs, patīkamu lietošanu!
invalid_log_root_path=Norādītā žurnalizēšanas direktorija ir kļūdaina: %v invalid_log_root_path=Norādītā žurnalizēšanas direktorija ir kļūdaina: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Jau ir konts? Pieraksties tagad!
social_register_hepler_msg=Jau ir konts? Sasaisti tagad! social_register_hepler_msg=Jau ir konts? Sasaisti tagad!
disable_register_prompt=Atvainojiet, reģistrācija ir atspējota. Lūdzu, sazinieties ar vietnes administratoru. disable_register_prompt=Atvainojiet, reģistrācija ir atspējota. Lūdzu, sazinieties ar vietnes administratoru.
disable_register_mail=Atvainojiet, reģistrācijas e-pasta apstiprināšana ir atspējota. disable_register_mail=Atvainojiet, reģistrācijas e-pasta apstiprināšana ir atspējota.
auth_source=Autentificēšanas avots
local=Local
remember_me=Atcerēties mani remember_me=Atcerēties mani
forgot_password=Aizmirsu paroli forgot_password=Aizmirsu paroli
forget_password=Aizmirsi paroli? forget_password=Aizmirsi paroli?
@@ -212,7 +220,7 @@ Content=Saturs
require_error=` nedrīkst būt tukšs.` require_error=` nedrīkst būt tukšs.`
alpha_dash_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus vai domuzīmes (-_).` alpha_dash_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus vai domuzīmes (-_).`
alpha_dash_dot_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus, domuzīmes (-_) vai punktu.` alpha_dash_dot_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus, domuzīmes (-_) vai punktu.`
alpha_dash_dot_slash_error=` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus, domuzīmes (-_), slīpsvītru vai punktu.`
size_error=` jābūt %s simbolus garam.` size_error=` jābūt %s simbolus garam.`
min_size_error=` jabūt vismaz %s simbolu garumā.` min_size_error=` jabūt vismaz %s simbolu garumā.`
max_size_error=` jabūt ne mazāk kā %s simbolu garumā.` max_size_error=` jabūt ne mazāk kā %s simbolu garumā.`
@@ -229,6 +237,7 @@ org_name_been_taken=Organizācijas nosaukums ir jau aizņemts.
team_name_been_taken=Komandas nosaukums ir jau aizņemts. team_name_been_taken=Komandas nosaukums ir jau aizņemts.
email_been_used=E-pasta adrese jau tiek izmantota. email_been_used=E-pasta adrese jau tiek izmantota.
username_password_incorrect=Lietotājvārds vai parole nav pareiza. username_password_incorrect=Lietotājvārds vai parole nav pareiza.
auth_source_mismatch=Izvēlētais autentificēšanas avots nav saistīts ar lietotāju.
enterred_invalid_repo_name=Lūdzu, pārliecinieties, vai ievadītā repozitorija nosaukums ir pareizs. enterred_invalid_repo_name=Lūdzu, pārliecinieties, vai ievadītā repozitorija nosaukums ir pareizs.
enterred_invalid_owner_name=Lūdzu, pārliecinieties, vai ievadītā īpašnieka vārds ir pareizs. enterred_invalid_owner_name=Lūdzu, pārliecinieties, vai ievadītā īpašnieka vārds ir pareizs.
enterred_invalid_password=Lūdzu pārliecinieties, vai Jūsu ievadītā parole ir pareiza. enterred_invalid_password=Lūdzu pārliecinieties, vai Jūsu ievadītā parole ir pareiza.
@@ -256,8 +265,7 @@ following=Seko
follow=Sekot follow=Sekot
unfollow=Nesekot unfollow=Nesekot
form.name_reserved=Lietotāja vārds '%s' jau ir aizņemts. form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=Lietotāja vārds '%s' nav atļauts.
[settings] [settings]
profile=Profils profile=Profils
@@ -309,6 +317,7 @@ delete_email=Dzēst
email_deletion=E-pasta dzēšana email_deletion=E-pasta dzēšana
email_deletion_desc=Dzēšot šo e-pasta adresi, tiks dzēsta arī visa ar to saistītā informācija no Jūsu konta. Vai vēlaties turpināt? email_deletion_desc=Dzēšot šo e-pasta adresi, tiks dzēsta arī visa ar to saistītā informācija no Jūsu konta. Vai vēlaties turpināt?
email_deletion_success=E-pasta adrese ir veiksmīgi izdzēsta! email_deletion_success=E-pasta adrese ir veiksmīgi izdzēsta!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Pievienot jaunu e-pasta adresi add_new_email=Pievienot jaunu e-pasta adresi
add_email=Pievienot e-pastu add_email=Pievienot e-pastu
add_email_confirmation_sent=Jauns apstiprinājuma e-pasts tika nosūtīts uz '%s', pārbaudiet savu e-pastu tuvāko %d stundu laikā, lai pabeigtu apstiprināšanas procesu. add_email_confirmation_sent=Jauns apstiprinājuma e-pasts tika nosūtīts uz '%s', pārbaudiet savu e-pastu tuvāko %d stundu laikā, lai pabeigtu apstiprināšanas procesu.
@@ -347,8 +356,9 @@ two_factor_scan_qr=Please use your authentication application to scan the image:
two_factor_or_enter_secret=Vai ievadiet noslēpumu: two_factor_or_enter_secret=Vai ievadiet noslēpumu:
two_factor_then_enter_passcode=Pēc tam ievadiet kodu: two_factor_then_enter_passcode=Pēc tam ievadiet kodu:
two_factor_verify=Pārbaudīt two_factor_verify=Pārbaudīt
two_factor_invalid_passcode=The passcode you entered is not valid, please try again! two_factor_invalid_passcode=Ievadītais piekļuves kods nav derīgs. Lūdzu mēģiniet vēlreiz!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_reused_passcode=Ievadītais piekļuves kods jau ir izmantots. Lūdzu mēģiniet citu!
two_factor_enable_error=Divu faktoru autentifikācijas iespējošana neizdevās: %v
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_success=Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes
two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>. two_factor_recovery_codes_desc=Recovery codes are used when you temporarily lose access to your authentication application. Each recovery code can only be used once, <b>please keep these codes in a safe place</b>.
@@ -357,11 +367,12 @@ two_factor_regenerate_recovery_codes_error=Regenerate recovery codes failed: %v
two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully! two_factor_regenerate_recovery_codes_success=New recovery codes has been generated successfully!
two_factor_disable_title=Atspējot divu faktoru autentifikāciju two_factor_disable_title=Atspējot divu faktoru autentifikāciju
two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue? two_factor_disable_desc=Your account security level will decrease after disabled two-factor authentication. Do you want to continue?
two_factor_disable_success=Two-factor authentication has disabled successfully! two_factor_disable_success=Divu faktoru autentificēšana ir atspējota!
manage_access_token=Pārvaldīt personīgos piekļuves talonus manage_access_token=Pārvaldīt personīgos piekļuves talonus
generate_new_token=Ģenerēt jaunu talonu generate_new_token=Ģenerēt jaunu talonu
tokens_desc=Taloni, kurus esat uzģenerējuši, kas var tikt izmantoti, lai piekļūtu Gogs API. tokens_desc=Taloni, kurus esat uzģenerējuši, kas var tikt izmantoti, lai piekļūtu Gogs API.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Pašlaik visiem taloniem ir pilna piekļuve Jūsu kontam. new_token_desc=Pašlaik visiem taloniem ir pilna piekļuve Jūsu kontam.
token_name=Talona nosaukums token_name=Talona nosaukums
generate_token=Ģenerēt talonu generate_token=Ģenerēt talonu
@@ -370,8 +381,9 @@ delete_token=Dzēst
access_token_deletion=Personīgā piekļuves talona dzēšana access_token_deletion=Personīgā piekļuves talona dzēšana
access_token_deletion_desc=Dzēšot personīgo piekļuves talonu, tiks liegta piekļuve aplikācijām, kas to izmanto. Vai vēlaties turpināt? access_token_deletion_desc=Dzēšot personīgo piekļuves talonu, tiks liegta piekļuve aplikācijām, kas to izmanto. Vai vēlaties turpināt?
delete_token_success=Personīgās piekļuves talons veiksmīgi izdzēsts! Neaizmirstiet nomainīt uz citu aplikācijās, kas to izmantoja. delete_token_success=Personīgās piekļuves talons veiksmīgi izdzēsts! Neaizmirstiet nomainīt uz citu aplikācijās, kas to izmantoja.
token_name_exists=Token with same name already exists.
orgs.none=You are not a member of any organizations. orgs.none=Jūs neesat nevienas organizācijas dalībnieks.
orgs.leave_title=Pamest organizāciju orgs.leave_title=Pamest organizāciju
orgs.leave_desc=You will lose access to all repositories and teams after you left the organization. Do you want to continue? orgs.leave_desc=You will lose access to all repositories and teams after you left the organization. Do you want to continue?
@@ -391,7 +403,9 @@ owner=Īpašnieks
repo_name=Repozitorija nosaukums repo_name=Repozitorija nosaukums
repo_name_helper=Labi repzotoriju nosaukumi ir īsi, tādi kurus viegli atcerēties un <strong>unikāli</strong>. repo_name_helper=Labi repzotoriju nosaukumi ir īsi, tādi kurus viegli atcerēties un <strong>unikāli</strong>.
visibility=Redzamība visibility=Redzamība
unlisted=Unlisted
visiblity_helper=Šis repozitorijs ir <span class="ui red text">privāts</span> visiblity_helper=Šis repozitorijs ir <span class="ui red text">privāts</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Lapas administrators ir noteicis, ka visiem repozitorijiem ir jābūt <span class="ui red text">privātiem</span> visiblity_helper_forced=Lapas administrators ir noteicis, ka visiem repozitorijiem ir jābūt <span class="ui red text">privātiem</span>
visiblity_fork_helper=(Šīs vērtības maiņa ietekmēs arī visus atdalītos repozitorijus) visiblity_fork_helper=(Šīs vērtības maiņa ietekmēs arī visus atdalītos repozitorijus)
clone_helper=Nepieciešama palīdzība kā veikt klonēšana? Apmeklējiet <a target="_blank" href="%s">Palīdzība</a> lapu! clone_helper=Nepieciešama palīdzība kā veikt klonēšana? Apmeklējiet <a target="_blank" href="%s">Palīdzība</a> lapu!
@@ -417,10 +431,11 @@ mirror_last_synced=Pēdējo reizi sinhronizēts
watchers=Novērotāji watchers=Novērotāji
stargazers=Zvaigžņdevēji stargazers=Zvaigžņdevēji
forks=Atdalītie repozitoriji forks=Atdalītie repozitoriji
repo_description_helper=Repozitorija apraksts. Maksimālais garums 512 rakstzīmes.
repo_description_length=Pieejamās rakstzīmes
form.reach_limit_of_creation=Īpašnieks sasniedza maksimālu pieļaujamo (%d) izveidoto repozitoriju skaitu. form.reach_limit_of_creation=Īpašnieks sasniedza maksimālu pieļaujamo (%d) izveidoto repozitoriju skaitu.
form.name_reserved=Repozitorija nosaukums '%s' ir rezervēts. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Repozitorija nosaukums '%s' nav atļauts.
need_auth=Nepieciešama autorizācija need_auth=Nepieciešama autorizācija
migrate_type=Migrācijas veids migrate_type=Migrācijas veids
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Tas var būt HTTP/HTTPS/GIT URL.
migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path. migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path.
migrate.permission_denied=Jums nav tiesību importēt lokālu repozitoriju. migrate.permission_denied=Jums nav tiesību importēt lokālu repozitoriju.
migrate.invalid_local_path=Nekorents lokālais ceļš, tas neeksistē vai nav direktorijs. migrate.invalid_local_path=Nekorents lokālais ceļš, tas neeksistē vai nav direktorijs.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migrācija neizdevās: %v migrate.failed=Migrācija neizdevās: %v
mirror_from=spogulis no mirror_from=spogulis no
@@ -470,14 +486,16 @@ file_history=Vēsture
file_view_raw=Rādīt neapstrādātu file_view_raw=Rādīt neapstrādātu
file_permalink=Patstāvīgā saite file_permalink=Patstāvīgā saite
file_too_large=Šis fails ir par lielu, lai to parādītu file_too_large=Šis fails ir par lielu, lai to parādītu
video_not_supported_in_browser=Your browser doesn't support HTML5 video tag. video_not_supported_in_browser=Jūsu pārlūks neatbalsta HTML5 video.
branches.overview=Pārskats branches.overview=Pārskats
branches.active_branches=Aktīvie atzari branches.active_branches=Aktīvie atzari
branches.stale_branches=Pamests atzars branches.stale_branches=Pamests atzars
branches.all=Visi atzari branches.all=Visi atzari
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=%[2]s atjaunoja %[1]s
branches.change_default_branch=Mainīt noklusēto atzaru branches.change_default_branch=Mainīt noklusēto atzaru
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Jauns fails editor.new_file=Jauns fails
editor.upload_file=Augšupielādēt failu editor.upload_file=Augšupielādēt failu
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Faila saturs ir mainījies kopš brīža, kad
editor.file_already_exists=Fails ar nosaukumu '%s' repozitorijā jau eksistē. editor.file_already_exists=Fails ar nosaukumu '%s' repozitorijā jau eksistē.
editor.no_changes_to_show=Nav izmaiņu, ko rādīt. editor.no_changes_to_show=Nav izmaiņu, ko rādīt.
editor.fail_to_update_file=Neizdevās izmainīt/izveidot failu '%s', kļūda: %v editor.fail_to_update_file=Neizdevās izmainīt/izveidot failu '%s', kļūda: %v
editor.fail_to_delete_file=Neizdevās dzēst failu '%s', kļūda: %v
editor.add_subdir=Pievienot apakšdirektoriju... editor.add_subdir=Pievienot apakšdirektoriju...
editor.unable_to_upload_files=Neizdevās augšupielādēt failus uz direktoriju '%s', kļūda: %v editor.unable_to_upload_files=Neizdevās augšupielādēt failus uz direktoriju '%s', kļūda: %v
editor.upload_files_to_dir=Augšupielādēt failus uz direktoriju '%s' editor.upload_files_to_dir=Augšupielādēt failus uz direktoriju '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Šis izmaiņu pieprasījums nevar tikt automātiski
pulls.cannot_auto_merge_helper=Lūdzu sapludiniet manuāli, lai atrisinātu konfliktus. pulls.cannot_auto_merge_helper=Lūdzu sapludiniet manuāli, lai atrisinātu konfliktus.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=Izmaiņu pieprasījuma sapludināšana pulls.merge_pull_request=Izmaiņu pieprasījuma sapludināšana
pulls.open_unmerged_pull_exists=`Jūs nevarat veikt atkārtotas atvēršanas darbību, jo jau eksistē izmaiņu pieprasījums (#%d) no šī repozitorija ar tādu pašu sapludināšanas informāciju un gaida sapludināšanu.` pulls.open_unmerged_pull_exists=`Jūs nevarat veikt atkārtotas atvēršanas darbību, jo jau eksistē izmaiņu pieprasījums (#%d) no šī repozitorija ar tādu pašu sapludināšanas informāciju un gaida sapludināšanu.`
pulls.delete_branch=Dzēst atzaru pulls.delete_branch=Dzēst atzaru
@@ -738,8 +758,8 @@ settings.tracker_issue_style=Ārējā problēmu reģistra nosaukumu stils:
settings.tracker_issue_style.numeric=Cipari settings.tracker_issue_style.numeric=Cipari
settings.tracker_issue_style.alphanumeric=Burti un cipari settings.tracker_issue_style.alphanumeric=Burti un cipari
settings.tracker_url_format_desc=Jūs varat izmantot <code>{user}{repo}{index}</code> lietotājvārdam, repozitorija nosaukumam un problēmas identifikātoram. settings.tracker_url_format_desc=Jūs varat izmantot <code>{user}{repo}{index}</code> lietotājvārdam, repozitorija nosaukumam un problēmas identifikātoram.
settings.pulls_desc=Iespējot izmaiņu pieprasījumus lai saņemtu publiskus ieguldījumus settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignorēt atstarpju izmaiņas
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Bīstamā zona settings.danger_zone=Bīstamā zona
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner. settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner.
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Repozitorija Vikivietnes dati tika veiksmīgi izd
settings.delete=Dzēst šo repozitoriju settings.delete=Dzēst šo repozitoriju
settings.delete_desc=Dzēšot repozitoriju, tā datus vairs nebūs iespējams atgūt. Pirms dzēšanas pārliecinieites vai patiešām vēlaties to darīt. settings.delete_desc=Dzēšot repozitoriju, tā datus vairs nebūs iespējams atgūt. Pirms dzēšanas pārliecinieites vai patiešām vēlaties to darīt.
settings.delete_notices_1=- Šī darbība ir <strong>NEATGRIEZENISKA</strong>. settings.delete_notices_1=- Šī darbība ir <strong>NEATGRIEZENISKA</strong>.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Šī darbība neatgriezeniski izdzēsīs visus šī repozitorija datus, tai skaitā Git datus, problēmu ziņojumus, komentārus un definētās piekļuves tiesības.
settings.delete_notices_fork_1=- Visi atdalītie repozitoriji kļūs neatkarīgi pēc dzēšanas. settings.delete_notices_fork_1=- Visi atdalītie repozitoriji kļūs neatkarīgi pēc dzēšanas.
settings.deletion_success=Repozitorijs tika veiksmīgi dzēsts! settings.deletion_success=Repozitorijs tika veiksmīgi dzēsts!
settings.update_settings_success=Repozitorija opcijas ir veiksmīgi saglabātas. settings.update_settings_success=Repozitorija opcijas ir veiksmīgi saglabātas.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Šim lietotājam pēc dzēšanas vairs nebū
settings.remove_collaborator_success=Līdzstrādnieks tika noņemts. settings.remove_collaborator_success=Līdzstrādnieks tika noņemts.
settings.search_user_placeholder=Meklēt lietotāju... settings.search_user_placeholder=Meklēt lietotāju...
settings.org_not_allowed_to_be_collaborator=Organizāciju nav atļauts pievienot kā līdzstrādnieku. settings.org_not_allowed_to_be_collaborator=Organizāciju nav atļauts pievienot kā līdzstrādnieku.
settings.add_webhook=Pievienot tīmekļa āķi
settings.hooks_desc=Tīmekļa āķi ļauj paziņot ārējiem servisiem par noteiktiem notikomiem, kas notiek Git servisā. Kad iestāsies kāds notikums, katram ārējā servisa URL tiks nosūtīts POST pieprasījums. Lai uzzinātu sīkāk skatieties <a target="_blank" href="%s">Tīmekļa āķu rokasgrāmatā</a>. settings.hooks_desc=Tīmekļa āķi ļauj paziņot ārējiem servisiem par noteiktiem notikomiem, kas notiek Git servisā. Kad iestāsies kāds notikums, katram ārējā servisa URL tiks nosūtīts POST pieprasījums. Lai uzzinātu sīkāk skatieties <a target="_blank" href="%s">Tīmekļa āķu rokasgrāmatā</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Pievienot tīmekļa āķi
settings.webhook_deletion=Dzēst tīmekļa āķi settings.webhook_deletion=Dzēst tīmekļa āķi
settings.webhook_deletion_desc=Dzēšot tīmekļa āķi tiks dzēsta visa ar to saistītā informācija un izpildes vēsture. Vai vēlaties turpināt? settings.webhook_deletion_desc=Dzēšot tīmekļa āķi tiks dzēsta visa ar to saistītā informācija un izpildes vēsture. Vai vēlaties turpināt?
settings.webhook_deletion_success=Tīmekļa āķis tika veiksmīgi izdzēsts! settings.webhook_deletion_success=Tīmekļa āķis tika veiksmīgi izdzēsts!
@@ -792,6 +814,8 @@ settings.webhook.response=Atbilde
settings.webhook.headers=Galvenes settings.webhook.headers=Galvenes
settings.webhook.payload=Derīgā krava settings.webhook.payload=Derīgā krava
settings.webhook.body=Saturs settings.webhook.body=Saturs
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git āķus apstrādā pats Git. Jūs varat labot atbalsīto āku failus sarakstā zemāk, lai veiktu pielāgotas darbības. settings.githooks_desc=Git āķus apstrādā pats Git. Jūs varat labot atbalsīto āku failus sarakstā zemāk, lai veiktu pielāgotas darbības.
settings.githook_edit_desc=Ja āķis nav aktīvs, tiks attēlots piemērs kā to izmantot. Atstājot āķa saturu tukšu, tas tiks atspējots. settings.githook_edit_desc=Ja āķis nav aktīvs, tiks attēlots piemērs kā to izmantot. Atstājot āķa saturu tukšu, tas tiks atspējots.
settings.githook_name=Āķa nosaukums settings.githook_name=Āķa nosaukums
@@ -819,10 +843,10 @@ settings.event_push=Izmaiņu nosūtīšana
settings.event_push_desc=Git izmaiņu nosūtīšana uz repozitoriju settings.event_push_desc=Git izmaiņu nosūtīšana uz repozitoriju
settings.event_issues=Problēmas settings.event_issues=Problēmas
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Problēmas komentārs
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Izmaiņu pieprasījums settings.event_pull_request=Izmaiņu pieprasījums
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment=Problēmas komentārs
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Laidiens settings.event_release=Laidiens
settings.event_release_desc=Laidiens publicēts repozitorijā. settings.event_release_desc=Laidiens publicēts repozitorijā.
settings.active=Aktīvs settings.active=Aktīvs
@@ -852,6 +876,8 @@ settings.add_key_success=Izvietošanas atslēga '%s' tik veiksmīgi pievienota!
settings.deploy_key_deletion=Dzēst izvietošanas atslēgu settings.deploy_key_deletion=Dzēst izvietošanas atslēgu
settings.deploy_key_deletion_desc=Dzēšot šo izvietošanas atslēgu tiks noņemta arī ar to saistītā piekļuve šim repozitorijam. Vai vēlaties turpināt? settings.deploy_key_deletion_desc=Dzēšot šo izvietošanas atslēgu tiks noņemta arī ar to saistītā piekļuve šim repozitorijam. Vai vēlaties turpināt?
settings.deploy_key_deletion_success=Izvietošanas atslēga tika veiksmīgi izdzēsta! settings.deploy_key_deletion_success=Izvietošanas atslēga tika veiksmīgi izdzēsta!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Pārlūkot izejas kodu diff.browse_source=Pārlūkot izejas kodu
diff.parent=vecāks diff.parent=vecāks
@@ -916,9 +942,8 @@ team_name_helper=Šo nosaukumu varēs izmantot, lai pieminētu komandu sarunās.
team_desc_helper=Komandas apraksts team_desc_helper=Komandas apraksts
team_permission_desc=Kādām tiesībām šai komandai būtu jābūt? team_permission_desc=Kādām tiesībām šai komandai būtu jābūt?
form.name_reserved=Organizācijas nosaukums '%s' ir rezervēts. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Organizācijas nosaukums '%s' nav atļauts. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Komandas vārds '%s' ir rezervēts.
settings=Iestatījumi settings=Iestatījumi
settings.options=Opcijas settings.options=Opcijas
@@ -990,12 +1015,19 @@ first_page=Pirmā
last_page=Pēdējā last_page=Pēdējā
total=Kopā: %d total=Kopā: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git versija
dashboard.go_version=Go versija
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Statistika dashboard.statistic=Statistika
dashboard.operations=Darbības dashboard.operations=Darbības
dashboard.system_status=Sistēmas uzraudzības statuss dashboard.system_status=Sistēmas uzraudzības statuss
dashboard.statistic_info=Gogs datu bāze satur <b>%d</b> lietotājus, <b>%d</b> organizācijas, <b>%d</b> publiskās atslēgas, <b>%d</b> repozitorijus, <b>%d</b> vērošanas, <b>%d</b> atzīmētas zvaigznītes, <b>%d</b> darbības, <b>%d</b> piekļuves, <b>%d</b> problēmas, <b>%d</b> komentārus, <b>%d</b> sociālos kontus, <b>%d</b> sekošanas, <b>%d</b> spoguļošanas, <b>%d</b> izlaides, <b>%d</b> login sources, <b>%d</b> tīmekļa āķus, <b>%d</b> starpposmus, <b>%d</b> etiķetes, <b>%d</b> āķu uzdevumus, <b>%d</b> komandas, <b>%d</b> labotus uzdevumus, <b>%d</b> pielikumus. dashboard.statistic_info=Gogs datu bāze satur <b>%d</b> lietotājus, <b>%d</b> organizācijas, <b>%d</b> publiskās atslēgas, <b>%d</b> repozitorijus, <b>%d</b> vērošanas, <b>%d</b> atzīmētas zvaigznītes, <b>%d</b> darbības, <b>%d</b> piekļuves, <b>%d</b> problēmas, <b>%d</b> komentārus, <b>%d</b> sociālos kontus, <b>%d</b> sekošanas, <b>%d</b> spoguļošanas, <b>%d</b> izlaides, <b>%d</b> login sources, <b>%d</b> tīmekļa āķus, <b>%d</b> starpposmus, <b>%d</b> etiķetes, <b>%d</b> āķu uzdevumus, <b>%d</b> komandas, <b>%d</b> labotus uzdevumus, <b>%d</b> pielikumus.
dashboard.operation_name=Darbības nosaukums dashboard.operation_name=Darbības nosaukums
dashboard.operation_switch=Pārslēgt dashboard.operation_switch=Pārslēgt
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Palaist dashboard.operation_run=Palaist
dashboard.clean_unbind_oauth=Notīrīt nesaistītās OAuth biļetes dashboard.clean_unbind_oauth=Notīrīt nesaistītās OAuth biļetes
dashboard.clean_unbind_oauth_success=Visas nesaistītās OAuth biļetes tika veiksmīgi izdzēstas. dashboard.clean_unbind_oauth_success=Visas nesaistītās OAuth biļetes tika veiksmīgi izdzēstas.
@@ -1087,11 +1119,12 @@ repos.stars=Atzīmētās zvaigznītes
repos.issues=Problēmas repos.issues=Problēmas
repos.size=Izmērs repos.size=Izmērs
auths.auth_manage_panel=Autentifikācijas pārvaldības panelis auths.auth_sources=Authentication Sources
auths.new=Pievienot jaunu avotu auths.new=Pievienot jaunu avotu
auths.name=Nosaukums auths.name=Nosaukums
auths.type=Veids auths.type=Veids
auths.enabled=Iespējota auths.enabled=Iespējota
auths.default=Default
auths.updated=Atjaunināta auths.updated=Atjaunināta
auths.auth_type=Autentifikācijas tips auths.auth_type=Autentifikācijas tips
auths.auth_name=Autentifikācijas nosaukums auths.auth_name=Autentifikācijas nosaukums
@@ -1107,11 +1140,11 @@ auths.user_base=Lietotāja pamatnosacījumi
auths.user_dn=Lietotāja DN auths.user_dn=Lietotāja DN
auths.attribute_username=Lietotājvārda atribūts auths.attribute_username=Lietotājvārda atribūts
auths.attribute_username_placeholder=Atstājiet tukšu, lai izmantotu lietotājvārdu ar kuru autorizējaties. auths.attribute_username_placeholder=Atstājiet tukšu, lai izmantotu lietotājvārdu ar kuru autorizējaties.
auths.attribute_name=First Name Attribute auths.attribute_name=Vārda atribūts
auths.attribute_surname=Uzvārda atribūts auths.attribute_surname=Uzvārda atribūts
auths.attribute_mail=E-pasta atribūts auths.attribute_mail=E-pasta atribūts
auths.verify_group_membership=Verify group membership auths.verify_group_membership=Pārbaudīt grupas piederību
auths.group_search_base_dn=Group Search Base DN auths.group_search_base_dn=Grupas meklēšanas pamata DN
auths.group_filter=Group Filter auths.group_filter=Group Filter
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users auths.group_attribute_contain_user_list=Group Attribute Containing List of Users
auths.user_attribute_listed_in_group=User Attribute Listed in Group auths.user_attribute_listed_in_group=User Attribute Listed in Group
@@ -1128,9 +1161,9 @@ auths.enable_tls=Iespējot TLS šifrēšanu
auths.skip_tls_verify=Izlaist TLS verifikāciju auths.skip_tls_verify=Izlaist TLS verifikāciju
auths.pam_service_name=PAM servisa nosaukums auths.pam_service_name=PAM servisa nosaukums
auths.enable_auto_register=Iespējot automātisko reģistrāciju auths.enable_auto_register=Iespējot automātisko reģistrāciju
auths.tips=Padomi
auths.edit=Labot autentifikācijas iestatījumus auths.edit=Labot autentifikācijas iestatījumus
auths.activated=Autentifikācija ir aktivizēta auths.activated=Autentifikācija ir aktivizēta
auths.default_auth=This authentication is default login source
auths.new_success=Jauna autentifikācija '%s' tika veiksmīgi pievienota. auths.new_success=Jauna autentifikācija '%s' tika veiksmīgi pievienota.
auths.update_success=Autentifikācijas iestatījumi tika veiksmīgi saglabāti. auths.update_success=Autentifikācijas iestatījumi tika veiksmīgi saglabāti.
auths.update=Mainīt autentifikācijas iestatījumus auths.update=Mainīt autentifikācijas iestatījumus
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Šī autentifikācija tiks dzēsta, vai vēlaties turpin
auths.still_in_used=Daži lietotāji joprojām izmanto šo autentifikācijas veidu. Nepieciešams veikt šo lietotāju konvertāciju vai dzēšanu. auths.still_in_used=Daži lietotāji joprojām izmanto šo autentifikācijas veidu. Nepieciešams veikt šo lietotāju konvertāciju vai dzēšanu.
auths.deletion_success=Autentifikācija tika veiksmīgi izdzēsta! auths.deletion_success=Autentifikācija tika veiksmīgi izdzēsta!
auths.login_source_exist=Pieteikšanās avots '%s' jau eksistē. auths.login_source_exist=Pieteikšanās avots '%s' jau eksistē.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(nav noteikts)
config.server_config=Servera konfigurācija config.server_config=Servera konfigurācija
config.app_name=Lietotnes nosaukums config.brand_name=Brand name
config.app_ver=Lietotnes versija
config.app_url=Lietotnes URL
config.domain=Domēns
config.offline_mode=Bezsaistes režīms
config.disable_router_log=Atspējot maršrutētāja žurnalizēšanu
config.run_user=Izpildes lietotājs config.run_user=Izpildes lietotājs
config.run_mode=Izpildes režīms config.run_mode=Izpildes režīms
config.git_version=Git versija config.server.external_url=External URL
config.static_file_root_path=Statisko failu atrašanās vieta config.server.domain=Domēns
config.log_file_root_path=Žurnalizēšanas failu glabāšanas vieta config.server.protocol=Protokols
config.reverse_auth_user=Reversā lietotāja autentifikācija config.server.http_addr=HTTP adrese
config.server.http_port=HTTP ports
config.server.cert_file=Sertifikāta fails
config.server.key_file=Privātais kriptogrāfijas atslēgas fails
config.server.tls_min_version=Minimālā TLS versija
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Iespējot Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=SSH konfigurācija config.ssh_config=SSH konfigurācija
config.ssh_enabled=Iespējots config.ssh.enabled=Iespējots
config.ssh_start_builtin_server=Startēt iebūvēto serveri config.ssh.domain=Exposed domain
config.ssh_domain=Domēns config.ssh.port=Exposed port
config.ssh_port=Ports config.ssh.root_path=Root path
config.ssh_listen_port=Klausīšanās ports config.ssh.keygen_path=Keygen path
config.ssh_root_path=Saknes ceļš config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Atslēgu pārbaudes ceļš config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Keygen ('ssh-keygen') ceļš config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Minimālā atslēgas lieluma pārbaude config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Minimālais atslēgas lielums config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repozitorija konfigurācija config.repo_config=Repozitorija konfigurācija
config.repo_root_path=Repozitoriju glabāšanas vieta config.repo.root_path=Root path
config.script_type=Skripta veids config.repo.script_type=Script type
config.repo_force_private=Piespiedu privāti repozitoriji config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Max Creation Limit config.repo.force_private=Force private
config.preferred_licenses=Preferred Licenses config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Atspējot HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Atļaut migrāciju no lokāla ceļa config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Datu bāzes konfigurācija config.db_config=Datu bāzes konfigurācija
config.db_type=Veids config.db.type=Tips
config.db_host=Resursdators config.db.host=Host
config.db_name=Nosaukums config.db.name=Datubāzes nosaukums
config.db_user=Lietotājs config.db.schema=Schema
config.db_ssl_mode=SSL režīms config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(tikai PostgreSQL datu bāzei) config.db.user=Datubāzes lietotājs
config.db_path=Ceļš config.db.ssl_mode=SSL mode
config.db_path_helper=(priekš "sqlite3" and "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Pakalpojuma konfigurācija config.security_config=Security configuration
config.register_email_confirm=Pieprasīt e-pasta apstiprināšanu config.security.login_remember_days=Login remember days
config.disable_register=Atspējot jaunu lietotāju reģistrāciju config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Rādīt reģistrēšanās pogu config.security.cookie_username=Username cookie
config.require_sign_in_view=Nepieciešama autorizācija config.security.cookie_secure=Enable secure cookie
config.mail_notify=Pasta paziņojumi config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Atspējot atslēgas minimālā garuma pārbaudi config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Iespējot drošības kodu config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Aktīvā koda ilgums config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Paroles atiestatīšanas koda ilgums
config.webhook_config=Tīkla āķu konfigurācija config.email_config=E-pasta iestatījumi
config.queue_length=Rindas garums config.email.enabled=Iespējots
config.deliver_timeout=Piegādes noildze config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Izlaist TLS pārbaudi config.email.host=Host
config.email.from=Sūtītājs
config.email.user=Lietotājs
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Nosūtīt pārbaudes e-pastu
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Sūtītāja konfigurācija config.auth_config=Authentication configuration
config.mailer_enabled=Iespējots config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Atspējot HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Resursdators config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Lietotājs config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Nosūtīt pārbaudes e-pastu config.auth.disable_registration=Disable registration
config.test_mail_failed=Neizdevās nosūtīt pārbaudes e-pasta vēstuli uz '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Pārbaudes e-pasta vēstule tika nosūtīta uz '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=OAuth konfigurācija config.user_config=User configuration
config.oauth_enabled=Iespējota config.user.enable_email_notify=Enable email notification
config.cache_config=Kešatmiņas konfigurācija
config.cache_adapter=Kešatmiņas adapteris
config.cache_interval=Kešatmiņas intervāls
config.cache_conn=Kešatmiņas pieslēguma parametri
config.session_config=Sesijas konfigurācja config.session_config=Sesijas konfigurācja
config.session_provider=Sesijas nodrošinātājs config.session.provider=Provider
config.provider_config=Pakalpojumu sniedzēja konfigurācija config.session.provider_config=Provider config
config.cookie_name=Sīkdatnes nosaukums config.session.cookie_name=Cookie
config.enable_set_cookie=Ļaut izmantot sīkdatnes config.session.https_only=Tikai HTTPS
config.gc_interval_time=GC laika intervāls config.session.gc_interval=GC interval
config.session_life_time=Sesijas ilgums config.session.max_life_time=Max life time
config.https_only=Tikai HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Sīkdatņu glabāšanas ilgums
config.cache_config=Kešatmiņas konfigurācija
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=HTTP konfigurācija
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Iespējots
config.attachment.path=Path
config.attachment.allowed_types=Atļautie tipi
config.attachment.max_size=Maksimālais izmērs
config.attachment.max_files=Maksimālais failu skaits
config.release_config=Release configuration
config.release.attachment.enabled=Pielikums iespējots
config.release.attachment.allowed_types=Atļautie pielikuma tipi
config.release.attachment.max_size=Pielikuma maksimālais izmērs
config.release.attachment.max_files=Maksimālais pielikuma failu skaits
config.picture_config=Attēlu konfigurācija config.picture_config=Attēlu konfigurācija
config.picture_service=Lokāli attēli config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Atspējot Gravatar config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Iespējot apvienotās profila bildes config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Noklusētais intervāls
config.webhook_config=Tīkla āķu konfigurācija
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Git konfigurācija config.git_config=Git konfigurācija
config.git_disable_diff_highlight=Atspējot salīdzināšanas sintakses iekrāsošanu config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Maksimālais salīdzināmo rindu skaits vienam failam config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Maksimālais salīdzināmo simbolu skaits vienai rindai config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Maksimālais salīdzināmo failu skaits, ko attēlot config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=GC argumenti config.git.gc_args=GC arguments
config.git_migrate_timeout=Migrācijas noilgums config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Spoguļa atjaunošanas noilgums config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Klonēšanas darbības noilgums config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Izmaiņu saņemšanas darbības noilgums config.git.pull_timeout=Pull timeout
config.git_gc_timeout=GC darbības noilgums config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Žurnalizēšanas konfigurācija config.log_config=Žurnalizēšanas konfigurācija
config.log_file_root_path=Žurnalizēšanas failu glabāšanas vieta
config.log_mode=Režīms config.log_mode=Režīms
config.log_options=Opcijas config.log_options=Opcijas
@@ -1284,7 +1383,6 @@ notices.delete_success=Sistēmas paziņojumi tika veiksmīgi izdzēstas.
[action] [action]
create_repo=izveidoja repozitoriju <a href="%s">%s</a> create_repo=izveidoja repozitoriju <a href="%s">%s</a>
fork_repo=atdalīja repozitoriju uz <a href="%s">%s</a>
rename_repo=pārsauca repozitoriju no <code>%[1]s</code> uz <a href="%[2]s">%[3]s</a> rename_repo=pārsauca repozitoriju no <code>%[1]s</code> uz <a href="%[2]s">%[3]s</a>
commit_repo=veica izmaiņu nosūtīšanu atzaram <a href="%[1]s/src/%[2]s">%[3]s</a> repozitorijā <a href="%[1]s">%[4]s</a> commit_repo=veica izmaiņu nosūtīšanu atzaram <a href="%[1]s/src/%[2]s">%[3]s</a> repozitorijā <a href="%[1]s">%[4]s</a>
compare_commits=Salīdzināt šīs %d revīzijas compare_commits=Salīdzināt šīs %d revīzijas
@@ -1301,6 +1399,10 @@ create_branch=izveidoja jaunu atzaru <a href="%[1]s/src/%[2]s">%[3]s</a> repozit
delete_branch=izdzēsa atzaru <code>%[2]s</code> repozitorijā <a href="%[1]s">%[3]s</a> delete_branch=izdzēsa atzaru <code>%[2]s</code> repozitorijā <a href="%[1]s">%[3]s</a>
push_tag=pievienoja tagu <a href="%s/src/%s">%[2]s</a> repozitorijam <a href="%[1]s">%[3]s</a> push_tag=pievienoja tagu <a href="%s/src/%s">%[2]s</a> repozitorijam <a href="%[1]s">%[3]s</a>
delete_tag=izdzēsa tagu <code>%[2]s</code> repozitorijā <a href="%[1]s">%[3]s</a> delete_tag=izdzēsa tagu <code>%[2]s</code> repozitorijā <a href="%[1]s">%[3]s</a>
fork_repo=atdalīja repozitoriju uz <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=atpakaļ ago=atpakaļ
@@ -1322,6 +1424,7 @@ months=%d mēneši %s
years=%d gadi %s years=%d gadi %s
raw_seconds=sekundes raw_seconds=sekundes
raw_minutes=minūtes raw_minutes=minūtes
raw_hours=hours
[dropzone] [dropzone]
default_message=Ievelciet failus šeit vai noklikšķiniet, lai augšupielādētu. default_message=Ievelciet failus šeit vai noklikšķiniet, lai augšupielādētu.

1434
conf/locale/locale_mn-MN.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,6 @@ sign_out=Uitloggen
sign_up=Aanmelden sign_up=Aanmelden
register=Registreren register=Registreren
website=Website website=Website
version=Versie
page=Pagina page=Pagina
template=Sjabloon template=Sjabloon
language=Taal language=Taal
@@ -40,21 +39,26 @@ your_settings=Uw instellingen
activities=Activiteiten activities=Activiteiten
pull_requests=Pull requests pull_requests=Pull requests
issues=Kwesties issues=Issues
cancel=Annuleren cancel=Annuleren
[status]
page_not_found=Pagina niet gevonden
internal_server_error=Interne Server Fout
[install] [install]
install=Installatie install=Installatie
title=Installatiestappen voor de eerste keer opstarten title=Installatiestappen voor de eerste keer opstarten
docker_helper=Als u gebruik maakt Gogs binnen Docker, lees dan de <a target="_blank" href="%s">richtlijnen</a> voordat u iets veranderen op deze pagina! docker_helper=Als u gebruik maakt Gogs binnen Docker, lees dan de <a target="_blank" href="%s">richtlijnen</a> voordat u iets veranderen op deze pagina!
requite_db_desc=Gogs vereist MySQL, PostgreSQL, SQLite3, MSSQL of TiDB. requite_db_desc=Gogs heeft MySQL, PostgreSQL, SQLite3 of TiDB (via het MySQL protocool) nodig.
db_title=Database-instellingen db_title=Database-instellingen
db_type=Database-type db_type=Database-type
host=Host host=Host
user=Gebruikersnaam user=Gebruikersnaam
password=Wachtwoord password=Wachtwoord
db_name=Databasenaam db_name=Databasenaam
db_schema=Schema
db_helper=Gebruik InnoDB engine met utf8_general_ci karakterset voor MySQL. db_helper=Gebruik InnoDB engine met utf8_general_ci karakterset voor MySQL.
ssl_mode=SSL-modus ssl_mode=SSL-modus
path=Pad path=Pad
@@ -84,6 +88,7 @@ log_root_path=Log-pad
log_root_path_helper=Directory waar logbestanden opgeslagen worden. log_root_path_helper=Directory waar logbestanden opgeslagen worden.
enable_console_mode=Schakel Console modus in enable_console_mode=Schakel Console modus in
enable_console_mode_popup=Naast de bestand modus print het ook de logs naar de console. enable_console_mode_popup=Naast de bestand modus print het ook de logs naar de console.
default_branch=Standaard branch
optional_title=Optionele instellingen optional_title=Optionele instellingen
email_title=E-mail service instellingen email_title=E-mail service instellingen
@@ -119,9 +124,10 @@ sqlite3_not_available=Uw versie biedt geen ondersteuning voor SQLite3, download
invalid_db_setting=Uw database instellingen zijn niet correct: %v invalid_db_setting=Uw database instellingen zijn niet correct: %v
invalid_repo_path=Repositorie basis map is niet correct: %v invalid_repo_path=Repositorie basis map is niet correct: %v
run_user_not_match=De uitvoerende gebruiker is niet de huidig gebruiker: %s -> %s run_user_not_match=De uitvoerende gebruiker is niet de huidig gebruiker: %s -> %s
smtp_host_missing_port=SMTP Host is missing port in address. smtp_host_missing_port=SMTP-Host mist een poort in het adres.
invalid_smtp_from=SMTP-van-veld is niet geldig: %v invalid_smtp_from=SMTP-van-veld is niet geldig: %v
save_config_failed=Kan de configuratie niet opslaan: %v save_config_failed=Kan de configuratie niet opslaan: %v
init_failed=Programma initialiseren mislukt: %v
invalid_admin_setting=Uw admin-instellingen zijn niet geldig: %v invalid_admin_setting=Uw admin-instellingen zijn niet geldig: %v
install_success=Welkom! Wij zijn veheugd dat u voor Gogs heeft gekozen, veel plezier en tot ziens install_success=Welkom! Wij zijn veheugd dat u voor Gogs heeft gekozen, veel plezier en tot ziens
invalid_log_root_path=Ongeldig log-pad: %v invalid_log_root_path=Ongeldig log-pad: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Heeft u al een account? Meld u nu aan!
social_register_hepler_msg=Heeft u al een account? Koppel nu! social_register_hepler_msg=Heeft u al een account? Koppel nu!
disable_register_prompt=Sorry, registratie is uitgeschakeld. Neem contact op met de beheerder van deze site. disable_register_prompt=Sorry, registratie is uitgeschakeld. Neem contact op met de beheerder van deze site.
disable_register_mail=Sorry, bevestiging van registratie per e-mail is uitgeschakeld. disable_register_mail=Sorry, bevestiging van registratie per e-mail is uitgeschakeld.
auth_source=Authenticatiebron
local=Lokaal
remember_me=Onthoud mij remember_me=Onthoud mij
forgot_password=Wachtwoord vergeten forgot_password=Wachtwoord vergeten
forget_password=Wachtwoord vergeten? forget_password=Wachtwoord vergeten?
@@ -171,11 +179,11 @@ non_local_account=Niet lokale accounts mogen hun wachtwoord niet veranderen via
login_two_factor=Twee-traps authenticatie login_two_factor=Twee-traps authenticatie
login_two_factor_passcode=Authenticatie wachtwoord login_two_factor_passcode=Authenticatie wachtwoord
login_two_factor_enter_recovery_code=Enter a two-factor recovery code login_two_factor_enter_recovery_code=Voer de two-factor herstelcode in
login_two_factor_recovery=Two-factor Recovery login_two_factor_recovery=Two-factor herstel
login_two_factor_recovery_code=Recovery Code login_two_factor_recovery_code=Herstel code
login_two_factor_enter_passcode=Enter a two-factor passcode login_two_factor_enter_passcode=Voer een two-factor wachtwoord in
login_two_factor_invalid_recovery_code=Recovery code has been used or does not valid. login_two_factor_invalid_recovery_code=Herstelcode is al gebruikt of ongeldig.
[mail] [mail]
activate_account=Activeer uw account activate_account=Activeer uw account
@@ -212,7 +220,7 @@ Content=Inhoud
require_error=kan niet leeg zijn. require_error=kan niet leeg zijn.
alpha_dash_error=moet een valide alfanumeriek of dash(-_) karakter zijn. alpha_dash_error=moet een valide alfanumeriek of dash(-_) karakter zijn.
alpha_dash_dot_error=moet een valide alfanumeriek, dash(-_) of (.) punt karakter zijn. alpha_dash_dot_error=moet een valide alfanumeriek, dash(-_) of (.) punt karakter zijn.
alpha_dash_dot_slash_error=` must be valid alpha or numeric or dash(-_) or dot characters or slashes.` alpha_dash_dot_slash_error=` moet een geldige alfanumeriek, (lage) streepje (-_), punt of een schuin karakter zijn.`
size_error=moet groter zijn dan %s size_error=moet groter zijn dan %s
min_size_error=moet minimaal %s karakters bevatten. min_size_error=moet minimaal %s karakters bevatten.
max_size_error=mag maximaal %s karakters bevatten. max_size_error=mag maximaal %s karakters bevatten.
@@ -229,6 +237,7 @@ org_name_been_taken=Organisatie naam is al in gebruik.
team_name_been_taken=Team naam is al in gebruik. team_name_been_taken=Team naam is al in gebruik.
email_been_used=e-mailadres is al in gebruik. email_been_used=e-mailadres is al in gebruik.
username_password_incorrect=Gebruikersnaam of wachtwoord is niet correct. username_password_incorrect=Gebruikersnaam of wachtwoord is niet correct.
auth_source_mismatch=De geselecteerde authenticatiebron is niet gekoppeld aan de gebruiker.
enterred_invalid_repo_name=U heeft een onjuiste repositorie naam ingevoerd. enterred_invalid_repo_name=U heeft een onjuiste repositorie naam ingevoerd.
enterred_invalid_owner_name=U heeft een onjuiste eigenaar ingevoerd. enterred_invalid_owner_name=U heeft een onjuiste eigenaar ingevoerd.
enterred_invalid_password=U heeft een onjuiste wachtwoord ingevoerd. enterred_invalid_password=U heeft een onjuiste wachtwoord ingevoerd.
@@ -256,8 +265,7 @@ following=Volgt
follow=Volg follow=Volg
unfollow=Niet meer volgen unfollow=Niet meer volgen
form.name_reserved=De gebruikersnaam '%s' is gereserveerd. form.name_not_allowed=User name or pattern %q is not allowed.
form.name_pattern_not_allowed=Het gebruikersnaam patroon '%s' is niet toegestaan.
[settings] [settings]
profile=Profiel profile=Profiel
@@ -309,6 +317,7 @@ delete_email=Verwijder
email_deletion=E-mail Verwijderen email_deletion=E-mail Verwijderen
email_deletion_desc=Dit e-mailadres verwijdert, worden gerelateerde informatie van uw account te verwijderen. Wil je verdergaan? email_deletion_desc=Dit e-mailadres verwijdert, worden gerelateerde informatie van uw account te verwijderen. Wil je verdergaan?
email_deletion_success=E-mail is succesvol verwijderd! email_deletion_success=E-mail is succesvol verwijderd!
email_deletion_primary=Kan het primaire e-mailadres niet verwijderen.
add_new_email=Nieuw e-mailadres toevoegen add_new_email=Nieuw e-mailadres toevoegen
add_email=E-mailadres toevoegen add_email=E-mailadres toevoegen
add_email_confirmation_sent=Een nieuwe bevestiging e-mail werd verstuurd naar '%s', gelieve uw inbox in de komende %d uren te controleren om het bevestigingsproces te voltooien. add_email_confirmation_sent=Een nieuwe bevestiging e-mail werd verstuurd naar '%s', gelieve uw inbox in de komende %d uren te controleren om het bevestigingsproces te voltooien.
@@ -334,7 +343,7 @@ no_activity=Geen recente activiteiten
key_state_desc=Deze sleutel werd gebruikt in de laatste 7 dagen key_state_desc=Deze sleutel werd gebruikt in de laatste 7 dagen
token_state_desc=Deze token is de laatste 7 dagen gebruikt token_state_desc=Deze token is de laatste 7 dagen gebruikt
two_factor=Two-factor Authentication two_factor=Twee-factor authenticatie
two_factor_status=Status: two_factor_status=Status:
two_factor_on=Aan two_factor_on=Aan
two_factor_off=Uit two_factor_off=Uit
@@ -342,12 +351,13 @@ two_factor_enable=Inschakelen
two_factor_disable=Uitschakelen two_factor_disable=Uitschakelen
two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application. two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application.
two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>. two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>.
two_factor_enable_title=Enable Two-factor Authentication two_factor_enable_title=Tweestapsverificatie inschakelen
two_factor_scan_qr=Please use your authentication application to scan the image: two_factor_scan_qr=Please use your authentication application to scan the image:
two_factor_or_enter_secret=Or enter the secret: two_factor_or_enter_secret=Of voer het geheim in:
two_factor_then_enter_passcode=Then enter passcode: two_factor_then_enter_passcode=Then enter passcode:
two_factor_verify=Verifiëren two_factor_verify=Verifiëren
two_factor_invalid_passcode=The passcode you entered is not valid, please try again! two_factor_invalid_passcode=The passcode you entered is not valid, please try again!
two_factor_reused_passcode=The passcode you entered has already been used, please try another one!
two_factor_enable_error=Enable Two-factor authentication failed: %v two_factor_enable_error=Enable Two-factor authentication failed: %v
two_factor_enable_success=Two-factor authentication has enabled for your account successfully! two_factor_enable_success=Two-factor authentication has enabled for your account successfully!
two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes two_factor_recovery_codes_title=Two-factor Authentication Recovery Codes
@@ -362,6 +372,7 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
manage_access_token=Persoonlijke toegangstokens beheren manage_access_token=Persoonlijke toegangstokens beheren
generate_new_token=Nieuwe Token genereren generate_new_token=Nieuwe Token genereren
tokens_desc=Tokens die u hebt gegenereerd om toegang tot de Gogs APIs te verkrijgen. tokens_desc=Tokens die u hebt gegenereerd om toegang tot de Gogs APIs te verkrijgen.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Zoals voor nu, moet elke token zal hebben volledige toegang tot uw account. new_token_desc=Zoals voor nu, moet elke token zal hebben volledige toegang tot uw account.
token_name=Symbolische naam token_name=Symbolische naam
generate_token=Token genereren generate_token=Token genereren
@@ -370,6 +381,7 @@ delete_token=Verwijderen
access_token_deletion=Persoonlijke toegang token verwijderen access_token_deletion=Persoonlijke toegang token verwijderen
access_token_deletion_desc=Verwijderen van deze persoonlijke toegang token zal alle verwante toegang verwijderen. Wilt u doorgaan? access_token_deletion_desc=Verwijderen van deze persoonlijke toegang token zal alle verwante toegang verwijderen. Wilt u doorgaan?
delete_token_success=Persoonlijke toegangstoken is met succes verwijderd! Vergeet niet uw toepassingen ook bij te werken. delete_token_success=Persoonlijke toegangstoken is met succes verwijderd! Vergeet niet uw toepassingen ook bij te werken.
token_name_exists=Token with same name already exists.
orgs.none=U bent geen lid van een organisatie. orgs.none=U bent geen lid van een organisatie.
orgs.leave_title=Een organisatie verlaten orgs.leave_title=Een organisatie verlaten
@@ -391,7 +403,9 @@ owner=Eigenaar
repo_name=Naam van repository repo_name=Naam van repository
repo_name_helper=Een goede repository-naam is kort, makkelijk te onthouden en <strong>uniek</strong>. repo_name_helper=Een goede repository-naam is kort, makkelijk te onthouden en <strong>uniek</strong>.
visibility=Zichtbaarheid visibility=Zichtbaarheid
unlisted=Unlisted
visiblity_helper=Deze repositorie is <span class="ui red text">privaat</span> visiblity_helper=Deze repositorie is <span class="ui red text">privaat</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Sitebeheerder heeft alle nieuwe repositories gedwongen <span class="ui red text">privé</span> te zijn visiblity_helper_forced=Sitebeheerder heeft alle nieuwe repositories gedwongen <span class="ui red text">privé</span> te zijn
visiblity_fork_helper=(Verandering van deze waarde zal van invloed zijn op alle forks) visiblity_fork_helper=(Verandering van deze waarde zal van invloed zijn op alle forks)
clone_helper=De behoeftehulp van klonen? Bezoek <a target="_blank" href="%s"> helpen</a>! clone_helper=De behoeftehulp van klonen? Bezoek <a target="_blank" href="%s"> helpen</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Laatste synchronisatie
watchers=Volgers watchers=Volgers
stargazers=Stargazers stargazers=Stargazers
forks=Forks forks=Forks
repo_description_helper=Description of repository. Maximum 512 characters length.
repo_description_length=Available characters
form.reach_limit_of_creation=De eigenaar heeft maximale creatie limiet van %d repositories bereikt. form.reach_limit_of_creation=De eigenaar heeft maximale creatie limiet van %d repositories bereikt.
form.name_reserved=Repositorienaam '%s' is gereserveerd. form.name_not_allowed=Repository name or pattern %q is not allowed.
form.name_pattern_not_allowed=Repositorie naampatroon '%s' is niet toegestaan.
need_auth=Autorisatie vereist need_auth=Autorisatie vereist
migrate_type=Migratie type migrate_type=Migratie type
@@ -431,6 +446,7 @@ migrate.clone_address_desc=Dit kan een HTTP/HTTPS/GIT URL zijn.
migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path. migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path.
migrate.permission_denied=U bent niet toegestaan om deze lokale repositories te importeren. migrate.permission_denied=U bent niet toegestaan om deze lokale repositories te importeren.
migrate.invalid_local_path=Ongeldig lokaal pad, het pad bestaat niet of het is geen map. migrate.invalid_local_path=Ongeldig lokaal pad, het pad bestaat niet of het is geen map.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migratie is mislukt: %v migrate.failed=Migratie is mislukt: %v
mirror_from=spiegel van mirror_from=spiegel van
@@ -450,7 +466,7 @@ quick_guide=Snelstart gids
clone_this_repo=Kloon deze repositorie clone_this_repo=Kloon deze repositorie
create_new_repo_command=Maak een nieuwe repositorie aan vanaf de console create_new_repo_command=Maak een nieuwe repositorie aan vanaf de console
push_exist_repo=Push een bestaande repositorie vanaf de console push_exist_repo=Push een bestaande repositorie vanaf de console
bare_message=This repository does not have any content yet. bare_message=Deze repository bevat nog geen inhoud.
files=Bestanden files=Bestanden
branch=Aftakking branch=Aftakking
@@ -458,7 +474,7 @@ tree=Boom
filter_branch_and_tag=Filter branch of tag filter_branch_and_tag=Filter branch of tag
branches=Aftakkingen branches=Aftakkingen
tags=Labels tags=Labels
issues=Kwesties issues=Issues
pulls=Pull-aanvragen pulls=Pull-aanvragen
labels=Labels labels=Labels
milestones=Mijlpalen milestones=Mijlpalen
@@ -478,6 +494,8 @@ branches.stale_branches=Stale Branches
branches.all=All Branches branches.all=All Branches
branches.updated_by=Updated %[1]s by %[2]s branches.updated_by=Updated %[1]s by %[2]s
branches.change_default_branch=Change Default Branch branches.change_default_branch=Change Default Branch
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nieuw bestand editor.new_file=Nieuw bestand
editor.upload_file=Bestand uploaden editor.upload_file=Bestand uploaden
@@ -488,10 +506,10 @@ editor.edit_this_file=Bestand aanpassen
editor.must_be_on_a_branch=Je moet in een branch zijn om aanpassingen te maken of voor te stellen editor.must_be_on_a_branch=Je moet in een branch zijn om aanpassingen te maken of voor te stellen
editor.fork_before_edit=Je moet deze repository eerst vorken om dit bestand aan te kunnen passen editor.fork_before_edit=Je moet deze repository eerst vorken om dit bestand aan te kunnen passen
editor.delete_this_file=Verwijder dit bestand editor.delete_this_file=Verwijder dit bestand
editor.must_have_write_access=You must have write access to make or propose changes to this file editor.must_have_write_access=U moet schrijftoegang hebben om aanpassingen te maken of voor te stellen in dit bestand
editor.file_delete_success=Bestand '%s' is succesvol verwijderd! editor.file_delete_success=Bestand '%s' is succesvol verwijderd!
editor.name_your_file=Bestandsnaam... editor.name_your_file=Bestandsnaam...
editor.filename_help=To add directory, just type it and press /. To remove a directory, go to the beginning of the field and press backspace. editor.filename_help=Om een map toe te voegen, begin met typen en druk op /. Om een map te verwijderen, ga naar het begin van het veld en druk op backspace.
editor.or=of editor.or=of
editor.cancel_lower=annuleren editor.cancel_lower=annuleren
editor.commit_changes=Wijzigingen toepassen editor.commit_changes=Wijzigingen toepassen
@@ -499,7 +517,7 @@ editor.add_tmpl='%s/<filename>' toevoegen
editor.add='%s' toevoegen editor.add='%s' toevoegen
editor.update='%s' updaten editor.update='%s' updaten
editor.delete='%s' verwijderen editor.delete='%s' verwijderen
editor.commit_message_desc=Add an optional extended description... editor.commit_message_desc=Voeg een optionele beschrijving toe...
editor.commit_directly_to_this_branch=Commit directly to the <strong class="branch-name">%s</strong> branch. editor.commit_directly_to_this_branch=Commit directly to the <strong class="branch-name">%s</strong> branch.
editor.create_new_branch=Create a <strong>new branch</strong> for this commit and start a pull request. editor.create_new_branch=Create a <strong>new branch</strong> for this commit and start a pull request.
editor.new_branch_name_desc=Naam nieuwe aftakking... editor.new_branch_name_desc=Naam nieuwe aftakking...
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=File content has been changed since you starte
editor.file_already_exists=A file with name '%s' already exists in this repository. editor.file_already_exists=A file with name '%s' already exists in this repository.
editor.no_changes_to_show=Er zijn geen wijzigingen om weer te geven. editor.no_changes_to_show=Er zijn geen wijzigingen om weer te geven.
editor.fail_to_update_file=Failed to update/create file '%s' with error: %v editor.fail_to_update_file=Failed to update/create file '%s' with error: %v
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
editor.add_subdir=Submap toevoegen... editor.add_subdir=Submap toevoegen...
editor.unable_to_upload_files=Failed to upload files to '%s' with error: %v editor.unable_to_upload_files=Failed to upload files to '%s' with error: %v
editor.upload_files_to_dir=Bestanden uploaden naar '%s' editor.upload_files_to_dir=Bestanden uploaden naar '%s'
@@ -558,7 +577,7 @@ issues.filter_milestone_no_select=Geen geselecteerde mijlpaal
issues.filter_assignee=Aangewezene issues.filter_assignee=Aangewezene
issues.filter_assginee_no_select=Geen geselecteerde verantwoordelijke issues.filter_assginee_no_select=Geen geselecteerde verantwoordelijke
issues.filter_type=Type issues.filter_type=Type
issues.filter_type.all_issues=Alle kwesties issues.filter_type.all_issues=Alle issues
issues.filter_type.assigned_to_you=Aan jou toegewezen issues.filter_type.assigned_to_you=Aan jou toegewezen
issues.filter_type.created_by_you=Aangemaakt door jou issues.filter_type.created_by_you=Aangemaakt door jou
issues.filter_type.mentioning_you=Vermelden jou issues.filter_type.mentioning_you=Vermelden jou
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Dit pull-request kan niet worden gemerged omdat er
pulls.cannot_auto_merge_helper=Gelieve beide versies manueel samen te voegen om de conflicten op te lossen. pulls.cannot_auto_merge_helper=Gelieve beide versies manueel samen te voegen om de conflicten op te lossen.
pulls.create_merge_commit=Create a merge commit pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=Samenvoegen van pull verzoek pulls.merge_pull_request=Samenvoegen van pull verzoek
pulls.open_unmerged_pull_exists=U kan de bewerking 'heropenen' niet uitvoeren omdat er al een pull-aanvraag (#%d) is van dezelfde repository met dezelfde informatie. Voeg deze eerst samen. pulls.open_unmerged_pull_exists=U kan de bewerking 'heropenen' niet uitvoeren omdat er al een pull-aanvraag (#%d) is van dezelfde repository met dezelfde informatie. Voeg deze eerst samen.
pulls.delete_branch=Aftakking verwijderen pulls.delete_branch=Aftakking verwijderen
@@ -727,18 +747,18 @@ settings.allow_public_wiki_desc=Allow public access to wiki when repository is p
settings.use_external_wiki=Externe wiki gebruiken settings.use_external_wiki=Externe wiki gebruiken
settings.external_wiki_url=Externe wiki-URL settings.external_wiki_url=Externe wiki-URL
settings.external_wiki_url_desc=Bezoekers worden doorgestuurd naar de URL als ze op het tabblad klikken. settings.external_wiki_url_desc=Bezoekers worden doorgestuurd naar de URL als ze op het tabblad klikken.
settings.issues_desc=Kwestietracker inschakelen settings.issues_desc=Issuetracker inschakelen
settings.use_internal_issue_tracker=Gebruik ingebouwde eenvoudige kwestietracker settings.use_internal_issue_tracker=Gebruik ingebouwde eenvoudige issuetracker
settings.allow_public_issues_desc=Allow public access to issues when repository is private settings.allow_public_issues_desc=Allow public access to issues when repository is private
settings.use_external_issue_tracker=Externe issuetracker gebruiken settings.use_external_issue_tracker=Externe issuetracker gebruiken
settings.external_tracker_url=URL externe kwestietracker settings.external_tracker_url=URL externe issuetracker
settings.external_tracker_url_desc=Bezoekers worden doorgestuurd naar de URL als ze op het tabblad klikken. settings.external_tracker_url_desc=Bezoekers worden doorgestuurd naar de URL als ze op het tabblad klikken.
settings.tracker_url_format=URL-formaat externe issuetracker settings.tracker_url_format=URL-formaat externe issuetracker
settings.tracker_issue_style=Naamgevingstijl externe kwestietracker: settings.tracker_issue_style=Naamgevingstijl externe issuetracker:
settings.tracker_issue_style.numeric=Nummeriek settings.tracker_issue_style.numeric=Nummeriek
settings.tracker_issue_style.alphanumeric=Alfanummeriek settings.tracker_issue_style.alphanumeric=Alfanummeriek
settings.tracker_url_format_desc=U kan de aanduidingen <code>{user} {repo} {index}</code> gebruiken voor de gebruikersnaam, de naam van de repository en de lijst van open tickets. settings.tracker_url_format_desc=U kan de aanduidingen <code>{user} {repo} {index}</code> gebruiken voor de gebruikersnaam, de naam van de repository en de lijst van open tickets.
settings.pulls_desc=Schakel 'pull request' in om publieke bijdragen te mogelijk te maken settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
settings.pulls.ignore_whitespace=Ignore changes in whitespace settings.pulls.ignore_whitespace=Ignore changes in whitespace
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Gevaren zone settings.danger_zone=Gevaren zone
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Deze gebruiker zal niet langer toegang hebbe
settings.remove_collaborator_success=medewerker is verwijderd. settings.remove_collaborator_success=medewerker is verwijderd.
settings.search_user_placeholder=Zoek gebruiker... settings.search_user_placeholder=Zoek gebruiker...
settings.org_not_allowed_to_be_collaborator=De organisatie kan niet toegevoegd worden als medewerker. settings.org_not_allowed_to_be_collaborator=De organisatie kan niet toegevoegd worden als medewerker.
settings.add_webhook=Webhook toevoegen
settings.hooks_desc=Webhooks dat de externe diensten om kennisgevingen te ontvangen wanneer bepaalde gebeurtenissen op Gogs plaatsvinden. Wanneer de opgegeven gebeurtenissen plaatsvinden, sturen we een POST-aanvraag naar elk van de URL's die u opgeeft. Meer informatie vindt u in onze <a target="_blank" href="%s"> Webhooks gids</a>. settings.hooks_desc=Webhooks dat de externe diensten om kennisgevingen te ontvangen wanneer bepaalde gebeurtenissen op Gogs plaatsvinden. Wanneer de opgegeven gebeurtenissen plaatsvinden, sturen we een POST-aanvraag naar elk van de URL's die u opgeeft. Meer informatie vindt u in onze <a target="_blank" href="%s"> Webhooks gids</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Choose a type...
settings.add_webhook=Webhook toevoegen
settings.webhook_deletion=Webhook verwijderen settings.webhook_deletion=Webhook verwijderen
settings.webhook_deletion_desc=Verwijderen van deze webhook zal de informatie en alle geschiedenis verwijderen. Wilt u doorgaan? settings.webhook_deletion_desc=Verwijderen van deze webhook zal de informatie en alle geschiedenis verwijderen. Wilt u doorgaan?
settings.webhook_deletion_success=Webhook is succesvol verwijderd! settings.webhook_deletion_success=Webhook is succesvol verwijderd!
@@ -792,6 +814,8 @@ settings.webhook.response=Antwoord
settings.webhook.headers=Headers settings.webhook.headers=Headers
settings.webhook.payload=Lading settings.webhook.payload=Lading
settings.webhook.body=Inhoud settings.webhook.body=Inhoud
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Git haken worden aangedreven door Git zelf, u kunt bestanden van ondersteunde haken in de lijst hieronder om aangepaste acties van toepassing bewerken. settings.githooks_desc=Git haken worden aangedreven door Git zelf, u kunt bestanden van ondersteunde haken in de lijst hieronder om aangepaste acties van toepassing bewerken.
settings.githook_edit_desc=Als haak niet actief is, zal monster inhoud worden gepresenteerd. Verlof inhoud leeg zal deze haak uitschakelen. settings.githook_edit_desc=Als haak niet actief is, zal monster inhoud worden gepresenteerd. Verlof inhoud leeg zal deze haak uitschakelen.
settings.githook_name=Haak naam settings.githook_name=Haak naam
@@ -819,10 +843,10 @@ settings.event_push=Push
settings.event_push_desc=Git push naar een repository settings.event_push_desc=Git push naar een repository
settings.event_issues=Issues settings.event_issues=Issues
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned. settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_pull_request=Pull request settings.event_pull_request=Pull request
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized. settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
settings.event_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Release settings.event_release=Release
settings.event_release_desc=Release published in a repository. settings.event_release_desc=Release published in a repository.
settings.active=Actief settings.active=Actief
@@ -852,6 +876,8 @@ settings.add_key_success=Nieuwe deploy sleutel '%s' werd succesvol toegevoegd!
settings.deploy_key_deletion=Verwijder deploy sleutel settings.deploy_key_deletion=Verwijder deploy sleutel
settings.deploy_key_deletion_desc=Het verwijderen van deze deploy sleutel zal alle gerelateerde toegang verwijderen voor deze repositorie. Wilt u doorgaan? settings.deploy_key_deletion_desc=Het verwijderen van deze deploy sleutel zal alle gerelateerde toegang verwijderen voor deze repositorie. Wilt u doorgaan?
settings.deploy_key_deletion_success=Deploy sleutel werd met succes verwijderd! settings.deploy_key_deletion_success=Deploy sleutel werd met succes verwijderd!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Bladeren bron diff.browse_source=Bladeren bron
diff.parent=bovenliggende diff.parent=bovenliggende
@@ -916,9 +942,8 @@ team_name_helper=U gebruikt deze naam om dit team te vermelden in conversaties.
team_desc_helper=Waar gaat dit team doen? team_desc_helper=Waar gaat dit team doen?
team_permission_desc=Welke privileges zou dit team moeten hebben? team_permission_desc=Welke privileges zou dit team moeten hebben?
form.name_reserved=Organisatienaam '%s' is gereserveerd. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Organisatie naampatroon '%s' is niet toegestaan. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Team name '%s' is reserved.
settings=Instellingen settings=Instellingen
settings.options=Opties settings.options=Opties
@@ -990,12 +1015,19 @@ first_page=Eerste
last_page=Laatste last_page=Laatste
total=Totaal: %d total=Totaal: %d
dashboard.build_info=Build Information
dashboard.app_ver=Application version
dashboard.git_version=Git version
dashboard.go_version=Go version
dashboard.build_time=Build time
dashboard.build_commit=Build commit
dashboard.statistic=Statistieken dashboard.statistic=Statistieken
dashboard.operations=Bewerkingen dashboard.operations=Bewerkingen
dashboard.system_status=Status Systeemmonitor dashboard.system_status=Status Systeemmonitor
dashboard.statistic_info=Gogs database heeft <b>%d</b> gebruikers, <b>%d</b> organisaties, <b>%d</b> openbare sleutels, <b>%d</b> repositories, <b>%d</b> volgers, <b>%d</b> sterren, <b>%d</b> acties, <b>%d</b> participanten, <b>%d</b> issues, <b>%d</b> reacties, <b>%d</b> sociale accounten, <b>%d</b> volgers, <b>%d</b> mirrors, <b>%d</b> publicaties, <b>%d</b> login bronnen, <b>%d</b> webhooks, <b>%d</b> mijlpalen, <b>%d</b> labels, <b>%d</b> hook taken, <b>%d</b> teams, <b>%d</b> bijgewerkte taken, <b>%d</b> bijlagen. dashboard.statistic_info=Gogs database heeft <b>%d</b> gebruikers, <b>%d</b> organisaties, <b>%d</b> openbare sleutels, <b>%d</b> repositories, <b>%d</b> volgers, <b>%d</b> sterren, <b>%d</b> acties, <b>%d</b> participanten, <b>%d</b> issues, <b>%d</b> reacties, <b>%d</b> sociale accounten, <b>%d</b> volgers, <b>%d</b> mirrors, <b>%d</b> publicaties, <b>%d</b> login bronnen, <b>%d</b> webhooks, <b>%d</b> mijlpalen, <b>%d</b> labels, <b>%d</b> hook taken, <b>%d</b> teams, <b>%d</b> bijgewerkte taken, <b>%d</b> bijlagen.
dashboard.operation_name=Bewerking naam dashboard.operation_name=Bewerking naam
dashboard.operation_switch=Omschakelen dashboard.operation_switch=Omschakelen
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Uitvoeren dashboard.operation_run=Uitvoeren
dashboard.clean_unbind_oauth=Clean unbound OAuths dashboard.clean_unbind_oauth=Clean unbound OAuths
dashboard.clean_unbind_oauth_success=Alle OAuthes binding hebben verwijderd. dashboard.clean_unbind_oauth_success=Alle OAuthes binding hebben verwijderd.
@@ -1070,7 +1102,7 @@ users.allow_import_local=Dit account mag lokale repositories importeren
users.update_profile=Account profiel bijwerken users.update_profile=Account profiel bijwerken
users.delete_account=Dit account verwijderen users.delete_account=Dit account verwijderen
users.still_own_repo=Dit account is nog steeds eigendom van een repositorie. U moet deze repositorie eerst verwijderen of overdragen. users.still_own_repo=Dit account is nog steeds eigendom van een repositorie. U moet deze repositorie eerst verwijderen of overdragen.
users.still_has_org=Deze account nog steeds lidmaatschap van organisatie, u hebt naar links of hen eerst verwijderen. users.still_has_org=Dit account is nog lid van ten minste één organisatie. Zeg dit lidmaatschap voor dit account op of verwijder de organisatie eerst.
users.deletion_success=Het account is verwijderd! users.deletion_success=Het account is verwijderd!
orgs.org_manage_panel=Organisaties beheren orgs.org_manage_panel=Organisaties beheren
@@ -1084,14 +1116,15 @@ repos.name=Naam
repos.private=Prive repos.private=Prive
repos.watches=Volgers repos.watches=Volgers
repos.stars=Sterren repos.stars=Sterren
repos.issues=Kwesties repos.issues=Issues
repos.size=Size repos.size=Size
auths.auth_manage_panel=Authenticatie-beheer paneel auths.auth_sources=Authenticatiebronnen
auths.new=Nieuwe bron toevoegen auths.new=Nieuwe bron toevoegen
auths.name=Naam auths.name=Naam
auths.type=Type auths.type=Type
auths.enabled=Ingeschakeld auths.enabled=Ingeschakeld
auths.default=Default
auths.updated=Bijgewerkt auths.updated=Bijgewerkt
auths.auth_type=Authenticatietype auths.auth_type=Authenticatietype
auths.auth_name=Authenticatienaam auths.auth_name=Authenticatienaam
@@ -1128,9 +1161,9 @@ auths.enable_tls=Activeer TLS-encryptie
auths.skip_tls_verify=TLS-verificatie overslaan auths.skip_tls_verify=TLS-verificatie overslaan
auths.pam_service_name=PAM servicenaam auths.pam_service_name=PAM servicenaam
auths.enable_auto_register=Activeer automatische registratie auths.enable_auto_register=Activeer automatische registratie
auths.tips=Tips
auths.edit=Verificatie-instelling bewerken auths.edit=Verificatie-instelling bewerken
auths.activated=Deze autorisatiemethode is geactiveerd auths.activated=Deze autorisatiemethode is geactiveerd
auths.default_auth=Deze authenticatie bron is de standaard bron
auths.new_success=Nieuwe authenticatie '%s' werd toegevoegd. auths.new_success=Nieuwe authenticatie '%s' werd toegevoegd.
auths.update_success=Authenticatie instellingen zijn succesvol gewijzigd. auths.update_success=Authenticatie instellingen zijn succesvol gewijzigd.
auths.update=Authenticatie-instellingen bijwerken auths.update=Authenticatie-instellingen bijwerken
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=Deze authenticatie zal verwijderd worden, wil je verderga
auths.still_in_used=This authentication is still used by some users, please delete or convert these users to another login type first. auths.still_in_used=This authentication is still used by some users, please delete or convert these users to another login type first.
auths.deletion_success=Authenticatie is met succes verwijderd! auths.deletion_success=Authenticatie is met succes verwijderd!
auths.login_source_exist=Login source '%s' already exists. auths.login_source_exist=Login source '%s' already exists.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set) config.not_set=(not set)
config.server_config=Serverconfiguratie config.server_config=Serverconfiguratie
config.app_name=Applicatienaam config.brand_name=Brand name
config.app_ver=Applicatieversie
config.app_url=Applicatie-URL
config.domain=Domein
config.offline_mode=Offline-modus
config.disable_router_log=Router-log uitschakelen
config.run_user=Uitvoerende gebruiker config.run_user=Uitvoerende gebruiker
config.run_mode=Uitvoer modus config.run_mode=Uitvoer modus
config.git_version=Gitversie config.server.external_url=External URL
config.static_file_root_path=Statische bestanden basis pad config.server.domain=Domain
config.log_file_root_path=Log bestand basis pad config.server.protocol=Protocol
config.reverse_auth_user=Omgekeerde verificatie gebruiker config.server.http_addr=HTTP address
config.server.http_port=HTTP port
config.server.cert_file=Certificate file
config.server.key_file=Key file
config.server.tls_min_version=Minimum TLS version
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Local root URL
config.server.offline_mode=Offline mode
config.server.disable_router_log=Disable router log
config.server.enable_gzip=Enable Gzip
config.server.app_data_path=Application data path
config.server.load_assets_from_disk=Load assets from disk
config.server.landing_url=Landing URL
config.ssh_config=SSH-configuratie config.ssh_config=SSH-configuratie
config.ssh_enabled=Ingeschakeld config.ssh.enabled=Enabled
config.ssh_start_builtin_server=Ingebouwde server starten config.ssh.domain=Exposed domain
config.ssh_domain=Domein config.ssh.port=Exposed port
config.ssh_port=Poort config.ssh.root_path=Root path
config.ssh_listen_port=Luister op poort config.ssh.keygen_path=Keygen path
config.ssh_root_path=Root-pad config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Pad voor key-tests config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Pad van keygen ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Controleer minimale key-lengte config.ssh.start_builtin_server=Start builtin server
config.ssh_minimum_key_sizes=Minimale key-lengtes config.ssh.listen_host=Listen host
config.ssh.listen_port=Listen port
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Repository Configuration config.repo_config=Repository configuration
config.repo_root_path=Repositorie basis pad config.repo.root_path=Root path
config.script_type=Script type config.repo.script_type=Script type
config.repo_force_private=Force Private config.repo.ansi_chatset=ANSI charset
config.max_creation_limit=Max Creation Limit config.repo.force_private=Force private
config.preferred_licenses=Preferred Licenses config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Disable HTTP Git config.repo.preferred_licenses=Preferred licenses
config.enable_local_path_migration=Enable Local Path Migration config.repo.disable_http_git=Disable HTTP Git
config.commits_fetch_concurrency=Commits Fetch Concurrency config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=HTTP Configuration config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Access Control Allow Origin config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Databaseconfiguratie config.db_config=Databaseconfiguratie
config.db_type=Type config.db.type=Type
config.db_host=Host config.db.host=Host
config.db_name=Naam config.db.name=Name
config.db_user=Gebruiker config.db.schema=Schema
config.db_ssl_mode=SSL modus config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(alleen voor "postgres") config.db.user=User
config.db_path=Pad config.db.ssl_mode=SSL mode
config.db_path_helper=(voor "sqlite3" en "tidb") config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Path
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Serviceconfiguratie config.security_config=Security configuration
config.register_email_confirm=E-mailbevestiging registreren config.security.login_remember_days=Login remember days
config.disable_register=Registratie uitgeschakeld config.security.cookie_remember_name=Remember cookie
config.show_registration_button=Registeren knop weergeven config.security.cookie_username=Username cookie
config.require_sign_in_view=Inloggen vereist om te kunnen inzien config.security.cookie_secure=Enable secure cookie
config.mail_notify=E-mailnotificaties config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Controle op key-lengte uitschakelen config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=CAPTCHA inschakelen config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Actieve Code leven config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Reset wachtwoord Code leven
config.webhook_config=Webhook configuratie config.email_config=Email configuration
config.queue_length=Lengte van wachtrij config.email.enabled=Enabled
config.deliver_timeout=Bezorging verlooptijd config.email.subject_prefix=Subject prefix
config.skip_tls_verify=TLS certificaat controle overslaan config.email.host=Host
config.email.from=From
config.email.user=User
config.email.disable_helo=Disable HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Skip certificate verify
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Key file
config.email.use_plain_text=Use plain text
config.email.add_plain_text_alt=Add plain text alternative
config.email.send_test_mail=Send test email
config.email.test_mail_failed=Failed to send test email to '%s': %v
config.email.test_mail_sent=Test email has been sent to '%s'.
config.mailer_config=Mailerconfiguatie config.auth_config=Authentication configuration
config.mailer_enabled=Ingeschakeld config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Schakel HELO uit config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Host config.auth.require_email_confirm=Require email confirmation
config.mailer_user=Gebruiker config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Testbericht verzenden config.auth.disable_registration=Disable registration
config.test_mail_failed=Verzending van een testmail naar '%s' is mislukt: %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Test-email is verstuurd naar '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=OAuth-configuratie config.user_config=User configuration
config.oauth_enabled=Ingeschakeld config.user.enable_email_notify=Enable email notification
config.cache_config=Cache-configuratie
config.cache_adapter=Cache-adapter
config.cache_interval=Cache-interval
config.cache_conn=Cache-connectie
config.session_config=Sessieconfiguratie config.session_config=Sessieconfiguratie
config.session_provider=Sessieprovider config.session.provider=Provider
config.provider_config=Provider config config.session.provider_config=Provider config
config.cookie_name=Cookie naam config.session.cookie_name=Cookie
config.enable_set_cookie=Set Cookie inschakelen config.session.https_only=HTTPS only
config.gc_interval_time=GC interval time config.session.gc_interval=GC interval
config.session_life_time=Sessie duur config.session.max_life_time=Max life time
config.https_only=Alleen HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Cookie duur leeftijd
config.cache_config=Cache-configuratie
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=HTTP configuration
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Enabled
config.attachment.path=Path
config.attachment.allowed_types=Allowed types
config.attachment.max_size=Size limit
config.attachment.max_files=Files limit
config.release_config=Release configuration
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Foto configuratie config.picture_config=Foto configuratie
config.picture_service=Foto service config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Gravatar uitschakelen config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Federated Avatars toestaan config.picture.gravatar_source=Gravatar source
config.picture.disable_gravatar=Disable Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Mirror configuration
config.mirror.default_interval=Default interval
config.webhook_config=Webhook configuratie
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Gitconfiguratie config.git_config=Gitconfiguratie
config.git_disable_diff_highlight=Disable Diff Syntax Highlight config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Max Diff Lines (for a single file) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Max Diff Characters (for a single line) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Max Diff Files (to be shown) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=GC Arguments config.git.gc_args=GC arguments
config.git_migrate_timeout=Migration Timeout config.git.migrate_timeout=Migration timeout
config.git_mirror_timeout=Mirror Update Timeout config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Clone Operation Timeout config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Pull Operation Timeout config.git.pull_timeout=Pull timeout
config.git_gc_timeout=GC Operation Timeout config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Storage
config.lfs.objects_path=Objects path
config.log_config=Logconfiguratie config.log_config=Logconfiguratie
config.log_file_root_path=Log bestand basis pad
config.log_mode=Mode config.log_mode=Mode
config.log_options=Options config.log_options=Options
@@ -1284,14 +1383,13 @@ notices.delete_success=System notices have been deleted successfully.
[action] [action]
create_repo=repositorie aangemaakt in <a href="%s">%s</a> create_repo=repositorie aangemaakt in <a href="%s">%s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
rename_repo=hernoemde repository van <code>%[1]s</code> naar <a href="%[2]s">%[3]s</a> rename_repo=hernoemde repository van <code>%[1]s</code> naar <a href="%[2]s">%[3]s</a>
commit_repo=push update naar <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a> commit_repo=push update naar <a href="%[1]s/src/%[2]s">%[3]s</a> in <a href="%[1]s">%[4]s</a>
compare_commits=Toon vergelijking voor deze %d commits compare_commits=Toon vergelijking voor deze %d commits
transfer_repo=repositorie verplaatst naar <code>%s</code> naar <a href="%s">%s</a> transfer_repo=repositorie verplaatst naar <code>%s</code> naar <a href="%s">%s</a>
create_issue=`opende issue in <a href="%s/issues/%s">%s#%[2]s</a>` create_issue=`opende issue in <a href="%s/issues/%s">%s#%[2]s</a>`
close_issue=`sloot kwestie <a href="%s/issues/%s">%s#%[2]s</a>` close_issue=`gesloten issue <a href="%s/issues/%s">%s#%[2]s</a>`
reopen_issue=`heropende kwestie <a href="%s/issues/%s">%s#%[2]s</a>` reopen_issue=`heropende issue <a href="%s/issues/%s">%s#%[2]s</a>`
comment_issue=`reactie op issue <a href="%s/issues/%s">%s#%[2]s</a>` comment_issue=`reactie op issue <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`maakte pull request <a href="%s/issues/%s">%s#%[2]s</a>` create_pull_request=`maakte pull request <a href="%s/issues/%s">%s#%[2]s</a>`
close_pull_request=`sloot pull request <a href="%s/issues/%s">%s#%[2]s</a>` close_pull_request=`sloot pull request <a href="%s/issues/%s">%s#%[2]s</a>`
@@ -1301,6 +1399,10 @@ create_branch=created new branch <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href=
delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=deleted branch <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=geduwd label <a href="%s/src/%s"> %[2]s</a> naar <a href="%[1]s"> %[3]s</a> push_tag=geduwd label <a href="%s/src/%s"> %[2]s</a> naar <a href="%[1]s"> %[3]s</a>
delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_tag=deleted tag <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
fork_repo=forked a repository to <a href="%s">%s</a>
mirror_sync_push=synced commits to <a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> from mirror
mirror_sync_create=synced new reference <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> from mirror
mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> from mirror
[tool] [tool]
ago=geleden ago=geleden
@@ -1322,6 +1424,7 @@ months=%d maanden %s
years=%d jaren %s years=%d jaren %s
raw_seconds=seconden raw_seconds=seconden
raw_minutes=minuten raw_minutes=minuten
raw_hours=hours
[dropzone] [dropzone]
default_message=Drop bestanden hier of klik om te uploaden. default_message=Drop bestanden hier of klik om te uploaden.

View File

@@ -9,7 +9,6 @@ sign_out=Wyloguj
sign_up=Zarejestruj się sign_up=Zarejestruj się
register=Zarejestruj się register=Zarejestruj się
website=Strona website=Strona
version=Wersja
page=Strona page=Strona
template=Szablon template=Szablon
language=Język language=Język
@@ -44,17 +43,22 @@ issues=Problemy
cancel=Anuluj cancel=Anuluj
[status]
page_not_found=Strona nie została znaleziona
internal_server_error=Wewnętrzny błąd serwera
[install] [install]
install=Instalacja install=Instalacja
title=Kroki instalacyjne dla pierwszego uruchomienia title=Kroki instalacyjne dla pierwszego uruchomienia
docker_helper=Jeśli używasz Gogs wewnątrz Dockera, proszę przeczytaj <a target="_blank" href="%s">wytyczne</a>, zanim zmienisz coś na tej stronie! docker_helper=Jeśli używasz Gogs wewnątrz Dockera, proszę przeczytaj <a target="_blank" href="%s">wytyczne</a>, zanim zmienisz coś na tej stronie!
requite_db_desc=Gogs wymaga bazy MySQL, PostgreSQL, SQLite3 lub TiDB. requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Ustawienia bazy danych db_title=Ustawienia bazy danych
db_type=Typ bazy danych db_type=Typ bazy danych
host=Host host=Host
user=Użytkownik user=Użytkownik
password=Hasło password=Hasło
db_name=Nazwa bazy danych db_name=Nazwa bazy danych
db_schema=Schema
db_helper=Proszę użyć silnika INNODB z kodowaniem utf8_general_ci dla MySQL. db_helper=Proszę użyć silnika INNODB z kodowaniem utf8_general_ci dla MySQL.
ssl_mode=Tryb SSL ssl_mode=Tryb SSL
path=Ścieżka path=Ścieżka
@@ -84,6 +88,7 @@ log_root_path=Ścieżka dla logów
log_root_path_helper=Katalog do zapisu logów. log_root_path_helper=Katalog do zapisu logów.
enable_console_mode=Włącz tryb konsolowy enable_console_mode=Włącz tryb konsolowy
enable_console_mode_popup=Oprócz zapisywania do pliku wyświetlaj logi także w konsoli. enable_console_mode_popup=Oprócz zapisywania do pliku wyświetlaj logi także w konsoli.
default_branch=Default Branch
optional_title=Ustawienia opcjonalne optional_title=Ustawienia opcjonalne
email_title=Ustawienia serwera e-mail email_title=Ustawienia serwera e-mail
@@ -122,6 +127,7 @@ run_user_not_match=Użytkownik aplikacji nie jest aktualnym użytkownikiem: %s -
smtp_host_missing_port=W SMTP Host brakuje portu w adresie. smtp_host_missing_port=W SMTP Host brakuje portu w adresie.
invalid_smtp_from=Pole SMTP OD nie jest prawidłowe: %v invalid_smtp_from=Pole SMTP OD nie jest prawidłowe: %v
save_config_failed=Nie udało się zapisać konfiguracji: %v save_config_failed=Nie udało się zapisać konfiguracji: %v
init_failed=Nie udało się zainicjować aplikacji: %v
invalid_admin_setting=Nieprawidłowe ustawienia konta admina: %v invalid_admin_setting=Nieprawidłowe ustawienia konta admina: %v
install_success=Cześć! Cieszymy się, że wybierałeś Gogs, baw się dobrze. install_success=Cześć! Cieszymy się, że wybierałeś Gogs, baw się dobrze.
invalid_log_root_path=Ścieżka dla logów jest niepoprawna: %v invalid_log_root_path=Ścieżka dla logów jest niepoprawna: %v
@@ -151,6 +157,8 @@ register_hepler_msg=Masz już konto? Zaloguj się teraz!
social_register_hepler_msg=Masz już konto? Powiąż je teraz! social_register_hepler_msg=Masz już konto? Powiąż je teraz!
disable_register_prompt=Przepraszamy rejestracja została wyłączona. Prosimy o kontakt z administratorem serwisu. disable_register_prompt=Przepraszamy rejestracja została wyłączona. Prosimy o kontakt z administratorem serwisu.
disable_register_mail=Przepraszamy, potwierdzenia rejestracji zostały wyłączone przez administratora. disable_register_mail=Przepraszamy, potwierdzenia rejestracji zostały wyłączone przez administratora.
auth_source=Źródło uwierzytelniania
local=Lokalne
remember_me=Zapamiętaj mnie remember_me=Zapamiętaj mnie
forgot_password=Zapomniałem hasła forgot_password=Zapomniałem hasła
forget_password=Zapomniałeś hasła? forget_password=Zapomniałeś hasła?
@@ -229,6 +237,7 @@ org_name_been_taken=Nazwa organizacji jest już zajęta.
team_name_been_taken=Nazwa zespołu jest już zajęta. team_name_been_taken=Nazwa zespołu jest już zajęta.
email_been_used=Adres e-mail jest już zarejestrowany. email_been_used=Adres e-mail jest już zarejestrowany.
username_password_incorrect=Nazwa użytkownika lub hasło nie jest prawidłowe. username_password_incorrect=Nazwa użytkownika lub hasło nie jest prawidłowe.
auth_source_mismatch=Wybrane źródło uwierzytelniania nie jest związane z użytkownikiem.
enterred_invalid_repo_name=Upewnij się, że wprowadzona nazwa repozytorium jest poprawna. enterred_invalid_repo_name=Upewnij się, że wprowadzona nazwa repozytorium jest poprawna.
enterred_invalid_owner_name=Upewnij się, że nazwa właściciela repozytorium jest poprawna. enterred_invalid_owner_name=Upewnij się, że nazwa właściciela repozytorium jest poprawna.
enterred_invalid_password=Proszę upewnij się, że wprowadzono hasło jest poprawne. enterred_invalid_password=Proszę upewnij się, że wprowadzono hasło jest poprawne.
@@ -256,8 +265,7 @@ following=Obserwowani
follow=Obserwuj follow=Obserwuj
unfollow=Przestań obserwować unfollow=Przestań obserwować
form.name_reserved=Nazwa użytkownika „%s” jest zarezerwowana. form.name_not_allowed=Nazwa użytkownika lub wzór %q jest niedozwolony.
form.name_pattern_not_allowed=Wzorzec nazwy użytkownika „%s” jest niedozwolony.
[settings] [settings]
profile=Profil profile=Profil
@@ -309,6 +317,7 @@ delete_email=Usuń
email_deletion=Usunięcie wiadomości e-mail email_deletion=Usunięcie wiadomości e-mail
email_deletion_desc=Usunięcie tego adresu e-mail spowoduje usunięcie innych informacji związanych z Twoim kontem. Czy chcesz kontynuować? email_deletion_desc=Usunięcie tego adresu e-mail spowoduje usunięcie innych informacji związanych z Twoim kontem. Czy chcesz kontynuować?
email_deletion_success=E-mail został usunięty pomyślnie! email_deletion_success=E-mail został usunięty pomyślnie!
email_deletion_primary=Cannot delete primary email address.
add_new_email=Dodaj nowy e-mail add_new_email=Dodaj nowy e-mail
add_email=Dodaj e-mail add_email=Dodaj e-mail
add_email_confirmation_sent=Nowa wiadomość e-mail z potwierdzeniem została wysłana do '%s', proszę sprawdzić swoją skrzynkę odbiorczą w ciągu %d godzin, aby dokończyć proces potwierdzania. add_email_confirmation_sent=Nowa wiadomość e-mail z potwierdzeniem została wysłana do '%s', proszę sprawdzić swoją skrzynkę odbiorczą w ciągu %d godzin, aby dokończyć proces potwierdzania.
@@ -348,6 +357,7 @@ two_factor_or_enter_secret=Lub wprowadź sekret:
two_factor_then_enter_passcode=Następnie wprowadź kod dostępu: two_factor_then_enter_passcode=Następnie wprowadź kod dostępu:
two_factor_verify=Weryfikuj two_factor_verify=Weryfikuj
two_factor_invalid_passcode=Wprowadzony kod nie jest prawidłowy, spróbuj ponownie! two_factor_invalid_passcode=Wprowadzony kod nie jest prawidłowy, spróbuj ponownie!
two_factor_reused_passcode=Ten kod jest już używany, spróbuj ponownie!
two_factor_enable_error=Włączenie dwuetapowego uwierzytelniania nie powiodło się: %v two_factor_enable_error=Włączenie dwuetapowego uwierzytelniania nie powiodło się: %v
two_factor_enable_success=Uwierzytelnianie dwuetapowe Twojego konta zostało włączone pomyślnie! two_factor_enable_success=Uwierzytelnianie dwuetapowe Twojego konta zostało włączone pomyślnie!
two_factor_recovery_codes_title=Kody odzyskiwania uwierzytelniania dwuetapowego two_factor_recovery_codes_title=Kody odzyskiwania uwierzytelniania dwuetapowego
@@ -362,6 +372,7 @@ two_factor_disable_success=Uwierzytelnianie dwuetapowe wyłączono pomyślnie!
manage_access_token=Zarządzaj osobistymi tokenami dostępu manage_access_token=Zarządzaj osobistymi tokenami dostępu
generate_new_token=Wygeneruj nowy token generate_new_token=Wygeneruj nowy token
tokens_desc=Tokeny, które wygenerowałeś, mogą być użyte do dostępu do API Gogs. tokens_desc=Tokeny, które wygenerowałeś, mogą być użyte do dostępu do API Gogs.
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
new_token_desc=Jak na razie, każdy token zapewnia pełen dostęp do Twojego konta. new_token_desc=Jak na razie, każdy token zapewnia pełen dostęp do Twojego konta.
token_name=Nazwa tokena token_name=Nazwa tokena
generate_token=Wygeneruj token generate_token=Wygeneruj token
@@ -370,6 +381,7 @@ delete_token=Usuń
access_token_deletion=Usuwanie osobistego tokena dostępu access_token_deletion=Usuwanie osobistego tokena dostępu
access_token_deletion_desc=Usunięcie tego tokena osobistego dostęp spowoduje usunięcie wszystkich powiązanych dostępów do aplikacji. Czy chcesz kontynuować? access_token_deletion_desc=Usunięcie tego tokena osobistego dostęp spowoduje usunięcie wszystkich powiązanych dostępów do aplikacji. Czy chcesz kontynuować?
delete_token_success=Osobisty token dostępu został usunięty pomyślnie! Nie zapomnij również zaktualizować swoich aplikacji. delete_token_success=Osobisty token dostępu został usunięty pomyślnie! Nie zapomnij również zaktualizować swoich aplikacji.
token_name_exists=Token o takiej nawie już istniej.
orgs.none=Nie jesteś członkiem żadnej organizacji. orgs.none=Nie jesteś członkiem żadnej organizacji.
orgs.leave_title=Opuść organizację orgs.leave_title=Opuść organizację
@@ -391,7 +403,9 @@ owner=Właściciel
repo_name=Nazwa repozytorium repo_name=Nazwa repozytorium
repo_name_helper=Dobre nazwy repozytorium są krótkie, wpadające w pamięć i <strong>unikalne</strong>. repo_name_helper=Dobre nazwy repozytorium są krótkie, wpadające w pamięć i <strong>unikalne</strong>.
visibility=Widoczność visibility=Widoczność
unlisted=Unlisted
visiblity_helper=To repozytorium jest <span class="ui red text">prywatne</span> visiblity_helper=To repozytorium jest <span class="ui red text">prywatne</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Administrator systemu wymaga, żeby wszystkie nowe repozytoria były <span class="ui red text">Prywatne</span> visiblity_helper_forced=Administrator systemu wymaga, żeby wszystkie nowe repozytoria były <span class="ui red text">Prywatne</span>
visiblity_fork_helper=(Zmiana tej wartości wpłynie na wszystkie forki) visiblity_fork_helper=(Zmiana tej wartości wpłynie na wszystkie forki)
clone_helper=Potrzebujesz pomocy z klonowaniem? Odwiedź <a target="_blank" href="%s">Pomoc</a>! clone_helper=Potrzebujesz pomocy z klonowaniem? Odwiedź <a target="_blank" href="%s">Pomoc</a>!
@@ -417,10 +431,11 @@ mirror_last_synced=Ostatnia synchronizacja
watchers=Obserwujący watchers=Obserwujący
stargazers=Polubienia stargazers=Polubienia
forks=Forki forks=Forki
repo_description_helper=Opis repozytorium. Maksymalnie 512 znaków.
repo_description_length=Dostępne znaki
form.reach_limit_of_creation=Właściciel osiągnął limit maksymalnej ilości repozytoriów %d. form.reach_limit_of_creation=Właściciel osiągnął limit maksymalnej ilości repozytoriów %d.
form.name_reserved=Nazwa repozytorium „%s” jest zarezerwowana. form.name_not_allowed=Nazwa repozytorium lub wzór %q jest niedozwolony.
form.name_pattern_not_allowed=Wzorzec nazwy repozytorium „%s” jest niedozwolony.
need_auth=Wymaga autoryzacji need_auth=Wymaga autoryzacji
migrate_type=Typ migracji migrate_type=Typ migracji
@@ -431,6 +446,7 @@ migrate.clone_address_desc=URL może być adresem HTTP/HTTPS/GIT.
migrate.clone_address_desc_import_local=Masz także możliwość migracji repozytorium przez ścieżka serwera lokalnego. migrate.clone_address_desc_import_local=Masz także możliwość migracji repozytorium przez ścieżka serwera lokalnego.
migrate.permission_denied=Nie możesz importować lokalnych repozytoriów. migrate.permission_denied=Nie możesz importować lokalnych repozytoriów.
migrate.invalid_local_path=Ścieżka jest niepoprawna. Nie istnieje lub nie jest katalogiem. migrate.invalid_local_path=Ścieżka jest niepoprawna. Nie istnieje lub nie jest katalogiem.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Migracja nie powiodła się: %v migrate.failed=Migracja nie powiodła się: %v
mirror_from=kopia lustrzana mirror_from=kopia lustrzana
@@ -478,6 +494,8 @@ branches.stale_branches=Stare gałęzie
branches.all=Wszystkie gałęzie branches.all=Wszystkie gałęzie
branches.updated_by=Zaktualizowano %[1]s przez %[2]s branches.updated_by=Zaktualizowano %[1]s przez %[2]s
branches.change_default_branch=Zmiana domyślnej gałęzi branches.change_default_branch=Zmiana domyślnej gałęzi
branches.default_deletion_not_allowed=Cannot delete the default branch.
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
editor.new_file=Nowy plik editor.new_file=Nowy plik
editor.upload_file=Załaduj plik editor.upload_file=Załaduj plik
@@ -514,6 +532,7 @@ editor.file_changed_while_editing=Zawartość pliku została zmieniona od rozpoc
editor.file_already_exists=Nazwa pliku '%s' już istnieje w tym repozytorium. editor.file_already_exists=Nazwa pliku '%s' już istnieje w tym repozytorium.
editor.no_changes_to_show=Brak zmian do pokazania. editor.no_changes_to_show=Brak zmian do pokazania.
editor.fail_to_update_file=Tworzenie/aktualizacja pliku '%s' nie powiodła się z błędem: %v editor.fail_to_update_file=Tworzenie/aktualizacja pliku '%s' nie powiodła się z błędem: %v
editor.fail_to_delete_file=Nie można usunąć pliku '%s' z powodu błędu: %v
editor.add_subdir=Dodaj podkatalog... editor.add_subdir=Dodaj podkatalog...
editor.unable_to_upload_files=Wysyłanie plików do '%s' nie powiodło się z błędem: %v editor.unable_to_upload_files=Wysyłanie plików do '%s' nie powiodło się z błędem: %v
editor.upload_files_to_dir=Prześlij pliki do '%s' editor.upload_files_to_dir=Prześlij pliki do '%s'
@@ -634,6 +653,7 @@ pulls.cannot_auto_merge_desc=Pull request nie może być automatycznie scalony z
pulls.cannot_auto_merge_helper=Proszę scalić ręcznie, aby rozwiązać konflikty. pulls.cannot_auto_merge_helper=Proszę scalić ręcznie, aby rozwiązać konflikty.
pulls.create_merge_commit=Utwórz scalający commit pulls.create_merge_commit=Utwórz scalający commit
pulls.rebase_before_merging=Rebase przed scaleniem pulls.rebase_before_merging=Rebase przed scaleniem
pulls.commit_description=Opis commitu
pulls.merge_pull_request=Scal Pull Request pulls.merge_pull_request=Scal Pull Request
pulls.open_unmerged_pull_exists=`Nie można otworzyć ponownie ponieważ już istnieje gotowy do scalenia pull request (#%d) z tego samego repozytorium z tymi samymi informacjami.` pulls.open_unmerged_pull_exists=`Nie można otworzyć ponownie ponieważ już istnieje gotowy do scalenia pull request (#%d) z tego samego repozytorium z tymi samymi informacjami.`
pulls.delete_branch=Usuń gałąź pulls.delete_branch=Usuń gałąź
@@ -738,7 +758,7 @@ settings.tracker_issue_style=Styl nazw zewnętrznego systemu zgłaszania problem
settings.tracker_issue_style.numeric=Numeryczny settings.tracker_issue_style.numeric=Numeryczny
settings.tracker_issue_style.alphanumeric=Alfanumeryczne settings.tracker_issue_style.alphanumeric=Alfanumeryczne
settings.tracker_url_format_desc=Symbole zastępcze <code>{user} {repo} {index}</code> mogą być użyte dla nazwy użytkownika, nazwy repozytorium i numeru problemu. settings.tracker_url_format_desc=Symbole zastępcze <code>{user} {repo} {index}</code> mogą być użyte dla nazwy użytkownika, nazwy repozytorium i numeru problemu.
settings.pulls_desc=Włącz obsługę pull request, aby akceptować publiczny wkład settings.pulls_desc=Włącz żądania pobierania, aby akceptować wkład pomiędzy repozytoriami i gałęziami
settings.pulls.ignore_whitespace=Ignoruj zmiany w białych znakach settings.pulls.ignore_whitespace=Ignoruj zmiany w białych znakach
settings.pulls.allow_rebase_merge=Zezwalaj na użycie rebase do scalenia commitów settings.pulls.allow_rebase_merge=Zezwalaj na użycie rebase do scalenia commitów
settings.danger_zone=Strefa niebezpieczeństwa settings.danger_zone=Strefa niebezpieczeństwa
@@ -761,7 +781,7 @@ settings.wiki_deletion_success=Dane wiki zostały usunięte.
settings.delete=Usuń to repozytorium settings.delete=Usuń to repozytorium
settings.delete_desc=Po usunięciu repozytorium nie ma odwrotu. Upewnij się, że tego chcesz. settings.delete_desc=Po usunięciu repozytorium nie ma odwrotu. Upewnij się, że tego chcesz.
settings.delete_notices_1=- Ta operacja <strong>NIE MOŻE</strong> zostać cofnięta. settings.delete_notices_1=- Ta operacja <strong>NIE MOŻE</strong> zostać cofnięta.
settings.delete_notices_2=- This operation will permanently delete everything in this repository, including Git data, issues, comments and collaborator access. settings.delete_notices_2=- Ta operacja trwale usunie wszystko z tego repozytorium, w tym dane Git, problemy, komentarze i dostęp dla współpracowników.
settings.delete_notices_fork_1=Wszystkie forki staną się niezależne po usunięciu. settings.delete_notices_fork_1=Wszystkie forki staną się niezależne po usunięciu.
settings.deletion_success=Repozytorium zostało pomyślnie usunięte! settings.deletion_success=Repozytorium zostało pomyślnie usunięte!
settings.update_settings_success=Opcje repozytorium zostały pomyślnie zaktualizowane. settings.update_settings_success=Opcje repozytorium zostały pomyślnie zaktualizowane.
@@ -777,8 +797,10 @@ settings.collaborator_deletion_desc=Ten użytkownik nie będzie miał dostępu w
settings.remove_collaborator_success=Współpracownik został usunięty. settings.remove_collaborator_success=Współpracownik został usunięty.
settings.search_user_placeholder=Szukaj użytkownika... settings.search_user_placeholder=Szukaj użytkownika...
settings.org_not_allowed_to_be_collaborator=Organizacji nie można dodać jako współpracownika. settings.org_not_allowed_to_be_collaborator=Organizacji nie można dodać jako współpracownika.
settings.add_webhook=Dodaj webhooka
settings.hooks_desc=Webooki działają tak jak proste wywołania HTTP POST. Jeśli cokolwiek zdarzy się w Gogs, wyślemy powiadomienie do wybranego hosta. Więcej informacji można znaleźć w <a target="_blank" href="%s">przewodniku webhooków</a>. settings.hooks_desc=Webooki działają tak jak proste wywołania HTTP POST. Jeśli cokolwiek zdarzy się w Gogs, wyślemy powiadomienie do wybranego hosta. Więcej informacji można znaleźć w <a target="_blank" href="%s">przewodniku webhooków</a>.
settings.webhooks.add_new=Add a new webhook:
settings.webhooks.choose_a_type=Wybierz typ...
settings.add_webhook=Dodaj webhooka
settings.webhook_deletion=Usuń webhooka settings.webhook_deletion=Usuń webhooka
settings.webhook_deletion_desc=Usunięcie tego webooka spowoduje usunięcie powiązanych informacji i wpisów w historii. Czy chcesz kontynuować? settings.webhook_deletion_desc=Usunięcie tego webooka spowoduje usunięcie powiązanych informacji i wpisów w historii. Czy chcesz kontynuować?
settings.webhook_deletion_success=Webhook został pomyślnie usunięty! settings.webhook_deletion_success=Webhook został pomyślnie usunięty!
@@ -792,6 +814,8 @@ settings.webhook.response=Odpowiedź
settings.webhook.headers=Nagłówki settings.webhook.headers=Nagłówki
settings.webhook.payload=Zawartość settings.webhook.payload=Zawartość
settings.webhook.body=Treść settings.webhook.body=Treść
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
settings.githooks_desc=Hooki Git są obsługiwane bezpośrednio przez Git. Pliki obsługiwanych hooków z poniższej listy mogą być edytowane, aby wykonywać niestandardowe operacje. settings.githooks_desc=Hooki Git są obsługiwane bezpośrednio przez Git. Pliki obsługiwanych hooków z poniższej listy mogą być edytowane, aby wykonywać niestandardowe operacje.
settings.githook_edit_desc=Jeśli hook jest nieaktywny, zaprezentowana zostanie przykładowa treść. Pozostawienie pustej wartości wyłączy ten hook. settings.githook_edit_desc=Jeśli hook jest nieaktywny, zaprezentowana zostanie przykładowa treść. Pozostawienie pustej wartości wyłączy ten hook.
settings.githook_name=Nazwa hooka settings.githook_name=Nazwa hooka
@@ -819,10 +843,10 @@ settings.event_push=Wypchnięcie
settings.event_push_desc=Wypchnięcie (push) do repozytorium Git settings.event_push_desc=Wypchnięcie (push) do repozytorium Git
settings.event_issues=Zagadnienia settings.event_issues=Zagadnienia
settings.event_issues_desc=Zagadnienie otwarte, zamknięte, ponownie otwarte, wyedytowane, przypisane, nieprzypisane, etykieta uaktualniona, etykieta wyczyszczona, kamień milowy, kamień milowy usunięty. settings.event_issues_desc=Zagadnienie otwarte, zamknięte, ponownie otwarte, wyedytowane, przypisane, nieprzypisane, etykieta uaktualniona, etykieta wyczyszczona, kamień milowy, kamień milowy usunięty.
settings.event_issue_comment=Komentarz zagadnienia
settings.event_issue_comment_desc=Komentarz zagadnienia utworzony, wyedytowany lub usunięty.
settings.event_pull_request=Pull Request settings.event_pull_request=Pull Request
settings.event_pull_request_desc=Pull request otwarty, zamknięty, ponownie otwarty, edytowany, przypisany, nieprzypisany, etykieta zaktualizowana, etykieta wyczyszczona, kamień milowy, kamień milowy wyczyszczony; lub zsynchronizowany. settings.event_pull_request_desc=Pull request otwarty, zamknięty, ponownie otwarty, edytowany, przypisany, nieprzypisany, etykieta zaktualizowana, etykieta wyczyszczona, kamień milowy, kamień milowy wyczyszczony; lub zsynchronizowany.
settings.event_issue_comment=Komentarz zagadnienia
settings.event_issue_comment_desc=Komentarz zagadnienia utworzony, wyedytowany lub usunięty.
settings.event_release=Wydanie settings.event_release=Wydanie
settings.event_release_desc=Wydanie opublikowane w repozytorium. settings.event_release_desc=Wydanie opublikowane w repozytorium.
settings.active=Aktywny settings.active=Aktywny
@@ -852,6 +876,8 @@ settings.add_key_success=Nowy klucz wdrożenia '%s' został pomyślnie dodany!
settings.deploy_key_deletion=Utwórz klucz wdrożenia settings.deploy_key_deletion=Utwórz klucz wdrożenia
settings.deploy_key_deletion_desc=Usunięcie tego klucza wdrożenia spowoduje usunięcie powiązanego dostępu do tego repozytorium. Czy chcesz kontynuować? settings.deploy_key_deletion_desc=Usunięcie tego klucza wdrożenia spowoduje usunięcie powiązanego dostępu do tego repozytorium. Czy chcesz kontynuować?
settings.deploy_key_deletion_success=Klucz wdrożenia został pomyślnie usunięty! settings.deploy_key_deletion_success=Klucz wdrożenia został pomyślnie usunięty!
settings.description_desc=Opis repozytorium. Maksymalnie 512 znaków.
settings.description_length=Dostępne znaki
diff.browse_source=Przeglądaj źródła diff.browse_source=Przeglądaj źródła
diff.parent=rodzic diff.parent=rodzic
@@ -916,9 +942,8 @@ team_name_helper=Będziesz używał tej nazwy do wywoływania tego zespołu w dy
team_desc_helper=Czym zajmuje się ten zespół? team_desc_helper=Czym zajmuje się ten zespół?
team_permission_desc=Jaki poziom uprawnień powinien mieć ten zespół? team_permission_desc=Jaki poziom uprawnień powinien mieć ten zespół?
form.name_reserved=Nazwa organizacji „%s” jest zarezerwowana. form.name_not_allowed=Organization name or pattern %q is not allowed.
form.name_pattern_not_allowed=Wzorzec nazwy organizacji „%s” jest niedozwolony. form.team_name_not_allowed=Team name or pattern %q is not allowed.
form.team_name_reserved=Nazwa zespołu '%s' jest zarezerwowana.
settings=Ustawienia settings=Ustawienia
settings.options=Opcje settings.options=Opcje
@@ -990,12 +1015,19 @@ first_page=Pierwsza
last_page=Ostatnia last_page=Ostatnia
total=Ogółem: %d total=Ogółem: %d
dashboard.build_info=Informacje o kompilacji
dashboard.app_ver=Wersja aplikacji
dashboard.git_version=Wersja Git
dashboard.go_version=Wersja Go
dashboard.build_time=Data kompilacji
dashboard.build_commit=Zbuduj commit
dashboard.statistic=Statystyki dashboard.statistic=Statystyki
dashboard.operations=Operacje dashboard.operations=Operacje
dashboard.system_status=Stan monitora systemu dashboard.system_status=Stan monitora systemu
dashboard.statistic_info=Baza danych Gogs zawiera <b>%d</b> użytkowników, <b>%d</b> organizacji, <b>%d</b> kluczy publicznych, <b>%d</b> repozytoriów, <b>%d</b> obserwujących, <b>%d</b> polubionych, <b>%d</b> akcji, <b>%d</b> tokenów, <b>%d</b> problemów, <b>%d</b> komenatrzy, <b>%d</b> kont społecznościowych, <b>%d</b> obserwacji, <b>%d</b> mirrorów, <b>%d</b> wydań, <b>%d</b> login sources, <b>%d</b> webhooków, <b>%d</b> kamieni milowych, <b>%d</b> labels, <b>%d</b> zadań hooków, <b>%d</b> zespołów, <b>%d</b> zadań aktualizacji, <b>%d</b> załączników. dashboard.statistic_info=Baza danych Gogs zawiera <b>%d</b> użytkowników, <b>%d</b> organizacji, <b>%d</b> kluczy publicznych, <b>%d</b> repozytoriów, <b>%d</b> obserwujących, <b>%d</b> polubionych, <b>%d</b> akcji, <b>%d</b> tokenów, <b>%d</b> problemów, <b>%d</b> komenatrzy, <b>%d</b> kont społecznościowych, <b>%d</b> obserwacji, <b>%d</b> mirrorów, <b>%d</b> wydań, <b>%d</b> login sources, <b>%d</b> webhooków, <b>%d</b> kamieni milowych, <b>%d</b> labels, <b>%d</b> zadań hooków, <b>%d</b> zespołów, <b>%d</b> zadań aktualizacji, <b>%d</b> załączników.
dashboard.operation_name=Nazwa operacji dashboard.operation_name=Nazwa operacji
dashboard.operation_switch=Przełącz dashboard.operation_switch=Przełącz
dashboard.select_operation_to_run=Wybierz operację do uruchomienia
dashboard.operation_run=Uruchom dashboard.operation_run=Uruchom
dashboard.clean_unbind_oauth=Usuń niepowiązane wpisy OAuth dashboard.clean_unbind_oauth=Usuń niepowiązane wpisy OAuth
dashboard.clean_unbind_oauth_success=Wszystkie niepowiązane wpisy OAuth zostały pomyślnie usunięte. dashboard.clean_unbind_oauth_success=Wszystkie niepowiązane wpisy OAuth zostały pomyślnie usunięte.
@@ -1087,11 +1119,12 @@ repos.stars=Polubienia
repos.issues=Problemy repos.issues=Problemy
repos.size=Rozmiar repos.size=Rozmiar
auths.auth_manage_panel=Panel zarządzania uwierzytelnianiem auths.auth_sources=Źródła uwierzytelniania
auths.new=Dodaj nowe źródło auths.new=Dodaj nowe źródło
auths.name=Nazwa auths.name=Nazwa
auths.type=Typ auths.type=Typ
auths.enabled=Włączono auths.enabled=Włączono
auths.default=Domyślne
auths.updated=Zaktualizowano auths.updated=Zaktualizowano
auths.auth_type=Typ uwierzytelniania auths.auth_type=Typ uwierzytelniania
auths.auth_name=Nazwa uwierzytelniania auths.auth_name=Nazwa uwierzytelniania
@@ -1128,9 +1161,9 @@ auths.enable_tls=Włącz szyfrowanie TLS
auths.skip_tls_verify=Pomiń weryfikację protokołu TLS auths.skip_tls_verify=Pomiń weryfikację protokołu TLS
auths.pam_service_name=Nazwa usługi PAM auths.pam_service_name=Nazwa usługi PAM
auths.enable_auto_register=Włącz automatyczną rejestrację auths.enable_auto_register=Włącz automatyczną rejestrację
auths.tips=Wskazówki
auths.edit=Edytuj ustawienia uwierzytelniania auths.edit=Edytuj ustawienia uwierzytelniania
auths.activated=To uwierzytelnienie zostało aktywowane auths.activated=To uwierzytelnienie zostało aktywowane
auths.default_auth=To uwierzytelnianie jest domyślnym źródłem logowania
auths.new_success=Pomyślnie dodano nowe uwierzytelnianie '%s'. auths.new_success=Pomyślnie dodano nowe uwierzytelnianie '%s'.
auths.update_success=Ustawienia uwierzytelnienia zostały zaktualizowane pomyślnie. auths.update_success=Ustawienia uwierzytelnienia zostały zaktualizowane pomyślnie.
auths.update=Aktualizuj ustawienia uwierzytelniania auths.update=Aktualizuj ustawienia uwierzytelniania
@@ -1140,120 +1173,186 @@ auths.delete_auth_desc=To uwierzytelnienie zostanie usunięte, czy chcesz kontyn
auths.still_in_used=Ten rodzaj autentykacji jest wciąż wykorzystywany przez niektórych użytkowników. Usuń lub przekonwertuj użytkowników, aby wykorzystywali inny typ logowania. auths.still_in_used=Ten rodzaj autentykacji jest wciąż wykorzystywany przez niektórych użytkowników. Usuń lub przekonwertuj użytkowników, aby wykorzystywali inny typ logowania.
auths.deletion_success=Uwierzytelnienie zostało usunięte pomyślnie! auths.deletion_success=Uwierzytelnienie zostało usunięte pomyślnie!
auths.login_source_exist=Login '%s' już istnieje. auths.login_source_exist=Login '%s' już istnieje.
auths.github_api_endpoint=Punkt końcowy API
config.not_set=(nie ustawiono) config.not_set=(nie ustawiono)
config.server_config=Konfiguracja serwera config.server_config=Konfiguracja serwera
config.app_name=Nazwa aplikacji config.brand_name=Nazwa marki
config.app_ver=Wersja aplikacji
config.app_url=Adres URL aplikacji
config.domain=Domena
config.offline_mode=Tryb offline
config.disable_router_log=Wyłącz dziennik routera
config.run_user=Użytkownik uruchomieniowy config.run_user=Użytkownik uruchomieniowy
config.run_mode=Tryb uruchamienia config.run_mode=Tryb uruchamienia
config.git_version=Wersja Git config.server.external_url=Zewnętrzny URL
config.static_file_root_path=Ścieżka plików statycznych config.server.domain=Domena
config.log_file_root_path=Ścieżka plików dziennika config.server.protocol=Protokół
config.reverse_auth_user=Użytkownik dostarczony przez odwrotne proxy config.server.http_addr=Adres HTTP
config.server.http_port=Port HTTP
config.server.cert_file=Pliki certyfikatu
config.server.key_file=Plik klucza
config.server.tls_min_version=Minimalna wersja TLS
config.server.unix_socket_permission=Unix socket permission
config.server.local_root_url=Lokalny główny adres URL
config.server.offline_mode=Tryb offline
config.server.disable_router_log=Wyłącz dziennik routera
config.server.enable_gzip=Włącz Gzip
config.server.app_data_path=Ścieżka danych aplikacji
config.server.load_assets_from_disk=Wczytaj zasoby z dysku
config.server.landing_url=Landing URL
config.ssh_config=Konfiguracja SSH config.ssh_config=Konfiguracja SSH
config.ssh_enabled=Aktywne config.ssh.enabled=Aktywne
config.ssh_start_builtin_server=Uruchom serwer wbudowany config.ssh.domain=Exposed domain
config.ssh_domain=Domena config.ssh.port=Exposed port
config.ssh_port=Port config.ssh.root_path=Ścieżka katalogu głównego
config.ssh_listen_port=Port nasłuchu config.ssh.keygen_path=Keygen path
config.ssh_root_path=Ścieżka katalogu głównego config.ssh.key_test_path=Key test path
config.ssh_rewrite_authorized_keys_at_start=Rewrite authorized_keys At Start config.ssh.minimum_key_size_check=Minimum key size check
config.ssh_key_test_path=Ścieżka klucza testowego config.ssh.minimum_key_sizes=Minimum key sizes
config.ssh_keygen_path=Ścieżka generatora ('ssh-keygen') config.ssh.rewrite_authorized_keys_at_start=Rewrite "authorized_keys" at start
config.ssh_minimum_key_size_check=Sprawdzanie minimalnej długości klucza config.ssh.start_builtin_server=Uruchom wbudowany serwer
config.ssh_minimum_key_sizes=Minimalne rozmiary kluczy config.ssh.listen_host=Listen host
config.ssh.listen_port=Port nasłuchu
config.ssh.server_ciphers=Server ciphers
config.ssh.server_macs=Server MACs
config.ssh.server_algorithms=Server algorithms
config.repo_config=Konfiguracja repozytorium config.repo_config=Konfiguracja repozytorium
config.repo_root_path=Ścieżka repozytoriów config.repo.root_path=Ścieżka katalogu głównego
config.script_type=Typ skryptu config.repo.script_type=Typ skryptu
config.repo_force_private=Forsuj tryb prywatny config.repo.ansi_chatset=Zestaw znaków ANSI
config.max_creation_limit=Maksymalny limit utworzeń config.repo.force_private=Wymuś tryb prywatny
config.preferred_licenses=Preferowane licencje config.repo.max_creation_limit=Max creation limit
config.disable_http_git=Wyłącz HTTP Git config.repo.preferred_licenses=Wybrana licencja
config.enable_local_path_migration=Włącz lokalną ścieżkę migracji config.repo.disable_http_git=Wyłącz Git przez HTTP
config.commits_fetch_concurrency=Pobieraj zmiany w trybie równoległym config.repo.enable_local_path_migration=Enable local path migration
config.repo.enable_raw_file_render_mode=Enable raw file render mode
config.http_config=Konfiguracja HTTP config.repo.commits_fetch_concurrency=Commits fetch concurrency
config.http_access_control_allow_origin=Kontrola Dostępu Uwzględnia Źródło config.repo.editor.line_wrap_extensions=Editor line wrap extensions
config.repo.editor.previewable_file_modes=Editor previewable file modes
config.repo.upload.enabled=Upload enabled
config.repo.upload.temp_path=Upload temporary path
config.repo.upload.allowed_types=Upload allowed types
config.repo.upload.file_max_size=Upload file size limit
config.repo.upload.max_files=Upload files limit
config.db_config=Konfiguracja bazy danych config.db_config=Konfiguracja bazy danych
config.db_type=Typ config.db.type=Typ
config.db_host=Host config.db.host=Host
config.db_name=Nazwa config.db.name=Nazwa
config.db_user=Użytkownik config.db.schema=Schema
config.db_ssl_mode=Tryb SSL config.db.schema_helper=(for "postgres" only)
config.db_ssl_mode_helper=(tylko dla „postgres”) config.db.user=Użytkownik
config.db_path=Ścieżka config.db.ssl_mode=Tryb SSL
config.db_path_helper=(dla „sqlite3” i „tidb”) config.db.ssl_mode_helper=(for "postgres" only)
config.db.path=Ścieżka
config.db.path_helper=(for "sqlite3"only)
config.db.max_open_conns=Maximum open connections
config.db.max_idle_conns=Maximum idle connections
config.service_config=Konfiguracja usługi config.security_config=Security configuration
config.register_email_confirm=Wymagaj potwierdzenia e-mail config.security.login_remember_days=Login remember days
config.disable_register=Wyłącz rejestrację config.security.cookie_remember_name=Pamiętaj pliki cookies
config.show_registration_button=Pokazuj przycisk rejestracji config.security.cookie_username=Username cookie
config.require_sign_in_view=Wymagaj bycia zalogowanym config.security.cookie_secure=Enable secure cookie
config.mail_notify=Powiadomienia e-mail config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.disable_key_size_check=Wyłącz sprawdzanie minimalnego rozmiaru klucza config.security.enable_login_status_cookie=Enable login status cookie
config.enable_captcha=Włącz Captcha config.security.login_status_cookie_name=Login status cookie
config.active_code_lives=Ważność kodów aktywacyjnych config.security.local_network_allowlist=Local network allowlist
config.reset_password_code_lives=Czas życia kodu resetowania hasła
config.webhook_config=Konfiguracja webhooka config.email_config=Konfiguracja E-mail
config.queue_length=Długość kolejki config.email.enabled=Włączono
config.deliver_timeout=Limit czasu zdarzenia config.email.subject_prefix=Subject prefix
config.skip_tls_verify=Pomiń weryfikację protokołu TLS config.email.host=Host
config.email.from=Od
config.email.user=Użytkownik
config.email.disable_helo=Wyłącz HELO
config.email.helo_hostname=HELO hostname
config.email.skip_verify=Pomiń weryfikację certyfikatu
config.email.use_certificate=Use custom certificate
config.email.cert_file=Certificate file
config.email.key_file=Plik klucza
config.email.use_plain_text=Użyj zwykłego tekstu
config.email.add_plain_text_alt=Dodaj prosty tekst alternatywny
config.email.send_test_mail=Wyślij wiadomość testową
config.email.test_mail_failed=Nie udało się wysłać wiadomości testowej do '%s': %v
config.email.test_mail_sent=Wiadomość testowa została wysłana do '%s'.
config.mailer_config=Konfiguracja poczty config.auth_config=Konfiguracja uwierzytelniania
config.mailer_enabled=Aktywne config.auth_custom_logout_url=Custom logout URL
config.mailer_disable_helo=Wyłącz HELO config.auth.activate_code_lives=Activate code lives
config.mailer_subject_prefix=Subject Prefix config.auth.reset_password_code_lives=Reset password code lives
config.mailer_host=Host config.auth.require_email_confirm=Wymagaj potwierdzenia adresu e-mail
config.mailer_user=Użytkownik config.auth.require_sign_in_view=Require sign in view
config.send_test_mail=Wyślij email testowy config.auth.disable_registration=Wyłącz rejestrację
config.test_mail_failed=Nieudane wysłanie wiadomości email do '%s': %v config.auth.enable_registration_captcha=Enable registration captcha
config.test_mail_sent=Testowa wiadomość email została wysłana do '%s'. config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authentication
config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto registration
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
config.oauth_config=Konfiguracja OAuth config.user_config=Konfiguracja użytkownika
config.oauth_enabled=Aktywne config.user.enable_email_notify=Enable email notification
config.cache_config=Konfiguracja cache
config.cache_adapter=Adapter cache
config.cache_interval=Interwał pamięci podręcznej
config.cache_conn=Połączenie z pamięcią podręczną
config.session_config=Konfiguracja sesji config.session_config=Konfiguracja sesji
config.session_provider=Dostawca sesji config.session.provider=Dostawca
config.provider_config=Konfiguracja dostawcy config.session.provider_config=Provider config
config.cookie_name=Nazwa ciasteczka config.session.cookie_name=Ciasteczka
config.enable_set_cookie=Włącz ciasteczka config.session.https_only=Tylko HTTPS
config.gc_interval_time=Interwał odśmiecania config.session.gc_interval=Interwał GC
config.session_life_time=Czas życia sesji config.session.max_life_time=Maksymalny czas życia
config.https_only=Tylko HTTPS config.session.csrf_cookie_name=CSRF cookie
config.cookie_life_time=Czas życia ciasteczka
config.cache_config=Konfiguracja cache
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=Konfiguracja HTTP
config.http.access_control_allow_origin=Access control allow origin
config.attachment_config=Attachment configuration
config.attachment.enabled=Włączono
config.attachment.path=Ścieżka
config.attachment.allowed_types=Dozwolone typy
config.attachment.max_size=Limit rozmiaru
config.attachment.max_files=Limit plików
config.release_config=Konfiguracja wydania
config.release.attachment.enabled=Attachment enabled
config.release.attachment.allowed_types=Attachment allowed types
config.release.attachment.max_size=Attachment size limit
config.release.attachment.max_files=Attachment files limit
config.picture_config=Ustawienia obrazów config.picture_config=Ustawienia obrazów
config.picture_service=Serwis obrazów config.picture.avatar_upload_path=User avatar upload path
config.disable_gravatar=Wyłącz Gravatara config.picture.repo_avatar_upload_path=Repository avatar upload path
config.enable_federated_avatar=Włącz zewnętrzne avatary config.picture.gravatar_source=Źródło Gravatar
config.picture.disable_gravatar=Wyłącz Gravatar
config.picture.enable_federated_avatar=Enable federated avatars
config.mirror_config=Konfiguracja serwera lustrzanego
config.mirror.default_interval=Domyślny interwał
config.webhook_config=Konfiguracja webhooka
config.webhook.types=Typy
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Pomiń weryfikację TLS
config.git_config=Konfiguracja Git config.git_config=Konfiguracja Git
config.git_disable_diff_highlight=Wyłączyć wyróżnianie składni diff config.git.disable_diff_highlight=Disable diff syntax highlight
config.git_max_diff_lines=Maksymalna ilość linii diff (dla pojedynczego pliku) config.git.max_diff_lines=Diff lines limit (for a single file)
config.git_max_diff_line_characters=Maksymalna ilość znaków diff (dla pojedynczego pliku) config.git.max_diff_line_characters=Diff characters limit (for a single line)
config.git_max_diff_files=Maksymalna ilość plików diff (które zostaną wyświetlone) config.git.max_diff_files=Diff files limit (for a single diff)
config.git_gc_args=Argumenty GC config.git.gc_args=Argumenty GC
config.git_migrate_timeout=Limit czasu migracji config.git.migrate_timeout=Limit czasu migracji
config.git_mirror_timeout=Limit czasu aktualizacji kopii lustrzanej config.git.mirror_timeout=Mirror fetch timeout
config.git_clone_timeout=Limit czasu operacji klonowania config.git.clone_timeout=Clone timeout
config.git_pull_timeout=Limit czasu dla operacji pull config.git.pull_timeout=Pull timeout
config.git_gc_timeout=Limit czasu odśmiecania pamięci config.git.gc_timeout=GC timeout
config.lfs_config=LFS configuration
config.lfs.storage=Magazyn
config.lfs.objects_path=Ścieżka obiektów
config.log_config=Konfiguracja dziennika config.log_config=Konfiguracja dziennika
config.log_file_root_path=Ścieżka plików dziennika
config.log_mode=Tryb config.log_mode=Tryb
config.log_options=Ustawienia config.log_options=Ustawienia
@@ -1284,7 +1383,6 @@ notices.delete_success=Powiadomienia systemowe zostały pomyślnie usunięte.
[action] [action]
create_repo=tworzy repozytorium <a href="%s">%s</a> create_repo=tworzy repozytorium <a href="%s">%s</a>
fork_repo=rozwidlone repozytorium do <a href="%s"> %s</a>
rename_repo=zmienia nazwę repozytorium <code>%[1]s</code> na <a href="%[2]s">%[3]s</a> rename_repo=zmienia nazwę repozytorium <code>%[1]s</code> na <a href="%[2]s">%[3]s</a>
commit_repo=wypycha do <a href="%[1]s/src/%[2]s">%[3]s</a> w <a href="%[1]s">%[4]s</a> commit_repo=wypycha do <a href="%[1]s/src/%[2]s">%[3]s</a> w <a href="%[1]s">%[4]s</a>
compare_commits=Zobacz porównanie tych %d commitów compare_commits=Zobacz porównanie tych %d commitów
@@ -1301,6 +1399,10 @@ create_branch=stworzył nową gałąź <a href="%[1]s/src/%[2]s">%[3]s</a> at <a
delete_branch=usunął gałąź <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> delete_branch=usunął gałąź <code>%[2]s</code> at <a href="%[1]s">%[3]s</a>
push_tag=taguje <a href="%s/src/%s">%[2]s</a> w <a href="%[1]s">%[3]s</a> push_tag=taguje <a href="%s/src/%s">%[2]s</a> w <a href="%[1]s">%[3]s</a>
delete_tag=usunięty tag <code>%[2]s</code> % <a href="%[1]s">[3]s</a> delete_tag=usunięty tag <code>%[2]s</code> % <a href="%[1]s">[3]s</a>
fork_repo=rozwidlone repozytorium do <a href="%s"> %s</a>
mirror_sync_push=zsynchronizowano commit z <a href="%[1]s/src/%[2]s">%[3]s</a> na <a href="%[1]s">%[4]s</a> z kopii lustrzanej
mirror_sync_create=zsynchronizowano nowy odnośnik <a href="%s/src/%s">%[2]s</a> to <a href="%[1]s">%[3]s</a> z mirrora
mirror_sync_delete=zsynchronizowano i usunięto odnośnik <code>%[2]s</code> at <a href="%[1]s">%[3]s</a> z mirrora
[tool] [tool]
ago=temu ago=temu
@@ -1322,6 +1424,7 @@ months=%d miesięcy %s
years=%d lat %s years=%d lat %s
raw_seconds=sekund raw_seconds=sekund
raw_minutes=minut raw_minutes=minut
raw_hours=godziny
[dropzone] [dropzone]
default_message=Upuść pliki tutaj lub kliknij, aby przesłać. default_message=Upuść pliki tutaj lub kliknij, aby przesłać.

Some files were not shown because too many files have changed in this diff Show More