Compare commits

..

1900 Commits

Author SHA1 Message Date
Joe Chen
8c21874c00 release: remove dev version notion 2023-02-25 20:33:19 +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
Unknwon
2978bb1773 README: update sponsors
[CI SKIP]
2018-03-30 23:26:48 -04:00
Unknwon
0152e12172 locale: sync from Crowdin 2018-03-30 23:19:20 -04:00
Unknwon
38d73a4be6 .gopmfile: delete as no longer used
[CI SKIP]
2018-03-30 22:52:05 -04:00
Unknwon
34bd04f925 MISC: fix typo and grammar
Reference: 932490d7f1 (commitcomment-28344918)
2018-03-30 04:40:13 -04:00
Unknwon
17d789a785 pkg/mailer: support custom mail subject prefix (#4524) 2018-03-30 03:52:23 -04:00
Unknwon
63a263f542 templates/admin/config: show SSH.StartBuiltinServer 2018-03-30 01:42:35 -04:00
Unknwon
932490d7f1 conf: add option to rewrite authorized_keys file at start (#4435)
Added config option '[server] REWRITE_AUTHORIZED_KEYS_AT_START'.
2018-03-30 01:32:18 -04:00
Unknwon
a855abf8c0 models: rename RewriteAllPublicKeys -> RewriteAuthorizedKeys 2018-03-30 01:26:36 -04:00
Unknwon
0d2398aaff bindata: update 2018-03-29 05:58:31 -04:00
Unknwon
c17a6ff533 templates/repo: show quick guide to people with write permission (#4646)
Used to only show people who has admin permission.
2018-03-29 05:57:11 -04:00
Rebecca Turner
c3c7944d79 conf: default to disabling federated avatar lookup (#5126)
It's a fun feature but `ENABLE_FEDERATED_AVATAR` being true by default
leads to confusion and huge slowdowns (see #2838, #980, #914) --- it's
unexpected that Gogs requires DNS configured (?) for avatars.

Avatar lookup is a niche feature that I don't believe should be enabled
by default given how prone it is to causing problems.
2018-03-29 05:48:53 -04:00
Unknwon
75555585e8 models/pull: fix rebase merging no effect (#5051) 2018-03-21 19:11:36 -04:00
Unknwon
28e0003a9a templates/repo/branches: escape pound in branch name (#4874) 2018-03-20 20:11:02 -04:00
Jorge Maldonado Ventura
2818ce4632 templates: make dropdowns menus work when JavaScript is disabled (#4780)
* Make dropdowns menus work when JavaScript is disabled

* Update head.tmpl

* Update head.tmpl
2018-03-20 20:04:34 -04:00
Unknwon
52ee796d6d repo_branch: fix SQL builder (#5054) 2018-03-20 19:06:13 -04:00
Unknwon
0f737f2999 vendor: update gopkg.in/clog.v1 2018-03-20 00:48:21 -04:00
William Hilton
6a185e94b9 repo/http: add CORS headers to allow clone/push from browser agents (#4970) 2018-03-14 11:08:00 -04:00
Unknwon
ba0a78da2a templates/repo/branches: escape pound in branch name (#4874) 2018-03-12 15:27:27 -04:00
Dennis Chen
f0bbcef3a4 api: fix nil pointer dereference on repo/forks (#4633)
Sets BaseRepo value for each resulting fork in GetForks().
Finds correct permissions for parent repository in APIFormat().

The output JSON is a little redundant, perhaps we should offer a
different view of the api.Repository without the Parent attribute?

Signed-off-by: Dennis Chen <barracks510@gmail.com>
2018-03-12 15:03:51 -04:00
Unknwon
d7280f82ac locale: sync from Crowdin 2018-03-12 09:23:29 -04:00
m2nlight
aa53d0978c models: add ROW_FORMAT=DYNAMIC when creating table for supports mysql 5.6 (#4913)
* Add ROW_FORMAT=DYNAMIC when creating table for supports mysql 5.6 (fix #4894)

* Update models.go

Rename NewEngine2 to NewEngineWithParams

* Rename NewEngine2 to NewEngineWithParams

Please update vendor when https://github.com/go-xorm/xorm/pull/798 closed.

* Update dialect_mysql.go

* Update dialect_mysql.go

* Update models.go
2018-03-09 15:44:07 -05:00
Julian Xhokaxhiu
ffdd8b3afa docker: enable Automated builds for aarch64 ( ARM64 ) platforms (#5058)
* Enable Automated builds for aarch64

* Native aarch64 build

* Move to the new organization

* Try to build it with latest go binary

* Rebuild using Go 1.10
2018-03-09 13:05:33 -05:00
Unknwon
86d249eb16 migrations: remove unused function and fix compile error 2018-03-09 00:33:40 -05:00
Unknwon
28f74cf1c6 vendor: update github.com/go-xorm/xorm (#4913) 2018-03-09 00:26:47 -05:00
Unknwon
83655d5c00 vendor: update github.com/go-xorm/core (#4913) 2018-03-09 00:25:05 -05:00
Unknwon
63eaac67a6 repo: improve error handling for PR #4803 2018-03-08 07:22:14 -05:00
Unknwon
1f7983059a models: move ErrBranchNotExist to errors package 2018-03-08 07:15:55 -05:00
bayangan1991
51e087fd87 repo: disallow web ui to delete protected branch after PR merged (#4803)
* Disallow web ui to delete protected branch

* Fix for branches not yet protected

Had to change how error was handled. If a branch had not yet been protected the error would be generated.

Reworked to start as false and then use the protected if it was found.
2018-03-08 07:11:34 -05:00
Markus Hauschild
679147cd5d pkgr: update spec to build on Debian 9 (Stretch) (#5083) 2018-03-08 02:14:18 -05:00
Unknwon
40eb652cfa public/plugins: update notebookjs to 0.3.0 (#5077) 2018-03-08 02:12:04 -05:00
Ruben Vermeersch
f4e4ea1374 public: update notebookjs to 0.3.0 (#5084)
Fixes #5077
2018-03-08 02:06:57 -05:00
James
199d67581a templates/user/dashboard/issues: show labels to each issue (#4976)
* add issue labels

* remove hyperlink from issue label

* wrap labels in right aligned span

* put issues with div

put the issue labels within a div so they don't interfere with the number of comments
2018-03-07 06:39:38 -05:00
Unknwon
49bd893a77 bindata: update changes from pull requests 2018-03-06 17:22:27 -05:00
Andres D
8729a60c1d templates/user/auth/login: disable password autocomplete (#5068)
As gogs can be linked with PAM it is recommended to disable the autocomplete on the password input.
2018-03-06 17:20:38 -05:00
Wendell Sun
e4f187cd3d models: bug fix for query protected branches (#5054)
Signed-off-by: Wendell Sun <iwendellsun@gmail.com>
2018-03-06 17:11:31 -05:00
Larry Li
f9c706e31b templates/user/settings: fix delete email button (#4998) 2018-03-06 17:03:43 -05:00
Anton Kazarinov
c5728291ba conf/gitignore: add PhpStorm and WebStorm (#4974) 2018-03-06 16:49:14 -05:00
Sanxing Chen
68d22e78bf templates: update year in footer (#4966)
Happy new year!
2018-03-06 16:47:35 -05:00
Douglas Thrift
0bfce7aca4 repo/commit: fix file commit history pagination (#4965)
- The `commits_table.tmpl` pagination uses a `$.FileName` variable in
  order to generate the next/previous URLs, but it seems like that
  variable was no longer being populated in `renderCommits`.
2018-03-06 16:46:53 -05:00
Drahoslav Bednář
7faa2356d8 pkg/context: add doctype to go-get=1 response (#4938) 2018-03-06 16:43:48 -05:00
Arnie97
2a8a293c7c pkg/tool: use identicon image as the default gravatar (#4934) 2018-03-06 16:43:00 -05:00
Flávio Monteiro
f3e8352193 locale: update TRANSLATORS (#4908) 2018-03-06 16:37:28 -05:00
kaajavi
ca874ba8c7 templates/repo: fix wrong branch url in branches view (#4902) 2018-03-06 16:35:24 -05:00
Unknwon
f274f76607 vendor: update github.com/go-xorm/core
Related #4642
2018-03-06 05:27:04 -05:00
Unknwon
a8b9cefa73 ci: add Go 1.10 2018-03-06 01:31:12 -05:00
Unknwon
b9e4a052b8 vendor: update gopkg.in/macaron.v1 2018-03-06 01:25:55 -05:00
Unknwon
4a669f5478 web: support HTTP HEAD requests (#2857) 2018-03-06 01:21:13 -05:00
Unknwon
ade8aab43f locale: sync from Crowdin
Added Indonesian and Persian
2018-03-05 04:37:44 -05:00
Unknwon
17d2a9c435 vendor: update github.com/gogits/git-module 2018-03-02 02:17:04 -05:00
Unknwon
6f2347fc71 locale: sync from Crowdin
Fixes #4811
2017-11-22 14:46:14 -05:00
Unknwon
dd245fe8bd pull_request: fix changes not pushed to upstream if between two repositories (#4890) 2017-11-22 14:12:52 -05:00
m2nlight
f12c058b78 models: update mySQL charset=utf8mb4 (#4880)
* Add utf8mb4 to connStr for mysql. fix #4131

* Update models.go. charset=utf8mb4 for mysql.

charset=utf8mb4 for mysql.
2017-11-22 13:42:30 -05:00
Robin Alexander Richtsfeld
3cba8778b2 scripts: fix overextending of variable name (#4888) 2017-11-22 13:40:38 -05:00
Unknwon
1c33c936e6 MISC: add Discord invite link to README
[CI SKIP]
2017-11-21 13:27:39 -05:00
m2nlight
67d67289c7 models: add utf8mb4 to connStr for mysql (#4878) 2017-11-21 00:25:36 -05:00
Unknwon
f4ab9f9932 css: fix UI breaks 2017-11-19 16:56:41 -05:00
Unknwon
b752fe6808 MISC: bump version 2017-11-19 13:29:06 -05:00
Unknwon
114677b747 bindata: update 2017-11-19 12:49:46 -05:00
无闻
9362b9fdfe cmd/hook: fix custom hook cannot be executed on Windows (#4255)
This solution still requires the server installed git-bash.
2017-11-18 21:45:29 -05:00
Unknwon
f48921c256 README: update numer of language supported
[CI SKIP]
2017-11-18 01:51:43 -05:00
Unknwon
51e0eef11e locale: sync from Crowdin 2017-11-18 01:27:56 -05:00
Ross Williams
925c2a2ca2 docker: symlink fixes (#4747)
* Prevent circular links (symlinks) from being created:
	* /data/gogs/log/log -> /data/gogs/log
	* /data/gogs/data/data -> /data/gogs/data
	* /data/git/git -> /data/git
2017-11-18 00:50:07 -05:00
Yen Chi Hsuan
f1465b6847 locale: fix the language name for zh_TW (#4807) 2017-11-18 00:48:07 -05:00
Ryan Chang
5260d70b19 templates: fix typo in repo/home.tmpl (#4845) 2017-11-18 00:47:48 -05:00
33MHz
339fd9c5a4 locale: fix English grammar for delete repository dialog (#4862)
* fix typo in en-US delete dialog

* fix typo in en-GB delete dialog

* improve en-GB delete dialog language

* improve en-US delete dialog language
2017-11-18 00:47:20 -05:00
Unknwon
0f14b92bce MISC: minor fixes in webhook 2017-11-18 00:38:46 -05:00
Unknwon
43d6ad5fda pull: fix after commit ID is not latest commit in the base branch (#4442) 2017-11-18 00:38:06 -05:00
Unknwon
667c40c3de css: fix minor table issue 2017-11-17 00:12:59 -05:00
Unknwon
3b8b8a2ee3 pull_request: able to ignore whitespace when check conflict (#4834) 2017-11-16 22:22:38 -05:00
Unknwon
6f04ee879c auth/ldap: allow placeholder %s for BindDN (#2526) 2017-11-16 19:32:33 -05:00
Unknwon
e1e76d3f88 admin/config: add UI for [http] section (#3987) 2017-11-16 19:03:46 -05:00
Unknwon
221aa8968a CI: add go 1.9.x 2017-11-16 18:44:54 -05:00
Unknwon
86931f546f repo: fix go-get meta tags (#4832)
The first part in go-import should be the root import path. It
included subpath when 'go get' with a subpath and was not correct.
2017-11-16 18:43:03 -05:00
Unknwon
ae40bb00b3 vendor: update github.com/gogits/git-module (#4855) 2017-11-16 13:13:28 -05:00
Unknwon
3dd93f5533 vendor: update github.com/gogits/git-module 2017-11-16 00:04:07 -05:00
Unknwon
181dc5d75e editor: remove out of sync branch before checkout again
If a branch was deleted from server, sometimes it is not reflected
on local copy. Therefore, we need to remove the branch with same
name if it is out of sync and then checkout to correct version.
2017-11-16 00:03:35 -05:00
Mohammad Gholami
ae4c4708ad locale: update TRANSLATORS (#4866)
Crowdin contributor
2017-11-15 23:45:24 -05:00
Unknwon
34c2e52bd5 repo/pull: allow rebase before merging (#4805) 2017-11-15 23:28:31 -05:00
mharinder
5cd1fdeb9e pull: add an option to use rebase for merging pull requests
For DVCS, either merge or rebase works for getting new code in a pull
request in the main branch.

The rebase workflow produces a linear history which is cleaner, and
more bisect-able.

This commit adds a repo-level option to enable the rebase workflow. Once
enabled, "Merge Pull Request" will be replaced by
"Rebase and Merge Pull Request" which does exactly what the user wants.
It's unlikely a project wants a mixed-use of both rebase and merge
workflows, therefore the feature is not implemented as a drop-down
button like what GitHub does
(https://github.com/blog/2243-rebase-and-merge-pull-requests).
2017-11-15 23:28:23 -05:00
Unknwon
dbe6de313e public: update Semantic UI 2.2.10 -> 2.2.13 2017-11-15 21:59:47 -05:00
Anton Antonov
77c77fbd42 api: add endpoint /api/v1/user/orgs (#4835)
* Add API endpoint /api/v1/user/orgs

The difference between this endpoint and
/api/v1/admin/users/<username>/orgs,
is that here you're creating a repo with the `user`
that corresponds to the API token you're using.

* Extract duplicate API org creation
2017-11-13 22:27:30 -05:00
Unknwon
9b4054f1fc locale: sync from Crowdin 2017-11-05 23:59:12 -05:00
Unknwon
af3911b833 MISC: update README and migration comment 2017-10-22 19:29:29 -04:00
Unknwon
4258bf3d54 user/auth: fix page not redirect after login 2017-10-22 19:29:17 -04:00
Unknwon
4d1d66d906 Bump version 2017-10-15 00:12:52 -04:00
Unknwon
b727e0be71 SECURITY: fix branch name persistent XSS
Reported by Carl Hattenfels.
2017-10-15 00:07:46 -04:00
Unknwon
ea313d0c1e SECURITY: HTML injection in user search API
Reported by Tim Hawes.
2017-10-14 23:53:20 -04:00
Unknwon
c1507eda45 locale: sync from Crowdin 2017-10-14 04:19:24 -04:00
Robert Beal
ce7496aec9 docker: allow setting UID and GID when running a container (#4776)
* Allow setting the UID and GID when running a docker container via shadow

* Disable password login via usermod (fix leaving user in insecure state)
2017-10-13 16:26:39 -04:00
Josef Kemetmüller
b16c12f67b cmd/admin: add subcommands for all admin dashboard actions (#4813) 2017-10-10 17:02:44 -04:00
Unknwon
1b24e6ed76 locale: sync from Crowdin 2017-09-25 20:29:10 -04:00
Athurg Feng
52f3833811 Add Dingtalk webhook support (#4773)
* Add dingtalk webhook into html template

* Add Dingtalk's icon

* Insert dingtalk into repo's webhook page template

* Insert dingtalk into org's webhook page

* Add dingtalk into default webhook config

* Add locale string for add_dingtalk_hook_desc

* Update bindata

* Add dingtalk webhook form validator

* Add dingtalk hook task

* Add dingtalk hook create handler

* Add dingtalk hook edit handler

* Add dingtalk router

* Add dingtalk webhook task skeleton

* Add markdown link formatter

* Add Dingtalk ActionCard create wrapper

* Add support for dingtalk create event payload

* Add support for dingtalk delete event payload

* Add support for dingtalk fork event payload

* Add support for dingtalk push event payload

* Add support for dingtalk issue event payload

* Add support for dingtalk issue comment payload

* Add support for dingtalk pull event payload

* Add support for dingtalk release event payload
2017-09-21 14:32:48 -04:00
Unknwon
b1100b5e34 locale: sync from Crowdin 2017-08-15 18:20:28 -04:00
Sb
ab2c6cb008 models: fix #4692 and typo in comments (#4695) 2017-08-13 02:11:48 -04:00
Unknwon
f2c3f4a944 locale: sync from Crowdin 2017-07-30 02:45:13 -04:00
Unknwon
6bc11c4450 hook: fix email not sent after push (#4430)
Turns out mail service was not initialized at all, also mail must
be sent in sync in hook mode before program exits.
2017-07-27 16:53:02 -04:00
Unknwon
643c85e9c8 routes/home: minor code improve 2017-07-18 22:09:57 -04:00
Unknwon
ee9950ec2f explore: fix total repository number and page number do not match (#4441)
Because in the final repository list we use Distinct to remove
duplicates, but didn't do so when count total number of repositories.
2017-07-18 22:07:40 -04:00
Unknwon
dc10594d7b repo: fix cannot fork repository (#4572)
Should not load attributes if repository not found in HasForkedRepo.
2017-07-18 12:56:23 -04:00
Unknwon
e02fac4968 repo: fix panic on pull request submit (#4572) 2017-07-14 18:51:23 -04:00
Julian Xhokaxhiu
5a88546a80 docker: enable Automated builds for rpi (#4431)
* Enable Automated builds for rpi

* Rename the file to fit only for Docker Hub

* Update the binary to v2.9.0+resin1

* Restore default status

* Commit as new file

In order to avoid breaking native builds
2017-07-14 18:04:19 -04:00
Unknwon
f67d6bbca3 repo/diff: fix line number in split view template (#4584) 2017-07-14 17:02:45 -04:00
Unknwon
c970c4ee41 css: not include line numbers in diff selection (#4584)
Changed template file in order to make CSS work properly.
2017-07-14 16:50:49 -04:00
Unknwon
3a6623104f Makefile: correct errors 2017-07-14 16:48:55 -04:00
Unknwon
b18a2bdcd3 locale: sync from Crowdin 2017-07-14 16:48:41 -04:00
Unknwon
d09eaef542 locale: sync from Crowdin 2017-07-09 21:38:11 -04:00
Unknwon
13cca8a66a models/comment: remove unused SQL parameter (#4586) 2017-06-27 20:39:59 -04:00
Unknwon
8ed2330d6e issue_comment: fix pg syntax ambiguous (#4586)
Also handle error related to time parsing.
2017-06-27 20:21:36 -04:00
Andy Hochhaus
261237745f api: fix ListIssueComments API (#4587) 2017-06-27 19:59:41 -04:00
Unknwon
c9d76a381b css: update less (#4584) 2017-06-27 15:21:14 -04:00
Einar
2961afe8fb css: not include line numbers in diff selection (#4584) 2017-06-27 15:08:19 -04:00
Unknwon
ea03bee1b9 locale: sync from Crowdin 2017-06-27 14:45:10 -04:00
Unknwon
d1a96c2543 cmd/restore: skip non existent directories in backup archive (#4413) 2017-06-25 01:16:32 -04:00
Unknwon
11b1498a6e api/repo: load attributes when listing user repositories (#4565) 2017-06-21 17:41:18 -04:00
Unknwon
f59500a90b locale: sync from Crowdin 2017-06-20 00:10:10 -04:00
Credomane Evonguard
3df25fadfa scripts: fix LSB init scripts so gogs starts when using mysql/postgresql for database (#4561) 2017-06-14 20:37:32 -04:00
Unknwon
0e6a6bf880 Refactoring: remove sessionRelease()
XORM supports automatic roll back in session Close() already.
2017-06-11 03:06:36 -04:00
Unknwon
e1f01305d8 vendor: update github.com/go-macaron/binding (#4428) 2017-06-11 02:59:49 -04:00
Unknwon
23b83cb736 pkg/process: fix potential race condition
Following conditions were not protected:
1. Use and increase next pid
2. Append and remove process from the list
2017-06-11 02:28:08 -04:00
Unknwon
e16196124e setting: disable SSH minimum key size check when not eligible (#4507) 2017-06-11 02:06:26 -04:00
Unknwon
ab2197bc75 random: some code simplify 2017-06-11 00:56:31 -04:00
Unknwon
a887e475e3 repo: change action visibility when repository visibility changed (#4414) 2017-06-11 00:43:56 -04:00
Unknwon
4400d2fdd9 Refactoring: rename package routers -> routes 2017-06-11 00:34:14 -04:00
Unknwon
6197a7639a locale: sync from Crowdin 2017-06-10 01:43:18 -04:00
Unknwon
91f65cedc8 repo/view: trim Windows line ending when display content (#4546) 2017-06-09 20:05:04 -04:00
Unknwon
7b85ee4954 vendor: update github.com/gogits/git-module (#4475) 2017-06-08 16:56:09 -04:00
Unknwon
1af01f5e30 restore: create data directory before restoring data files (#4413) 2017-06-08 16:26:56 -04:00
Unknwon
3efc0d8681 repo: load base repository for loadAttributes 2017-06-08 16:18:04 -04:00
Unknwon
09f2cbfb18 api/repo: response full API format for search results (#4522) 2017-06-08 15:53:19 -04:00
Unknwon
88791089ed locale: sync from Crowdin 2017-06-08 14:11:25 -04:00
Unknwon
089eb1a099 Change required version to Go 1.6 2017-06-07 21:44:18 -04:00
Unknwon
b40dc550ed vendor: update github.com/go-xorm/* (#4419) 2017-06-07 01:19:32 -04:00
Unknwon
c210984b40 repo: improve relative path detection (#4366) 2017-06-06 16:06:28 -04:00
Unknwon
455dc072ba repo: use BranchLink instead of TreeLink (#4366) 2017-06-06 15:50:12 -04:00
Unknwon
a851b77ac9 markup: able to display image from IPython notebook (#4366) 2017-06-06 15:41:27 -04:00
Simon Dann
e9a2b72ddb models/repo: modify keyword search to include description for #4287 (#4548)
* Modified repository keyword search to include description for #4287

* Replacing Where with And for #4548
2017-06-06 06:23:42 -04:00
Unknwon
c0be055541 api/repo: fix admin migrate repo for non-org users (#4479) 2017-06-05 17:11:57 -04:00
无闻
51d7f1264b api: GitHub compliance (#4549)
* Add undocumented endpoint for /repositories/:id

* GitHub API Compliance
2017-06-05 15:34:11 -04:00
Unknwon
3359b942b3 vendor: update github.com/gogits/git-module 2017-06-05 13:35:13 -04:00
Unknwon
2155ef0208 README: add GitPitch 2017-06-05 00:59:08 -04:00
Unknwon
36d6450977 repo/pull: detect case when no merge base found (#4434) 2017-06-05 00:10:53 -04:00
Unknwon
02a576a6a0 locale: update translations 2017-06-04 14:55:55 -04:00
Unknwon
2478b87432 Refactoring: rename ctx -> c 2017-06-03 07:26:09 -04:00
Unknwon
e33c714073 repo: always response go-get meta when requested (#1878) 2017-06-03 06:54:06 -04:00
Unknwon
f4d61ac6d2 templates: fix version 2017-06-03 06:52:45 -04:00
Unknwon
5c10eff67f bindata: regenerate 2017-06-03 06:51:16 -04:00
Unknwon
239dd978ff repo: support go get subpkg (#1878) 2017-06-03 06:50:09 -04:00
Unknwon
af4cf463f5 css: fix fluid container for spilt diff view 2017-06-03 04:34:01 -04:00
Peter Mescalchin
21c1b8d834 conf: rename attachment toggle from ENABLE to ENABLED (#4474) 2017-06-03 03:02:55 -04:00
Unknwon
16913ba814 css: start using fixing width container
Get rid of responsive issue.

Also fixes #4527.
2017-06-03 02:58:54 -04:00
Unknwon
6bb9c442b2 issue: fix updated_unix is not updated for new comments (#4462) 2017-06-02 17:30:15 -04:00
Unknwon
c407921644 orgmode: recover panic from third-party package 2017-06-02 17:19:06 -04:00
Unknwon
a1411c36de vendor: update github.com/gogits/go-gogs-client 2017-06-02 14:26:43 -04:00
Unknwon
c69fa18434 repo: expose more fields to API format (#4484) 2017-06-02 14:26:34 -04:00
Unknwon
4cb01fe332 locale: add Hungarian 2017-06-01 23:41:58 -04:00
Lilian Besson
612a7e76f1 cmd/admin: fix typo Preform → Perform (#4540)
Just an English typo in the command line help.
2017-05-31 07:10:42 -04:00
Simon Dann
bf060387af ui: fix emoji not rendered in commits table (#4440) 2017-05-29 23:46:43 -04:00
Unknwon
0778d7de80 vendor: update github.com/msteinert/pam (#4216) 2017-05-29 23:43:40 -04:00
Jonas Östanbäck
9085c3b73d repo/download: fix for downloading zero bytes files. (#4436)
Allocated buffer served to client and not properly truncated to
number of bytes read.

Signed-off-by: Jonas Östanbäck <jonas.ostanback@gmail.com>
2017-05-29 23:28:38 -04:00
BartWillems
306ba917ea conf: made the default webhook timeout duration longer. (#4423)
A 5 seconds timeout is too low and can cause random timeouts in certain setups.
2017-05-29 23:27:02 -04:00
Richard Bukovansky
1a3a303f8d locale: better explenation for team membership and granted access (#4417)
As discussed here https://crowdin.com/translate/gogs/1/enus-cs#378 I'm suggesting this update.
2017-05-29 23:25:21 -04:00
Pablo Saavedra
5906268917 models/org_team: getUserTeams uses includes always -1 in the IN statement (#4412)
Ensure that the IN clause contains one value at least. The idea is avoid a
syntax error in the SQL sentence and rollbacks in the transactions.
For example:

    ERROR:  syntax error at or near ")"
    LINE 1: ...RE ... and team.id IN ();

We will always add the -1 value in the IN list.
2017-05-29 23:24:37 -04:00
Unknwon
a1d411a018 ldap: minor fix for PR #4398 2017-05-29 23:18:34 -04:00
aboron
dbb7e5464b ldap: add check for group membership (#4398)
* Add standard LDAP group membership checking.

* Fix formatting, typo, grammer, and syntax errors

* Debugging done.
Gave up on locale file edits.
2017-05-29 22:33:50 -04:00
Unknwon
11ad64f6cb backup: use datetime string as default archive name
Because unix timestamp is not very human readable.
2017-05-29 16:51:30 -04:00
Unknwon
4e87e62d5c models/repo_collaboration: cannot change permissions of collaborators (#4512) 2017-05-29 16:33:18 -04:00
Unknwon
a5bd095c30 locale: add en-GB 2017-05-25 12:53:28 -04:00
Unknwon
b17995a332 restore: reset table sequences for PostgreSQL (#4357) 2017-05-21 04:37:37 -04:00
Unknwon
ce6e8ed8fe models: remove redundant tags for primary keys 2017-05-21 04:36:41 -04:00
Jon Lundy
1755025e7f models/login_source: add check for user for create/update on LDAP (#4405)
* Add check for user for create/update

* Update login_source.go

* Update login_source.go
2017-05-21 02:14:28 -04:00
Gibheer
1a4ba4c390 models/ssh_key: don't run ssh-keygen check if disabled (#4519)
* don't load key when key size should not be checked

This makes it possible for users with incompatible ssh-keygen versions
to just disable the check completely without running into errors.

* add proper ed25519 constant

The x/crypto/ssh library has support for ed25519 now, so it is possible
to support it.
2017-05-20 08:41:57 -04:00
spacetourist
0a6ceabb9b Allow configurable HTTPS SSL/TLS version(#4451) 2017-05-20 08:31:25 -04:00
Unknwon
d71a8fece8 feature/org-mode: fix compile error 2017-05-17 18:50:14 -04:00
Unknwon
5202b7da48 vendor: add github.com/chaseadamsio/goorgeous 2017-05-17 18:46:23 -04:00
Unknwon
1b5a418fd3 modules/markup: initial support for org-mode (#4373) 2017-05-17 18:46:23 -04:00
Unknwon
a11044f789 locale: sync from Crowdin 2017-05-17 18:37:25 -04:00
Benjamin
4b2bf41381 locale: added missing word and fixed a typo (#4490) 2017-05-17 18:31:02 -04:00
rouzier
07d5badfed cmd/update: fix typo (#4492) 2017-05-17 18:30:19 -04:00
peter zhang
10ee2e0dad vendor: update xorm version for fix git clone error build with golang 1.8.1 (#4460) 2017-04-26 19:47:16 -04:00
Unknwon
6500aafcb8 install: validate port in SMTP host address (#2243) 2017-04-07 23:23:39 -04:00
Unknwon
6ebdf91b32 templates/repo: fix README.ipynb not rendered (#4367) 2017-04-07 22:33:19 -04:00
Unknwon
91cd350b63 repo/editor: fix wrong context for subdirectory (#4368) 2017-04-07 21:44:55 -04:00
Unknwon
6ea9642d64 js: remove Preview, Full Screen and Side-by-side buttons for repository file editing (#4402) 2017-04-07 18:46:03 -04:00
Unknwon
65277e47c5 api/repo: add Mirror field (#4392) 2017-04-07 18:15:23 -04:00
Unknwon
9e3c83372f api/repo: improve migration error handling 2017-04-07 16:00:25 -04:00
Unknwon
809db853fa locale: fix zh-CN 2017-04-07 15:41:54 -04:00
Unknwon
62a20b8a2d repo/wiki: improve UI 2017-04-07 15:30:08 -04:00
Unknwon
d0612be402 user/setting: improve UI 2017-04-07 15:08:53 -04:00
Unknwon
5f8ec0dc8b templates/repo: improve symlink file icon in list view (#4237) 2017-04-07 13:51:10 -04:00
Unknwon
fda4b1106e user/setting: simplify code 2017-04-07 00:49:30 -04:00
Unknwon
ac43eab51f Refactoring: rename Signed -> Logged 2017-04-06 23:48:49 -04:00
Unknwon
8d0417497b modes/mirror: make Updated unchanged if no new commits fetched (#4341)
After sync mirror, get latest commit date and compare to current
repository updated time, only update it if the commit date is newer.
2017-04-06 20:58:57 -04:00
Unknwon
90b9f7e08c pkg/setting: rename {AppUrl, AppSubUrl} -> {AppURL, AppSubURL} 2017-04-06 17:27:57 -04:00
Unknwon
2c404daca6 pkg/context: rename {CsrfToken, CsrfTokenHtml} -> {CSRFToken, CSRFTokenHTML} 2017-04-06 17:20:38 -04:00
Unknwon
0e271799f2 Refactoring: rename and simplify pkg/tool functions 2017-04-06 17:13:53 -04:00
Unknwon
3c0de17133 js: set cursor to the end of autofocus input string 2017-04-06 17:00:12 -04:00
Unknwon
bd1f2ccaf8 user/settings/security: add token description about 2FA 2017-04-06 16:27:31 -04:00
Unknwon
ec491b023f api/repo: fix nil error panic 2017-04-06 01:37:01 -04:00
Unknwon
f191bff0b9 api/repo: check user type of owner for migration
Report by MiaoWoo.
2017-04-06 01:20:20 -04:00
Unknwon
1a04da864f vendor: add github.com/boombuler/barcode/utils 2017-04-06 00:15:39 -04:00
Unknwon
c8c975c99b vendor: add packages for 2fa 2017-04-06 00:14:39 -04:00
Unknwon
a617d52374 2fa: initial support (#945) 2017-04-06 00:14:30 -04:00
Unknwon
624474386a templates/repo/branches: fix links for mirror repository
Also added new pull request button for stale branches.
2017-04-05 17:59:22 -04:00
Unknwon
e0a787b5ee Update locales 2017-04-05 13:26:53 -04:00
Unknwon
63598688e4 pkg/markup: init default sanitizer.policy
App would panic if user has validation error on installation and
the sanitizer is not yet built. Therefore we need a minimal valid
object for sanitizer at start.
2017-04-05 13:12:05 -04:00
Unknwon
497cdc9250 user/setting: reorder navbar 2017-04-05 09:27:42 -04:00
Unknwon
edaf14f2b6 Refactoring: remove tool.TplName 2017-04-05 09:17:21 -04:00
Unknwon
6fbb984ebf Refactoring: rename pkg/base -> pkg/tool 2017-04-05 09:05:40 -04:00
Unknwon
ba151eda0a css: improve fonts under Windows 2017-04-04 21:05:01 -04:00
Unknwon
c05717a5f0 models/mirror: feed git.IsRepoURLAccessible with raw mirror address 2017-04-04 20:42:18 -04:00
Unknwon
5a488b6517 models/mirror: unescape credentials at read (#4014)
If we save credentials already escaped, 'url.QueryEscape' still
escapes it and makes the credentials become incorrect.
2017-04-04 20:21:35 -04:00
Unknwon
ae1d50d19a models/mirror: escape credentials before write mirror address (#4014)
Special characters such as '@', ';', '#' and ':' could occur in
password portion of credentials, which breaks the interpretation
and saves 'config' file in with extra characters that are not
recognized by Git (due to INI library).
2017-04-04 19:40:46 -04:00
Unknwon
fe25effe7c repo/http: fix client is not informed to provide credentials
When Git client has cached credentials for a site, missing response
header 'WWW-Authenticate: Basic realm="."' will result in Git client
does not prompt user to input credentials again but plain error
message and halts push/pull process.
2017-04-04 19:36:30 -04:00
Unknwon
d05395fe90 Refactoring: rename modules -> pkg
Reasons to change:

1. Shorter than 'modules'
2. More generally used by other Go projects
3. Corresponds to the naming of '$GOPATH/pkg' directory
2017-04-04 19:29:59 -04:00
Unknwon
37b10666de modules/context: add *Context. ServerError method
Also use constants from net/http to replace raw integers.
2017-04-04 19:25:05 -04:00
Unknwon
41c8e87be8 repo/commit: improve error detection
Response 404 not 500 for raw diff if object does not exist.
2017-04-04 02:01:29 -04:00
Unknwon
55afc1ad21 models/repo_diff: move core functions to gogits/git-module 2017-04-04 01:45:57 -04:00
Unknwon
16c6ca72cd css: fix font of .ui.label.button style 2017-04-04 01:19:47 -04:00
Unknwon
b873ec2bce templates/repo/branches: hide pull request button if not allowed (#4377) 2017-04-03 22:24:21 -04:00
Unknwon
1bc805bb4b public: update Semantic UI 2.2.7 -> 2.2.10
[CI SKIP]
2017-04-03 22:20:17 -04:00
Unknwon
348c75c91b issue: response wrong type of comment from AJAX 2017-04-03 20:06:15 -04:00
Unknwon
76ebdb265b css: update fonts
[CI SKIP]
2017-04-03 18:20:49 -04:00
Unknwon
88ae3510ff Prepare release 2017-04-03 16:26:43 -04:00
Unknwon
c07899701a vendor: update github.com/gogits/git-module 2017-04-03 15:09:53 -04:00
Unknwon
ab42671c63 repo: handle git.ErrUnsupportedVersion error type 2017-04-01 17:56:55 -04:00
Unknwon
b3ac33cbcf vendor: update github.com/gogits/git-module 2017-04-01 17:50:11 -04:00
Unknwon
3b94162803 modules/setting: set default session GC interval to 3600s 2017-03-31 23:55:42 -04:00
Unknwon
52aade232d modes: fix test compile error 2017-03-31 18:28:08 -04:00
Unknwon
3a9276307c modules/markup: move common functions to markup.go 2017-03-31 17:46:57 -04:00
Unknwon
ca6326c937 modules/base: move file-related functions to file.go 2017-03-31 17:20:05 -04:00
Unknwon
8da16ac302 modules/markup: rename Markdown render fucntions
The unified function 'Markdown' accepts both string or []byte type
input and renders to HTML with []byte type.
2017-03-31 16:37:30 -04:00
Unknwon
761bb3cf53 modules/markup: protect sanitizer from possible modification
Only expose public APIs for 'Sanitize' and 'SanitizeBytes' to
eliminate unintentional modifications to sanitizer policy. Also
use 'sync.Once' to make sure multiple calls of 'NewSanitizer' is
safe (although should never happen, but this is a better way).
2017-03-31 16:19:10 -04:00
Unknwon
c1c269d9ef modules: rename markdown -> markup
To further support more markup languages (e.g. Org-mode, AsciiDoc,
reStructuredText), the name 'markdown' is inappropriate.

This is the first step towards more markup language support.
2017-03-31 15:29:43 -04:00
Unknwon
9edac05e05 templates/repo: improve README icon and font 2017-03-31 15:11:40 -04:00
Unknwon
9c1620d49c css: font-family fixes for Chinese 2017-03-31 14:13:25 -04:00
John Behm
65bb6eb284 locale: update TRANSLATORS (#4372)
* Update TRANSLATORS

* Update TRANSLATORS
2017-03-31 12:37:46 -04:00
Unknwon
aff55ff105 vendor: update github.com/go-macaron/captcha
[CI SKIP]
2017-03-30 12:35:43 -04:00
Unknwon
4a67bb5806 migrations.v17: skip if table not exist 2017-03-30 11:37:27 -04:00
Unknwon
1afafde3b3 user/setting: preserve user input with validation error (#1123) 2017-03-30 01:03:44 -04:00
Unknwon
ab634ce61a cmd/web: fix routes requires sign in (#4359)
Redirect user to sign in page when visit private repository with
public issues if user want to post comment or create new issue.
2017-03-30 00:34:20 -04:00
Unknwon
9d06ebd01a markdown: improve filter of class attribute for code blocks
Only allow HighlightJS specific classes.

Reported by ChALkeR.
2017-03-29 19:52:53 -04:00
Kyle McCullough
09723ec0e5 migration.v17: handle mysql error (#4361) 2017-03-29 19:02:07 -04:00
Hassan Amouhzi
864761c2d0 js: use jQuery .find() (#4343) 2017-03-28 17:36:48 -04:00
Unknwon
abe7f7bc36 migration.v17: add nil error check 2017-03-28 16:38:16 -04:00
Unknwon
717bcc4ad8 migration/v17: skip if protect_branch_whitelist table not exist (#4355) 2017-03-28 11:20:58 -04:00
Unknwon
11ffdac3f8 org/dashboard: fix wrong repository count (#4351)
Should not include count for inaccessible repositories.
2017-03-28 11:16:29 -04:00
David Beitey
cf7d5d0c56 docker: fix heading in README.md (#4353)
The unicode non-breaking space character was breaking the heading format; this switches that character for an ASCII space.
2017-03-28 07:50:36 -04:00
Unknwon
375f1b1fde Prepare release
[CI SKIP]
2017-03-27 14:56:56 -04:00
Unknwon
ad3c6ef205 Update locales 2017-03-27 14:40:55 -04:00
Unknwon
30d9e2ee3c docker: use vendor to replace go get 2017-03-27 14:04:48 -04:00
Unknwon
1038916460 models/protect_branch: fix whitelist with invalid 'protect_branch_id' (#4333)
If user creates a protect branch for the first time (which has ID=0),
it generates invalid whitelist records with 'protect_branch_id=0'.
This prevents future updates of protect branch whitelist.

Migration: remove existing invalid protect branch whitelist records.
2017-03-27 13:13:04 -04:00
Unknwon
73de9f9d6a repo/settings/branches: add prompt for bare repository 2017-03-27 13:12:29 -04:00
Jonas
f40eb9774e modes/mirror: corrected NextUpdate not set (#4345) 2017-03-26 23:24:48 -04:00
Pablo Saavedra
496e07c1c9 models/repo: avoid duplicated results in SearchRepositoryByName (#4344) 2017-03-26 23:23:17 -04:00
Unknwon
c238647020 cmd/web: remove dependency version checker 2017-03-25 04:17:55 -04:00
Unknwon
78f94986e3 user/settings: fix bad error handle of leave organization 2017-03-25 03:44:12 -04:00
Unknwon
8f52ab8201 models/repo_editor: add pull request test task after commit (#4338) 2017-03-25 03:36:13 -04:00
Unknwon
260ebcc1ca repo/milestone: simplify code 2017-03-24 18:54:17 -04:00
Unknwon
09cb48e41c repo: recalculate milestone completeness on issue list (#4316) 2017-03-24 18:36:35 -04:00
Unknwon
674106c7b6 repo: cleanup some code 2017-03-24 16:32:14 -04:00
Unknwon
8196430f47 repo: allow private repository to have public wiki or issues
Relates to #649 and #2157
2017-03-24 16:25:40 -04:00
Unknwon
7a99e56893 repo: update size after fork, migrate and mirror sync (#4336) 2017-03-24 14:22:19 -04:00
Unknwon
79ba0314e9 milestone: only show issue-related count under issue list (#4316) 2017-03-24 14:00:01 -04:00
Unknwon
c441f8080e api/repo: add endpoint to sync mirror (#2235) 2017-03-23 20:46:39 -04:00
Unknwon
bd1e757350 user: remove sanitizer for FullName (#1937) 2017-03-23 20:24:02 -04:00
Unknwon
3144be5c81 repo: remove legacy sanitizer for repository description
Related to #4329.
2017-03-23 20:23:23 -04:00
Unknwon
fdc7cb565d repo: fix unable to propose pull request from secondary fork (#4324) 2017-03-23 20:04:20 -04:00
Unknwon
a6dbde4c46 user/settings: minor input style fix (#4327) 2017-03-23 19:39:05 -04:00
Unknwon
8ce23e2c71 cmd/backup: able to specify archive name (#4320)
Added flag '--archive-name' for backup command.
2017-03-23 18:44:24 -04:00
Unknwon
8a3f4fc616 models: add config options for XORM logger (#3183)
Added new config section '[log.xorm]'.
2017-03-23 18:34:25 -04:00
Unknwon
66c1e6b0e8 user/settings: complete repositories panel (#4312) 2017-03-23 14:28:31 -04:00
Unknwon
beee6e03b1 error: move ErrRepoNotExist -> errors.RepoNotExist 2017-03-23 14:27:34 -04:00
Rob Richards
902372067c user/settings: add repositories panel (#4312)
* Add Repositories panel to user settings
issue #4277

* modified personal repo settings format
2017-03-23 12:57:43 -04:00
Nikolay Korotkiy
7adaf8f812 locale: fix language names (#4330) 2017-03-23 11:37:46 -04:00
Unknwon
71753cdd46 templates/label: another minor style improve 2017-03-22 16:20:31 -04:00
Unknwon
d3363430dc templates/label: minor style improve
Add an empty space to make <span> have width.
2017-03-22 15:54:27 -04:00
Unknwon
945e65eedf README: update alts
[CI SKIP]
2017-03-22 15:28:22 -04:00
Unknwon
85a050fca7 issue: fix redirect to random issue if index does not exist (#4315) 2017-03-22 13:20:29 -04:00
Unknwon
bb86d66496 repo: rename PageIsViewCode -> PageIsViewFiles
Also highlight 'Files' tab when use editor.
2017-03-22 12:58:12 -04:00
Unknwon
aba8789542 vendor: update github.com/go-macaron/session (#3363) 2017-03-20 14:06:41 -04:00
Unknwon
5f1bbbde49 user/settings: fix cannot change profile for non-local users (#4313) 2017-03-20 14:01:23 -04:00
Unknwon
0203eaab00 user/dashboard: hide More button if reached end on first load 2017-03-20 14:00:51 -04:00
Unknwon
2807274e2d repo/webhook: able to retrigger delivery history (#2187) 2017-03-19 17:44:46 -04:00
Unknwon
55a5ad5cdc api/repo: fix incorrect permission values (#4309) 2017-03-18 16:44:40 -04:00
Unknwon
b3c4a39208 setting: add config option for raw file render mode (#3608)
Added '[repository] ENABLE_RAW_FILE_RENDER_MODE'.
2017-03-17 19:42:21 -04:00
Unknwon
cac7af2c78 explore: able list and search for private but accessible repositories (#3088) 2017-03-17 19:17:40 -04:00
Unknwon
2d4dc544be install: able to enable console mode (#3119) 2017-03-17 00:16:46 -04:00
Unknwon
171f97868d repo: allow issues and wiki for bare repository (#4104) 2017-03-16 23:10:45 -04:00
Unknwon
becaec19a7 setting: add login status cookie (#2885)
Added config options EnableLoginStatusCookie and LoginStatusCookieName under section '[security]'.
2017-03-16 22:42:17 -04:00
Unknwon
bc630cc52b repo/commit: able to config default commits page size (#4230)
Added config option '[ui.user] COMMITS_PAGING_NUM'.
2017-03-16 22:28:32 -04:00
Unknwon
d591cb0dfb dashboard/feeds: able to load more history (#2511) 2017-03-16 22:05:53 -04:00
Unknwon
07a9cbe0a9 setting: able to config dashboard news feed paging number (#4247) 2017-03-16 20:25:28 -04:00
Unknwon
7c802f6d83 repo/setting: filter out deleted branch in protect list (#4288) 2017-03-16 20:09:27 -04:00
Unknwon
431e930367 Add Go 1.8 to .travis.yml 2017-03-16 17:46:55 -04:00
Unknwon
9e8ffa14cb webhook: add file status to push event (#3897) 2017-03-16 17:33:04 -04:00
Unknwon
0ccd7c97ab models: rename ErrUserNotExist -> errors.UserNotExist 2017-03-16 17:18:43 -04:00
Unknwon
4e64e71e28 templates/repo/webhook: move to its own directory 2017-03-16 15:50:18 -04:00
Unknwon
86c7f45383 js: minor fix for #4294 2017-03-15 16:38:41 -04:00
Brian Paulson
50b36a732c ui: added Select class to ui.dropdown menus to prevent label changing (#4294) 2017-03-15 16:35:13 -04:00
Unknwon
f54bcba339 Update locales 2017-03-13 23:41:22 -04:00
Unknwon
f0209ac2f6 api: handle new events for hook 2017-03-13 14:32:16 -04:00
Unknwon
e1dcd11051 repo/settings: improve Git hook editor 2017-03-13 06:00:37 -04:00
Unknwon
24734a33e7 release: improve attachment handle 2017-03-13 05:26:17 -04:00
Unknwon
1df54ea0cd release: able to add attchments to release (#1614)
Added new config section '[release.attachment]’.
2017-03-13 04:32:20 -04:00
Unknwon
e6df2259ab explore: panic if search without login (#3088) 2017-03-13 02:41:04 -04:00
Unknwon
96ae0129ef models/repo: minor code style and comment fix (#4273) 2017-03-13 00:53:50 -04:00
Rob Richards
aaadc61ee8 models/repo: allow SearchRepos to return private but accessible repositories (#4273)
* models/repo.go SearchRepositoryByName()
Updated function to return public and private repositories that the logged in user has been given rights to view
issue #3088

* models/repo.go SearchRepositoryName
changed repository table alias to 'repo'
removed debug line

* models/repo.go SearchRepositoryByName
modified UserID search query to use the "access" table instead of team_repo, team_user etc

* models/repo.go SearchRepositoryByName
1) uppercased SQL keywords
2) removed alias for ACCESS table
2017-03-13 00:37:12 -04:00
Danny Althoff
44a6b63316 cmd/hook: fixed typo (#4280) 2017-03-12 13:43:05 -04:00
Unknwon
5f058c3f07 issue_mail: fix issue poster not receive email if not watching (#2929) 2017-03-12 13:42:19 -04:00
Unknwon
b116dc506b migrations/v16: use continue not return for bad records 2017-03-12 03:34:19 -04:00
Unknwon
bf58f26305 migrations/v16: make SQLite3 work 2017-03-12 03:30:53 -04:00
Unknwon
601f174ea0 migrations/v16: only Warn if repository happens to have bad data 2017-03-12 03:08:25 -04:00
Unknwon
a34c21cde3 migrations/v16: sync table 2017-03-12 03:05:41 -04:00
Unknwon
bb19bb601e repo: able to view size (#1158) 2017-03-12 01:59:48 -05:00
Unknwon
05dbd3f7d7 refactoring: experimental with models/errors package 2017-03-12 00:47:34 -05:00
Unknwon
dee76e4189 models/webhook: add skip check for Release event 2017-03-11 18:44:50 -05:00
Unknwon
b615d670b3 webhook: add Release event (#2387) 2017-03-11 18:41:32 -05:00
Girish Sonawane
b9bb4a62d6 api: make CORS work by handling preflight OPTIONS request (#4264)
* make CORS work by handling preflight OPTIONS request

* Update api.go
2017-03-11 03:01:59 -05:00
Unknwon
61e2bff757 repo: commits, branches and releases should highlight files tab 2017-03-11 02:13:42 -05:00
Unknwon
9713016637 repo/branches: hide buttons for regular users 2017-03-11 01:52:37 -05:00
Unknwon
5c7cb1594b repo/branches: overview and all (#2310) 2017-03-11 01:43:45 -05:00
Unknwon
3eb57370a6 api/repo: fix cannot reponse branch with slashes (#4198) 2017-03-10 23:37:25 -05:00
Unknwon
ac8b1e595f markdown: support Smartypants (#4162)
Added new config section '[smartypants]', and disabled by default.
2017-03-10 23:30:40 -05:00
Unknwon
31c55213ff css/repository: fix undesired style for label template select list 2017-03-10 19:15:28 -05:00
Unknwon
23da90e25d issue_mail: send notifications to participants in comments (#2929) 2017-03-10 18:47:02 -05:00
Unknwon
60ee79363d templates: use owner's avatar as image of repository 2017-03-10 17:00:10 -05:00
Unknwon
8fa6d0d302 repo/pull: handle head repository of merged pull requests deleted 2017-03-10 16:58:41 -05:00
Unknwon
a534f9f9b6 templates/repo: change some buttons to use 'basic' style 2017-03-10 15:36:55 -05:00
Unknwon
aa99e805c8 repo/release: 404 when edit draft (4262) 2017-03-10 15:27:55 -05:00
Unknwon
0049c80cd9 less/repository: minor fix for #git-stats 2017-03-10 15:23:01 -05:00
Unknwon
ebc0943713 templates/repo: only show Git stats in repository home page (#3518)
Move 'Commits' and 'Releases' tabs down to body.

This patch also reduces page load time for pages that do not need
to use commits count anywhere. Get commits count can hurt
performance badly for huge repositories that has tens of thousands
commits like Linux Kernel.
2017-03-10 15:13:48 -05:00
Unknwon
451aef7a1c release: improve page load performance
Previously, we load all releases of a repository which could hurt
performance when the repository has a lot of releases.

Now we're able to only load releases in current page view we need
to show by matching with 'tag_name'.
2017-03-10 14:12:46 -05:00
Unknwon
22882d7c04 models/user: explicitly select for organization type 2017-03-10 12:31:50 -05:00
Unknwon
c3cde864f8 models/pull: treat all errors as conflict (#4265)
If there is a misdetection, log shows everything.
2017-03-09 13:36:40 -05:00
Unknwon
f860ddbbb7 models/pull: better error message detection (#4265)
Stop using English phrases in case of Git localization.
2017-03-09 13:04:41 -05:00
Unknwon
89cc6aa430 webhook: add issue comment event 2017-03-09 04:11:23 -05:00
Unknwon
c93731339f webhook: support Issues event (#2319)
Also addresses #3485.
2017-03-09 00:03:29 -05:00
Unknwon
bab448681d models/user: handle case when user doesn't belong to any organization (#4258) 2017-03-08 22:21:31 -05:00
Unknwon
de2d3e3fd8 ssh_key: create parent directory of 'authorized_keys' file 2017-03-08 22:08:31 -05:00
Unknwon
295d251232 mirror: update repository updated_unix after sync (#2807) 2017-03-08 17:47:44 -05:00
Unknwon
83f6b8e847 Protected branches: allow whitelist bypass require pull request check (#4207) 2017-03-08 16:43:36 -05:00
Unknwon
e38fef0009 Update README 2017-03-08 10:17:53 -05:00
Unknwon
6c3424dc3f repo/setting: fix admin cannot transfer organizational repository 2017-03-07 18:51:24 -05:00
Unknwon
d1f0bc48ce repo/setting: fix admin cannot delete organizational repository wiki 2017-03-07 15:51:53 -05:00
Unknwon
bb005f3f9a models/user: better directory handling when change username
Previously, if the user base directory somehow doesn't exist, the
application throws 500 for failure of rename.

Now it detects if the application should rename or just create a
new directory.
2017-03-07 14:12:19 -05:00
Unknwon
e6dbfd918c security: fix vulnerability in changing username
Reported by João Arnaut.
2017-03-07 14:07:20 -05:00
Unknwon
c2f0711db0 Update locale 2017-03-06 23:37:46 -05:00
Unknwon
92153fd898 git_hook: add new env var 'GOGS_AUTH_USER_EMAIL' (#4252) 2017-03-06 23:28:03 -05:00
Unknwon
a9d2480c7f templates/user/profile: fix link to avatar settings (#4251) 2017-03-06 23:23:37 -05:00
Unknwon
fd70d503e0 public: minor fixes on build tool config 2017-03-06 17:59:36 -05:00
Unknwon
8b73c8076f modules/markdown: fix wrong raw link to internal images 2017-03-05 16:54:00 -05:00
Unknwon
971a96a962 Revert "public: update Semantic UI from 2.2.7 -> 2.2.9"
This reverts commit eaab01fa49.
2017-03-05 16:35:35 -05:00
Unknwon
e9838a83ce routers/repo/http: only prompt HTTP Basic Authentication when intended
Sometimes user could simply request wrong URL, but if that wrong URL
has nothing related Git HTTP operations, HTTP Basic Authentication
should not prompted. Instead, clean 404 page should be presented.

The patch also supports Git HTTP operations without '.git' suffix
to the repository name, which addresses #4226 and #4189.
2017-03-04 21:26:32 -05:00
Fastidious
837fc9847d conf/gitignore: use correct OS name (#4240)
This is no more OSX, but macOS. Long live macOS!
2017-03-04 20:17:25 -05:00
Unknwon
7e883f891a scripts: update gogs.service (#4223)
According to https://goo.gl/ea8k9K, it hurts nothing to use
nonexistent services but gains convenient for default settings.
2017-03-04 11:40:37 -05:00
Félix MIKAELIAN
e19a69442d Update README.md (#4238) 2017-03-04 11:19:14 -05:00
Unknwon
ebd95dd082 models/org: reduce to 2 SQL executions for GetOrgIDsByUserID
This also addresses #4231. It is now ignoring nonexistent
organizations returned from 'org_user' table.
This was a bug caused in older version that didn't cleanup
'org_user' table when delete an organization.
2017-03-03 18:26:51 -05:00
Unknwon
f7b7d008b6 setting: fix Webhook.SkipTLSVerify didn't load (#4228) 2017-03-02 22:08:39 -05:00
Unknwon
b39454ca16 scripts: update gogs.service (#4223)
Add 'After=mariadb.service’.

[CI SKIP]
2017-03-02 12:21:31 -05:00
Bo-Yi Wu
00943a025f locale: update TRANSLATORS (#4224) 2017-03-02 11:37:14 -05:00
Unknwon
600f748cb0 vendor: update golang.org/x/crypto/ssh
Related to #4160
2017-03-01 21:33:58 -05:00
Unknwon
038b107c3d Update locale
Also fixes #4213
2017-03-01 12:31:04 -05:00
Unknwon
c6e08d76fd admin/config: minor CSS fix 2017-02-28 23:25:03 -05:00
Unknwon
6daac151b8 miniwinsvc: fix import path 2017-02-28 23:01:51 -05:00
Unknwon
e08161a302 hook: fix can’t be executed while run as service on Windows (#4207) 2017-02-28 22:58:52 -05:00
atzoum
341eafcf04 adapt Dockerfile.aarch64 (#4210) 2017-02-28 16:16:23 -05:00
Unknwon
dd649eb4cc admin: fix template error
Also a try to display key-value pairs in table.
2017-02-28 12:42:16 -05:00
Unknwon
d43f5f17fd webhook: fix push panic to organizational repository (#4206) 2017-02-28 10:28:48 -05:00
Corentin BRETON
193cc3ba9a locale: update TRANSLATORS (#4204) 2017-02-28 07:06:12 -05:00
Unknwon
fd667ca1d8 Merge branch 'master' of github.com:gogits/gogs into develop 2017-02-28 06:22:28 -05:00
Unknwon
9d40b8a83c Bump version 2017-02-28 05:45:50 -05:00
Unknwon
b0169ba064 Merge branch 'master' of github.com:gogits/gogs into develop 2017-02-28 05:34:51 -05:00
Unknwon
9ace35ee8b repo_branch: fix inapproriate logic 2017-02-28 05:33:30 -05:00
Unknwon
ca2cfaf71e cmd: able to backup and restore
Not very robust, must execute under correct workdir.

Addresses #2072, #3708, #648
2017-02-27 22:48:19 -05:00
Unknwon
b06f299748 webhook: add fork event 2017-02-27 22:48:18 -05:00
Unknwon
beea014343 template: add more icons for news feed 2017-02-27 22:47:33 -05:00
Unknwon
70072e2842 dashboard: add delete branch and tag news feeds 2017-02-27 22:47:33 -05:00
Unknwon
f0086e66ae webhook: able to detect delete branch or tag (#2315) 2017-02-27 22:47:21 -05:00
Unknwon
7fe13e72d8 cmd: refactoring command name 2017-02-27 22:47:12 -05:00
Unknwon
87f0ce793d repo: able to perform initial commit on behave of actual user 2017-02-27 22:47:12 -05:00
Unknwon
25cf755f30 editor: fix compile error 2017-02-27 22:46:42 -05:00
Unknwon
c7a8051a71 mailer: make text/html as default format
Change config option from '[mailer] ENABLE_HTML_ALTERNATIVE' to '[mailer] USE_PLAIN_TEXT'
2017-02-27 22:46:42 -05:00
Unknwon
a47553b7aa admin/config: remove duplicated config info 2017-02-27 22:46:32 -05:00
Unknwon
d7954014a4 markdown: fix links for image nested inside a link (#2636) 2017-02-27 22:46:32 -05:00
Unknwon
429345b9df editor: fix cannot create branch with slashes (#3568) 2017-02-27 22:46:32 -05:00
Unknwon
eaab01fa49 public: update Semantic UI from 2.2.7 -> 2.2.9 2017-02-27 22:45:35 -05:00
Unknwon
4f9c5981a9 refactoring: modules/auth/*_form.go -> modules/form 2017-02-27 22:45:35 -05:00
Unknwon
b3757e424f Prepare release 2017-02-27 18:38:16 -05:00
Unknwon
2381fe72cb base/tool: downgrade error to warning 2017-02-26 20:44:53 -05:00
Unknwon
e28bc7023f modes/org: code format for PR #4194 2017-02-26 15:29:16 -05:00
dlob
aff8fb28bd models/org: use XORM chain operations instead of raw SQL (#4194)
This also solved MSSQL pagination query syntax problem reported in #4176.
2017-02-26 15:19:34 -05:00
Unknwon
6a543c8066 Update README 2017-02-25 21:21:12 -05:00
Unknwon
4d90527a6e repo: does not allow fork to original owner (#4182)
But can still fork to organizations.
2017-02-25 03:52:54 -05:00
Unknwon
c64b842df9 templates: able to inject content to head and footer (#1286) 2017-02-24 18:26:41 -05:00
Unknwon
27c4252548 dashboard: fix commits CSS 2017-02-24 14:55:07 -05:00
Unknwon
10b93efc4a repo: able to add organization member as repository collaborator 2017-02-24 13:56:02 -05:00
Unknwon
0696d430c9 protect_branch: only list teams have write access
List teams without write access to the repository cause confusion
to make users think members of team could push to the branch.
2017-02-24 13:19:42 -05:00
Unknwon
68b231bd89 template: use DisplayName of users when possible (#4187) 2017-02-24 12:43:49 -05:00
Unknwon
6ec859f2b0 webhook: send secret with SHA256 HMAC hex digest (#3692) 2017-02-24 12:23:19 -05:00
Unknwon
452551fa23 webhook: highlight delivery response on click
This decreases page load time for webhook edit page.
2017-02-24 12:22:22 -05:00
Kyle Filz
ec05c64ead docker: update Dockerfile for Raspberry Pi (#4185) 2017-02-24 00:37:21 -05:00
Unknwon
cd15a17970 models/repo: delete protect branch options when delete repository 2017-02-23 18:42:03 -05:00
Unknwon
6072e9a52c repo: add protect branch whitelist (#4177)
Add options to add users and teams to whitelist of a protected
branch. This is only available for organizational repositories.
2017-02-23 18:25:12 -05:00
Unknwon
b78e03934d models/access: hasAccess only need userID not user object 2017-02-23 16:15:25 -05:00
Cyril Rohr
3c0d162961 packager: update files (#4181)
* Fix packaging

* Fix macaron vendor sha

Revision 8be5635c28f40a85ce8e8f65c6118b4ee4e548e9 does not exist

* Add build dependency for centos
2017-02-23 15:33:58 -05:00
Unknwon
48cf9edcf5 templates/repo/diff: fix tag-code doesn't display in split view 2017-02-23 13:24:59 -05:00
Unknwon
0c8c1ee96f pull: fix split view on pull request page (#3695) 2017-02-23 13:12:28 -05:00
Unknwon
7d80c5a722 mirror: does not allow create releases 2017-02-23 13:09:26 -05:00
Unknwon
5ec21d56ef editor: fix cannot redirect to correct pull request URL
Was only possible to correctly redirect to pull request page within
same repository. And didn't take care of case when upstream has
disabled pull request.

Also add a new method 'PullRequestURL' to unify the code.
2017-02-23 13:05:29 -05:00
Unknwon
266c8f5a85 release: fix unable to edit release of a fork repository 2017-02-23 11:35:33 -05:00
Unknwon
162504e90c repo/setting: fix admin cannot delete organizational repository 2017-02-22 23:16:23 -05:00
Unknwon
5ea0592f61 webhook: fix organizational webhook last delivery status cannot be updated 2017-02-22 22:55:28 -05:00
Unknwon
054e97d614 csrf: able to set custom cookie name
Add new config option '[session] CSRF_COOKIE_NAME'.
2017-02-22 21:46:43 -05:00
Unknwon
28983c94ff comment: only show title of commit message from a commit ref (#3206) 2017-02-22 08:25:26 -05:00
Unknwon
0cfa489cf0 models/git_diff: add bound check 2017-02-22 06:59:45 -05:00
Anders H
e0af5c280d locale: update TRANSLATORS (#4170) 2017-02-22 06:17:08 -05:00
Unknwon
d21dc0da78 migrate: fix unexpected removal of repository when wiki is detected 2017-02-21 22:00:45 -05:00
Unknwon
60aca9ea18 webhook: also only enable certain types (#3356)
Add new config option '[webhook] TYPES’.
2017-02-21 20:21:25 -05:00
Argentumbolo
6a8ad0b357 locale: changes relates to Ukrainian language (#4168)
- Add Ukrainian translation into templates/home.tmpl
    - Fix Ukrainian language name in conf/app.ini
          because on Ukrainian 'language' is female.
    - Add me as translator into conf/locale/TRANSLATORS
2017-02-21 17:57:27 -05:00
Unknwon
bd970b8b27 webhook: only trigger specific webhook for test delivery (#3030) 2017-02-21 15:44:35 -05:00
Unknwon
0f3155660e webhook: minor improvements on Discord 2017-02-21 13:58:00 -05:00
Unknwon
437df04d8c Prepare release 2017-02-21 12:17:39 -05:00
Unknwon
8216360da8 webhook: support color for Discord 2017-02-21 11:36:19 -05:00
Unknwon
c5b85f2733 models/repo: fix repository files weren't cleaned up (#4167) 2017-02-21 11:12:46 -05:00
Orion
ba88bb5f5f locale: update translators (#4166) 2017-02-21 09:11:44 -05:00
Unknwon
5895d43574 editor: redirect to new pull request page after create new branch 2017-02-20 22:29:15 -05:00
Unknwon
e78f252713 webhook: blank page for organization Discord type 2017-02-20 22:13:34 -05:00
Oscar Quisbert
6a78580429 locale: update TRANSLATORS (#4161) 2017-02-20 21:12:29 -05:00
Unknwon
6002d72603 router: fix 404 when repository name contains dot
E.g. atomi.github.io
2017-02-20 18:05:34 -05:00
Unknwon
934734a85a diff: able to highlight line with hashtag URL 2017-02-20 16:16:32 -05:00
Óscar García Amor
491934784f locale: add new translator (#4158) 2017-02-20 13:47:38 -05:00
Alexey Agafonov
fe69a7b116 Update home.tmpl (#4159)
Russian lang. Small fix.
2017-02-20 13:46:56 -05:00
Unknwon
0bef74d499 vendor: update github.com/go-macaron/toolbox (#2857)
Support HEAD requests of '/healthcheck' for service monitoring.
2017-02-20 13:39:46 -05:00
Unknwon
2322de653c models/webhook: fix bad query 2017-02-20 01:04:02 -05:00
Unknwon
95b94b2166 bindata: generate data for PR #4155 2017-02-19 20:12:21 -05:00
Tyler
dd4d623612 Update 'disable_register_mail' verbiage (#4155) 2017-02-19 19:55:19 -05:00
Unknwon
41a2632ae7 webhook: minor text change on Discord 2017-02-19 16:07:28 -05:00
Unknwon
f3a228ed61 vendor: update gopkg.in/macaron.v1 2017-02-19 15:51:10 -05:00
Unknwon
c4fdc26fa5 migration: drop 0.6.x support 2017-02-19 14:42:06 -05:00
Unknwon
7de71333c6 repo: several minor improvements
1. Fix sample content didn't show up when hook doesn't exist.
2. Fix CSS 'word-break' to use 'break-word' not 'break-all'.
3. Fix single quote in 'locale_en-US.ini' file.
2017-02-19 13:18:16 -05:00
Unknwon
cd9b29ff3f api: add list user and organization's repositories (#3984) 2017-02-18 23:37:16 -05:00
Unknwon
50a7c3c20d repo: able to fork own repository (#1791) 2017-02-18 23:04:11 -05:00
huqiangit
c3f52ab52d this fix #3958 (#4153)
Deal with '/' in Wiki page title.
2017-02-18 22:51:21 -05:00
Unknwon
40fbe7fa8e models/repo: handle deletion on Windows (#4152) 2017-02-18 22:47:32 -05:00
Unknwon
ef922ff757 css: cleanup unused files 2017-02-18 21:06:43 -05:00
yaourt
1841316f18 Provide an updated Dockerfile where Gogs is build with Go 1.8 (#4151)
In order to have an up to date Docker image based on alpine 3.5
  and having Gogs built with Go 1.8

Refs: [ #4145 ]
2017-02-18 20:43:27 -05:00
Unknwon
0a2f87f941 cron: add repository archive cleanup (#4061) 2017-02-18 19:35:59 -05:00
Unknwon
c69900325d commits: able to specify pageSize dynamically (#3965)
Usage: <url>?page={page}&pageSize={pageSize}

Also avoid/removed getting total commits count for pagination,
users are only allowed navigation by 'newer' and 'older'.
2017-02-18 18:37:47 -05:00
Unknwon
685737b816 locale: add Ukrainian support 2017-02-18 15:00:11 -05:00
Unknwon
5d766bc4d6 docker: improve README [CI SKIP] 2017-02-18 13:53:58 -05:00
Unknwon
1083c0cd9a admin/config: display repository related settings (#3816) 2017-02-18 13:29:43 -05:00
Unknwon
7b8f086f72 repo/settings: add description and link to personal SSH keys (#3936) 2017-02-18 12:56:06 -05:00
Unknwon
21d538a738 install: able to enable builtin SSH server (#3773) 2017-02-18 12:47:35 -05:00
Unknwon
36f448f47f footer: update Twitter handle [CI SKIP] 2017-02-18 11:55:59 -05:00
Unknwon
dbd9f05c06 vendor: update github.com/go-xorm/* 2017-02-18 11:22:44 -05:00
app
77757f6d39 I've got Translation Credits message from 无闻 (joe2010xtmf) (#4144) 2017-02-18 11:06:06 -05:00
Ganesha
018614cdf0 Update TRANSLATORS (#4146) 2017-02-18 11:05:44 -05:00
Jonas De Kegel
5d9680b00d Update TRANSLATORS (#4147) 2017-02-18 11:05:23 -05:00
Unknwon
c8982f4165 settings: fix organization panel CSS 2017-02-18 02:22:59 -05:00
wp-src
71f0dd858b Update TRANSLATORS (#4143) 2017-02-18 02:07:46 -05:00
火文狼
956bdb18c9 Update TRANSLATORS (#4142) 2017-02-18 01:33:20 -05:00
Unknwon
a07b1f630a webhook: add native Discord support 2017-02-18 00:54:56 -05:00
Unknwon
266586e866 repo: assignee can be anyone who has read access (#3739) 2017-02-17 22:17:27 -05:00
Unknwon
b481927d5e Improve error handling 2017-02-17 18:23:35 -05:00
Unknwon
7bd6052efe vendor: update gopkg.in/clog.v1 2017-02-17 18:05:41 -05:00
Unknwon
07801cbf09 repo/release: add pagination (#2164) 2017-02-17 17:41:55 -05:00
Pierre Prinetti
81e74858d8 Update TRANSLATORS (#4140) 2017-02-17 16:19:11 -05:00
Olexander Yermakov
f4e714d54a Update TRANSLATORS (#4139) 2017-02-17 15:41:23 -05:00
Alexandre Espinosa Menor
edccbc0481 Added myself (#4138) 2017-02-17 15:14:45 -05:00
Unknwon
7e09d210ba Initial version of protected branches (#776)
- Able to restrict force push and deletion
- Able to restrict direct push
2017-02-17 15:10:50 -05:00
Riste Risafov
dab768212a Update TRANSLATORS (#4137) 2017-02-17 14:07:43 -05:00
javydreamercsw
c033cfc684 Update TRANSLATORS (#4136) 2017-02-17 14:07:28 -05:00
sergystepanov
89593a82c1 Update TRANSLATORS (#4135) 2017-02-17 13:54:06 -05:00
Unknwon
ba93504804 setting: check mailService.From only if it has value (#4134) 2017-02-17 12:28:23 -05:00
Unknwon
57cb23ac81 Security: fix XSS attack on alert 2017-02-17 08:16:27 -05:00
Unknwon
5155f026b4 Security: fix XSS attack on milestone
Reported by Miguel Ángel Jimeno.
2017-02-17 08:06:48 -05:00
Unknwon
d521e716dd refactoring: SSH and HTTP push procees is now unified
We used to handle SSH and HTTP push separately which produces
duplicated code, but now with post-receive hook, the process
is unified to one single place and much cleaner.
Thus, UpdateTask struct is removed.

Narrow down the range of Git HTTP routes to reduce condufsing
HTTP Basic Authentication window popup on browser.

By detecting <old-commit, new-commit, ref-name> inside post-receive
hook, Git HTTP doesn't need to read the whole content body anymore,
which completely solve the RAM problem reported in #636.
2017-02-16 16:33:49 -05:00
Unknwon
3b49a99b60 wiki: fix crash with blob name contains tab (#3916) 2017-02-16 11:47:54 -05:00
Unknwon
f129e0ecb5 repo/editor: fix breadcrumb path cuts parent dirs (#3859) 2017-02-16 08:34:49 -05:00
Unknwon
88143f1934 models/repo: UpdateLocalCopy should always aceept valid branch name 2017-02-16 06:28:37 -05:00
Unknwon
3137665e6e Simplify description 2017-02-15 22:29:31 -05:00
Unknwon
f35bd34002 models/repo: use reset --hard to align with remote branch (#4123)
If user has force pushed to a branch, git pull will fail.
2017-02-15 21:00:46 -05:00
Unknwon
b9560ec9cb vendor: update git-module (#4128) 2017-02-15 18:34:02 -05:00
Unknwon
189924cabf repo/branch: force delete merged branch (#4128) 2017-02-15 18:24:32 -05:00
Unknwon
c2277796e4 wiki: remove redundant string replace (#3754) 2017-02-15 18:18:33 -05:00
Unknwon
f97b250509 Security: prevent XSS attach on wiki page
Reported by Miguel Ángel Jimeno.
2017-02-15 18:05:02 -05:00
Mourad Boufarguine
59981b8818 Enable syntax highlighting for CMakeLists.txt files #2199 (#4130) 2017-02-15 12:38:54 -05:00
Unknwon
40bce6310c Improve error handling 2017-02-15 12:35:24 -05:00
Unknwon
a4f9e5031f migration.v15: don't generate hook file if wiki not exist (#1623) 2017-02-15 05:45:15 -05:00
Unknwon
4da325a45c user/profile: paging doesn't respect private repository count (#4082) 2017-02-15 05:39:36 -05:00
Unknwon
fd5881fb64 migration: minor code fix (#1623) 2017-02-15 05:28:05 -05:00
Unknwon
0f6e464126 migration: should regenerate wiki hook files (#1623) 2017-02-15 05:25:51 -05:00
Unknwon
6132a82287 admin: sync wiki's hook files as well 2017-02-15 05:15:39 -05:00
Unknwon
32a868d431 wiki: handle '#' in edit page (#3767) 2017-02-15 05:10:00 -05:00
Unknwon
94f91543b6 Fix compilation error 2017-02-15 04:09:07 -05:00
Unknwon
3d52ef6e39 Solve conflicts (#3837) 2017-02-15 04:01:59 -05:00
Thibault Meyer
a45205b988 Commits fetch concurrency (#3837) 2017-02-15 03:59:53 -05:00
Unknwon
ec9c14c09d vendor: update dependency 2017-02-14 18:47:09 -05:00
Kim "BKC" Carlbäcker
b6fc35f637 Implement list/check/delete Repo Collaborator (#3689) 2017-02-14 18:45:08 -05:00
Unknwon
e24d62e583 modules/ssh: SSH_KEYGEN_PATH not used for exec ssh-keygen (#4124) 2017-02-14 18:08:26 -05:00
Unknwon
0386b5ae54 cmd/hook: check existence before call custom hook 2017-02-14 18:06:54 -05:00
Unknwon
a0253cab62 vendor: update git-module 2017-02-14 17:21:55 -05:00
Unknwon
0f32aeec70 migration: adjust rule to prevent migrate wrong hook file 2017-02-14 16:50:16 -05:00
Unknwon
78145cd166 migration: handle edge case 2017-02-14 16:40:49 -05:00
Unknwon
904f0ebec3 migration: add trace log 2017-02-14 16:30:49 -05:00
Unknwon
039dc33367 git: delegate all server-side Git hooks (#1623) 2017-02-14 16:22:16 -05:00
Christian Höppner
859009259a Typo in LocalCopyPath (#4122)
This won't fix any bugs, but a typo is a typo.
2017-02-14 07:39:55 -05:00
Unknwon
4c5255f5ad cookie: enhance cookie security (#3525) 2017-02-14 03:52:20 -05:00
Unknwon
279e475b89 webhook: match email with real user in database for test delivery (#3652) 2017-02-14 03:32:13 -05:00
Unknwon
f4aedda13a org/team: make 'new' as reserved for team name (#3789) 2017-02-14 03:16:02 -05:00
Unknwon
1381f0f28e vendor: check in missing dependency 2017-02-13 20:58:53 -05:00
Unknwon
f967e9d021 vendor: add new dependency (#3772) 2017-02-13 20:52:35 -05:00
dlob
5179063e71 Added mssql support. (#3772) 2017-02-13 20:50:00 -05:00
Unknwon
ad4bbf5173 Update new logo
[CI SKIP]
2017-02-13 19:11:31 -05:00
Egon Elbre
35f30a306b Icon redesign. (#4121) 2017-02-13 18:20:30 -05:00
Unknwon
c37d3f6486 vendor: remove unnecessary sublime files 2017-02-13 14:09:08 -05:00
Unknwon
bd786b8ef0 auth: remove MD5 for secure cookie secret (#4117)
Update vendor accordingly
2017-02-13 14:05:49 -05:00
Unknwon
d02e7d9e6a install: no need to check SMTPFrom is not set (#4118) 2017-02-13 04:20:03 -05:00
Unknwon
1c87b082c1 api/issue: minor code refactor (#3688) 2017-02-12 19:46:38 -05:00
Kim "BKC" Carlbäcker
99d86c7175 Implement more issue-endpoints (#3688) 2017-02-12 19:42:28 -05:00
Aaron Wood
68ead67a63 Use very strong ciphers (#4116)
* Use very strong ciphers

* Remove TLS_RSA_WITH_AES_256_GCM_SHA384 to be compatible with Go 1.5
2017-02-12 19:12:07 -05:00
Unknwon
2d38b75400 diff: fix can't show compare page for fork repository (#4110) 2017-02-12 18:43:26 -05:00
Unknwon
f59a607361 install: allow sender's username to be non-email (#3717) 2017-02-12 18:35:25 -05:00
Unknwon
d21767dc9f routers/repo: allow shorter SHA to download archive (#3834)
SHA length from 7-40 is now supported.
2017-02-12 18:28:42 -05:00
Unknwon
ab78d4e2b7 base/tool: reduce unnecessary report 2017-02-12 16:13:30 -05:00
Unknwon
127005d733 webhook: remove bad characters of Slack-type webhook for Discord (#4088) 2017-02-11 16:31:58 -05:00
Unknwon
0ae666f3e6 auth: few security improvements 2017-02-11 07:12:06 -05:00
Unknwon
23f2efa8c1 Update locales 2017-02-11 03:59:25 -05:00
Unknwon
5791e1398c install: validate SMTP From
Invalid SMTP From will cause fatal error in post-install and exit
the program.
2017-02-11 03:29:30 -05:00
Unknwon
9b72661767 config: show Git version in admin panel 2017-02-11 03:04:45 -05:00
Unknwon
0958fe5a4e Improve Open Graph Meta tags (#3664) 2017-02-11 00:03:10 -05:00
Simeon Radivoev
4a1dc29e23 Added Open Graph Meta tags to head template (#3664) 2017-02-10 23:37:23 -05:00
Unknwon
2ca668e79e Add more details on error report
[CI SKIP]
2017-02-10 17:11:46 -05:00
Unknwon
ee59016585 wiki: clean up broken data if migration failed (#3792) 2017-02-10 17:07:21 -05:00
Unknwon
7ac09681a2 markdown: fix mailto: doesn't recognize as valid link (#3790) 2017-02-10 17:03:27 -05:00
Unknwon
1863f38286 models/repo: fix SQLite3 database-lock when fail to delete repository (#4048) 2017-02-10 16:56:58 -05:00
Unknwon
6b6f54b79b Some file refactoring 2017-02-10 16:51:09 -05:00
Unknwon
b67ec01d41 Able to disable non-admin to create new organization (#1556)
Add new config option '[admin] DISABLE_REGULAR_ORG_CREATION', by
default it's 'false'.
2017-02-10 16:41:51 -05:00
Unknwon
2c154ccbe7 Minor improve on error handling 2017-02-10 16:05:11 -05:00
Unknwon
3f95824e65 api/repo/milestone: fix change status didn't take effect 2017-02-10 15:54:02 -05:00
spacetourist
29722af1ae Configurable SSH cipher suite (#4109)
* Configurable SSH cipher suite

* Maintain ordering
2017-02-10 14:04:43 -05:00
Unknwon
563fc7c6d7 dump: check existence before include data subdirs (#4100) 2017-02-10 11:58:04 -05:00
Unknwon
9b8fa69c15 models/ssh_key: fix SSH_KEYGEN_PATH not working (#3770) 2017-02-10 02:26:55 -05:00
Unknwon
f5dc436441 Minor improve on error handling 2017-02-10 00:11:51 -05:00
Unknwon
d9d329bec8 modules/setting: add Slack logger
Conn and email loggers are removed for now unless people requested
for them, then try to add back in gopkg.in/clog.v1
2017-02-09 23:53:57 -05:00
Unknwon
76879e977b docker: fix script 2017-02-09 20:48:02 -05:00
Unknwon
9c3c9a8eb9 Update CI settings 2017-02-09 20:11:34 -05:00
Unknwon
2fd69f13d9 vendor: check in vendors
Bye bye glide...
2017-02-09 19:48:13 -05:00
Unknwon
eb66060cd7 log: start using gopkg.in/clog.v1 2017-02-09 19:29:59 -05:00
Unknwon
8a19f8a63c Update locales
This patch also fixes #4073
2017-02-09 16:04:35 -05:00
Unknwon
f7c11a27d0 models/repo: clean up repository local copy after rename (#3641) 2017-02-09 15:56:39 -05:00
Unknwon
418dab9b96 models/pull: load attributes when fetch list of pull requests (#4089)
Code only fetched issues corresponding to the pull requests, and left
out necessary base/head repository objects, which is required later
to generate API format.
2017-02-09 15:45:35 -05:00
Unknwon
09ad42b918 dump: include data-subdirs (#4100) 2017-02-09 15:33:57 -05:00
Unknwon
074c92b0a3 routers/repo/branch: fix can't delete branch with slashes after merge (#4089) 2017-02-09 15:25:48 -05:00
Unknwon
e893e1fc63 models: set XORM log level to WARNING in production 2017-02-09 15:09:37 -05:00
Unknwon
6622b7b49a models: remove TiDB embedded driver support
Users should all start tidb-server process and connect to it as if
it is a MySQL server with MySQL drivers.
2017-02-09 09:31:38 -05:00
Unknwon
afab38b0d7 routers/repo/pull: fix 404 on PR compare (#4074)
Due to recent code refactor, ctx.PullRequest is not initialized for
route repo.CompareAndPullRequest, which leads the UI thinks the
compare is not happening inside the same repository.

The current fix is to allow compare URL to include redundant head
user name so everything works fine again, but code logic isn't
as clean as before.

Made comments about possible future fix.
2017-02-08 18:43:46 -05:00
Unknwon
ede58ade4c models/org_team: fix compile error 2017-02-08 18:18:55 -05:00
Unknwon
a2dd9ec2e1 models/org_team: panic when team num_repos is negative (#3671) 2017-02-08 18:13:46 -05:00
Unknwon
591c333dcd liberjs: pointing licenses to GitHub instead of local 2017-02-07 18:50:16 -05:00
Jorge Maldonado Ventura
6971143dc5 Make Gogs compatible with LibreJS (#4092) 2017-02-07 18:47:08 -05:00
Unknwon
5d6ea4a81b IPythonNotebook: fix a bit more CSS 2017-02-07 17:27:33 -05:00
Unknwon
2374a3ef64 IPythonNotebook: fix Markdown cell CSS 2017-02-07 17:18:18 -05:00
Unknwon
0d9e435bfe IPythonNotebook: CSS adjustment for PR #4070 2017-02-07 17:11:46 -05:00
Herbert
9af0dd23dd Ipython notebook support (#4070)
* added marked and notebookjs javascript libraries

* added ipython notebook render support using javascript libraries

* recompiled gogs.css to include ipynb-related css

* removed superflous javascript library files
2017-02-07 16:18:11 -05:00
Unknwon
39eb6df769 Fix wrong commit SHA in .gopmfile (#4093) 2017-02-07 11:23:16 -05:00
Unknwon
c0f25d24b2 Update locales 2017-02-05 22:42:01 -05:00
Crayon
4f778da35e Change copyright date to 2017 (#4079)
The copyright date in the footer was still set to 2016.
2017-02-02 20:09:24 -05:00
Unknwon
f0f8205b8b models/ssh_key: little key methods receiver rename 2017-02-01 21:34:14 -05:00
Unknwon
2bb1de1805 cmd/serve: minor code improve for PR #4078 2017-02-01 21:28:43 -05:00
Pablo Saavedra
0081c6911d Check deploy keys when Gogs is run with Service.RequireSignInView=true (#4078)
* Check deploy keys when Gogs is run with require_sign_in_view

Check if the deploy key can access to a repository. A deploy key
doesn't represent an gogs user, so in a site with Service.RequireSignInView
activated we should give read access only in the repositories where
this deploy key is in use. In other case, a deploy service or system
using an active deploy key can get read access to all the repositories
in a Gogs service.

* Refactoring: Comments starts in a new line

* Minor change in a comment

* Code cleaning. Replace spaces with tabs
2017-02-01 21:08:59 -05:00
Unknwon
2527037973 routers/repo: minor code fix for PR #3758 2017-02-01 07:24:20 -05:00
Andrey Nering
1d951cfc49 Fix 500 when repo has invalid .editorconfig (#3758)
Creating a notice instead

Fixes #3643
2017-02-01 07:21:03 -05:00
Unknwon
32a0255ce3 bindata: generate for PR #3646 2017-01-31 21:01:13 -05:00
Rémy Boulanouar
be3a13a0d6 Allow use to set an external tracker url and to redirect user when clicking in Issues same behavior as Wiki. (#3646) 2017-01-31 20:53:48 -05:00
Unknwon
d293aa9ced Do a fast-fail testing on repository URL before mirroring
To ensure the URL is accessible under good condition to prevent
long blocking on URL resolution without syncing anything.
2017-01-31 18:40:38 -05:00
Unknwon
0cfcaca351 conf: minor comments fix 2017-01-31 18:08:34 -05:00
Unknwon
412ba5b2a9 Prepare for release 2017-01-31 07:36:59 -05:00
Unknwon
c17f93e6c0 Makefile: remove -buildmode=pie 2017-01-30 15:28:42 -05:00
Unknwon
a5afa37203 Makefile: fix string concatenation 2017-01-30 15:24:31 -05:00
Unknwon
6bfbed0616 Use commit time instead of author time for push commits (#4037) 2017-01-30 13:38:16 -05:00
Unknwon
185c90df12 Skip deletion for temporary data when not exist on Windows (#4069) 2017-01-30 13:30:04 -05:00
Unknwon
7463d9c51d Fix can not save release draft as draft again (#3669)
But release was not saved as draft in the first time, is not
possible to be draft afterwards because the Git tag was created.
2017-01-30 13:21:24 -05:00
Renato P. de Aquino
ec5a967937 Issue #3814 (#3903) 2017-01-30 08:35:12 -05:00
Unknwon
4bc98f7aa2 Move models/mail.go to modules/mail.go
To use interface to replace *models.User in avoiding cycle import.
2017-01-30 07:20:48 -05:00
Unknwon
207960b459 Fix create user can use user email which is used (#4016) 2017-01-29 18:29:53 -05:00
Unknwon
7b3b46c675 Fix showing total number of PRs when user does not have any repositories (#4007) 2017-01-28 20:17:01 -05:00
Unknwon
5e01ecbc05 Able to set custom Access-Control-Allow-Origin header (#3987)
Added new config option '[http] ACCESS_CONTROL_ALLOW_ORIGIN'.
2017-01-28 19:59:17 -05:00
Dennis Chen
c98aa0e895 api: display repository forks (#3252)
Lists the forks of a repository at the /:user/:repo/forks endpoint.

Signed-off-by: Dennis Chen <barracks510@gmail.com>
2017-01-28 17:59:21 -05:00
Aaron Wood
263203ec28 Produce a position independent executable (#4011)
* Produce a position independent executable

* Add OS detection to the main Makefile so we don't apply -pie on OS X
2017-01-28 17:16:34 -05:00
Denis Denisov
84f28fc5d6 Safe compare password (timing attack) (#4064) 2017-01-28 13:28:52 -05:00
Unknwon
9144ea2b1d Fix inappropriate CSS rule for Markdown on wiki page (#3766) 2017-01-28 09:47:16 -05:00
Unknwon
0d73dcaf0f Fix cross-repository reference link error (#4025) 2017-01-28 09:40:32 -05:00
Unknwon
a6a3afd130 Update locales 2017-01-28 05:54:05 -05:00
Unknwon
7aa53635fe Add 'Organizations' page to user settings (#3587)
User is now able to view full list of organizations belongs to.
2017-01-27 22:36:45 -05:00
Rémy Boulanouar
2ee0c61e62 Setting orgs (#3587)
* Implement organizations listing in setting and allow user to create new organization.

* Implement organizations listing in setting and allow user to create new organization.

* Add space remove by mistake

* Remove unused part of the template

* Update display and behavior according to @Unknown remarks
2017-01-27 22:02:27 -05:00
Unknwon
3d23c13160 Add AppVeyor badge to README 2017-01-27 19:42:41 -05:00
Unknwon
e2afd886fd Update appveyor.yml 2017-01-27 19:33:40 -05:00
Unknwon
aa682b3b7e Add appveyor.yml 2017-01-27 19:25:00 -05:00
Unknwon
e43479d948 Fix changed branch is not reflected when creating PR (#3604) 2017-01-27 18:56:32 -05:00
Unknwon
a2f2f7717a Fix template error when rendering non-README markdown (#4063) 2017-01-27 16:52:19 -05:00
cybe
740192564b Verify repository is not bare before retrieving blob. (#3996) 2017-01-27 07:09:25 -05:00
Unknwon
8bcc0e392e Update XORM required version and 'go fmt' 2017-01-26 17:49:29 -05:00
Unknwon
ae319da5fd Disable local path migration by default (#4033)
Site admin now has to enable manually by config option
[repository] ENABLE_LOCAL_PATH_MIGRATION = true.
Site admin always grants this permission, but regulars users have
to be allowed by site admins in admin user panel.
2017-01-26 17:43:37 -05:00
Unknwon
6d6848af5c Fix log depth of AvatarLink 2017-01-26 17:22:25 -05:00
Unknwon
0d60b58434 templates/repo: rename 'Code' to 'Files' 2017-01-25 18:15:37 -05:00
Unknwon
ad57f18894 modules/sync: minor field refactor 2017-01-25 18:10:27 -05:00
Óscar García Amor
80cd8f6a29 Fix #3714 (#4060) 2017-01-25 17:48:31 -05:00
Unknwon
8cb903fbbb Fix unexpected rendering of README when it is not in Markdown
This patch also handles case when a file name looks like README
but is not a text file (e.g. image, PDF).
2017-01-25 07:10:52 -05:00
Unknwon
d1c327d508 repo/home.tmpl: only ellipsis on repository name
File name could contain non-ASCII characters.
See details on https://discuss.gogs.io/t/topic/758.
2017-01-24 21:15:44 -05:00
Óscar García Amor
eaf57229d3 Fix notification email issues (#4055) 2017-01-24 08:18:14 -05:00
atzoum
4e967bc765 Dockerfile for aarch64 (odroid c2 & pine64) (#4018) 2017-01-23 18:31:24 -05:00
Aaron Wood
64788ffff6 Remove call to set GOMAXPROCS (#4010)
* Remove call to set GOMAXPROCS

* Remove runtime import
2017-01-23 18:30:40 -05:00
Joakim Fremstad
3143e35d83 Reword README.md (#4047) 2017-01-23 18:30:29 -05:00
Unknwon
8d5a693382 locale: remove unused locale string 2017-01-23 14:33:25 -05:00
Sandro Santilli
1e185787a9 Enable federated avatars by default (#3997) 2017-01-22 06:03:38 -05:00
Unknwon
1b2ecde1c9 Update locales 2017-01-21 20:12:19 -05:00
Unknwon
e8c3e9bcf8 Improve code for fix of #4006 2017-01-03 11:02:14 +08:00
Unknwon
cdfcef04a1 Fix incorrect logic check for fork repo action 2017-01-03 10:39:05 +08:00
Unknwon
8aa35577b3 Fix vulnerability reported in #4006 2017-01-03 10:36:27 +08:00
Unknwon
c4086d43db Update locales 2017-01-01 13:33:24 +08:00
Unknwon
8059175a5c Fix dashboard issues/pull request counting 2016-12-27 22:01:18 +08:00
Unknwon
f8fd084bd2 Fix dashboard issue/pull request scoping 2016-12-27 20:32:27 +08:00
Unknwon
d528704503 Minor code fix for PR #3560 2016-12-27 20:26:35 +08:00
Unknwon
98076ee72d Upgrade Sematic UI to 2.2.7 2016-12-27 18:56:21 +08:00
hgaiser
e6ef75204b Fix assigned/created issues in dashboard. (#3560)
* Fix assigned/created issues in dashboard.

* Use GetUserIssueStats for getting all Dashboard stats.

* Use gofmt to format the file properly.

* Replace &Issue{} with new(Issue).

* Check if user has access to given repository.

* Remove unnecessary filtering of issues.

* Return 404 error if invalid repository is given.

* Use correct number of issues in paginater.
2016-12-27 18:54:24 +08:00
Joel-Liang
d674cb7f20 Fix wrong anchors for non-latin headings (#3981)
Change Javascript regular expression to match non-latin characters
The regex comes from here: http://stackoverflow.com/questions/150033/regular-expression-to-match-non-english-characters#comment22322603_150078

And this patch should fixed these two issues: #3919 #3843
2016-12-26 22:37:20 -05:00
Unknwon
114c179e5a Update .gopmfile and glide.lock 2016-12-23 21:53:30 -05:00
Unknwon
598e062241 Add Galician support
- Update locales
2016-12-23 21:06:15 -05:00
David A. Lareo
bf70082c22 New locale "galician" (#3917) 2016-12-23 20:53:24 -05:00
Unknwon
2994272e91 Code fix for PR #3748 2016-12-23 20:44:27 -05:00
typeless
cdedc2d188 Use temporary file to avoid out-of-memory when receiving big chunks. (#3748)
* Use temporary file to avoid out-of-memory when receiving big chunk.

Not perfect but I think it's a reasonable solution.
For small request bodies, I suppose performance wouldn't be an issue.
For large ones, this seems to be a necessary evil.

* Must close the open file to avoid fd leaks
2016-12-23 19:50:12 -05:00
Unknwon
42a3bbb0f4 Fetch before Checkout when create pull request (#3699) 2016-12-23 19:36:16 -05:00
Unknwon
eb79532812 Minor fix for PR #3436 2016-12-23 19:00:24 -05:00
lstahlman
5feb68a589 Improve issue references in markdown. (#3436) 2016-12-23 18:49:53 -05:00
Unknwon
03f7f3ee67 Some code renaming 2016-12-22 19:58:30 -05:00
Unknwon
6383bf7480 Fix reported vulnerability
Ability to use labels from arbitrary repositories.

Reported by Miguel Ángel Jimeno.
2016-12-22 19:44:59 -05:00
Unknwon
f471ef1bc7 Fix vulnerability reported in #3962 2016-12-22 19:35:06 -05:00
Unknwon
7ebe0a9916 Fix vulnerabilities reported in #3959 2016-12-22 19:19:56 -05:00
Unknwon
89e93fe01e Minor code fix for PR #3602
Closes #1122
2016-12-22 03:49:50 -05:00
raphael10241024
0f8a5fdf49 fix bug #1122 log.smtp receiver configure error (#3602) 2016-12-22 03:45:51 -05:00
Gian Perrone
3c91c9063b Enable Ubuntu 16.04 build at packager.io (#3617) 2016-12-22 03:41:54 -05:00
Unknwon
e629c7583b Fix #3675
Closes #3676
2016-12-22 03:35:53 -05:00
ipavl
539b07e205 Pluralize "Statistic" (#3665)
Other locales appear to use the plural version, and the text is being associated with more than one statistic.
2016-12-22 03:26:33 -05:00
Unknwon
16d3e7085e Minor fix for PR #3667 2016-12-22 01:51:49 -05:00
Thibault Meyer
c47fbc629b Feature #2583: Disable HTTP cloning (#3667)
* Can disable GIT interactions by HTTP protocol

* rename variable + fix wiki link

* missing space
2016-12-22 01:42:04 -05:00
Unknwon
d04b19545d Code fix for PR #3547 2016-12-22 01:28:06 -05:00
Kurt Madel
3b0e2c1c3f PR Webhook - Add base/head info (#3547)
* messing with getting local go-gogs-client

* coding style fix

* added comments for required fields
2016-12-22 01:01:15 -05:00
Unknwon
79a2745b4a Set ProdMode in the correct place
Closes #3696, #3611

Previously, ProdMode can only be true for web server,
which always prints dev mode log message to incoming SSH
connections and leaks unexpected information.
2016-12-22 00:27:45 -05:00
Unknwon
6cc992ea54 Minor fix for PR #3687 2016-12-21 23:52:11 -05:00
Stefan Grönke
3376354ed8 Check if file is a symlink with web editor (#3687)
* editor checks for symlinks

* translate file_is_a_symlink message

* credit translation author
2016-12-21 23:49:56 -05:00
Unknwon
c2e1370588 Update README
[CI SKIP]
2016-12-21 22:47:55 -05:00
Thibault Meyer
93616fe776 Fix regex on route file (#3851) 2016-12-21 19:46:43 -05:00
Najeeb R
e5972bbcde #3480 Fix new ssh key adding issues (#3565)
* #3480 Fix new ssh key adding issues

Added regular exp match (108) and remove training new line (111) that cause system to think its an ssh2 key.

* #3480 Fix new ssh key adding issues

-Sanitizate new lines (windows format) in posted key
-Edit sanitization implementation to use string replace for code readability and maintenability.
2016-12-21 19:35:48 -05:00
Flare
952e510dfa Added public entries to reserved keywords list
Closes #3728
2016-12-21 19:24:23 -05:00
Unknwon
8f442dde03 Dirty hack for #3905
I beileve this is a bug in XORM which wrongly identifies a struct
to inappropriate table name. Also seems to be random.
2016-12-21 05:11:52 -05:00
Unknwon
c1e53cdc72 Minor fix for PR #3822 2016-12-21 04:18:23 -05:00
stroucki
e9f6a43073 Fix database write context interleaving bug (#3822)
* UpdateIssueUsersByMentions was calling database write operations while
a transaction session was in progress. MailParticipants was failing
silently because of the SQLITE_LOCKED error. Make sure failures in
MailParticipants enter the log, and pass on the transaction context.

issue: let caller pass in database context, and use it
issue_comment: obtain database context to pass to UpdateIssueMentions
issue_comment: log any error from call to MailParticipants
issue_mail: pass on database context to UpdateIssueMentions

* issue: forgot debug statement
2016-12-21 04:11:07 -05:00
Unknwon
67380cf47b Minor code fix 2016-12-21 04:08:23 -05:00
LefsFlare
39fdb0f9c4 Fixed 404 caused by unexpected question mark (#3668)
This fixes 404 caused when creating new files or wiki pages with question marks.
2016-12-21 04:05:49 -05:00
imilo
85fbd6e9c6 New settings option for a custom SSH host (#3763) 2016-12-21 03:46:54 -05:00
Mateusz Hromada
2cfdce88e0 Check for zero length passwords in LDAP module. (#3827) 2016-12-21 03:43:37 -05:00
Саша Иванов
ca6cbb95cc #3791 update LDAP username check (#3906) 2016-12-21 03:43:22 -05:00
leonklingele
7cb440273c Don't use custom PBKDF2 function (#3952)
Instead, use golang.org/x/crypto/pbkdf2
2016-12-21 03:42:44 -05:00
leonklingele
d96f2a7184 Fix random string generator (#3953)
* Remove unused custom-alphabet feature of random string generator

* Fix modulo-biased random string generator

* Random string generator should return error if it fails to read random data via crypto/rand
2016-12-21 03:41:37 -05:00
Nico Mandery
adcb1d7c65 serve video files using the HTML5 video tag (#3967) 2016-12-21 03:40:23 -05:00
afilippov1985
04fbfad2d4 init script for gentoo (#3761) 2016-12-21 03:38:07 -05:00
SeongAhJo
bab051a8c1 Fix Typo Errors (#3885)
* Fix typos

* Fix typos
2016-12-21 03:33:30 -05:00
leonklingele
ad6de46ce4 Fix typo: 'passowrd' -> 'password' (#3951) 2016-12-21 03:31:40 -05:00
Bo Zhang
282f7fb8fa Fix typos (#3852) 2016-12-21 03:13:11 -05:00
M5oul
5034ef787c [mod] readme: update YunoHost package link. (#3881) 2016-12-21 03:12:53 -05:00
Sandro Santilli
3925166d31 Add support for using "libravatar" as the GravatarSource (#3969)
Just to make it easier for administrator to configure libre avatar,
as it is done for "duoshuo" and "gravatar"
2016-12-21 03:10:15 -05:00
Alexander Lunegov
7358e46815 Fix string format verbs (#3637) 2016-12-21 02:09:43 -05:00
Unknwon
8f09fc64bd Minor fix for PR #3624 2016-12-21 01:48:11 -05:00
Kim "BKC" Carlbäcker
b2de3d71c5 More Issue-Comments API-endpoints (#3624)
* ListAllInRepo & Delete Issue-Comments

* Moar data in issue-comments
2016-12-21 01:21:15 -05:00
Unknwon
44ed991726 Merge branch 'develop' of https://github.com/tanapoln/gogs into develop 2016-12-21 00:49:44 -05:00
Unknwon
34b92cdb44 Fix #3905 2016-12-20 23:23:57 -05:00
Unknwon
d3b2ff17d6 Update locales 2016-12-20 22:35:55 -05:00
Unknwon
cc45a8ab06 cmd: new command 'import locale'
Quickly import locale files downloaded from Crowdin.
2016-12-20 22:34:58 -05:00
Unknwon
105c528369 Add Korean support 2016-12-20 21:59:59 -05:00
Unknwon
5d0b334d56 Update git-module required version 2016-12-20 21:28:32 -05:00
Unknwon
b092733c2e Update git-module version to support back Git 1.7.1 2016-12-08 11:44:45 -05:00
Unknwon
baeccdb161 Add github.com/go-xorm/builder to dependency 2016-11-23 21:04:16 -05:00
Unknwon
394fc61129 Update glide.lock and .gopmfile for XORM 2016-11-23 20:58:45 -05:00
Unknwon
55dc9d898f Drop Go 1.4 support
Due to golang.org/x/crypto/ssh requires a method from STD in Go 1.5.

And Go 1.4 is fairly old version for now.
2016-11-23 20:23:18 -05:00
Unknwon
552d5c7ceb Update glide.lock and .gopmfile
Closes #3690 #3727
2016-11-23 20:06:41 -05:00
Unknwon
95065de39a Fork go-libravatar to remove import path check
To use GitHub import path as much as possible.
2016-11-19 21:55:21 -05:00
Unknwon
a3ea4b8802 Update locales and add Swedish 2016-11-19 21:40:13 -05:00
Rémy Boulanouar
6bcff7828f Fix mention in comments like (@dblk) (#3655)
* Fix mention in comments like (@dblk)

* Better fix to avoid making link for "Hello@DblK"
2016-10-16 22:17:59 -04:00
LefsFlare
2cb5ec5983 Prevented user enumeration of valid users through HTTP status codes of login (#3639) (#3654) 2016-10-16 22:08:40 -04:00
LefsFlare
2bec8a4f1e Changed interface (#3685) 2016-09-22 19:38:12 -04:00
Unknwon
7e15ff9486 Update locales
Add new locale Serbian (Cyrillic)
2016-09-15 20:03:36 -04:00
Unknwon
12445fe2ed Add build system link to README [CI SKIP] 2016-09-08 20:56:05 -04:00
Unknwon
491407ddf8 #3590 fix 404 for release draft edition
Closes #3591
2016-09-03 06:00:59 -04:00
Unknwon
6da55159a2 #3589 LoadRepoConfig after ORM is initialized 2016-09-02 23:18:37 -04:00
Tanapol Nearunchorn
73fedc7275 provide button to delete merged pull request 2016-09-02 10:12:21 +07:00
Unknwon
c50d59874d #3577 incorrect URL produced by AvatarLink 2016-09-01 12:36:26 -04:00
Daniel Oaks
b3d9ca4ccd Add the ability to explore organizations (#3573)
* Add ability to explore organizations

* Use right icon for org explore links
2016-09-01 09:08:05 -04:00
Daniel Oaks
4efaf8e882 Fix repo list display on Safari (#3569) 2016-09-01 08:04:25 -04:00
raphael10241024
178556142a fix link error under preview (#3566) 2016-09-01 06:01:27 -04:00
Unknwon
7c1fbed057 Fix panic when attempt login with non-exist user 2016-09-01 05:12:34 -04:00
Thibault Meyer
bc902b8f74 Feature #3492: Add option to hide footer load times (#3562)
* Add option to hide footer load times

* Rename option variable + minor changes
2016-09-01 01:01:32 -04:00
Unknwon
8ee14db51e Update locales 2016-09-01 00:35:04 -04:00
Rémy Boulanouar
5d35578811 Update size of SHA to fix #3538 (#3563) 2016-08-31 14:22:17 -07:00
Corben Dallas
d09fca3ca9 Add a (Open)SuSE init script (#3558) 2016-08-31 14:04:21 -07:00
Unknwon
dadd35b636 #3559 fix template error 2016-08-31 13:59:23 -07:00
Unknwon
c2afdf2192 Minor code fix [CI SKIP] 2016-08-31 04:31:53 -07:00
Unknwon
152e715999 models/login_source: code improvement 2016-08-31 01:22:41 -07:00
Unknwon
99c2ae7b35 #3515 use alert instead 500 for duplicated login source name 2016-08-31 00:56:10 -07:00
无闻
cd9b926af7 Support Editorconfig on web editor (#3512) 2016-08-30 16:47:22 -07:00
Andrey Nering
9ac46fb983 Support Editorconfig on web editor 2016-08-30 20:30:47 -03:00
Unknwon
8516dfcb6c #2018 able to sync now for mirrors
- Refactor code to use sync.UniqueQueue
- Closes #3509
2016-08-30 16:18:33 -07:00
Unknwon
c1ecb6c60a modules/sync: add UniqueQueue 2016-08-30 15:50:30 -07:00
Unknwon
43297148b2 modules/sync: rename SingleInstancePool to ExclusivePool 2016-08-30 15:19:53 -07:00
Unknwon
c0c1a4b01b js: fix comment issue status button title change 2016-08-30 14:37:46 -07:00
Sandro Santilli
47a3243ff1 Add all, check and dist Makefile rules (#3549)
These are to follow the GNU Coding Standards Makefile Targets:
https://www.gnu.org/prep/standards/html_node/Standard-Targets.html
2016-08-30 14:06:05 -07:00
Unknwon
22e14a0a67 templates/repo/view: fix bad link 2016-08-30 13:59:41 -07:00
Unknwon
48a0b5b026 UI: fix block selection on code for empty line are not highlighted 2016-08-30 06:03:38 -07:00
Unknwon
16eb2eb6a3 Fix import path 2016-08-30 05:49:54 -07:00
Unknwon
e6ec1ca1f8 #3548 disable issue cannot edit label and milestonefor pull requests 2016-08-30 05:30:47 -07:00
Unknwon
6f90835f95 Make bindata 2016-08-30 05:24:34 -07:00
Unknwon
643142acab Web editor: support upload files 2016-08-30 05:23:59 -07:00
Unknwon
7c31f235da Web editor: support upload files 2016-08-30 05:12:37 -07:00
Kim "BKC" Carlbäcker
4f40019130 codegangsta/cli => urfave/cli (#3546) 2016-08-30 04:57:58 -07:00
Unknwon
780cc2d110 router/repo: code refactoring 2016-08-30 02:08:38 -07:00
Unknwon
2a13f682e0 Bump git-module required version 2016-08-29 23:57:22 -07:00
Unknwon
28cf0e6aaa #3459 code quality improvement 2016-08-29 20:00:06 -07:00
Thibault Meyer
92fb30c526 Load a set of predefined labels (#3459)
* Can use a predefined set of labels

* Change UI

* Fix HTML file indentation

* Avoid reading file from other directory (security issue)

* Apply a better fix

* Remove not used variable

* Merge upstream/develop

* Do modifications

* Raname

* remove binding + rename variable
2016-08-29 19:02:49 -07:00
Andrey Nering
9f44c26789 Update .editorconfig (#3534)
[CI SKIP]
2016-08-29 18:05:44 -07:00
LFlare
3738b6399e Fixed typo (#3533)
Git convention has it capitalised.
2016-08-29 11:31:12 -07:00
Unknwon
62b0dc4853 Web editor: fix cannot create new file in subdirectory 2016-08-29 00:10:21 -07:00
Unknwon
429c92c0ce #3516 enforce line ending to be \n from web editor 2016-08-28 05:32:10 -07:00
Unknwon
579e5e4fee Web editor: disallow edit mirror repository 2016-08-28 04:56:41 -07:00
Unknwon
ba27d71abe Web editor: improve edit file 2016-08-28 04:31:42 -07:00
Unknwon
7115e3a4d5 css: remove profile avatar height 2016-08-28 03:19:27 -07:00
Unknwon
0114fdcba4 Web editor: improve delete file process 2016-08-28 01:41:44 -07:00
Unknwon
dad5c15520 #2901 allow setting preferred licenses
- Closes #3488
2016-08-28 00:06:22 -07:00
Unknwon
6e171c5225 Web editor: improve edit file tooltip 2016-08-27 15:25:01 -07:00
Unknwon
f0b5c3b90a #3448 redirect if any after sign in 2016-08-27 15:07:02 -07:00
Unknwon
c30b856d14 #3505 use user’s info for committer and author 2016-08-27 13:37:55 -07:00
Unknwon
13c106af77 label: adjust forecolor boundary 2016-08-27 12:44:39 -07:00
Unknwon
ce1e4348da #3521 fix wiki HTTP/S clone URL does not have .wiki suffix 2016-08-27 12:29:52 -07:00
Unknwon
13a8823bd3 #3495 only start builtin SSH server after user finish installation 2016-08-27 12:25:22 -07:00
Unknwon
bbca2916f7 Update highlightjs 2016-08-27 11:56:20 -07:00
Unknwon
37305a59ca migrations: sync table first 2016-08-26 17:32:41 -07:00
Unknwon
bb359a74f1 migrations: set comment updated as created 2016-08-26 14:07:21 -07:00
Unknwon
6b98d58906 #2966 code cleanup 2016-08-26 13:40:53 -07:00
Iwan Budi Kusnanto
8dca9f95fa issues comment API : list, create, edit (#2966)
add `since` query string support to list issue comment
2016-08-26 11:23:21 -07:00
Thibault Meyer
f50e568fd1 Fix #3189: Sort labels by name (#3446)
* Fix #3189 #3445: Order labels by name

* Order labels by name on Issues view
2016-08-25 17:43:53 -07:00
Unknwon
f8a48ffaad Web editor: improve code quality 2016-08-24 21:35:03 -07:00
Kurt Madel
67fb0fe6a5 added support to set pull_request event from api (#3513) 2016-08-24 20:44:58 -07:00
Unknwon
0b273ac4d5 #3383 code cleanup 2016-08-24 16:05:56 -07:00
lstahlman
84b56c3c53 Additional API support for milestones (#3383) 2016-08-24 15:18:56 -07:00
Kim "BKC" Carlbäcker
06602a84ff Fix PR-webhook issue where Label-data is stale (#3486) (#3510)
* Fix PR-webhook issue where Label-data is stale

* Conventions \o/

* logs are nice if they're consistent...
2016-08-24 12:01:30 -07:00
Kim Carlbäcker
b710f6bd65 Update gopmfile and glide.lock (#3508) 2016-08-23 14:53:16 -07:00
rugk
95bd19c509 libravatar.org supports HTTPS (#3498) 2016-08-23 09:50:33 -07:00
Kim Carlbäcker
7c5710d31f Issues can be closed via API (#3170) (#3479)
* Issues can be closed via API

* Error-checking is nice xD

* EditIssueOption.Status => State

* Use const instead of string-literal
2016-08-23 09:09:32 -07:00
Unknwon
7f7216be6e Code quality improvement on JS 2016-08-17 22:44:07 -07:00
Unknwon
ec332cf903 Minor naming improvement 2016-08-17 16:10:07 -07:00
Thibault Meyer
2c5411b00c Fix #3361: Dumps are created world readable (#3473)
* Set dump file permission to 0600

* Typo
2016-08-17 11:38:42 -07:00
Unknwon
a00c932bbc General code quality improvement 2016-08-16 23:06:38 -07:00
Unknwon
6f9a95f830 #2246 add HTMLURL to webhook type
- Fill Milestone and Assignee field when available in webhook payload
2016-08-16 10:19:09 -07:00
Unknwon
8bf57be9ba Fix git diff tests 2016-08-16 07:45:06 -07:00
Unknwon
b1504ed99a #3464 add diff signs which does not have inline diff 2016-08-16 07:37:28 -07:00
Unknwon
9349def72e #3464 reproduce diff signs
Commited wrong file.
2016-08-16 07:33:53 -07:00
Unknwon
6cda35a75f #3464 reproduce diff signs 2016-08-16 07:31:54 -07:00
Unknwon
2625193a48 models/repo_editor: improve code quality 2016-08-15 22:20:55 -07:00
Unknwon
f3c3258921 Fix repository owner can assign self 2016-08-15 18:48:20 -07:00
Unknwon
4042d1f0c3 models/issue: improve quality and performance of NewIssue function 2016-08-15 18:40:32 -07:00
Unknwon
4a46613916 markdown: fix treating pure number as SHA1
- Detect non-exist commit and return 404 not 500
2016-08-15 15:27:19 -07:00
Unknwon
6c8fcb3af2 #3467 fix clone fail when wiki is empty 2016-08-15 15:09:34 -07:00
Unknwon
61e27dedf7 #3466 fix response of pull request form validation error 2016-08-15 14:04:44 -07:00
Unknwon
94392a7af3 Fix empty repository panic on send test webhook 2016-08-15 05:53:47 -07:00
Unknwon
cc647ba9d5 #3461 fix security issue of REAMDE path in create repository 2016-08-15 02:35:54 -07:00
Unknwon
5e89485cec Update README [CI SKIP] 2016-08-15 02:12:18 -07:00
Unknwon
8637e67e6f Fix outdated edit can’t overwrite changes 2016-08-15 02:06:35 -07:00
Unknwon
4a19fd6441 Web editor: temporarily disable upload and quick fix for edit and new
Try to merge into develop branch ASAP, then continue minor fixes afterwards.
2016-08-15 01:42:20 -07:00
Unknwon
54e0ada9d5 Web editor: improve delete file 2016-08-14 23:52:24 -07:00
Unknwon
cd89f6c502 Web editor: improve edit file and diff preview 2016-08-14 23:52:24 -07:00
Unknwon
660e7a178a modules/sync: move sync objects to independent module 2016-08-14 23:52:24 -07:00
Unknwon
15845cb287 Code clean up for new config options 2016-08-14 23:52:24 -07:00
Richard Mahn
d0a0239bac Squashed commit of the following:
commit 0afcb843d7
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 17:13:29 2016 -0600

    Removed Upload stats as the upload table is just a temporary table

commit 7ecd73ff55
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 08:42:41 2016 -0600

    Fix for CodeMirror mode

commit c29b9ab531
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 08:03:33 2016 -0600

    Made tabbing in editor use spaces

commit 23af384c53
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 07:56:46 2016 -0600

    Fix for data-url

commit cfb8a97591
Merge: 7fc8a89 991ce42
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 07:42:53 2016 -0600

    Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file

    Conflicts:
    	modules/bindata/bindata.go
    	public/js/gogs.js

commit 7fc8a89cb4
Merge: fd3d86c c03d040
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 07:40:00 2016 -0600

    Merge branch 'feature-create-and-edit-repo-file' of github.com:richmahn/gogs into feature-create-and-edit-repo-file

commit fd3d86ca6b
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Sun Jul 31 07:39:44 2016 -0600

    Code cleanup

commit c03d0401c1
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Fri Jul 29 15:38:23 2016 -0600

    Code cleanup

commit 98e1206ccf
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Thu Jul 28 18:36:01 2016 -0600

    Code cleanup and fixes

commit c2895dc742
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Thu Jul 28 18:24:04 2016 -0600

    Fixes per Unknwon's requests

commit 6aa7e46b21
Merge: 889e9fa ad7ea88
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Thu Jul 28 17:13:43 2016 -0600

    Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file

    Conflicts:
    	modules/bindata/bindata.go
    	modules/setting/setting.go

commit 889e9faf1b
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Fri Jul 22 14:09:18 2016 -0600

    Fix in gogs.js

commit 47603edf22
Merge: bb57912 cf85e9e
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Fri Jul 22 14:07:36 2016 -0600

    Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file

    Conflicts:
    	modules/bindata/bindata.go
    	public/js/gogs.js

commit bb57912558
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Fri Jul 22 14:02:18 2016 -0600

    Update for using CodeMirror mode addon

commit d10d128c51
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Tue Jul 19 16:12:57 2016 -0600

    Update for Edit

commit 34a3498202
Merge: fa1b752 1c7dcdd
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Tue Jul 19 11:52:02 2016 -0600

    Merge remote-tracking branch 'gogits/develop' into feature-create-and-edit-repo-file

    Conflicts:
    	modules/bindata/bindata.go

commit fa1b752be2
Author: Richard Mahn <richard_mahn@wycliffeassociates.org>
Date:   Fri Jul 15 18:35:42 2016 -0600

    Feature for editing, creating, uploading and deleting files
2016-08-14 23:52:24 -07:00
Unknwon
7e7613cdec Fix template nil error 2016-08-14 23:43:13 -07:00
Unknwon
a5b88c4d0c Fix template error [CI SKIP] 2016-08-14 16:45:15 -07:00
Unknwon
dccb0c15b9 Replace convert.To with APIFormat calls 2016-08-14 04:17:26 -07:00
Unknwon
3f7f4852ef #2246 fully support of webhooks for pull request 2016-08-14 03:32:24 -07:00
Unknwon
0f33b04c87 Add subcommand to create new user in CLI 2016-08-13 16:11:52 -07:00
Unknwon
fd3b9ca3aa CSS: remove font “Meiryo Ui” 2016-08-12 22:05:20 -07:00
Justin Ray Vrooman
f1a5a4277d fix grammar + typo. (#3453) 2016-08-12 17:06:07 -07:00
Unknwon
f59d2dd034 Code clean up 2016-08-12 03:04:50 -07:00
Unknwon
5be881756b #3442 add test suites 2016-08-12 02:56:50 -07:00
Thibault Meyer
4296427214 Fix #3437: Cannot connect to PostgreSQL via IPv6 address (#3442)
* Change PostgreSQL connstring parsing to handle IPv6

* Fix used variable

* Remove redundant code + use variable
2016-08-12 02:42:06 -07:00
Unknwon
7551141dbe Minor fix on top menu dropdown icon position 2016-08-11 23:12:06 -07:00
Unknwon
5544a7037b Add new dependency 2016-08-11 17:12:55 -07:00
Andrey Nering
dbed39ba05 On showing diff/file, use the tab_width specified on .editorconfig, if any (#3241)
Closes #3182
2016-08-11 17:07:09 -07:00
Unknwon
aa1fc30b89 Add .mailmap 2016-08-11 16:57:48 -07:00
Andrey Nering
fa12c282f6 Add Content-Disposition header for downloads (#3439) 2016-08-11 16:53:40 -07:00
Andrey Nering
25b23c4bc9 Do not show non-image attachment in a <img> tag. Fixes #3215 (#3311) 2016-08-11 16:16:36 -07:00
Thibault Meyer
7eafe3213f Fix #3321: commit tag shortener (#3418)
* Fix #3321: commit tag shortener

* Check short commit

* remove debug

* Edit unit tests

* Show 10-char short SHA
2016-08-11 15:34:00 -07:00
Unknwon
2cb04db526 Fix #3391 2016-08-11 15:29:39 -07:00
Unknwon
96f92e6105 Fix email FROM 2016-08-11 15:16:01 -07:00
Unknwon
a47aef5460 #2852 code cleanup 2016-08-11 14:55:10 -07:00
Odin Ugedal
1dd003bd4c Add initial support for unix sockets (#2852) 2016-08-11 14:46:33 -07:00
Unknwon
70fbcd2f27 models: rename EnableTidb to EnableTiDB 2016-08-11 14:38:45 -07:00
Unknwon
5850308a37 #3013 support connect PostgreSQL via unix socket 2016-08-11 14:38:26 -07:00
Thibault Meyer
53c573ed02 Fix #3314: Cannot edit release with tag name contains slash (#3434) 2016-08-11 13:45:42 -07:00
Unknwon
10b47eddd2 Update glide.lock and .gopmfile [CI SKIP] 2016-08-11 11:51:12 -07:00
Robin Lambertz
5a9709fa9d Add MaxRepoCreation to EditUser API (#2781) 2016-08-11 11:49:31 -07:00
Unknwon
7e9b42c87d #2780 code clean up 2016-08-11 11:35:46 -07:00
Robin Lambertz
b6c14f8b21 Add AddCollaborator API Endpoint (#2780)
* Add AddCollaborator API Endpoint

* Add optional Permission to AddCollaborator endpoint

* Use APIContext
2016-08-11 11:23:25 -07:00
Unknwon
5077408d78 #3233 code cleanup and minor issue fix 2016-08-11 10:53:51 -07:00
Andrew
0885784f13 Wiki mirroring implementation (#3233)
* Implement wiki mirroring, add Update mirrors operation to admin dashboard

* bindata.go update after merge

* Implement checking Git repo endpoint existence, support for BB included

* Remove admin dashboard operation
Fix bindata.go

* Apply gofmt to repo model file

* Try to remove bindata from PR

* Revert accepted wiki names change in favor of better system

* Remove unused imports
2016-08-11 10:18:51 -07:00
Sandro Santilli
3380c946e1 Always set redirect_to on header-provided sign-in (#3435)
This is an attempt to fix #3089 following the strategy introduced
in d625e41c6c, although that strategy
by itself does not seem to be sufficient.

What needs be done is honouring the redirect_url query parameter
from the auth router.
2016-08-11 10:14:39 -07:00
Unknwon
d625e41c6c #3408 minor code fix 2016-08-11 07:41:01 -07:00
Sandro Santilli
eb1bfe0e59 Do not show the "Sign up for free" button in issue tracker (#3408)
* Do not show the "Sign up for free" button in issue tracker

The "Sign in to comment" link is good enough and will correctly
show or not show the "Sign Up" button link for those not having
an account already.

Fixes #3407 (link to nowhere when registration is disabled)

* Move html from translation to template

* Remove extra space in `{{ .SignInLink }}`.
2016-08-11 07:36:23 -07:00
Unknwon
042d350762 Fix only user has repo write access can comment 2016-08-11 06:22:56 -07:00
Unknwon
0f26f3678a #3279 use doer email for FROM field of issues 2016-08-11 06:17:45 -07:00
Thibault Meyer
6a81632e36 Fix typo CacheInternal -> CacheInterval (#3432) 2016-08-11 05:59:11 -07:00
Kim Carlbäcker
b756806ee9 Add "support" for git-daemon-export-ok (#2940) (#3046)
* add git-daemon-export-ok "support"

* Slight fix to git-daemon-export-ok

* Add error-checking for git-demon-export-ok

* Remove old comments and fixed logging-issues

* Check if git-daemon-export-ok exists or not
2016-08-10 20:08:09 -07:00
Unknwon
81e6f82caf Update glide.lock and .gopmfile [CI SKIP] 2016-08-10 11:57:53 -07:00
Unknwon
29f76f3936 Update locales [CI SKIP] 2016-08-10 11:54:52 -07:00
lstahlman
ea192147ea Add test pull request task on merging a PR. Fixes #3396 (#3425) 2016-08-10 11:38:44 -07:00
Thibault Meyer
99812a80fd Fix #3420: Bad commit URL generation (#3424) 2016-08-10 11:35:06 -07:00
Thibault Meyer
8ad92bb8a4 Verify list len before use it with IN (#3423) 2016-08-10 11:06:51 -07:00
Unknwon
b85927e488 #3091 show Git configs on admin panel 2016-08-10 11:01:42 -07:00
Unknwon
87b408a2e5 Update bindata.go [CI SKIP] 2016-08-09 23:58:15 -07:00
Thibault Meyer
fc68fb951c Feature #3398: Redefine global mirror interval (#3409)
* add mirror::GLOBAL_INTERVAL on app.ini

* rename key to DEFAULT_INTERVAL

* add key on default app.ini + move code
2016-08-09 23:47:16 -07:00
Unknwon
5448d29b2e #3417 wrong dashboard issue count for create by you 2016-08-09 23:19:52 -07:00
Unknwon
bb51eb5188 Update cron revision [CI SKIP] 2016-08-09 22:02:51 -07:00
lstahlman
89f71b44f7 Add committer information to API and Webhooks. Also fixes #3271 (#3414) 2016-08-09 22:01:57 -07:00
Unknwon
c5d4a9e046 #2907 Add commit timestamp to webhook 2016-08-09 18:28:06 -07:00
Unknwon
edd786446c #3158 skip RUN_USER check on Windows 2016-08-09 17:41:18 -07:00
Unknwon
b0b88d9bc5 #3091 add config option for Git GC 2016-08-09 17:24:32 -07:00
Unknwon
15b0cbe318 #3007 update git-module require version 2016-08-09 17:15:48 -07:00
Unknwon
9f0c571238 Change LICENSE copyright holder name [CI SKIP] 2016-08-09 13:05:15 -07:00
Unknwon
f70343660d Little code refactoring 2016-08-09 12:56:00 -07:00
Rory McNamara
c8b45ecc27 Render the Code view on the server (minus syntax highlighting) (#2942)
* render code view server side

* remove debug print

* fix multiline selection bug

* change string concatenation to bytes.Buffer for efficiency

* Fix newlines added by previous for hljs

* fix selection highlighting

* make css changes in .less
2016-08-09 12:35:20 -07:00
Unknwon
9e8a8867ea #3325 use correct word for .gitignore 2016-08-09 12:16:21 -07:00
lstahlman
2c82fc3edb Fix for #3410 overall issues for organisations is limited to num_repos from the user (#3412) 2016-08-09 10:00:42 -07:00
Unknwon
bbe866122d #3406 fix regression of MustEnableIssues check 2016-08-09 09:39:55 -07:00
Unknwon
87954dbfeb Adjust .codebeatsettings 2016-08-08 23:26:10 -07:00
lstahlman
699c71d319 Fix for #3401 Links of pull request comment email should use pulls URL (#3403) 2016-08-08 22:40:05 -07:00
Unknwon
21f25799b4 Add codebeat files 2016-08-08 20:03:46 -07:00
Unknwon
90af997fec #3399 500 for upstream pulls page if user has forked repository 2016-08-08 13:02:55 -07:00
Unknwon
b73318bc62 Fix 404 when comment on pulls and not using interal issue tracker 2016-08-08 11:29:50 -07:00
Unknwon
e5bf4281b5 #2825 early response 200 when ?go-get=1 2016-08-07 14:29:16 -07:00
Unknwon
0c2b9bbb2b Update glide.lock and .gopmfile 2016-08-07 11:05:19 -07:00
Unknwon
99385db0c4 #3320 code cleanup 2016-08-07 11:01:47 -07:00
Sandro Santilli
90dd0657b5 Add support for federated avatars (#3320)
* Add support for federated avatars

Fixes #3105

Removes avatar fetching duplication code
Adds an "Enable Federated Avatar" checkbox in user settings
(defaults to unchecked)

Moves avatar settings all in the same form, making
local and remote avatars mutually exclusive

Renames UploadAvatarForm to AvatarForm
as it's not anymore only for uploading

* Run gofmt on all modified files

* Move Avatar form in its own page

* Add go-libravatar dependency to vendor/ dir

Hopefully helps with accepting the contribution.
See also #3214

* Revert "Add go-libravatar dependency to vendor/ dir"

This reverts commit a8cb93ae640bbb90f7d25012fc257bda9fae9b82.

* Make federated avatar setting a global configuration

Removes the per-user setting

* Move avatar handling back to base tool, disable federated avatar in offline mode

* Format, handle error

* Properly set fallback host

* Use unsupported github.com mirror for importing go-libravatar

* Remove comment showing life exists outside of github.com

... pity, but contribution would not be accepted otherwise

* Use Combo for Get and Post methods over /avatar

* FEDERATED_AVATAR -> ENABLE_FEDERATED_AVATAR

* Fix persistance of federated avatar lookup checkbox at install time

* Federated Avatars -> Enable Federated Avatars

* Use len(string) == 0 instead of string == ""

* Move import line where it belong

See
https://github.com/Unknwon/go-code-convention/blob/master/en-US/import_packages.md

Pity the import url is still the unofficial one, but oh well...

* Save a line (and waste much more expensive time)

* Remove redundant parens

* Remove an empty line

* Remove empty lines

* Reorder lines to make diff smaller

* Remove another newline

Unknwon review got me start a fight against newlines

* Move DISABLE_GRAVATAR and ENABLE_FEDERATED_AVATAR after OFFLINE_MODE

On re-reading the diff I figured what Unknwon meant here:
https://github.com/gogits/gogs/pull/3320/files#r73741106

* Remove newlines that weren't there before my intervention
2016-08-07 10:27:38 -07:00
Unknwon
ec92565f23 #3393 fix missing sub-url prefix in relative avatar link 2016-08-07 10:13:05 -07:00
Andrey Nering
2772791fda Improve diff highlight (#3390)
- Try to reduce memory allocations
- Add possibility to disable diff highlight (can improve performance for large diffs)
- Tweaking with cost for prettier (cleaner) diffs
- Do not calculate diff when the number of removed lines in a block is not equal to the number of added lines (this usually resulted in ugly diffs)
2016-08-07 09:49:47 -07:00
Unknwon
08c976f811 Only do go vet on this codebase 2016-08-06 11:20:10 -07:00
Unknwon
72dd299ca0 Update .gitattributes 2016-08-06 10:36:40 -07:00
Thibault Meyer
30fda0f1ae Fix #3315: Release dont use tag creation date (#3374)
* Fix #3315: Release dont use tag creation date

* Simplify code and apply gofmt

* remove useless block (ctx.Repo.GitRepo.GetTag) on EditReleasePost

* apply gofmt on modified files
2016-08-06 10:02:15 -07:00
Unknwon
ab9c5fb5e7 #2593 allow render raw content
Use URL query parameter render=1 to render content in raw mode.
2016-08-05 18:34:13 -07:00
rugk
28dc5bb566 Replace gogs.io http links with https version (#3386) 2016-08-05 17:35:40 -07:00
Unknwon
cf6d321991 Ignore repository with issue disabled or use external tracker in dashboard issues 2016-08-05 12:46:26 -07:00
Unknwon
50422f1fc2 #3348 always use relative avatar link in the template 2016-08-05 12:12:54 -07:00
Unknwon
db3d393576 routers/api: rename handlers to be unexported 2016-08-04 17:08:01 -07:00
Unknwon
2f105f3979 #2162 completely disable builtin issue tracker when enable external tracker 2016-08-04 16:32:02 -07:00
Unknwon
ee28fd9255 Update locales [CI SKIP] 2016-08-03 12:24:53 -07:00
Unknwon
13d492e92a Update .gopmfile and glide.lock 2016-08-03 12:12:33 -07:00
Unknwon
e7fd65f0cf #3290 better code structure and batch minor improvements 2016-08-03 11:51:22 -07:00
lstahlman
2eeb0ec9b0 Additional API support for labels (#3290)
* Add API support for labels.

* Error handling for adding/replacing multiple issue labels

* Revisions to function names and error handling. Use issue.ClearLabels in replace/clear functions

* Additional code cleanup
2016-08-03 09:24:16 -07:00
silverwind
b1133c9934 Lighter icon colors for repo files (#3351)
* Lighter icon colors for repo files

* also color submodule icon
2016-08-03 08:53:28 -07:00
Unknwon
991ce42c48 #2162 improve repository advance options UI display
Enable/disable input based on user chosen options for wiki and issue tracker.
2016-07-31 01:26:43 +08:00
Unknwon
10dc330640 #3345 dump content directly to HTTP ResponseWriter 2016-07-30 23:39:58 +08:00
Dennis Chen
dfab54d5a2 Diff patch (#3345)
* Add support for .diff and .patch

Add the ability to get text-diff and format-patch by adding .diff or
.patch in the end of a commit url. Issue #2641

* models: git_diff: various fixes

* Renames commitId to commitID.
* Writes stderr to a bytes.Buffer and displays proper error message on
command failure.
* Various style changes.

Signed-off-by: Dennis Chen <barracks510@gmail.com>
2016-07-30 23:02:22 +08:00
Unknwon
3e22ae3412 Update locales 2016-07-30 22:28:23 +08:00
Okunev Yu Dmitry
55b4e77a5e Fix of template error in "/:owner/:repo/pulls" (#3343)
If anonymous (not signed in user) requests page
"/:owner/:repo/pulls" he gets an error:

  template: repo/issue/list:11:105: executing "repo/issue/list" at <.PullRequestCtx.Base...>: nil pointer evaluating *models.Repository.Link

This commit fixes that.

Signed-off-by: Dmitry Yu Okunev <dyokunev@ut.mephi.ru>
2016-07-29 22:59:38 +08:00
Unknwon
ad7ea88923 Update glide.lock 2016-07-28 11:00:14 +08:00
Unknwon
f2884d8e31 Minor fix for pull request template [CI SKIP] 2016-07-28 10:54:52 +08:00
마누엘
36a63dd059 models/release: Update Sha1 if tag already exists (#3331)
Since the release struct is initialized with the current `HEAD` of the
current `release.Target` the commit id has to be updated if the tag
commit already exists. Otherwise the linked commit on the release page
will target the current `HEAD` at release time.
2016-07-28 10:45:35 +08:00
Unknwon
03ba257ad2 Update GitHub templates 2016-07-28 10:36:26 +08:00
마누엘
fe60ca408b routers/repo/release: Use correct branch reference (#3330)
When calculating the current behind commit count the calculation should
use the current release target to get the total commit count. Should the
release target not exist anymore the calculation will return zero for
the newest release on that target. Older releases on that target will then
use that calculated commit count as reference.

The only use case that is now somehow invalid is when the release target
was merged / deleted after a tag on that release target:

    master 1 - - - - - - - 6
            \             /
    branch   2 - 3 - 4 - 5

When `4` is the last tag on branch `branch` and the branch `branch` is not
yet deleted the calculated numbers would be:

    1 commits to branch since this release

Now if the branch `branch` gets deleted the calculation function will not
find the branch and use the commit count of the newest release (`4`) as
reference resulting in:

    0 commit to branch since this release

This fixes #3326
2016-07-27 16:57:32 +08:00
Richard Mahn
0402c803c6 Added Full Name to CreateUser api call (#3333) 2016-07-27 02:43:06 +08:00
Unknwon
29ccf047d8 routers/repo/issue: remove redundant format string 2016-07-26 18:42:18 +08:00
Unknwon
8aa0a76702 #3327 fix wrong table name in Join 2016-07-26 18:40:20 +08:00
Unknwon
2d76de2574 #3281 fix x.Iterate returns nothing inside session scope with SQLite3 2016-07-26 17:26:48 +08:00
Unknwon
4d8b905541 models/ssh_key: code cleaning 2016-07-26 10:47:25 +08:00
Unknwon
452aefd025 Fix issue event octicon CSS 2016-07-26 02:56:07 +08:00
Unknwon
899e799459 #1601 support delete issue comment 2016-07-26 02:48:17 +08:00
Unknwon
2295fafb34 repo/settings/options: take naming style examples out of locale string 2016-07-25 16:55:51 +08:00
Unknwon
a562228c5e Add org.getUserTeams to reduce redundant code 2016-07-24 18:09:45 +08:00
Unknwon
e74630ae3b #1384 add pagination for repositories 2016-07-24 14:32:46 +08:00
Unknwon
1f2e173a74 Refactor User.Id to User.ID 2016-07-24 01:08:22 +08:00
Unknwon
46e96c008c Use struct for UI settings 2016-07-24 00:23:54 +08:00
Unknwon
256cd6374a #2790 fix not detect diff style in pull request file changes 2016-07-23 23:46:49 +08:00
Unknwon
57a47bbc05 Add some tutorial links [CI SKIP] 2016-07-23 21:23:30 +08:00
Unknwon
024fcc836b Minor HTML fix for delete repository notice 2016-07-23 20:42:46 +08:00
Unknwon
250be011c7 Remove redundant Unix timestamp method call
Unix() already uses UTC as timezone
2016-07-23 20:24:44 +08:00
Unknwon
4e822c1911 conf: change default mirror checking interval to 10m 2016-07-23 20:20:09 +08:00
Unknwon
26d52ceb48 #3186 fix wrong link for new pull request button of non-fork repository 2016-07-23 19:55:53 +08:00
Unknwon
d90acacd86 Update README [CI SKIP] 2016-07-23 19:22:43 +08:00
Unknwon
69f5308761 #2903 use different reversed words and patterns for repository and user 2016-07-23 18:58:18 +08:00
Unknwon
4b5e09e4d6 #3181 detect situation when base branch is deleted in pull request 2016-07-23 18:35:16 +08:00
Unknwon
4f78abe7dc #3066 fix create organization ignores full name property 2016-07-23 17:57:22 +08:00
Unknwon
e63b2881b1 api: fix panic if anonymous user request admin API
Add sign in check before check user account level
2016-07-23 17:56:37 +08:00
Unknwon
745167d57a #3157 create user path before rename repository while transfer
os.Rename does not create parent directory automatically when not exist
2016-07-23 17:36:15 +08:00
Unknwon
d7bdc1de8d #3107 fix mention regex does not include dash 2016-07-23 17:29:34 +08:00
Unknwon
c912494609 #3076 detect invalid tag name git error 2016-07-23 15:59:19 +08:00
Richard Mahn
69dae1ec1c Added coding style modes to SimpleMDE (#3286)
* Added coding style modes to SimpleMDE

* Moved the CodeMirror addon from simplemd to codemirror directory
2016-07-23 13:29:20 +08:00
Siarhei Navatski
cf85e9eb7b add IsSubmodule field to DiffFile and hide view file button on diff page for submodules (#3097) 2016-07-23 02:18:56 +08:00
Unknwon
599716bb1b Update locales [CI SKIP] 2016-07-22 22:21:26 +08:00
Unknwon
ae88d76032 Bump version 2016-07-22 21:52:39 +08:00
Unknwon
9266f28822 Fix GitHub wrong repo language detection 2016-07-21 18:20:03 +08:00
Dennis Chen
6488ee12be avatar: make custom and generated avatars equal (#3301)
Sets all avatars to use PNG image format.
Keeps avatars consistent at 290x290px resolution.

Signed-off-by: Dennis Chen <barracks510@gmail.com>
2016-07-21 15:31:14 +08:00
Unknwon
c2fb01a257 #3299 don’t pop up confirm box when leave on signin page 2016-07-21 14:36:26 +08:00
Unknwon
5761342f32 #3291 fix SQLite3 session read/update conflict on create new issue 2016-07-21 14:26:30 +08:00
Unknwon
57af7432fc #3295 fix wrong logic judgement 2016-07-21 14:15:04 +08:00
1043 changed files with 151610 additions and 51971 deletions

View File

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

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,19 +1,15 @@
.git
.git/**
packager
packager/**
.packager
.packager/**
scripts
scripts/**
.github/
.github/**
config.codekit
.dockerignore
*.yml
*.md
.bra.toml
.editorconfig
.gitignore
Dockerfile*
vendor
vendor/**
gogs
!Taskfile.yml

View File

@@ -5,8 +5,20 @@ root = true
[*]
charset = utf-8
end_of_line = lf
indent_style = tab
insert_final_newline = true
trim_trailing_whitespace = true
[*.yml]
[*.go]
indent_style = tab
indent_size = 4
[*.tmpl]
indent_style = tab
indent_size = 2
[*.{less, yml}]
indent_style = space
indent_size = 2
[*.js]
indent_size = 2

8
.gitattributes vendored Normal file
View File

@@ -0,0 +1,8 @@
conf/gitignore/** linguist-vendored
conf/license/** linguist-vendored
public/assets/** linguist-vendored
public/plugins/** linguist-vendored
public/css/themes/** linguist-vendored
public/css/semantic-* linguist-vendored
public/js/libs/** linguist-vendored
public/js/semantic-* linguist-vendored

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
- Need more functionality and make a feature request
- Want to contribute code and open a pull request
- Run into issue and need help
## New contributor guide
### 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
- Gogs Version
- Git Version
- System Type
- Error Log
- Other information
In addition to the general guides with open source contributions, you would also need to:
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/docs/intro/troubleshooting.html) and [FAQs](https://gogs.io/docs/intro/faqs.html) pages.
```
2014/09/01 07:21:49 [E] nil pointer
```
### Create a new issue
### 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](http://gogs.io/docs/intro/troubleshooting.html) and [FAQs](http://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/docs/features/i18n).
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://docs.sourcegraph.com/dev/background-information/languages/go).
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,22 +0,0 @@
We DO NOT take questions or config/deploy problems on GitHub, please use our forum: https://discuss.gogs.io
Please take a moment to search that an issue doesn't already exist.
For bug reports, please give the relevant info:
- Gogs version (or commit ref):
- Git version:
- Operating system:
- Database:
- [ ] PostgreSQL
- [ ] MySQL
- [ ] SQLite
- Can you reproduce the bug at http://try.gogs.io:
- [ ] Yes (provide example URL)
- [ ] No
- [ ] Not relevant
- Log gist:
## 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,53 @@
---
name: "Dev: Release a minor version"
about: ONLY USED BY MAINTAINERS.
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/720cb5fcb169b9e026b5b47f57d50888b35fdb4b) to include entries for the current minor release.
- [ ] Cut a new release branch `release/<MAJOR>.<MINOR>`, e.g. `release/0.12`.
## During release
On the release branch:
- [ ] [Update the hard-coded version](https://github.com/gogs/gogs/commit/f17e7d5a2c36c52a1121d2315f3d75dcd8053b89) to the current release, e.g. `0.12.0+dev` -> `0.12.0`.
- [ ] Wait for GitHub Actions to complete and no failed jobs.
- [ ] Publish new RC releases (e.g. `v0.12.0-rc.1`, `v0.12.0-rc.2`) to ensure Docker workflow succeeds. **Make sure the tag is created on the release branch**.
- 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.
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md) for the current minor release. **Make sure the tag is created on the release branch**.
- [ ] [Wait for a new image tag 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).
- [ ] [Push a new Docker image tag](https://github.com/gogs/gogs/blob/main/docs/dev/release/release_new_version.md#update-docker-image-tag) as `<MAJOR>.<MINOR>` to both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs), e.g.:
- [ ] [Compile and pack binaries](https://github.com/gogs/gogs/blob/main/docs/dev/release/release_new_version.md#compile-and-pack-binaries) (all prefixed with `gogs_<MAJOR>.<MINOR>.<PATCH>_`, e.g. `gogs_0.12.0_`):
- [ ] macOS: `darwin_amd64.zip`, `darwin_arm64.zip`
- [ ] Linux: `linux_386.tar.gz`, `linux_386.zip`, `linux_amd64.tar.gz`, `linux_amd64.zip`
- [ ] ARM: `linux_armv7.tar.gz`, `linux_armv7.zip`, `linux_armv8.tar.gz`, `linux_armv8.zip`
- [ ] Windows: `windows_amd64.zip`, `windows_amd64_mws.zip`
- [ ] [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 binaries and `checksum_sha256.txt` to:
- [ ] GitHub release
- [ ] https://dl.gogs.io
- [ ] Update content of [Install from binary](https://gogs.io/docs/installation/install_from_binary).
## After release
On the `main` branch:
- [ ] Publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.
- [ ] 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.
- [ ] Send out release announcement emails via [Mailchimp](https://mailchimp.com/).
- [ ] Publish a new release article on [OSChina](http://my.oschina.net/Obahua/admin/releases).
- [ ] Close the minor milestone.
- [ ] [Bump the hard-coded version](https://github.com/gogs/gogs/commit/05477f1d294dc43f36c4a3b3b9575a96aea66a67) to the new develop version, e.g. `0.12.0+dev` -> `0.13.0+dev`.
- [ ] Run `task legacy` to identify deprecated code that is aimed to be removed in current develop version.

View File

@@ -0,0 +1,55 @@
---
name: "Dev: Release a patch version"
about: ONLY USED BY MAINTAINERS.
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.
- [ ] [Update CHANGELOG on the `main` branch](https://github.com/gogs/gogs/commit/e6c5633f580399c8f4dfc07166a63a01c6c70346) 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 (e.g. `v0.12.0-rc.1`, `v0.12.0-rc.2`) to ensure Docker workflow succeeds. **Make sure the tag is created on the release branch**.
- 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.
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) 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. **Make sure the tag is created on the release branch**.
- [ ] 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 a new image tag 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).
- [ ] [Update Docker image tag](https://github.com/gogs/gogs/blob/main/docs/dev/release/release_new_version.md#update-docker-image-tag) for the minor release `<MAJOR>.<MINOR>` on both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs).
- [ ] [Compile and pack binaries](https://github.com/gogs/gogs/blob/main/docs/dev/release/release_new_version.md#compile-and-pack-binaries) (all prefixed with `gogs_<MAJOR>.<MINOR>.<PATCH>_`, e.g. `gogs_0.12.0_`):
- [ ] macOS: `darwin_amd64.zip`, `darwin_arm64.zip`
- [ ] Linux: `linux_386.tar.gz`, `linux_386.zip`, `linux_amd64.tar.gz`, `linux_amd64.zip`
- [ ] ARM: `linux_armv7.tar.gz`, `linux_armv7.zip`, `linux_armv8.tar.gz`, `linux_armv8.zip`
- [ ] Windows: `windows_amd64.zip`, `windows_amd64_mws.zip`
- [ ] [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 binaries and `checksum_sha256.txt` to:
- [ ] GitHub release
- [ ] https://dl.gogs.io
- [ ] Update content of [Install from binary](https://gogs.io/docs/installation/install_from_binary).
## After release
On the `main` branch:
- [ ] Publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.
- [ ] 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.
```
- [ ] 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 patch release.
- [ ] Close the patch milestone.

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,4 +0,0 @@
Please, make sure you are targeting the `develop` branch!
More instructions about contributing with Gogs code can be found here:
https://github.com/gogits/gogs/wiki/Contributing-Code

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

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

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

@@ -0,0 +1,15 @@
## 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.
## 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 -->

35
.github/workflows/codeball.yml vendored Normal file
View File

@@ -0,0 +1,35 @@
# Docs: https://github.com/sturdy-dev/codeball-action
name: Codeball
on: [ pull_request ]
permissions:
contents: read
issues: write
pull-requests: write
jobs:
codeball:
runs-on: ubuntu-latest
name: Codeball
steps:
# Start a new Codeball review job
# This step is asynchronous and will return a job id
- name: Trigger Codeball
id: codeball_baller
uses: sturdy-dev/codeball-action/baller@v2
# Wait for Codeball to return the status
- name: Get Status
id: codeball_status
uses: sturdy-dev/codeball-action/status@v2
with:
codeball-job-id: ${{ steps.codeball_baller.outputs.codeball-job-id }}
# If Codeball approved the contribution, approve the PR
- name: Approve PR
uses: sturdy-dev/codeball-action/approver@v2
if: ${{ steps.codeball_status.outputs.approved == 'true' }}
with:
message: "Codeball: LGTM! :+1:"

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: Checkout repository
uses: actions/checkout@v2
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@v1
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@v1
# 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@v1

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

@@ -0,0 +1,180 @@
name: Docker
on:
push:
branches:
- main
pull_request:
paths:
- 'Dockerfile'
- 'docker/**'
- '.github/workflows/docker.yml'
release:
types: [ published ]
jobs:
buildx:
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
runs-on: ubuntu-latest
permissions:
actions: write
contents: read
packages: write
steps:
- name: Canel previous runs
uses: styfle/cancel-workflow-action@0.9.1
with:
all_but_latest: true
access_token: ${{ secrets.GITHUB_TOKEN }}
- name: Checkout code
uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1
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: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push images
uses: docker/build-push-action@v2
with:
context: .
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: |
gogs/gogs:latest
ghcr.io/gogs/gogs:latest
- name: Send email on failure
uses: dawidd6/action-send-mail@v3
if: ${{ failure() }}
with:
server_address: smtp.mailgun.org
server_port: 465
username: ${{ secrets.SMTP_USERNAME }}
password: ${{ secrets.SMTP_PASSWORD }}
subject: GitHub Actions (${{ github.repository }}) job result
to: github-actions-8ce6454@unknwon.io
from: GitHub Actions (${{ github.repository }})
reply_to: noreply@unknwon.io
body: |
The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}".
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
buildx-pull-request:
if: ${{ github.event_name == 'pull_request'}}
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1
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
uses: benjlevesque/short-sha@v1.2
- name: Build and push images
uses: docker/build-push-action@v2
with:
context: .
platforms: linux/amd64
push: true
tags: |
ttl.sh/gogs/gogs-${{ env.SHA }}:1d
# 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 tag name
run: echo "IMAGE_TAG=$(echo $GITHUB_REF_NAME | cut -c 2-)" >> $GITHUB_ENV
- name: Checkout code
uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
id: buildx
uses: docker/setup-buildx-action@v1
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: Login to Docker Hub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Login to GitHub Container registry
uses: docker/login-action@v1
with:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push images
uses: docker/build-push-action@v2
with:
context: .
platforms: linux/amd64,linux/arm64,linux/arm/v7
push: true
tags: |
gogs/gogs:${{ env.IMAGE_TAG }}
ghcr.io/gogs/gogs:${{ env.IMAGE_TAG }}
- name: Send email on failure
uses: dawidd6/action-send-mail@v3
if: ${{ failure() }}
with:
server_address: smtp.mailgun.org
server_port: 465
username: ${{ secrets.SMTP_USERNAME }}
password: ${{ secrets.SMTP_PASSWORD }}
subject: GitHub Actions (${{ github.repository }}) job result
to: github-actions-8ce6454@unknwon.io
from: GitHub Actions (${{ github.repository }})
reply_to: noreply@unknwon.io
body: |
The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}".
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

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

@@ -0,0 +1,212 @@
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: Checkout code
uses: actions/checkout@v2
- name: Run golangci-lint
uses: golangci/golangci-lint-action@v2
with:
version: latest
args: --timeout=30m
- name: Install Task
uses: arduino/setup-task@v1
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
test:
name: Test
strategy:
matrix:
go-version: [ 1.19.x, 1.20.x ]
platform: [ ubuntu-latest, macos-latest ]
runs-on: ${{ matrix.platform }}
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- name: Run tests with coverage
run: go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic ./...
- name: Upload coverage report to Codecov
uses: codecov/codecov-action@v1.5.0
with:
file: ./coverage
flags: unittests
- name: Send email on failure
uses: dawidd6/action-send-mail@v3
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
with:
server_address: smtp.mailgun.org
server_port: 465
username: ${{ secrets.SMTP_USERNAME }}
password: ${{ secrets.SMTP_PASSWORD }}
subject: GitHub Actions (${{ github.repository }}) job result
to: github-actions-8ce6454@unknwon.io
from: GitHub Actions (${{ github.repository }})
reply_to: noreply@unknwon.io
body: |
The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}".
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
# 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
strategy:
matrix:
go-version: [ 1.19.x, 1.20.x ]
platform: [ windows-latest ]
runs-on: ${{ matrix.platform }}
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- name: Run tests with coverage
run: go test -shuffle=on -v -coverprofile=coverage -covermode=atomic ./...
- name: Upload coverage report to Codecov
uses: codecov/codecov-action@v1.5.0
with:
file: ./coverage
flags: unittests
- name: Send email on failure
uses: dawidd6/action-send-mail@v3
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
with:
server_address: smtp.mailgun.org
server_port: 465
username: ${{ secrets.SMTP_USERNAME }}
password: ${{ secrets.SMTP_PASSWORD }}
subject: GitHub Actions (${{ github.repository }}) job result
to: github-actions-8ce6454@unknwon.io
from: GitHub Actions (${{ github.repository }})
reply_to: noreply@unknwon.io
body: |
The job "${{ github.job }}" of ${{ github.server_url }}/${{ github.repository }}/commit/${{ github.sha }} completed with "${{ job.status }}".
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
postgres:
name: Postgres
strategy:
matrix:
go-version: [ 1.19.x, 1.20.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: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- name: Run tests with coverage
run: go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic ./internal/db/...
env:
GOGS_DATABASE_TYPE: postgres
PGPORT: 5432
PGHOST: localhost
PGUSER: postgres
PGPASSWORD: postgres
PGSSLMODE: disable
mysql:
name: MySQL
strategy:
matrix:
go-version: [ 1.19.x, 1.20.x ]
platform: [ ubuntu-18.04 ]
runs-on: ${{ matrix.platform }}
steps:
- name: Start MySQL server
run: sudo systemctl start mysql
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- name: Run tests with coverage
run: go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic ./internal/db/...
env:
GOGS_DATABASE_TYPE: mysql
MYSQL_USER: root
MYSQL_PASSWORD: root
MYSQL_HOST: localhost
MYSQL_PORT: 3306
sqlite-go:
name: SQLite - Go
strategy:
matrix:
go-version: [ 1.19.x, 1.20.x ]
platform: [ ubuntu-latest ]
runs-on: ${{ matrix.platform }}
steps:
- name: Install Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout code
uses: actions/checkout@v2
- name: Run tests with coverage
run: go test -shuffle=on -v -race -parallel=1 -coverprofile=coverage -covermode=atomic ./internal/db/...
env:
GOGS_DATABASE_TYPE: sqlite

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@v3
with:
github-token: ${{ github.token }}
issue-inactive-days: '90'
issue-lock-reason: 'resolved'
pr-inactive-days: '365'
pr-lock-reason: 'resolved'

33
.github/workflows/lsif.yml vendored Normal file
View File

@@ -0,0 +1,33 @@
name: LSIF
on:
push:
paths:
- '**.go'
- 'go.mod'
- '.github/workflows/lsif.yml'
env:
GOPROXY: "https://proxy.golang.org"
jobs:
lsif-go:
if: github.repository == 'gogs/gogs'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Generate LSIF data
uses: sourcegraph/lsif-go-action@master
- name: Upload LSIF data to sourcegraph.com
continue-on-error: true
uses: docker://sourcegraph/src-cli:latest
with:
args: lsif upload -github-token=${{ secrets.GITHUB_TOKEN }}
- name: Upload LSIF data to S2
continue-on-error: true
uses: docker://sourcegraph/src-cli:latest
with:
args: -endpoint=https://sourcegraph.sourcegraph.com lsif upload -github-token=${{ secrets.GITHUB_TOKEN }}
- name: Upload LSIF data to cs.unknwon.dev
continue-on-error: true
uses: docker://sourcegraph/src-cli:latest
with:
args: -endpoint=https://cs.unknwon.dev lsif upload -github-token=${{ secrets.GITHUB_TOKEN }}

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@v2
- name: Run ShellCheck
uses: ludeeus/action-shellcheck@master

6
.gitignore vendored
View File

@@ -4,7 +4,6 @@
log/
custom/
data/
.vendor/
.idea/
*.iml
public/img/avatar/
@@ -14,7 +13,6 @@ public/img/avatar/
profile/
*.pem
output*
gogs.sublime-project
gogs.sublime-workspace
/release
vendor
.task
.envrc

24
.golangci.yml Normal file
View File

@@ -0,0 +1,24 @@
linters-settings:
staticcheck:
checks: [
"all",
"-SA1019" # There are valid use cases of strings.Title
]
nakedret:
max-func-lines: 0 # Disallow any unnamed return statement
linters:
enable:
- unused
- errcheck
- gosimple
- govet
- ineffassign
- staticcheck
- typecheck
- nakedret
- gofmt
- rowserrcheck
- unconvert
- goimports
- unparam

View File

@@ -1,58 +0,0 @@
[target]
path = github.com/gogits/gogs
[deps]
github.com/bradfitz/gomemcache = commit:fb1f79c
github.com/codegangsta/cli = commit:1efa31f
github.com/go-macaron/binding = commit:9440f33
github.com/go-macaron/cache = commit:5617353
github.com/go-macaron/captcha = commit:8aa5919
github.com/go-macaron/csrf = commit:6a9a7df
github.com/go-macaron/gzip = commit:cad1c65
github.com/go-macaron/i18n = commit:ef57533
github.com/go-macaron/inject = commit:c5ab7bf
github.com/go-macaron/session = commit:66031fc
github.com/go-macaron/toolbox = commit:82b5115
github.com/go-sql-driver/mysql = commit:3654d25
github.com/go-xorm/core = commit:bc1b7f8
github.com/go-xorm/xorm = commit:b8b1711
github.com/gogits/chardet = commit:2404f77
github.com/gogits/cron = commit:96040e4
github.com/gogits/git-module = commit:db93fa5
github.com/gogits/go-gogs-client = commit:ee68cd9
github.com/issue9/identicon = commit:d36b545
github.com/jaytaylor/html2text = commit:52d9b78
github.com/kardianos/minwinsvc = commit:cad6b2b
github.com/klauspost/compress = commit:14eb9c4
github.com/klauspost/cpuid = commit:09cded8
github.com/klauspost/crc32 = commit:19b0b33
github.com/lib/pq = commit:ee1442b
github.com/mattn/go-sqlite3 = commit:38ee283
github.com/mcuadros/go-version = commit:d52711f
github.com/microcosm-cc/bluemonday = commit:4ac6f27
github.com/msteinert/pam = commit:02ccfbf
github.com/nfnt/resize = commit:4d93a29
github.com/russross/blackfriday = commit:4e6f303
github.com/satori/go.uuid = commit:879c588
github.com/sergi/go-diff = commit:ec7fdbb
github.com/shurcooL/sanitized_anchor_name = commit:10ef21a
github.com/Unknwon/cae = commit:7f5e046
github.com/Unknwon/com = commit:28b053d
github.com/Unknwon/i18n = commit:39d6f27
github.com/Unknwon/paginater = commit:7748a72
golang.org/x/crypto = commit:77f4136
golang.org/x/net = commit:3f122ce
golang.org/x/sys = commit:7f918dd
golang.org/x/text = commit:e477511
gopkg.in/alexcesaro/quotedprintable.v3 = commit:2caba25
gopkg.in/asn1-ber.v1 = commit:4e86f43
gopkg.in/bufio.v1 = commit:567b2bf
gopkg.in/gomail.v2 = commit:81ebce5
gopkg.in/ini.v1 = commit:72ba3e6
gopkg.in/ldap.v2 = commit:0e7db8e
gopkg.in/macaron.v1 = commit:2133042
gopkg.in/redis.v2 = commit:e617904
[res]
include = public|scripts|templates

4
.mailmap Normal file
View File

@@ -0,0 +1,4 @@
Joe Chen <jc@unknwon.io> Unknwon <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>

1
.packager/Procfile Normal file
View File

@@ -0,0 +1 @@
web: ./gogs web -p ${PORT:=3000}

View File

@@ -8,10 +8,10 @@ APP_USER=$(${CLI} config:get APP_USER)
APP_GROUP=$(${CLI} config:get APP_GROUP)
APP_CONFIG="/etc/${APP_NAME}/conf/app.ini"
mkdir -p $(dirname ${APP_CONFIG})
chown ${APP_USER}.${APP_GROUP} $(dirname ${APP_CONFIG})
mkdir -p "$(dirname ${APP_CONFIG})"
chown "${APP_USER}"."${APP_GROUP}" "$(dirname ${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_MODE = dev|RUN_MODE = prod|" ${APP_CONFIG}

View File

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

View File

@@ -1,29 +0,0 @@
language: go
go:
- 1.4
- 1.5
- 1.6
before_install:
- sudo apt-get update -qq
- sudo apt-get install -y libpam-dev
- go get github.com/msteinert/pam
install:
- go get -t -v ./...
script:
- go build -v -tags "pam"
- go test -v -cover -race ./...
notifications:
email:
- u@gogs.io
slack: gophercn:o5pSanyTeNhnfYc3QnG0X7Wx
webhooks:
urls:
- https://webhooks.gitter.im/e/b590f8e03882f7aedc3e
on_success: change
on_failure: always
on_start: never

229
CHANGELOG.md Normal file
View File

@@ -0,0 +1,229 @@
# Changelog
All notable changes to Gogs are documented in this file.
## 0.14.0+dev (`main`)
## 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).**

View File

@@ -1,22 +1,44 @@
FROM alpine:3.3
MAINTAINER jp@roemer.im
FROM golang:alpine3.17 AS binarybuilder
RUN apk --no-cache --no-progress add --virtual \
build-deps \
build-base \
git \
linux-pam-dev
# Install system utils & Gogs runtime dependencies
ADD https://github.com/tianon/gosu/releases/download/1.9/gosu-amd64 /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
WORKDIR /gogs.io/gogs
COPY . .
RUN ./docker/build/install-task.sh
RUN TAGS="cert pam" task build
FROM alpine:3.17
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
COPY . /app/gogs/
WORKDIR /app/gogs/
RUN ./docker/build.sh
# Configure LibC Name Service
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
# Configure Docker Container
VOLUME ["/data"]
WORKDIR /app/gogs
COPY docker ./docker
COPY --from=binarybuilder /gogs.io/gogs/gogs .
RUN ./docker/build/finalize.sh
# Configure Docker Container
VOLUME ["/data", "/backup"]
EXPOSE 22 3000
ENTRYPOINT ["docker/start.sh"]
HEALTHCHECK CMD (curl -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
ENTRYPOINT ["/app/gogs/docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,25 +0,0 @@
FROM hypriot/rpi-alpine-scratch:v3.2
MAINTAINER jp@roemer.im, raxetul@gmail.com
# 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-4.alpinelinux.org/alpine/v3.3/main/" | tee /etc/apk/repositories \
&& echo "http://dl-4.alpinelinux.org/alpine/v3.3/community/" | tee -a /etc/apk/repositories \
&& apk -U --no-progress upgrade && rm -f /var/cache/apk/APKINDEX.* \
&& apk --no-cache --no-progress add ca-certificates bash git linux-pam s6 curl openssh socat tzdata
ENV GOGS_CUSTOM /data/gogs
COPY . /app/gogs/
WORKDIR /app/gogs/
RUN ./docker/build.sh
# Configure LibC Name Service
COPY docker/nsswitch.conf /etc/nsswitch.conf
# Configure Docker Container
VOLUME ["/data"]
EXPOSE 22 3000
ENTRYPOINT ["docker/start.sh"]
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]

View File

@@ -1,4 +1,4 @@
Copyright (c) 2014 All Gogs Contributors
Copyright (c) The Gogs Authors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal

View File

@@ -1,62 +0,0 @@
LDFLAGS += -X "github.com/gogits/gogs/modules/setting.BuildTime=$(shell date -u '+%Y-%m-%d %I:%M:%S %Z')"
LDFLAGS += -X "github.com/gogits/gogs/modules/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 := modules/bindata/bindata.go public/css/gogs.css
TAGS = ""
BUILD_FLAGS = "-v"
RELEASE_ROOT = "release"
RELEASE_GOGS = "release/gogs"
NOW = $(shell date -u '+%Y%m%d%I%M%S')
.PHONY: build pack release bindata clean
.IGNORE: public/css/gogs.css
build: $(GENERATED)
go install $(BUILD_FLAGS) -ldflags '$(LDFLAGS)' -tags '$(TAGS)'
cp '$(GOPATH)/bin/gogs' .
govet:
go tool vet -composites=false -methods=false -structtags=false .
build-dev: $(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: modules/bindata/bindata.go
modules/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" routers models modules
todo:
grep -rnw "TODO" routers models modules

168
README.md
View File

@@ -1,133 +1,105 @@
Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?branch=master)](https://travis-ci.org/gogits/gogs) [![Crowdin](https://d322cqt584bo4o.cloudfront.net/gogs/localized.svg)](https://crowdin.com/project/gogs) [![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/gogits/gogs?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
=====================
![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)
##### Current tip version: 0.9.46 (see [Releases](https://github.com/gogits/gogs/releases) for binary versions)
| Web | UI | Preview |
|:-------------:|:-------:|:-------:|
|![Dashboard](https://gogs.io/img/screenshots/1.png)|![Repository](https://gogs.io/img/screenshots/2.png)|![Commits History](https://gogs.io/img/screenshots/3.png)|
|![Profile](https://gogs.io/img/screenshots/4.png)|![Admin Dashboard](https://gogs.io/img/screenshots/5.png)|![Diff](https://gogs.io/img/screenshots/6.png)|
|![Issues](https://gogs.io/img/screenshots/7.png)|![Releases](https://gogs.io/img/screenshots/8.png)|![Organization](https://gogs.io/img/screenshots/9.png)|
### Important Notes
1. **YOU MUST READ [Contributing Code](https://github.com/gogits/gogs/wiki/Contributing-Code) BEFORE STARTING TO WORK ON A PULL REQUEST**.
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**. 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](http://gogs.io), contact us by any means.
[![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) [![Discord](https://img.shields.io/discord/382595433060499458.svg?style=for-the-badge&logo=discord)](https://discord.gg/9aqdHU7) [![Sourcegraph](https://img.shields.io/badge/view%20on-Sourcegraph-brightgreen.svg?style=for-the-badge&logo=sourcegraph)](https://sourcegraph.com/github.com/gogs/gogs)
[简体中文](README_ZH.md)
## Purpose
## 🔮 Vision
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.
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.
## Overview
## 📡 Overview
- Please see the [Documentation](http://gogs.io/docs/intro) for common usages and change log.
- See the [Trello Board](https://trello.com/b/uxAoeLUl/gogs-go-git-service) to follow the develop team.
- 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.
- Want to try it before doing anything else? Do it [online](https://try.gogs.io/gogs/gogs)!
- Having trouble? Get help with [Troubleshooting](http://gogs.io/docs/intro/troubleshooting.html) or [User Forum](https://discuss.gogs.io/).
- Want to help with localization? Check out the [guide](http://gogs.io/docs/features/i18n.html)!
- Having trouble? Help yourself with [troubleshooting](https://gogs.io/docs/intro/troubleshooting.html) or ask questions in [Discussions](https://github.com/gogs/gogs/discussions).
- Want to help with localization? Check out the [localization documentation](https://gogs.io/docs/features/i18n.html).
- Ready to get hands dirty? Read our [contributing guide](.github/CONTRIBUTING.md).
- Hmm... What about APIs? We have experimental support with [documentation](https://github.com/gogs/docs-api).
## Features
## 💌 Features
- Activity timeline
- SSH and HTTP/HTTPS protocols
- SMTP/LDAP/Reverse proxy authentication
- Reverse proxy with sub-path
- Account/Organization/Repository management
- Repository/Organization webhooks (including Slack)
- Repository Git hooks/deploy keys
- Repository issues, pull requests and wiki
- Add/Remove repository collaborators
- Gravatar and custom source
- Mail service
- Administration panel
- Supports MySQL, PostgreSQL, SQLite3 and [TiDB](https://github.com/pingcap/tidb) (experimental)
- Multi-language support ([18 languages](https://crowdin.com/project/gogs))
- User dashboard, user profile and activity timeline.
- Access repositories via SSH, HTTP and HTTPS protocols.
- User, organization and repository management.
- Repository and organization webhooks, including Slack, Discord and Dingtalk.
- Repository Git hooks, deploy keys and Git LFS.
- Repository issues, pull requests, wiki, protected branches and collaboration.
- Migrate and mirror repositories with wiki from other code hosts.
- Web editor for quick editing repository files and wiki.
- Jupyter Notebook and PDF rendering.
- Authentication via SMTP, LDAP, reverse proxy, GitHub.com and GitHub Enterprise with 2FA.
- Customize HTML templates, static files and many others.
- Rich database backend, including PostgreSQL, MySQL, SQLite3 and [TiDB](https://github.com/pingcap/tidb).
- Have localization over [31 languages](https://crowdin.com/project/gogs).
## System Requirements
## 💾 Hardware requirements
- A cheap Raspberry Pi is powerful enough for basic functionality.
- 2 CPU cores and 1GB RAM would be the baseline for teamwork.
- 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.
- 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.
- The official support minimal size is **1024*768**, UI may still looks right in smaller size but no promises and 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](http://gogs.io/docs/installation) first.
Make sure you install the [prerequisites](https://gogs.io/docs/installation) first.
There are 5 ways to install Gogs:
There are 6 ways to install Gogs:
- [Install from binary](http://gogs.io/docs/installation/install_from_binary.html)
- [Install from source](http://gogs.io/docs/installation/install_from_source.html)
- [Install from packages](http://gogs.io/docs/installation/install_from_packages.html)
- [Ship with Docker](https://github.com/gogits/gogs/tree/master/docker)
- [Install with Vagrant](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
- [Install from binary](https://gogs.io/docs/installation/install_from_binary.html)
- [Install from source](https://gogs.io/docs/installation/install_from_source.html)
- [Install from packages](https://gogs.io/docs/installation/install_from_packages.html)
- [Ship with Docker](https://github.com/gogs/gogs/tree/main/docker)
- [Try with Vagrant](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
### Deploy to cloud
- [Cloudron](https://www.cloudron.io/store/io.gogs.cloudronapp.html)
- [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/DFabric/DPlatform-Shell)
- [LunaNode](https://github.com/LunaNode/launchgogs)
- [alwaysdata](https://www.alwaysdata.com/en/marketplace/gogs/)
### 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)
- [Run your own GitHub-like service with the help of Docker](http://blog.hypriot.com/post/run-your-own-github-like-service-with-docker/)
- [使用 Gogs 搭建自己的 Git 服务器](https://mynook.info/blog/post/host-your-own-git-server-using-gogs) (Chinese)
- [阿里云上 Ubuntu 14.04 64 位安装 Gogs](http://my.oschina.net/luyao/blog/375654) (Chinese)
- [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](https://garthwaite.org/docker-gogs.html)
- [Host Your Own Private GitHub with Gogs](https://eladnava.com/host-your-own-private-github-with-gogs-io/)
- [使用 Gogs 搭建自己的 Git 服务器](https://blog.mynook.info/post/host-your-own-git-server-using-gogs/) (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)
- [Gogs on Raspberry Pi](http://blog.meinside.pe.kr/Gogs-on-Raspberry-Pi/)
- [Cloudflare Full SSL with GOGS (Go Git Service) using NGINX](http://www.listekconsulting.com/articles/cloudflare-full-ssl-with-gogs-go-git-service-using-nginx/)
- [How to install Gogs on a Linux Server (DigitalOcean)](https://www.youtube.com/watch?v=deSfX0gqefE)
### Screencasts
## 📦 Software, service and product support
- [Instalando Gogs no Ubuntu](https://www.youtube.com/watch?v=4UkHAR1F7ZA) (Português)
### Deploy to Cloud
- [OpenShift](https://github.com/tkisme/gogs-openshift)
- [Cloudron](https://cloudron.io/appstore.html#io.gogs.cloudronapp)
- [Scaleway](https://www.scaleway.com/imagehub/gogs/)
- [Portal](https://portaldemo.xyz/cloud/)
- [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)
## Software and Service Support
- [Drone](https://github.com/drone/drone) (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)
### 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)
- [One Space](http://www.onespace.cc) (App Store)
- [Syncloud](https://syncloud.org/) (App Store)
## Acknowledgments
## 🙇‍♂️ Acknowledgments
- Router and middleware mechanism of [Macaron](https://github.com/go-macaron/macaron).
- System Monitor Status is inspired by [GoBlog](https://github.com/fuxiaohei/goblog).
- Thanks [lavachen](http://www.lavachen.cn/) and [Rocker](http://weibo.com/rocker1989) for designing Logo.
- Thanks [Crowdin](https://crowdin.com/project/gogs) for providing open source translation plan.
- Thanks [DigitalOcean](https://www.digitalocean.com) for hosting home and demo sites.
- Thanks [KeyCDN](https://www.keycdn.com/) for providing CDN service.
- Thanks [Egon Elbre](https://twitter.com/egonelbre) for designing the original version of the logo.
- Thanks [Crowdin](https://crowdin.com/project/gogs) for sponsoring open source translation plan.
- Thanks [DigitalOcean](https://www.digitalocean.com), [VPSServer](https://www.vpsserver.com/), [Hosted.nl](https://www.hosted.nl/), [BitLaunch](https://bitlaunch.io), and [MonoVM](https://monovm.com/linux-vps/) for sponsoring VPS services.
- Thanks [KeyCDN](https://www.keycdn.com/) for sponsoring CDN service.
- Thanks [Buildkite](https://buildkite.com) for sponsoring open source CI/CD plan.
## Contributors
## 👋 Contributors
- Ex-team members [@lunny](https://github.com/lunny), [@fuxiaohei](https://github.com/fuxiaohei) and [@slene](https://github.com/slene).
- See [contributors page](https://github.com/gogits/gogs/graphs/contributors) for full list of 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.
## 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,41 +1,43 @@
Gogs - Go Git Service [![Build Status](https://travis-ci.org/gogits/gogs.svg?branch=master)](https://travis-ci.org/gogits/gogs)
=====================
# Gogs
Gogs (Go Git Service) 是一款极易搭建的自助 Git 服务。
Gogs 是一款极易搭建的自助 Git 服务。
## 开发目的
## 项目愿景
Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 **所有平台**,包括 Linux、Mac OS X、Windows 以及 ARM 平台
Gogs`/gɑgz/`)项目旨在打造一个最简便的方式搭建简单、稳定和可扩展的自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 **所有平台**,包括 Linux、macOS、Windows 和基于 ARM 的操作系统
## 项目概览
## 概览
- 有关基本用法和变更日志,请通过 [使用手册](http://gogs.io/docs/intro/) 查看
- 您可以到 [Trello Board](https://trello.com/b/uxAoeLUl/gogs-go-git-service) 跟随开发团队的脚步。
- 想要先睹为快?直接去 [在线体验](https://try.gogs.io/gogs/gogs)
- 使用过程中遇到问题?尝试[故障排查](http://gogs.io/docs/intro/troubleshooting.html) 页面或 [用户论坛](https://discuss.gogs.io/) 获取帮助
- 希望帮助多国语言界面的翻译吗?请立即访问 [详情页面](http://gogs.io/docs/features/i18n.html)
- 请移步[官网](https://gogs.io)查看用户使用文档
- 请通过 [CHANGELOG.md](CHANGELOG.md) 文件查看各个版本的变更历史
- 想要先睹为快?直接去[在线体验](https://try.gogs.io/gogs/gogs)吧!
- 使用过程中遇到问题?尝试[故障排查](https://gogs.io/docs/intro/troubleshooting.html)或者前往[用户论坛](https://discuss.gogs.io/)获取帮助
- 希望帮助多国语言的翻译吗?请查看[本地化文档](https://gogs.io/docs/features/i18n.html)
- 准备搞点事情?请阅读[开发指南](docs/dev/local_development.md)配置开发环境
- 想调用 API 吗?请查看[文档](https://github.com/gogs/docs-api)吧
## 功能特性
## 主要特性
- 支持活动时间线
- 支持 SSH 以及 HTTP/HTTPS 协议
- 支持 SMTP、LDAP 和反向代理的用户认证
- 支持反向代理子路径
- 支持用户、组织和仓库管理系统
- 支持仓库和组织级别 Web 钩子(包括 Slack 集成)
- 支持仓库 Git 钩子和部署密钥
- 支持仓库工单Issue、合并请求Pull Request以及 Wiki
- 支持添加和删除仓库协作者
- 支持 Gravatar 以及自定义源
- 支持邮件服务
- 支持后台管理面板
- 支持 MySQL、PostgreSQL、SQLite3 和 [TiDB](https://github.com/pingcap/tidb)(实验性支持) 数据库
- 支持多语言本地化([18 种语言]([more](https://crowdin.com/project/gogs))
- 控制面板、用户页面以及活动时间线
- 通过 SSHHTTPHTTPS 协议操作仓库
- 管理用户、组织和仓库
- 仓库和组织级 Webhook包括 Slack、Discord 和钉钉
- 仓库 Git 钩子、部署密钥和 Git LFS
- 仓库工单Issue、合并请求Pull Request、Wiki、保护分支和多人协作
- 从其它代码平台迁移和镜像仓库以及 Wiki
- 在线编辑仓库文件和 Wiki
- Jupyter Notebook 和 PDF 的渲染
- 通过 SMTP、LDAP、反向代理、GitHub.com 和 GitHub 企业版进行用户认证
- 开启两步验证2FA登录
- 自定义 HTML 模板、静态文件和许多其它组件
- 多样的数据库后端,包括 PostgreSQL、MySQL、SQLite3 和 [TiDB](https://github.com/pingcap/tidb)
- 超过 [31 种语言](https://crowdin.com/project/gogs)的本地化
## 系统要求
## 硬件要求
- 最低的系统硬件要求为一个廉价的树莓派
- 如果用于团队项目,建议使用 2 核 CPU 及 1GB 内存
- 如果用于团队项目管理,建议使用 2 核 CPU 及 512MB 内存
- 当团队成员大量增加时,可以考虑添加 CPU 核数,内存占用保持不变
## 浏览器支持
@@ -44,62 +46,58 @@ Gogs 的目标是打造一个最简单、最快速和最轻松的方式搭建自
## 安装部署
在安装 Gogs 之前,您需要先安装 [基本环境](http://gogs.io/docs/installation)。
在安装 Gogs 之前,您需要先安装 [基本环境](https://gogs.io/docs/installation)。
然后,您可以通过以下 5 种方式来安装 Gogs
然后,您可以通过以下 6 种方式来安装 Gogs
- [二进制安装](http://gogs.io/docs/installation/install_from_binary.html)
- [源码安装](http://gogs.io/docs/installation/install_from_source.html)
- [包管理安装](http://gogs.io/docs/installation/install_from_packages.html)
- [采用 Docker 部署](https://github.com/gogits/gogs/tree/master/docker)
- [二进制安装](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/gogs/gogs/tree/main/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)
- [通过基于 Kubernetes 的 Helm Charts](https://github.com/helm/charts/tree/master/incubator/gogs)
### 云端部署
- [OpenShift](https://github.com/tkisme/gogs-openshift)
- [Cloudron](https://cloudron.io/appstore.html#io.gogs.cloudronapp)
- [Scaleway](https://www.scaleway.com/imagehub/gogs/)
- [Portal](https://portaldemo.xyz/cloud/)
- [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)
- [LunaNode](https://github.com/LunaNode/launchgogs)
## 软件及服务支持
### 使用教程
- [使用 Gogs 搭建自己的 Git 服务器](https://blog.mynook.info/post/host-your-own-git-server-using-gogs/)
- [阿里云上 Ubuntu 14.04 64 位安装 Gogs](http://my.oschina.net/luyao/blog/375654)
## 软件、服务以及产品支持
- [Drone](https://github.com/drone/drone)CI
- [Fabric8](http://fabric8.io/)DevOps
- [Jenkins](https://plugins.jenkins.io/gogs-webhook/)CI
- [Taiga](https://taiga.io/)(项目管理)
- [Puppet](https://forge.puppetlabs.com/Siteminds/gogs)IT
- [Kanboard](http://kanboard.net/plugin/gogs-webhook)(项目管理)
- [Puppet](https://forge.puppet.com/Siteminds/gogs)IT
- [Kanboard](https://github.com/kanboard/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)(应用商店)
- [Syncloud](https://syncloud.org/)(应用商店)
## 特别鸣谢
- 基于 [Macaron](https://github.com/go-macaron/macaron) 的路由与中间件机制
- 基于 [GoBlog](https://github.com/fuxiaohei/goblog) 修改的系统监视状态。
- 感谢 [lavachen](http://www.lavachen.cn/) 和 [Rocker](http://weibo.com/rocker1989) 设计的 Logo。
- 感谢 [Egon Elbre](https://twitter.com/egonelbre) 设计的 Logo
- 感谢 [Crowdin](https://crowdin.com/project/gogs) 提供免费的开源项目本地化支持。
- 感谢 [DigitalOcean](https://www.digitalocean.com) 提供主站和体验站点的服务器赞助。
- 感谢 [DigitalOcean](https://www.digitalocean.com)、[VPSServer](https://www.vpsserver.com/)、[Hosted.nl](https://www.hosted.nl/)、[MonoVM](https://monovm.com) 和 [BitLaunch](https://bitlaunch.io) 提供服务器赞助。
- 感谢 [KeyCDN](https://www.keycdn.com/) 提供 CDN 服务赞助。
- 感谢 [Buildkite](https://buildkite.com) 提供免费的开源项目 CI/CD 支持。
## 贡献成员
- 前团队成员 [@lunny](https://github.com/lunny)、[@fuxiaohei](https://github.com/fuxiaohei) 和 [@slene](https://github.com/slene)
- 您可以通过查看 [贡献者页面](https://github.com/gogits/gogs/graphs/contributors) 获取完整的贡献者列表。
- 您可以通过查看 [贡献者页面](https://github.com/gogs/gogs/graphs/contributors) 获取 TOP 100 的贡献者列表
- 您可以通过查看 [TRANSLATORS](conf/locale/TRANSLATORS) 文件获取公开的翻译人员列表。
## 授权许可
本项目采用 MIT 开源授权许可证,完整的授权说明已放置在 [LICENSE](https://github.com/gogits/gogs/blob/master/LICENSE) 文件中。
本项目采用 MIT 开源授权许可证,完整的授权说明已放置在 [LICENSE](https://github.com/gogs/gogs/blob/main/LICENSE) 文件中。

23
SECURITY.md Normal file
View File

@@ -0,0 +1,23 @@
# Security policy
## Supported versions
Only lastest two minor version releases are supported (>= 0.12) for accepting vulnerability reports and patching fixes.
Existing vulnerability reports are being tracked in [Gogs Vulnerability Reports](https://jcunknwon.notion.site/Gogs-Vulnerability-Reports-81d7df52e45c4f159274e46ba48ed1b9).
## Vulnerability lifecycle
1. Report a vulnerability:
- We strongly enourage to use https://huntr.dev/ for submitting and managing status of vulnerability reports.
- Alternatively, you may send vulnerability reports through emails to [security@gogs.io](mailto:security@gogs.io).
1. Create a [dummy issue](https://github.com/gogs/gogs/issues/6901) with high-level description of the security vulnerability for credibility and tracking purposes.
1. Project maintainers review the report and either:
- Ask clarifying questions
- Confirm or deny the vulnerability
1. Once the vulnerability is confirmed, 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. Publish the original vulnerability report and a new [GitHub security advisory](https://github.com/gogs/gogs/security/advisories).
Thank you!

92
Taskfile.yml Normal file
View File

@@ -0,0 +1,92 @@
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:
- ./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 gogs{{.BINARY_EXT}}
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
- gogs.go
- internal/**/*.go
- conf/**/*
- public/**/*
- templates/**/*
- custom/**/*
method: timestamp
generate-schemadoc:
desc: Generate database schema documentation
cmds:
- go generate ./internal/db/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
release:
desc: Build the binary and pack resources to a ZIP file
deps: [build]
cmds:
- rm -rf {{.RELEASE_GOGS}}
- mkdir -p {{.RELEASE_GOGS}}
- cp -r gogs{{.BINARY_EXT}} LICENSE README.md README_ZH.md scripts {{.RELEASE_GOGS}}
- cd {{.RELEASE_ROOT}} && zip -r gogs.zip "gogs"
vars:
RELEASE_ROOT: release
RELEASE_GOGS: release/gogs
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

View File

@@ -1,104 +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"
"log"
"os"
"path"
"time"
"io/ioutil"
"github.com/Unknwon/cae/zip"
"github.com/codegangsta/cli"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/modules/setting"
)
var CmdDump = cli.Command{
Name: "dump",
Usage: "Dump Gogs files and database",
Description: `Dump compresses all related files and database into zip file.
It can be used for backup and capture Gogs server image to send to maintainer`,
Action: runDump,
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 dir path"),
},
}
func runDump(ctx *cli.Context) error {
if ctx.IsSet("config") {
setting.CustomConf = ctx.String("config")
}
setting.NewContext()
models.LoadConfigs()
models.SetEngine()
tmpDir := ctx.String("tempdir")
if _, err := os.Stat(tmpDir); os.IsNotExist(err) {
log.Fatalf("Path does not exist: %s", tmpDir)
}
TmpWorkDir, err := ioutil.TempDir(tmpDir, "gogs-dump-")
if err != nil {
log.Fatalf("Fail to create tmp work directory: %v", err)
}
log.Printf("Creating tmp work dir: %s", TmpWorkDir)
reposDump := path.Join(TmpWorkDir, "gogs-repo.zip")
dbDump := path.Join(TmpWorkDir, "gogs-db.sql")
log.Printf("Dumping local repositories...%s", setting.RepoRootPath)
zip.Verbose = ctx.Bool("verbose")
if err := zip.PackTo(setting.RepoRootPath, reposDump, true); err != nil {
log.Fatalf("Fail to dump local repositories: %v", err)
}
log.Printf("Dumping database...")
if err := models.DumpDatabase(dbDump); err != nil {
log.Fatalf("Fail to dump database: %v", err)
}
fileName := fmt.Sprintf("gogs-dump-%d.zip", time.Now().Unix())
log.Printf("Packing dump files...")
z, err := zip.Create(fileName)
if err != nil {
os.Remove(fileName)
log.Fatalf("Fail to create %s: %v", fileName, err)
}
if err := z.AddFile("gogs-repo.zip", reposDump); err != nil {
log.Fatalf("Fail to include gogs-repo.zip: %v", err)
}
if err := z.AddFile("gogs-db.sql", dbDump); err != nil {
log.Fatalf("Fail to include gogs-db.sql: %v", err)
}
customDir, err := os.Stat(setting.CustomPath)
if err == nil && customDir.IsDir() {
if err := z.AddDir("custom", setting.CustomPath); err != nil {
log.Fatalf("Fail to include custom: %v", err)
}
} else {
log.Printf("Custom dir %s doesn't exist, skipped", setting.CustomPath)
}
if err := z.AddDir("log", setting.LogRootPath); err != nil {
log.Fatalf("Fail to include log: %v", err)
}
// FIXME: SSH key file.
if err = z.Close(); err != nil {
os.Remove(fileName)
log.Fatalf("Fail to save %s: %v", fileName, err)
}
log.Printf("Removing tmp work dir: %s", TmpWorkDir)
os.RemoveAll(TmpWorkDir)
log.Printf("Finish dumping in file %s", fileName)
return nil
}

View File

@@ -1,295 +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"
"os"
"os/exec"
"path/filepath"
"strings"
"time"
"github.com/Unknwon/com"
"github.com/codegangsta/cli"
gouuid "github.com/satori/go.uuid"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/modules/base"
"github.com/gogits/gogs/modules/httplib"
"github.com/gogits/gogs/modules/log"
"github.com/gogits/gogs/modules/setting"
)
const (
_ACCESS_DENIED_MESSAGE = "Repository does not exist or you do not have access"
)
var CmdServ = 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 setup(logPath string) {
setting.NewContext()
log.NewGitLogger(filepath.Join(setting.LogRootPath, logPath))
models.LoadConfigs()
if setting.UseSQLite3 || setting.UseTiDB {
workDir, _ := setting.WorkDir()
os.Chdir(workDir)
}
models.SetEngine()
}
func parseCmd(cmd string) (string, string) {
ss := strings.SplitN(cmd, " ", 2)
if len(ss) != 2 {
return "", ""
}
return ss[0], strings.Replace(ss[1], "'/", "'", 1)
}
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 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.GitLogger.Fatal(3, logMessage, args...)
return
}
log.GitLogger.Close()
os.Exit(1)
}
func handleUpdateTask(uuid string, user, repoUser *models.User, reponame string, isWiki bool) {
task, err := models.GetUpdateTaskByUUID(uuid)
if err != nil {
if models.IsErrUpdateTaskNotExist(err) {
log.GitLogger.Trace("No update task is presented: %s", uuid)
return
}
log.GitLogger.Fatal(2, "GetUpdateTaskByUUID: %v", err)
} else if err = models.DeleteUpdateTaskByUUID(uuid); err != nil {
log.GitLogger.Fatal(2, "DeleteUpdateTaskByUUID: %v", err)
}
if isWiki {
return
}
if err = models.PushUpdate(models.PushUpdateOptions{
RefName: task.RefName,
OldCommitID: task.OldCommitID,
NewCommitID: task.NewCommitID,
PusherID: user.Id,
PusherName: user.Name,
RepoUserName: repoUser.Name,
RepoName: reponame,
}); err != nil {
log.GitLogger.Error(2, "Update: %v", err)
}
// Ask for running deliver hook and test pull request tasks.
reqURL := setting.LocalURL + repoUser.Name + "/" + reponame + "/tasks/trigger?branch=" +
strings.TrimPrefix(task.RefName, "refs/heads/") + "&secret=" + base.EncodeMD5(repoUser.Salt)
log.GitLogger.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.GitLogger.Error(2, "Fail to trigger task: not 2xx response code")
}
} else {
log.GitLogger.Error(2, "Fail to trigger task: %v", err)
}
}
func runServ(c *cli.Context) error {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setup("serv.log")
if setting.SSH.Disabled {
println("Gogs: SSH has been disabled")
return nil
}
if len(c.Args()) < 1 {
fail("Not enough arguments", "Not enough arguments")
}
cmd := os.Getenv("SSH_ORIGINAL_COMMAND")
if len(cmd) == 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 := parseCmd(cmd)
repoPath := strings.ToLower(strings.Trim(args, "'"))
rr := strings.SplitN(repoPath, "/", 2)
if len(rr) != 2 {
fail("Invalid repository path", "Invalid repository path: %v", args)
}
username := strings.ToLower(rr[0])
reponame := strings.ToLower(strings.TrimSuffix(rr[1], ".git"))
isWiki := false
if strings.HasSuffix(reponame, ".wiki") {
isWiki = true
reponame = reponame[:len(reponame)-5]
}
repoUser, err := models.GetUserByName(username)
if err != nil {
if models.IsErrUserNotExist(err) {
fail("Repository owner does not exist", "Unregistered owner: %s", username)
}
fail("Internal error", "Failed to get repository owner (%s): %v", username, err)
}
repo, err := models.GetRepositoryByName(repoUser.Id, reponame)
if err != nil {
if models.IsErrRepoNotExist(err) {
fail(_ACCESS_DENIED_MESSAGE, "Repository does not exist: %s/%s", repoUser.Name, reponame)
}
fail("Internal error", "Failed to get repository: %v", err)
}
requestedMode, has := allowedCommands[verb]
if !has {
fail("Unknown git command", "Unknown git command %s", verb)
}
// Prohibit push to mirror repositories.
if requestedMode > models.ACCESS_MODE_READ && repo.IsMirror {
fail("mirror repository is read-only", "")
}
// Allow anonymous clone for public repositories.
var (
keyID int64
user *models.User
)
if requestedMode == models.ACCESS_MODE_WRITE || repo.IsPrivate {
keys := strings.Split(c.Args()[0], "-")
if len(keys) != 2 {
fail("Key ID format error", "Invalid key argument: %s", c.Args()[0])
}
key, err := models.GetPublicKeyByID(com.StrTo(keys[1]).MustInt64())
if err != nil {
fail("Invalid key ID", "Invalid key ID[%s]: %v", c.Args()[0], err)
}
keyID = key.ID
// Check deploy key or user key.
if key.Type == models.KEY_TYPE_DEPLOY {
if key.Mode < requestedMode {
fail("Key permission denied", "Cannot push with deployment key: %d", key.ID)
}
// 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)
}
} else {
user, err = models.GetUserByKeyID(key.ID)
if err != nil {
fail("internal error", "Failed to get user by key ID(%d): %v", keyID, err)
}
mode, err := models.AccessLevel(user, repo)
if err != nil {
fail("Internal error", "Fail to check access: %v", err)
} else if mode < requestedMode {
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, requestedMode, repoPath)
}
}
}
uuid := gouuid.NewV4().String()
os.Setenv("uuid", uuid)
// 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], repoPath)
} else {
gitcmd = exec.Command(verb, 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", "Failed to execute git command: %v", err)
}
if requestedMode == models.ACCESS_MODE_WRITE {
handleUpdateTask(uuid, user, repoUser, reponame, isWiki)
}
// Update user key activity.
if keyID > 0 {
key, err := models.GetPublicKeyByID(keyID)
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)
}
}
return nil
}

View File

@@ -1,58 +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 (
"os"
"github.com/codegangsta/cli"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/modules/log"
"github.com/gogits/gogs/modules/setting"
)
var CmdUpdate = cli.Command{
Name: "update",
Usage: "This command should only be called by Git hook",
Description: `Update get pushed info and insert into database`,
Action: runUpdate,
Flags: []cli.Flag{
stringFlag("config, c", "custom/conf/app.ini", "Custom configuration file path"),
},
}
func runUpdate(c *cli.Context) error {
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
setup("update.log")
if len(os.Getenv("SSH_ORIGINAL_COMMAND")) == 0 {
log.GitLogger.Trace("SSH_ORIGINAL_COMMAND is empty")
return nil
}
args := c.Args()
if len(args) != 3 {
log.GitLogger.Fatal(2, "Arguments received are not equal to three")
} else if len(args[0]) == 0 {
log.GitLogger.Fatal(2, "First argument 'refName' is empty, shouldn't use")
}
task := models.UpdateTask{
UUID: os.Getenv("uuid"),
RefName: args[0],
OldCommitID: args[1],
NewCommitID: args[2],
}
if err := models.AddUpdateTask(&task); err != nil {
log.GitLogger.Fatal(2, "AddUpdateTask: %v", err)
}
return nil
}

View File

@@ -1,597 +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/http"
"net/http/fcgi"
"os"
"path"
"strings"
"github.com/codegangsta/cli"
"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/go-xorm/xorm"
"github.com/mcuadros/go-version"
"gopkg.in/ini.v1"
"gopkg.in/macaron.v1"
"github.com/gogits/git-module"
"github.com/gogits/go-gogs-client"
"github.com/gogits/gogs/models"
"github.com/gogits/gogs/modules/auth"
"github.com/gogits/gogs/modules/bindata"
"github.com/gogits/gogs/modules/context"
"github.com/gogits/gogs/modules/log"
"github.com/gogits/gogs/modules/setting"
"github.com/gogits/gogs/modules/template"
"github.com/gogits/gogs/routers"
"github.com/gogits/gogs/routers/admin"
apiv1 "github.com/gogits/gogs/routers/api/v1"
"github.com/gogits/gogs/routers/dev"
"github.com/gogits/gogs/routers/org"
"github.com/gogits/gogs/routers/repo"
"github.com/gogits/gogs/routers/user"
)
var CmdWeb = cli.Command{
Name: "web",
Usage: "Start Gogs 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"),
},
}
type VerChecker struct {
ImportPath string
Version func() string
Expected string
}
// 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(4, "Fail to read 'templates/.VERSION': %v", err)
}
if string(data) != setting.AppVer {
log.Fatal(4, "Binary and template file version does not match, did you forget to recompile?")
}
// Check dependency version.
checkers := []VerChecker{
{"github.com/go-xorm/xorm", func() string { return xorm.Version }, "0.5.5"},
{"github.com/go-macaron/binding", binding.Version, "0.3.2"},
{"github.com/go-macaron/cache", cache.Version, "0.1.2"},
{"github.com/go-macaron/csrf", csrf.Version, "0.1.0"},
{"github.com/go-macaron/i18n", i18n.Version, "0.3.0"},
{"github.com/go-macaron/session", session.Version, "0.1.6"},
{"github.com/go-macaron/toolbox", toolbox.Version, "0.1.0"},
{"gopkg.in/ini.v1", ini.Version, "1.8.4"},
{"gopkg.in/macaron.v1", macaron.Version, "1.1.4"},
{"github.com/gogits/git-module", git.Version, "0.3.2"},
{"github.com/gogits/go-gogs-client", gogs.Version, "0.7.4"},
}
for _, c := range checkers {
if !version.Compare(c.Version(), c.Expected, ">=") {
log.Fatal(4, `Dependency outdated!
Package '%s' current version (%s) is below requirement (%s),
please use following command to update this package and recompile Gogs:
go get -u %[1]s`, c.ImportPath, c.Version(), c.Expected)
}
}
}
// 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.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,
}))
models.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.CacheInternal,
}))
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(ctx *cli.Context) error {
if ctx.IsSet("config") {
setting.CustomConf = ctx.String("config")
}
routers.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
// 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, routers.Home)
m.Group("/explore", func() {
m.Get("", func(ctx *context.Context) {
ctx.Redirect(setting.AppSubUrl + "/explore/repos")
})
m.Get("/repos", routers.ExploreRepos)
m.Get("/users", routers.ExploreUsers)
}, ignSignIn)
m.Combo("/install", routers.InstallInit).Get(routers.Install).
Post(bindIgnErr(auth.InstallForm{}), routers.InstallPost)
m.Get("/^:type(issues|pulls)$", reqSignIn, user.Issues)
// ***** START: User *****
m.Group("/user", func() {
m.Get("/login", user.SignIn)
m.Post("/login", bindIgnErr(auth.SignInForm{}), user.SignInPost)
m.Get("/sign_up", user.SignUp)
m.Post("/sign_up", bindIgnErr(auth.RegisterForm{}), 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(auth.UpdateProfileForm{}), user.SettingsPost)
m.Post("/avatar", binding.MultipartForm(auth.UploadAvatarForm{}), user.SettingsAvatar)
m.Post("/avatar/delete", user.SettingsDeleteAvatar)
m.Combo("/email").Get(user.SettingsEmails).
Post(bindIgnErr(auth.AddEmailForm{}), user.SettingsEmailPost)
m.Post("/email/delete", user.DeleteEmail)
m.Get("/password", user.SettingsPassword)
m.Post("/password", bindIgnErr(auth.ChangePasswordForm{}), user.SettingsPasswordPost)
m.Combo("/ssh").Get(user.SettingsSSHKeys).
Post(bindIgnErr(auth.AddSSHKeyForm{}), user.SettingsSSHKeysPost)
m.Post("/ssh/delete", user.DeleteSSHKey)
m.Combo("/applications").Get(user.SettingsApplications).
Post(bindIgnErr(auth.NewAccessTokenForm{}), user.SettingsApplicationsPost)
m.Post("/applications/delete", user.SettingsDeleteApplication)
m.Route("/delete", "GET,POST", user.SettingsDelete)
}, reqSignIn, func(ctx *context.Context) {
ctx.Data["PageIsUserSettings"] = true
})
m.Group("/user", func() {
// r.Get("/feeds", binding.Bind(auth.FeedsForm{}), user.Feeds)
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(auth.AdminCrateUserForm{}), admin.NewUserPost)
m.Combo("/:userid").Get(admin.EditUser).Post(bindIgnErr(auth.AdminEditUserForm{}), 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(auth.AuthenticationForm{}), admin.NewAuthSourcePost)
m.Combo("/:authid").Get(admin.EditAuthSource).
Post(bindIgnErr(auth.AuthenticationForm{}), 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(ctx *context.Context) {
attach, err := models.GetAttachmentByUUID(ctx.Params(":uuid"))
if err != nil {
if models.IsErrAttachmentNotExist(err) {
ctx.Error(404)
} else {
ctx.Handle(500, "GetAttachmentByUUID", err)
}
return
}
fr, err := os.Open(attach.LocalPath())
if err != nil {
ctx.Handle(500, "Open", err)
return
}
defer fr.Close()
ctx.Header().Set("Cache-Control", "public,max-age=86400")
// Fix #312. Attachments with , in their name are not handled correctly by Google Chrome.
// We must put the name in " manually.
if err = repo.ServeData(ctx, "\""+attach.Name+"\"", fr); err != nil {
ctx.Handle(500, "ServeData", err)
return
}
})
m.Post("/issues/attachments", repo.UploadIssueAttachment)
}, 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.Get("/create", org.Create)
m.Post("/create", bindIgnErr(auth.CreateOrgForm{}), org.CreatePost)
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(auth.CreateTeamForm{}), org.NewTeamPost)
m.Get("/teams/:team/edit", org.EditTeam)
m.Post("/teams/:team/edit", bindIgnErr(auth.CreateTeamForm{}), org.EditTeamPost)
m.Post("/teams/:team/delete", org.DeleteTeam)
m.Group("/settings", func() {
m.Combo("").Get(org.Settings).
Post(bindIgnErr(auth.UpdateOrgSettingForm{}), org.SettingsPost)
m.Post("/avatar", binding.MultipartForm(auth.UploadAvatarForm{}), 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(auth.NewWebhookForm{}), repo.WebHooksNewPost)
m.Post("/slack/new", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksNewPost)
m.Get("/:id", repo.WebHooksEdit)
m.Post("/gogs/:id", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksEditPost)
m.Post("/slack/:id", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksEditPost)
})
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(auth.CreateRepoForm{}), repo.CreatePost)
m.Get("/migrate", repo.Migrate)
m.Post("/migrate", bindIgnErr(auth.MigrateRepoForm{}), repo.MigratePost)
m.Combo("/fork/:repoid").Get(repo.Fork).
Post(bindIgnErr(auth.CreateRepoForm{}), repo.ForkPost)
}, reqSignIn)
m.Group("/:username/:reponame", func() {
m.Group("/settings", func() {
m.Combo("").Get(repo.Settings).
Post(bindIgnErr(auth.RepoSettingForm{}), repo.SettingsPost)
m.Group("/collaboration", func() {
m.Combo("").Get(repo.Collaboration).Post(repo.CollaborationPost)
m.Post("/access_mode", repo.ChangeCollaborationAccessMode)
m.Post("/delete", repo.DeleteCollaboration)
})
m.Group("/hooks", func() {
m.Get("", repo.Webhooks)
m.Post("/delete", repo.DeleteWebhook)
m.Get("/:type/new", repo.WebhooksNew)
m.Post("/gogs/new", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksNewPost)
m.Post("/slack/new", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksNewPost)
m.Get("/:id", repo.WebHooksEdit)
m.Post("/:id/test", repo.TestWebhook)
m.Post("/gogs/:id", bindIgnErr(auth.NewWebhookForm{}), repo.WebHooksEditPost)
m.Post("/slack/:id", bindIgnErr(auth.NewSlackHookForm{}), repo.SlackHooksEditPost)
m.Group("/git", func() {
m.Get("", repo.GitHooks)
m.Combo("/:name").Get(repo.GitHooksEdit).
Post(repo.GitHooksEditPost)
}, context.GitHookService())
})
m.Group("/keys", func() {
m.Combo("").Get(repo.DeployKeys).
Post(bindIgnErr(auth.AddSSHKeyForm{}), repo.DeployKeysPost)
m.Post("/delete", repo.DeleteDeployKey)
})
}, func(ctx *context.Context) {
ctx.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.Group("/issues", func() {
m.Combo("/new", repo.MustEnableIssues).Get(context.RepoRef(), repo.NewIssue).
Post(bindIgnErr(auth.CreateIssueForm{}), repo.NewIssuePost)
m.Combo("/:index/comments").Post(bindIgnErr(auth.CreateCommentForm{}), repo.NewComment)
m.Group("/:index", func() {
m.Post("/label", repo.UpdateIssueLabel)
m.Post("/milestone", repo.UpdateIssueMilestone)
m.Post("/assignee", repo.UpdateIssueAssignee)
}, reqRepoWriter)
m.Group("/:index", func() {
m.Post("/title", repo.UpdateIssueTitle)
m.Post("/content", repo.UpdateIssueContent)
})
})
m.Post("/comments/:id", repo.UpdateCommentContent)
m.Group("/labels", func() {
m.Post("/new", bindIgnErr(auth.CreateLabelForm{}), repo.NewLabel)
m.Post("/edit", bindIgnErr(auth.CreateLabelForm{}), repo.UpdateLabel)
m.Post("/delete", repo.DeleteLabel)
}, reqRepoWriter, context.RepoRef())
m.Group("/milestones", func() {
m.Combo("/new").Get(repo.NewMilestone).
Post(bindIgnErr(auth.CreateMilestoneForm{}), repo.NewMilestonePost)
m.Get("/:id/edit", repo.EditMilestone)
m.Post("/:id/edit", bindIgnErr(auth.CreateMilestoneForm{}), 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(auth.NewReleaseForm{}), repo.NewReleasePost)
m.Get("/edit/:tagname", repo.EditRelease)
m.Post("/edit/:tagname", bindIgnErr(auth.EditReleaseForm{}), repo.EditReleasePost)
m.Post("/delete", repo.DeleteRelease)
}, reqRepoWriter, context.RepoRef())
m.Combo("/compare/*", repo.MustAllowPulls).Get(repo.CompareAndPullRequest).
Post(bindIgnErr(auth.CreateIssueForm{}), repo.CompareAndPullRequestPost)
}, reqSignIn, context.RepoAssignment(), repo.MustBeNotBare)
m.Group("/:username/:reponame", func() {
m.Group("", func() {
m.Get("/releases", repo.Releases)
m.Get("/^:type(issues|pulls)$", repo.RetrieveLabels, repo.Issues)
m.Get("/^:type(issues|pulls)$/:index", repo.ViewIssue)
m.Get("/labels/", repo.RetrieveLabels, repo.Labels)
m.Get("/milestones", repo.Milestones)
}, context.RepoRef())
// m.Get("/branches", repo.Branches)
m.Group("/wiki", func() {
m.Get("/?:page", repo.Wiki)
m.Get("/_pages", repo.WikiPages)
m.Group("", func() {
m.Combo("/_new").Get(repo.NewWiki).
Post(bindIgnErr(auth.NewWikiForm{}), repo.NewWikiPost)
m.Combo("/:page/_edit").Get(repo.EditWiki).
Post(bindIgnErr(auth.NewWikiForm{}), repo.EditWikiPost)
m.Post("/:page/delete", repo.DeleteWikiPagePost)
}, reqSignIn, reqRepoWriter)
}, repo.MustEnableWiki, context.RepoRef())
m.Get("/archive/*", 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-z0-9]{40})$", repo.Diff)
m.Get("/forks", repo.Forks)
}, context.RepoRef())
m.Get("/commit/:sha([a-z0-9]{40})\\.:ext(patch|diff)", repo.RawDiff)
m.Get("/compare/:before([a-z0-9]{40})\\.\\.\\.:after([a-z0-9]{40})", repo.CompareDiff)
}, ignSignIn, context.RepoAssignment(), repo.MustBeNotBare)
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.Group("/:reponame", func() {
m.Get("", repo.Home)
m.Get("\\.git$", repo.Home)
}, ignSignIn, context.RepoAssignment(true), context.RepoRef())
m.Group("/:reponame", func() {
m.Any("/*", ignSignInAndCsrf, repo.HTTP)
m.Head("/tasks/trigger", repo.TriggerTask)
})
})
// ***** END: Repository *****
m.Group("/api", func() {
apiv1.RegisterRoutes(m)
}, ignSignIn)
// robots.txt
m.Get("/robots.txt", func(ctx *context.Context) {
if setting.HasRobotsTxt {
ctx.ServeFileContent(path.Join(setting.CustomPath, "robots.txt"))
} else {
ctx.Error(404)
}
})
// Not found handler.
m.NotFound(routers.NotFound)
// Flag for port number in case first time run conflict.
if ctx.IsSet("port") {
setting.AppUrl = strings.Replace(setting.AppUrl, setting.HttpPort, ctx.String("port"), 1)
setting.HttpPort = ctx.String("port")
}
var err error
listenAddr := fmt.Sprintf("%s:%s", setting.HttpAddr, setting.HttpPort)
log.Info("Listen: %v://%s%s", setting.Protocol, listenAddr, setting.AppSubUrl)
switch setting.Protocol {
case setting.HTTP:
err = http.ListenAndServe(listenAddr, m)
case setting.HTTPS:
server := &http.Server{Addr: listenAddr, TLSConfig: &tls.Config{MinVersion: tls.VersionTLS10}, Handler: m}
err = server.ListenAndServeTLS(setting.CertFile, setting.KeyFile)
case setting.FCGI:
err = fcgi.Serve(nil, m)
default:
log.Fatal(4, "Invalid protocol: %s", setting.Protocol)
}
if err != nil {
log.Fatal(4, "Fail to start server: %v", err)
}
return nil
}

16
codecov.yml Normal file
View File

@@ -0,0 +1,16 @@
coverage:
range: "60...95"
status:
project:
default:
threshold: 1%
informational: true
patch:
default:
only_pulls: true
informational: true
comment:
layout: 'diff'
github_checks: false

View File

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

View File

@@ -1,88 +1,27 @@
# NEVER EVER MODIFY THIS FILE
# PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE
# !!! NEVER EVER MODIFY THIS FILE !!!
# !!! PLEASE MAKE CHANGES ON CORRESPONDING CUSTOM CONFIG FILE !!!
# !!! IF YOU ARE PACKAGING PROVIDER, PLEASE MAKE OWN COPY OF IT !!!
; App name that shows on every page title
APP_NAME = Gogs: Go Git Service
; Change it if you run locally
; The brand name of the application, can be your company or team name.
BRAND_NAME = 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
; Either "dev", "prod" or "test", default is "dev"
; The running mode of the application, can be either "dev", "prod" or "test".
RUN_MODE = dev
[repository]
ROOT =
SCRIPT_TYPE = bash
; Default ANSI 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
; Patch test queue length, make it as large as possible
PULL_REQUEST_QUEUE_LENGTH = 10000
[ui]
; Number of repositories that are showed in one explore page
EXPLORE_PAGING_NUM = 20
; Number of issues that are showed in one page
ISSUE_PAGING_NUM = 10
; Number of maximum commits showed in one activity feed
FEED_MAX_COMMIT_NUM = 5
; Value of `theme-color` meta tag, used by Android >= 5.0
; An invalid color like "none" or "disable" will have the default style
; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
THEME_COLOR_META_TAG = `#ff5343`
; Max size of files to be displayed (defaults is 8MiB)
MAX_DISPLAY_FILE_SIZE = 8388608
[ui.admin]
; Number of users that are showed in one page
USER_PAGING_NUM = 50
; Number of repos that are showed in one page
REPO_PAGING_NUM = 50
; Number of notices that are showed in one page
NOTICE_PAGING_NUM = 25
; Number of organization that are showed in one page
ORG_PAGING_NUM = 50
[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 =
[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
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
; The port number to be listened by the application.
HTTP_PORT = 3000
; 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 clone URL
SSH_DOMAIN = %(DOMAIN)s
; Port number to be exposed in clone URL
SSH_PORT = 22
; 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 =
; 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:
; $ ./gogs cert -ca=true -duration=8760h0m0s -host=myhost.example.com
;
@@ -92,219 +31,396 @@ DISABLE_ROUTER_LOG = false
; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
CERT_FILE = custom/https/cert.pem
KEY_FILE = custom/https/key.pem
; Upper level of template and static file path
; default is the path where Gogs is executed
STATIC_ROOT_PATH =
; Default path for App data
APP_DATA_PATH = data
; Application level GZIP support
ENABLE_GZIP = false
; Landing page for non-logged users, can be "home" or "explore"
LANDING_PAGE = home
; The minimum allowed TLS version, currently supports "TLS10", "TLS11", "TLS12", and "TLS13".
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/
; Define allowed algorithms and their minimum key length (use -1 to disable a type)
; Whether to disable using CDN for static files regardless.
OFFLINE_MODE = false
; Whether to disable logging in router.
DISABLE_ROUTER_LOG = true
; Whether to enable application level GZIP compression.
ENABLE_GZIP = false
; The path for storing application specific data.
APP_DATA_PATH = data
; Whether to enable to load assets (i.e. "conf", "templates", "public") from disk instead of embedded bindata.
LOAD_ASSETS_FROM_DISK = false
; The landing page URL for anonymous users, the value should not include
; subpath that is handled by the reverse proxy.
LANDING_URL = /
; Whether to disable SSH access to the application entirely.
DISABLE_SSH = false
; The domain name to be exposed in SSH clone URL.
SSH_DOMAIN = %(DOMAIN)s
; The port number to be exposed in SSH clone URL.
SSH_PORT = 22
; The path of SSH root directory, default is "$HOME/.ssh".
SSH_ROOT_PATH =
; The path to ssh-keygen, default is "ssh-keygen" and let shell find out which one to call.
SSH_KEYGEN_PATH = ssh-keygen
; 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
; Define allowed algorithms and their minimum key length (use -1 to disable a type).
[ssh.minimum_key_sizes]
ED25519 = 256
ECDSA = 256
RSA = 2048
DSA = 1024
[database]
; Either "mysql", "postgres" or "sqlite3", it's your choice
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = gogs
USER = root
PASSWD =
; For "postgres" only, either "disable", "require" or "verify-full"
SSL_MODE = disable
; For "sqlite3" and "tidb", use absolute path when you start as service
PATH = data/gogs.db
[repository]
; The root path for storing managed repositories, default is "~/gogs-repositories"
ROOT =
; The script type server supports, sometimes could be "sh".
SCRIPT_TYPE = bash
; Default ANSI charset for an unrecognized charset.
ANSI_CHARSET =
; Whether to force every new repository to be private.
FORCE_PRIVATE = false
; The global limit of number of repositories a user can create, -1 means no limit.
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]
; List of file extensions that should have line wraps in the CodeMirror editor.
; 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]
INSTALL_LOCK = false
; !!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
; Reverse proxy authentication header name of user name
REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
[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]
; Hook task queue length
QUEUE_LENGTH = 1000
; Deliver timeout in seconds
DELIVER_TIMEOUT = 5
; 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
; Name displayed in mail title
SUBJECT = %(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/html as alternative format of content
ENABLE_HTML_ALTERNATIVE = 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 86400
GC_INTERVAL_TIME = 86400
; Session life time, default is 86400
SESSION_LIFE_TIME = 86400
[picture]
AVATAR_UPLOAD_PATH = data/avatars
; Chinese users can choose "duoshuo"
; or a custom avatar source, like: http://cn.gravatar.com/avatar/
GRAVATAR_SOURCE = gravatar
DISABLE_GRAVATAR = false
[attachment]
; Whether attachments are enabled. Defaults to `true`
ENABLE = true
; Path for attachments. Defaults to `data/attachments`
PATH = data/attachments
; One or more allowed types, e.g. image/jpeg|image/png
ALLOWED_TYPES = image/jpeg|image/png
; Max size of each file. Defaults to 32MB
MAX_SIZE = 4
; Max number of files per upload. Defaults to 10
[repository.upload]
; Whether to enable repository file uploads.
ENABLED = true
; The path to temporarily store uploads (content under this path gets wiped out on every start).
TEMP_PATH = data/tmp/uploads
; 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.
FILE_MAX_SIZE = 3
; The maximum number of files per upload.
MAX_FILES = 5
[time]
; Specifies the format for fully outputed dates. Defaults to RFC1123
; Special supported values are 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 =
[database]
; The database backend, either "postgres", "mysql" "sqlite3" or "mssql".
; You can connect to TiDB with MySQL protocol.
TYPE = postgres
HOST = 127.0.0.1:5432
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
[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 =
; Whether to disable HELO operation when the hostname is different.
DISABLE_HELO =
; 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
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
[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]
; The root path for all log files, default is "log/" subdirectory.
ROOT_PATH =
; Either "console", "file", "conn", "smtp" or "database", default is "console"
; Can be "console", "file", "slack" and "discord".
; Use comma to separate multiple modes, e.g. "console, file"
MODE = console
; Buffer length of channel, keep it as it is if you don't know what it is.
BUFFER_LEN = 10000
; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
BUFFER_LEN = 100
; Either "Trace", "Info", "Warn", "Error", "Fatal", default is "Trace"
LEVEL = Trace
; For "console" mode only
[log.console]
LEVEL =
; Comment out to inherit
; LEVEL =
; For "file" mode only
[log.file]
LEVEL =
; This enables automated log rotate(switch of following options), default is true
; Comment out to inherit
; LEVEL =
; Whether to enable automated log rotate (switch of following options).
LOG_ROTATE = true
; Max line number of single file, default is 1000000
MAX_LINES = 1000000
; Max size shift of single file, default is 28 means 1 << 28, 256MB
MAX_SIZE_SHIFT = 28
; Segment log daily, default is true
; Whether to segment log files daily.
DAILY_ROTATE = true
; Expired days of log file(delete after max days), default is 7
; The maximum size shift of single file, default is 28 means 1 << 28 = 256MB.
MAX_SIZE_SHIFT = 28
; The maximum number of lines of single file.
MAX_LINES = 1000000
; The expired days of log file (delete after max days).
MAX_DAYS = 7
; For "conn" mode only
[log.conn]
LEVEL =
; Reconnect host for every single message, default is false
RECONNECT_ON_MSG = false
; Try to reconnect when connection is lost, default is false
RECONNECT = false
; Either "tcp", "unix" or "udp", default is "tcp"
PROTOCOL = tcp
; Host address
ADDR =
; For "slack" mode only
[log.slack]
; Comment out to inherit
; LEVEL =
; Webhook URL
URL =
; For "smtp" mode only
[log.smtp]
LEVEL =
; Name displayed in mail title, default is "Diagnostic message from server"
SUBJECT = Diagnostic message from server
; Mail server
HOST =
; Mailer user name and password
USER =
PASSWD =
; Receivers, can be one or more, e.g. ["1@example.com","2@example.com"]
RECEIVERS =
[log.discord]
; Comment out to inherit
; LEVEL =
; Webhook URL
URL =
; The username to be displayed in notification.
USERNAME = %(BRAND_NAME)s
; For "database" mode only
[log.database]
LEVEL =
; Either "mysql" or "postgres"
DRIVER =
; Based on xorm, e.g.: root:root@localhost/gogs?charset=utf8
CONN =
[log.xorm]
; Enable file rotation
ROTATE = true
; Rotate every day
ROTATE_DAILY = true
; Rotate once file size excesses x MB
MAX_SIZE = 100
; Maximum days to keep logger files
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]
; Enable running cron tasks periodically.
@@ -312,9 +428,9 @@ ENABLED = true
; Run cron tasks when Gogs starts.
RUN_AT_START = false
; Update mirrors
[cron.update_mirrors]
SCHEDULE = @every 1h
; Defines how often the mirror syncer checks if any mirror needs to be synchronized (based on the mirror update interval).
SCHEDULE = @every 10m
; Repository health check
[cron.repo_health_check]
@@ -329,13 +445,22 @@ ARGS =
RUN_AT_START = true
SCHEDULE = @every 24h
; Cleanup repository archives
[cron.repo_archive_cleanup]
RUN_AT_START = false
SCHEDULE = @every 24h
; Time duration to check if archive should be cleaned
OLDER_THAN = 24h
[git]
; Max number of lines allowed of a single file in diff view.
MAX_GIT_DIFF_LINES = 1000
; Max number of characters of a line allowed in diff view.
MAX_GIT_DIFF_LINE_CHARACTERS = 500
; Max number of files shown in diff view.
; Disables highlight of added and removed changes
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_GIT_DIFF_LINES = 1000
; Max number of characters of a line allowed in diff view
MAX_GIT_DIFF_LINE_CHARACTERS = 2000
; Arguments for command 'git gc', e.g. "--aggressive --auto"
; see more on http://git-scm.com/docs/git-gc/1.7.5
GC_ARGS =
@@ -346,16 +471,70 @@ MIGRATE = 600
MIRROR = 300
CLONE = 300
PULL = 300
DIFF = 60
GC = 60
[mirror]
; 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
[api]
; Max number of items will response in a page
MAX_RESPONSE_ITEMS = 50
[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
NAMES = English,简体中文,繁體中文(香港),繁體中文(台湾),Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano,Suomalainen,Türkçe,čeština
[ui]
; Number of repositories that are showed in one explore page
EXPLORE_PAGING_NUM = 20
; Number of issues that are showed in one page
ISSUE_PAGING_NUM = 10
; Number of maximum commits showed in one activity feed
FEED_MAX_COMMIT_NUM = 5
; Value of "theme-color" meta tag, used by Android >= 5.0
; An invalid color like "none" or "disable" will have the default style
; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
THEME_COLOR_META_TAG = `#ff5343`
; Max size in bytes of files to be displayed (default is 8MB)
MAX_DISPLAY_FILE_SIZE = 8388608
; Used for datetimepicker
[ui.admin]
; Number of users that are showed in one page
USER_PAGING_NUM = 50
; Number of repos that are showed in one page
REPO_PAGING_NUM = 50
; Number of notices that are showed in one page
NOTICE_PAGING_NUM = 25
; Number of organization that are showed in one page
ORG_PAGING_NUM = 50
[ui.user]
; Number of repos that are showed in one page
REPO_PAGING_NUM = 15
; Number of news feeds that are showed in one page
NEWS_FEED_PAGING_NUM = 20
; Number of commits that are showed in one page
COMMITS_PAGING_NUM = 30
[prometheus]
; Whether to enable Prometheus metrics.
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 =
; 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]
en-US = en
zh-CN = zh
@@ -375,12 +554,22 @@ it-IT = it
fi-FI = fi
tr-TR = tr
cs-CZ = cs-CZ
; Extension mapping to highlight class
; e.g. .toml=ini
[highlight.mapping]
sr-SP = sr
sv-SE = sv
ko-KR = ko
gl-ES = gl
uk-UA = uk
en-GB = en-GB
hu-HU = hu
sk-SK = sk
id-ID = id
fa-IR = fa
vi-VN = vi
pt-PT = pt
mn-MN = mn
ro-RO = ro
[other]
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_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

27
conf/embed.go Normal file
View File

@@ -0,0 +1,27 @@
// Copyright 2022 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 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
}

20
conf/embed_test.go Normal file
View File

@@ -0,0 +1,20 @@
// Copyright 2022 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 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)
}

63
conf/gitignore/PhpStorm vendored Normal file
View File

@@ -0,0 +1,63 @@
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff:
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/dictionaries
# Sensitive or high-churn files:
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.xml
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
# Gradle:
.idea/**/gradle.xml
.idea/**/libraries
# CMake
cmake-build-debug/
# Mongo Explorer plugin:
.idea/**/mongoSettings.xml
## File-based project format:
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# Ruby plugin and RubyMine
/.rakeTasks
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
### PhpStorm Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
# *.iml
# modules.xml
# .idea/misc.xml
# *.ipr
# Sonarlint plugin
.idea/sonarlint

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/*

63
conf/gitignore/WebStorm vendored Normal file
View File

@@ -0,0 +1,63 @@
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839
# User-specific stuff:
.idea/**/workspace.xml
.idea/**/tasks.xml
.idea/dictionaries
# Sensitive or high-churn files:
.idea/**/dataSources/
.idea/**/dataSources.ids
.idea/**/dataSources.xml
.idea/**/dataSources.local.xml
.idea/**/sqlDataSources.xml
.idea/**/dynamic.xml
.idea/**/uiDesigner.xml
# Gradle:
.idea/**/gradle.xml
.idea/**/libraries
# CMake
cmake-build-debug/
# Mongo Explorer plugin:
.idea/**/mongoSettings.xml
## File-based project format:
*.iws
## Plugin-specific files:
# IntelliJ
/out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# Ruby plugin and RubyMine
/.rakeTasks
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
### WebStorm Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721
# *.iml
# modules.xml
# .idea/misc.xml
# *.ipr
# Sonarlint plugin
.idea/sonarlint

View File

@@ -1,24 +1,25 @@
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk
.DS_Store
.AppleDouble
.LSOverride
# Icon must end with two \r
Icon
# Thumbnails
._*
# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns
# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

7
conf/label/Default Normal file
View File

@@ -0,0 +1,7 @@
#ee0701 bug
#cccccc duplicate
#84b6eb enhancement
#128a0c help wanted
#e6e6e6 invalid
#cc317c question
#ffffff wontfix

View File

@@ -7,22 +7,34 @@ Akihiro YAGASAKI <yaggytter AT momiage DOT com>
Aleksejs Grocevs <aleksejs AT grocevs DOT pro>
Aleksey Tarakin <hukendo AT yandex DOT ru>
Alexander Steinhöfer <kontakt AT lx-s DOT de>
Alexandre Espinosa Menor <aemenor DOT gmail DOT com>
Alexandre Magno <alexandre DOT mbm AT gmail DOT com>
Anders B. Hansen <anders AT birkoe DOT com>
András Schenkerik <moviesharkteam AT gmail DOT com>
Andrey Nering <andrey AT nering DOT com DOT br>
Andrey Paskal <apaskal AT gmail DOT com>
Andrey Solomatin <toadron AT yandex DOT ru>
Antoine GIRARD <sapk AT sapk DOT fr>
Arthur Aslanyan <arthur DOT e DOT aslanyan AT gmail DOT com>
Aurelien Darragon <aurelien DOT darragon AT gmail DOT com>
Barış Arda Yılmaz <ardayilmazgamer AT gmail DOT com>
Bo-Yi Wu <appleboy DOT tw AT gmail DOT com>
Breton Corentin <contact AT neodarz DOT net>
Camille Baronnet <gogs AT camillebaronnet DOT fr>
Changwoo Ryu <cwryu AT debian DOT org>
Christoph Kisfeld <christoph DOT kisfeld AT gmail DOT com>
Cysioland
Damaris Padieu <damizx AT hotmail DOT fr>
Daniel Speichert <daniel AT speichert DOT pl>
David Yzaguirre <dvdyzag AT gmail DOT com>
Denys Khomenko
Dmitriy Nogay <me AT catwhocode DOT ga>
Enrico Testori hypertesto AT gmail DOT com
Ezequiel Gonzalez Rial <gonrial AT gmail DOT com>
Farhan Naysee <wpmagic70 AT gmail DOT com>
Flávio Monteiro <flaviomonteiro2013 AT gmail DOT com>
Gabriel Dugny <gabriel DOT dugny AT gmail DOT com>
Ganesha <reekoheek AT gmail DOT com>
Gregor Santner <gdev AT live DOT de>
Halil Kaya <halil AT halilkaya DOT net>
Hamid Feizabadi <hamidfzm AT gmail DOT com>
@@ -30,32 +42,47 @@ Huimin Wang <wanghm2009 AT hotmail DOT co DOT jp>
ilko <kontact-mr.k AT outlook DOT com">
Ilya Makarov
Jamie Mansfield <dev AT jamierocks DOT uk>
Javier Ortiz Bultron <javier DOT ortiz DOT 78 AT gmail DOT com>
Jean THOMAS <contact AT tibounise DOT com>
John Behm <jxsl13 AT googlemail DOT com>
Jonas De Kegel <jonasgithub [AT] gmail [DOT] com>
Joubert RedRat <me+github AT redrat DOT com DOT br>
Juraj Bubniak <contact AT jbub DOT eu>
Lafriks <lafriks AT gmail DOT com>
Lauri Ojansivu <x AT xet7 DOT org>
Luc Stepniewski <luc AT stepniewski DOT fr>
Luca Bozzo <luca AT bozzo DOT it>
Luca Kröger <l DOT kroeger01 AT gmail DOT com>
Luc Stepniewski <luc AT stepniewski DOT fr>
Łukasz Jan Niemier <lukasz AT niemier DOT pl>
Marc Schiller <marc AT schiller DOT im>
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>
Miguel de la Cruz <miguel AT mcrx DOT me>
Mikhail Burdin <xdshot9000 AT gmail DOT com>
Mohammad Gholami <gholami DOT mohammad DOT mgh AT gmail DOT com>
Morten Sørensen <klim8d AT gmail DOT com>
Muhammad Fawwaz Orabi <mfawwaz93 AT gmail DOT com>
Nakao Takamasa <at.mattenn AT gmail DOT com>
Natan Albuquerque <natanalbuquerque5 AT gmail DOT com>
Odilon Junior <odilon DOT junior93 AT gmail DOT com>
Oleksandr Yermakov <olexander DOT yermakov AT gmail DOT com>
Óscar García Amor <ogarcia AT connectical DOT com>
Pablo Saavedra <psaavedra AT igalia DOT com>
Pierre Prinetti >meatqrawldotnet<
Richard Bukovansky <richard DOT bukovansky @ gmail DOT com>
Robert Nuske <robert DOT nuske AT web DOT de>
Robin Hübner <profan AT prfn DOT se>
Rste Risafov <risafov AT lazy DOT com>
SeongJae Park <sj38 DOT park 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>
Tilmann Bach <tilmann AT outlook 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 Vissoultchev <wqweto AT gmail DOT com>
Vongola <me AT vongola DOT tw>
YJSoft <yjsoft AT yjsoft DOT pe DOT kr>
Łukasz Jan Niemier <lukasz AT niemier DOT pl>
Pablo Saavedra <psaavedra AT igalia DOT com>
Oscar Quisbert <quisbert_karos AT outlook DOT com>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,6 @@ sign_out=Abmelden
sign_up=Registrieren
register=Registrieren
website=Webseite
version=Version
page=Seite
template=Vorlage
language=Sprache
@@ -44,23 +43,27 @@ issues=Issues
cancel=Abbrechen
[status]
page_not_found=Seite nicht gefunden
internal_server_error=Interner Serverfehler
[install]
install=Installation
title=Installationsschritte für den ersten Start
docker_helper=Wenn Gogs innerhalb Docker läuft, lesen Sie sich bitte den <a target="_blank" href="%s">Leitfaden</a> genau durch, bevor Sie irgendwas auf dieser Seite ändern!
requite_db_desc=Gogs benötigt MySQL, PostgreSQL, SQLite3 oder TiDB.
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!
requite_db_desc=Gogs benötigt MySQL, PostgreSQL, SQLite3 oder TiDB (per MySQL-Protokoll)
db_title=Datenbankeinstellungen
db_type=Datenbanktyp
host=Host
user=Benutzer
password=Passwort
db_name=Datenbankname
db_schema=Schema
db_helper=Bitte verwenden Sie in MySQL die InnoDB-Engine mit dem Zeichensatz utf8_general_ci.
ssl_mode=SSL-Modus
path=Pfad
sqlite_helper=Der Dateipfad zur SQLite3- oder TiDB-Datenbank. <br>Bitte verwenden Sie einen absoluten Pfad, wenn Gogs als Service gestartet wird.
err_empty_db_path=SQLite3 oder TiDB Datenbankpfad darf nicht leer sein.
err_invalid_tidb_name=Der TiDB Datenbankname darf nicht "." und "-" enthalten.
sqlite_helper=Der Dateipfad zur SQLite3-Datenbank. <br>Bitte verwenden Sie einen absoluten Pfad, wenn Gogs als Service gestartet wird.
err_empty_db_path=SQLite3 Datenbankpfad darf nicht leer sein.
no_admin_and_disable_registration=Sie können die Registrierung nicht deaktivieren, ohne ein Administratorkonto zu erstellen.
err_empty_admin_password=Das Administrator-Passwort darf nicht leer sein.
@@ -75,12 +78,16 @@ domain=Domain
domain_helper=Dies hat Auswirkung auf die SSH Klon-URLs.
ssh_port=SSH Port
ssh_port_helper=Der Port Ihres SSH-Servers. Leer lassen um SSH zu deaktivieren.
use_builtin_ssh_server=Eingebauten SSH-Server verwenden
use_builtin_ssh_server_popup=Starte eingebauten SSH-Server für git-Aufgaben, um es vom System-SSH-Dämon zu trennen.
http_port=HTTP Port
http_port_helper=Auf dieser Port Nummer wird Gogs erreichbar sein.
app_url=Anwendungs-URL
app_url_helper=Dies hat Auswirkung auf die HTTP/HTTPS Klon-URLs und den Inhalt der E-Mails.
log_root_path=Logdateipfad
log_root_path_helper=Verzeichnis in das Logdateien geschrieben werden.
enable_console_mode=Konsolen-Modus einschalten
enable_console_mode_popup=Zusätzlich zum Datei-Modus, zeige Logs auch in der Konsole.
optional_title=Optionale Einstellungen
email_title=E-Mail-Service Einstellungen
@@ -96,6 +103,8 @@ offline_mode=Offline-Modus aktivieren
offline_mode_popup=CDN auch im Produktivmodus deaktivieren. Alle Dateien werden von diesem Server ausgeliefert.
disable_gravatar=Gravatar-Dienst deaktivieren
disable_gravatar_popup=Gravatar und benutzerdefinierte Quellen deaktivieren. Alle Profilbilder werden vom Nutzer hochgeladen oder sind das Standard-Profilbild.
federated_avatar_lookup=Suche nach föderierten Profilbildern einschalten
federated_avatar_lookup_popup=Der Suche nach föderierten Profilbildern die Verwendung von föderierten open source Services basierend auf libravatar erlauben.
disable_registration=Registrierung deaktivieren
disable_registration_popup=Registrierung neuer Benutzer deaktivieren. Nur Administratoren können Benutzerkonten anlegen.
enable_captcha=Captcha aktivieren
@@ -114,7 +123,10 @@ sqlite3_not_available=Ihre Gogs-Version unterstützt SQLite3 nicht. Bitte laden
invalid_db_setting=Datenbankeinstellungen sind nicht korrekt: %v
invalid_repo_path=Repository Verzeichnis ist ungültig: %v
run_user_not_match=Der ausführende Benutzer ist nicht der aktuelle Benutzer: %s -> %s
smtp_host_missing_port=In der Adresse des SMTP Host fehlt die Portnummer.
invalid_smtp_from=SMTP Absender Feld ist nicht gültig: %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
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
@@ -124,6 +136,7 @@ uname_holder=Benutzername oder E-Mail
password_holder=Passwort
switch_dashboard_context=Kontext der Übersichtsseite wechseln
my_repos=Meine Repositories
show_more_repos=Zeige mehr Repositories...
collaborative_repos=Gemeinschaftliche Repositories
my_orgs=Meine Organisationen
my_mirrors=Meine Mirrors
@@ -134,6 +147,7 @@ issues.in_your_repos=In Ihren Repositories
[explore]
repos=Repositories
users=Benutzer
organizations=Organisationen
search=Suche
[auth]
@@ -142,16 +156,19 @@ register_hepler_msg=Haben Sie bereits ein Konto? Jetzt anmelden!
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_mail=Es tut uns leid, die Bestätigung der Registrierungs-E-Mail wurde deaktiviert.
auth_source=Authentifizierungsquelle
local=Lokal
remember_me=Angemeldet bleiben
forgot_password=Passwort vergessen
forget_password=Passwort vergessen?
sign_up_now=Benötigen Sie ein Konto? Registrieren Sie sich jetzt.
confirmation_mail_sent_prompt=Eine neue Bestätigungs-E-Mail wurde an <b>%s</b> gesendet. Bitte kontrollieren Sie Ihr Postfach innerhalb der nächsten %d Stunden, um die Registrierung abzuschließen.
active_your_account=Aktivieren Sie Ihr Konto
prohibit_login=Anmelden verboten
prohibit_login_desc=Ihrem Konto ist es nicht gestattet sich anzumelden. Bitte kontaktieren Sie den Administrator.
resent_limit_prompt=Es tut uns leid, aber Sie haben bereits eine Aktivierungs-E-Mail angefordert. Bitte warten Sie 3 Minuten und probieren Sie es dann nochmal.
has_unconfirmed_mail=Hallo %s, Sie haben eine unbestätigte E-Mail-Adresse (<b>%s</b>). Wenn Sie keine Bestätigungs-E-Mail erhalten haben oder eine neue benötigen, klicken Sie bitte auf den folgenden Button.
resend_mail=Hier klicken, um die Aktivierungs-E-Mail erneut zu versenden
email_not_associate=Diese E-Mail-Adresse ist mit keinem Konto verknüpft.
send_reset_mail=Hier klicken, um die E-Mail zum Passwort-zurücksetzen erneut zu versenden
reset_password=Passwort zurücksetzen
invalid_code=Es tut uns leid, der Bestätigungscode ist abgelaufen oder ungültig.
@@ -159,6 +176,14 @@ reset_password_helper=Hier klicken, um das Passwort zurückzusetzen
password_too_short=Das Passwort muss mindenstens 6 Zeichen lang sein.
non_local_account=Nicht-lokale Konten können Passwörter nicht via Gogs ändern.
login_two_factor=Zwei-Faktor-Authentifizierung
login_two_factor_passcode=PIN
login_two_factor_enter_recovery_code=Geben Sie einen Wiederherstellungscode für die Zwei-Faktor-Authentifizierung ein
login_two_factor_recovery=Zwei-Faktor-Wiederherstellung
login_two_factor_recovery_code=Wiederherstellungscode
login_two_factor_enter_passcode=Geben Sie die Zwei-Faktor-Authentifizierungs PIN ein
login_two_factor_invalid_recovery_code=Der Wiederherstellungscode wurde schon benutzt oder ist nicht gültig.
[mail]
activate_account=Bitte aktivieren Sie Ihr Konto
activate_email=Bestätigen Sie Ihre E-Mail-Adresse
@@ -184,9 +209,17 @@ TeamName=Teamname
AuthName=Name der Autorisierung
AdminEmail=Administrator E-Mail
NewBranchName=Neuer Branch Name
CommitSummary=Commit Zusammenfassung
CommitMessage=Commit Nachricht
CommitChoice=Commit Auswahl
TreeName=Dateipfad
Content=Inhalt
require_error=` darf nicht leer sein.`
alpha_dash_error=` kann ausschließlich alphanumerische Zeichen und "-_" enthalten.`
alpha_dash_dot_error=` kann ausschließlich alphanumerische Zeichen und ".-_" enthalten.`
alpha_dash_dot_slash_error=` kann ausschließlich alphanumerische Zeichen und ".-_/" enthalten.`
size_error=` muss die Größe %s haben.`
min_size_error=` muss mindestens %s Zeichen enthalten.`
max_size_error=` darf höchstens %s Zeichen enthalten.`
@@ -203,6 +236,7 @@ org_name_been_taken=Organisationsname ist bereits vergeben.
team_name_been_taken=Teamname ist bereits vergeben.
email_been_used=E-Mail-Adresse wird bereits verwendet.
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_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.
@@ -230,18 +264,18 @@ following=Folge ich
follow=Folgen
unfollow=Nicht mehr folgen
form.name_reserved=Der Benutzername '%s' ist reserviert.
form.name_pattern_not_allowed=Benutzernamen der Form '%s' sind nicht erlaubt.
form.name_not_allowed=Benutzername oder Muster %q ist nicht erlaubt.
[settings]
profile=Profil
password=Passwort
avatar=Profilbild
ssh_keys=SSH-Schlüssel
social=Soziale Konten
applications=Anwendungen
security=Sicherheit
repos=Repositories
orgs=Organisationen
applications=Anwendungen
delete=Konto löschen
uid=Uid
public_profile=Öffentliches Profil
profile_desc=Ihre E-Mail-Adresse ist öffentlich einsehbar und dient dazu, Ihnen Benachrichtigungen bezüglich Ihres Kontos und Aktivitäten auf der Webseite zu schicken.
@@ -256,6 +290,8 @@ change_username_prompt=Diese Änderung wirkt sich auf die Links zu Ihrem Benutze
continue=Weiter
cancel=Abbrechen
lookup_avatar_by_mail=Suche nach Profilbildern via E-Mail
federated_avatar_lookup=Suche nach föderierten Profilbildern
enable_custom_avatar=Benutzerdefiniertes Profilbild aktivieren
choose_new_avatar=Neues Profilbild auswählen
update_avatar=Profilbildeinstellungen aktualisieren
@@ -290,7 +326,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_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
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.
key_name=Schlüsselname
key_content=Inhalt
@@ -305,13 +341,34 @@ no_activity=Keine neuen Aktivitäten
key_state_desc=Dieser Schlüssel wurde in den letzten 7 Tagen verwendet
token_state_desc=Dieses Token wurde in den letzten 7 Tagen benutzt
manage_social=Verknüpfte soziale Konten verwalten
social_desc=Dies ist eine Liste verknüpfter sozialer Konten. Bitte entfernen Sie alle Verknüpfungen, die Ihnen nicht bekannt sind.
unbind=Verknüpfung entfernen
unbind_success=Die Verknüpfung zum sozialen Konto wurde entfernt.
two_factor=Zwei-Faktor-Authentifizierung
two_factor_status=Status:
two_factor_on=Ein
two_factor_off=Aus
two_factor_enable=Aktivieren
two_factor_disable=Deaktivieren
two_factor_view_recovery_codes=Betrachten und verwahren Sie <a href="%s%s">Ihre Wiederherstellungscodes</a> an einem sicheren Ort. Sie können diese als Passwort-Code nutzen, auch wenn Sie den Zugriff zu Ihrer Authentifizierungsanwendung verloren haben.
two_factor_http=Für HTTP/HTTPS-Operationen können Sie keine schlichten Benutzernamen und Passwörter mehr nutzen. Bitte erstellen und benutzen Sie ein <a href="%[1]s%[2]s">Persönliches Zugriffs-Token</a> als Ihre Anmeldeinformation, z.B. <code>%[3]s</code>.
two_factor_enable_title=Zwei-Faktor-Authentifizierung aktivieren
two_factor_scan_qr=Bitte benutzen Sie Ihre Authentifizierungsanwendung, um das Bild zu scannen:
two_factor_or_enter_secret=Oder geben Sie Ihren Geheim-Code ein:
two_factor_then_enter_passcode=Geben Sie die PIN ein:
two_factor_verify=Bestätigen
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_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_desc=Wiederherstellungscodes sind dazu gedacht, verwendet zu werden, wenn Sie vorübergehend keinen Zugriff zu Ihrer Authentifizierungsanwendung haben. Jeder Wiederherstellungscode kann nur einmal verwendet werden. <b>Bitte bewahren Sie diese Codes an einem sicheren Ort auf</b>.
two_factor_regenerate_recovery_codes=Wiederherstellungscodes neu generieren
two_factor_regenerate_recovery_codes_error=Das erneute Generieren der Wiederherstellungscodes ist fehlgeschlagen: %v
two_factor_regenerate_recovery_codes_success=Die neuen Wiederherstellungscodes wurden erfolgreich generiert!
two_factor_disable_title=Zwei-Faktor-Authentifizierung deaktivieren
two_factor_disable_desc=Das Sicherheitsniveau Ihres Kontos wird deutlich reduziert sein, nachdem die Zwei-Faktor-Authentifizierung deaktiviert wurde. Möchten Sie fortfahren?
two_factor_disable_success=Die Zwei-Faktor-Authentifizierung wurde erfolgreich deaktiviert!
manage_access_token=Verwaltung persönlicher Zugangs-Token
generate_new_token=Neuen 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.
new_token_desc=Jeder Token erlaubt vollen Zugriff auf ihr Konto.
token_name=Token-Name
@@ -321,6 +378,16 @@ delete_token=Löschen
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?
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.leave_title=Organisation verlassen
orgs.leave_desc=Sie verlieren den Zugriff auf alle Repositories und Teams nach dem Verlassen der Organisation. Möchten Sie fortfahren?
repos.leave=Verlassen
repos.leave_title=Repository verlassen
repos.leave_desc=Der Zugang zum Repository wird verloren gehen, wenn Sie es verlassen. Möchten Sie fortfahren?
repos.leave_success=Sie haben das Repository '%s' erfolgreich verlassen!
delete_account=Konto löschen
delete_prompt=Diese Aktion wird Ihr Konto dauerhaft löschen und kann <strong>NICHT</strong> rückgängig gemacht werden!
@@ -333,16 +400,18 @@ owner=Besitzer
repo_name=Repository-Name
repo_name_helper=Ein guter Repository-Name besteht gewöhnlich aus kurzen, leicht zu merkenden und eindeutigen Schlüsselworten.
visibility=Sichtbarkeit
unlisted=Ungelistet
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_fork_helper=(Eine Änderung dieses Wertes wirkt sich auf alle Forks aus)
clone_helper=Sie brauchen Hilfe beim Klonen? Öffnen Sie die <a target="_blank" href="%s">Hilfe</a>!
clone_helper=Brauchen Sie Hilfe beim Klonen? Hier gibt es <a target="_blank" href="%s">Hilfe</a>!
fork_repo=Repository forken
fork_from=Fork von
fork_visiblity_helper=Die Sichtbarkeit von geforkten Repositories ist nicht veränderbar.
repo_desc=Beschreibung
repo_lang=Sprache
repo_lang_helper=Wählen Sie eine .gitignore-Datei aus
repo_gitignore_helper=Wählen Sie eine .gitignore Vorlage aus
license=Lizenz
license_helper=Wählen Sie eine Lizenz aus
readme=Readme
@@ -355,27 +424,30 @@ mirror_prune_desc=Entferne alle Verweise auf nicht mehr existierende entfernte R
mirror_interval=Mirror-Intervall (in Stunden)
mirror_address=Mirror-Adresse
mirror_address_desc=Bitte die nötigen Zugangsdaten in die Adresse mit aufnehmen.
mirror_last_synced=Zuletzt synchronisiert
watchers=Beobachter
stargazers=In Favoriten von
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.name_reserved=Repository-Name '%s' ist reserviert.
form.name_pattern_not_allowed=Repository-Namen der Form '%s' sind nicht erlaubt.
form.name_not_allowed=Repository name or pattern %q is not allowed.
need_auth=Authorisierung benötigt
migrate_type=Migrationstyp
migrate_type_helper=Dieses Repository wird ein <span class="text blue">Mirror</span> sein
migrate_repo=Repository migrieren
migrate.clone_address=Adresse kopieren
migrate.clone_address_desc=Dies kann eine HTTP/HTTPS/GIT URL oder ein lokaler Serverpfad sein.
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.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.clone_address_resolved_to_blocked_local_address=Klonadresse in eine lokale Netzwerkadresse aufgelöst, die implizit blockiert ist.
migrate.failed=Fehler bei Migration: %v
mirror_from=Mirror von
forked_from=geforkt von
fork_from_self=Sie können kein Repository forken, das Ihnen gehört!
copy_link=Kopieren
copy_link_success=Kopiert!
copy_link_error=Drücken Sie ⌘-C oder Strg-C zum Kopieren
@@ -391,9 +463,9 @@ quick_guide=Kurzanleitung
clone_this_repo=Dieses Repository klonen
create_new_repo_command=Erstellen Sie ein neues Repository mittels der Kommandozeile
push_exist_repo=Bestehendes Repository von der Kommandozeile pushen
repo_is_empty=Dieses Repository ist leer. Bitte kommen Sie später wieder!
bare_message=Dieses Repository hat noch keinen Inhalt.
code=Code
files=Dateien
branch=Branch
tree=Struktur
filter_branch_and_tag=Nach Branch oder Tag filtern
@@ -404,12 +476,63 @@ pulls=Pull-Requests
labels=Label
milestones=Meilensteine
commits=Commits
git_branches=Branches
releases=Releases
file_raw=Originalformat
file_history=Verlauf
file_view_raw=Ansicht im Originalformat
file_permalink=Permalink
file_too_large=Diese Datei ist zu groß zum Anzeigen
video_not_supported_in_browser=Ihr Browser unterstützt HTML5 Video-Tags nicht.
branches.overview=Übersicht
branches.active_branches=Aktive Branches
branches.stale_branches=Alte Branches
branches.all=Alle Branches
branches.updated_by=Aktualisiert %[1]s von %[2]s
branches.change_default_branch=Ändere Standard-Branch
editor.new_file=Neue Datei
editor.upload_file=Datei hochladen
editor.edit_file=Datei bearbeiten
editor.preview_changes=Vorschau der Änderungen
editor.cannot_edit_non_text_files=Nicht-Text Dateien können nicht bearbeitet werden
editor.edit_this_file=Datei bearbeiten
editor.must_be_on_a_branch=Sie müssen sich in einem Branch befinden, um Änderungen an dieser Datei vorzuschlagen oder vorzunehmen
editor.fork_before_edit=Um die Datei zu bearbeiten, müssen Sie das Repository forken
editor.delete_this_file=Datei löschen
editor.must_have_write_access=Du musst Schreibzugriff haben, um Änderungen an dieser Datei vorzuschlagen oder vorzunehmen
editor.file_delete_success=Die Datei '%s' wurde erfolgreich gelöscht!
editor.name_your_file=Dateinamen eingeben...
editor.filename_help=Um einen Ordner hinzuzufügen, gib den Namen ein und drücke /. Um einen Ordner zu entfernen, gehe zum Anfang des Feldes und drücke auf die Rücktaste.
editor.or=oder
editor.cancel_lower=abbrechen
editor.commit_changes=Änderungen einchecken
editor.add_tmpl=Hinzufügen von '%s/<filename>'
editor.add='%s' hinzufügen
editor.update='%s' ändern
editor.delete='%s' löschen
editor.commit_message_desc=Eine ausführlichere Beschreibung kann hinzugefügt werden...
editor.commit_directly_to_this_branch=Direkt in den <strong class="branch-name">%s</strong> Branch einchecken.
editor.create_new_branch=Einen <strong>neuen Branch</strong> für diesen Commit erstellen und einen Pull Request starten.
editor.new_branch_name_desc=Neuer Branch Name...
editor.cancel=Abbrechen
editor.filename_cannot_be_empty=Der Dateiname darf nicht leer sein.
editor.branch_already_exists=Branch '%s' existiert bereits in diesem Repository.
editor.directory_is_a_file='%s' im übergeordneten Verzeichnis ist eine Datei und kein Verzeichnis.
editor.file_is_a_symlink=Die Datei '%s' ist ein Symlink, der im Webeditor nicht bearbeitet werden kann.
editor.filename_is_a_directory=Die Datei '%s' existiert bereits als Verzeichnis in diesem Repository.
editor.file_editing_no_longer_exists=Die Datei '%s', welche Sie bearbeiten, existiert in diesem Repository nicht mehr.
editor.file_changed_while_editing=Seit dem Start der Bearbeitung hat sich die Datei geändert. <a target="_blank" href="%s">Hier klicken</a> um die Änderungen zu sehen, oder nochmals <strong>Commit drücken</strong> um die Änderungen zu überschreiben.
editor.file_already_exists=Eine Datei mit dem Namen '%s' existiert bereits in diesem Repository.
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_delete_file=Fehler beim Löschen der Datei '%s'. Fehler: %v
editor.add_subdir=Unterverzeichnis erstellen...
editor.unable_to_upload_files=Fehler beim Hochladen der Dateien zu '%s'. Fehler: %v
editor.upload_files_to_dir=Dateien hochladen nach '%s'
commits.commit_history=Commit Verlauf
commits.commits=Commits
commits.search=Commits durchsuchen
commits.find=Finden
@@ -435,6 +558,11 @@ issues.create=Issue erstellen
issues.new_label=Neues Label
issues.new_label_placeholder=Label-Name...
issues.create_label=Label erstellen
issues.label_templates.title=Lade vordefinierte Label
issues.label_templates.info=Es sind noch keine Label vorhanden. Sie können vordefinierte Label benutzen, oder auf "Neues Label" klicken um eines zu erstellen.
issues.label_templates.helper=Wählen Sie ein Label
issues.label_templates.use=Dieses Label Set benutzen
issues.label_templates.fail_to_load_file=Fehler beim Laden der Label Template Datei '%s': %v
issues.open_tab=%d offen
issues.close_tab=%d geschlossen
issues.filter_label=Label
@@ -462,7 +590,8 @@ issues.next=Nächste
issues.open_title=Offen
issues.closed_title=Geschlossen
issues.num_comments=%d Kommentare
issues.commented_at=`hat <a id="%[1]s" href="#%[1]s">%[2]s</a> kommentiert`
issues.commented_at=`kommentierte <a href="#%s">%s</a>`
issues.delete_comment_confirm=Sind Sie sich sicher, dass Sie diesen Kommentar löschen wollen?
issues.no_content=Hier gibt es bis jetzt noch keinen Inhalt.
issues.close_issue=Schließen
issues.close_comment_issue=Kommentieren und schließen
@@ -475,8 +604,7 @@ issues.commit_ref_at=`hat dieses Issue <a id="%[1]s" href="#%[1]s">%[2]s</a> aus
issues.poster=Ersteller
issues.collaborator=Mitarbeiter
issues.owner=Besitzer
issues.sign_up_for_free=Kostenlos anmelden
issues.sign_in_require_desc=um dieser Diskussion beizutreten. Haben Sie bereits ein Konto? <a href="%s">Anmelden um zu kommentieren</a>
issues.sign_in_require_desc=<a href="%s">Anmelden</a>, um an der Diskussion teilzunehmen.
issues.edit=Bearbeiten
issues.cancel=Abbrechen
issues.save=Speichern
@@ -491,6 +619,8 @@ issues.label_deletion=Label löschen
issues.label_deletion_desc=Das Label wird von allen verknüpften Issues entfernt. Möchten Sie fortfahren?
issues.label_deletion_success=Label wurde erfolgreich gelöscht!
issues.num_participants=%d Beteiligte
issues.attachment.open_tab=`Klicken um "%s" in einem neuen Tab zu öffnen`
issues.attachment.download=`Klicken um "%s" herunterzuladen`
pulls.new=Neuer Pull-Request
pulls.compare_changes=Änderungen vergleichen
@@ -500,6 +630,7 @@ pulls.compare_compare=vergleichen
pulls.filter_branch=Branch filtern
pulls.no_results=Keine Ergebnisse verfügbar.
pulls.nothing_to_compare=Es gibt nichts zu vergleichen, da Base- und Head-Branch gleich sind.
pulls.nothing_merge_base=Es gibt nichts zu vergleichen, da beide Zweige eine komplett unterschiedliche Historie haben.
pulls.has_pull_request=`Es existiert bereits ein Pull-Request zwischen diesen beiden Zielen: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Pull-Request erstellen
pulls.title_desc=möchte %[1]d Commits von <code>%[2]s</code> nach <code>%[3]s</code> zusammenführen
@@ -515,16 +646,21 @@ pulls.is_checking=Die Konfliktprüfung läuft noch. Bitte aktualisieren Sie die
pulls.can_auto_merge_desc=Dieser Pull-Request kann automatisch zusammengeführt werden.
pulls.cannot_auto_merge_desc=Dieser Pull-Request kann nicht automatisch zusammengeführt werden, da es Konflikte gibt.
pulls.cannot_auto_merge_helper=Bitte manuell zusammenführen, um die Konflikte zu lösen.
pulls.create_merge_commit=Erstelle einen Merge-Commit
pulls.rebase_before_merging=Rebase vor dem Zusammenführen
pulls.commit_description=Commit Beschreibung
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.delete_branch=Zweig löschen
pulls.delete_branch_has_new_commits=Zweig kann nicht gelöscht werden, da er noch weitere Commits nach dem Zusammenführen enthält.
milestones.new=Neuer Meilenstein
milestones.open_tab=%d offen
milestones.close_tab=%d geschlossen
milestones.closed=Geschlossen %s
milestones.no_due_date=Kein Fälligkeitsdatum
milestones.open=Offen
milestones.close=Geschlossen
milestones.open=Öffnen
milestones.close=Schließen
milestones.new_subheader=Erstellen Sie Meilensteine, um ihre Issues zu organisieren.
milestones.create=Meilenstein erstellen
milestones.title=Titel
@@ -567,26 +703,61 @@ settings.collaboration.admin=Adminrechte
settings.collaboration.write=Schreibrechte
settings.collaboration.read=Leserechte
settings.collaboration.undefined=Nicht definiert
settings.branches=Branches
settings.branches_bare=Branches leerer Repositories können nicht verwaltet werden. Bitte erst Datei(en) pushen.
settings.default_branch=Standard-Branch
settings.default_branch_desc=Der Standard-Branch gilt als Basis für Commits, Pull-Requests und Online-Bearbeitung.
settings.update=Aktualisieren
settings.update_default_branch_unsupported=Die Änderung des Standard-Branch wird von der Git-Version auf dem Server nicht unterstützt.
settings.update_default_branch_success=Standard-Branch dieses Repositories wurde erfolgreich aktualisiert!
settings.protected_branches=Protected Branches
settings.protected_branches_desc=Schützt Branches vor forcierten Pushes und versehentlichem Löschen. Comitter können freigeschaltet werden.
settings.choose_a_branch=Wählen Sie einen Branch...
settings.branch_protection=Branch-Schutz
settings.branch_protection_desc=Bitte wählen Sie Schutzoptionen für den Branch <b>%s</b>.
settings.protect_this_branch=Diesen Branch schützen
settings.protect_this_branch_desc=Verhindere forcierte Pushes sowie Löschungen.
settings.protect_require_pull_request=Verlange Pull-Request an Stelle von direkten Pushes
settings.protect_require_pull_request_desc=Aktivieren Sie diese Option, um direktes Pushen in diesen Branch zu verhindern. Commits müssen in einen anderen, ungeschützten Branch gepusht werden und dann per Pull-Request in diesen Branch überführt werden.
settings.protect_whitelist_committers=Hinzufügen von Benutzern oder Teams zur Whitelist, die in diesen Branch pushen dürfen
settings.protect_whitelist_committers_desc=Fügt Benutzer oder Teams zur Push-Whitelist dieses Branches hinzu. Auf der Whitelist geführte Benutze können können ohne Prüfung von Pull-Requests pushen.
settings.protect_whitelist_users=Benutzer, die in diesen Branch pushen können
settings.protect_whitelist_search_users=Benutzer suchen
settings.protect_whitelist_teams=Teams, deren Mitglieder in diesen Branch pushen können
settings.protect_whitelist_search_teams=Teams suchen
settings.update_protect_branch_success=Schutzoptionen für diesen Branch wurden erfolgreich aktualisiert!
settings.hooks=Webhooks
settings.githooks=Git-Hooks
settings.basic_settings=Grundeinstellungen
settings.mirror_settings=Mirror Einstellungen
settings.sync_mirror=Jetzt synchronisieren
settings.mirror_sync_in_progress=Mirror Synchronisierung läuft, bitte die Seite in ca. einer Minute neu laden.
settings.site=Offizielle Webseite
settings.update_settings=Einstellungen speichern
settings.change_reponame_prompt=Diese Änderung wirkt sich darauf aus, wie sich Links auf Repositories beziehen.
settings.advanced_settings=Erweiterte Einstellungen
settings.wiki_desc=Wiki aktivieren, damit Benutzer Seiten anlegen können
settings.wiki_desc=Wiki einschalten
settings.use_internal_wiki=Eingebautes Wiki verwenden
settings.allow_public_wiki_desc=Erlaube öffentlichen Zugang zum Wiki, auch wenn das Repository privat ist
settings.use_external_wiki=Externes Wiki verwenden
settings.external_wiki_url=Externe Wiki URL
settings.external_wiki_url_desc=Besucher werden auf diese URL umgeleitet, wenn sie auf den Tab klicken.
settings.issues_desc=Eingebautes einfaches Issue-System verwenden
settings.issues_desc=Issue-Tracker einschalten
settings.use_internal_issue_tracker=Eingebauten Issue-Tracker verwenden
settings.allow_public_issues_desc=Erlaube öffentlichen Zugriff auf Issues, auch wenn das Repository privat ist
settings.use_external_issue_tracker=Externes Issue-System verwenden
settings.external_tracker_url=URL eines externen Issue Trackers
settings.external_tracker_url_desc=Besucher werden auf diese URL umgeleitet, wenn sie auf den Tab klicken.
settings.tracker_url_format=URL-Format des externen Issue-Systems
settings.tracker_issue_style=Namenskonvention des externen Issue-Trackers:
settings.tracker_issue_style.numeric=Numerisch <span class="ui light grey text">(1234)</span>
settings.tracker_issue_style.alphanumeric=Alphanumerisch <span class="ui light grey text">(ABC-123, DEFG-234, ...)</span>
settings.tracker_issue_style.numeric=Numerisch
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.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.allow_rebase_merge=Die Verwendung von Rebase erlauben, um Commits zu mergen
settings.danger_zone=Gefahrenzone
settings.cannot_fork_to_same_owner=Besitzer kann das Repository nicht forken.
settings.new_owner_has_same_repo=Der neue Eigentümer hat bereits ein Repository mit dem gleichen Namen. Bitte wählen Sie einen anderen Namen.
settings.convert=In ein normales Repository umwandeln
settings.convert_desc=Dieser Mirror kann in ein normales Repository umgewandelt werden. Dies kann nicht rückgängig gemacht werden.
@@ -594,12 +765,12 @@ settings.convert_notices_1=- Dieser Vorgang wandelt das Mirror-Repository in ein
settings.convert_confirm=Umwandlung bestätigen
settings.convert_succeed=Das Repository wurde erfolgreich in ein normales Repository umgewandelt.
settings.transfer=Besitz übertragen
settings.transfer_desc=Dieses Repository auf einen anderen Benutzer bzw. eine Organisation in der Sie Admin-Rechte haben übertragen.
settings.transfer_desc=Dieses Repository auf einen anderen Benutzer oder eine Organisation, in der Sie Admin-Rechte haben, übertragen.
settings.transfer_notices_1=- Sie werden keinen Zugriff mehr haben, wenn der neue Besitzer ein individueller Benutzer ist.
settings.transfer_notices_2=- Sie werden weiterhin Zugriff haben, wenn der neue Besitzer eine Organisation ist und Sie einer der Besitzer sind.
settings.transfer_form_title=Bitte geben Sie die folgenden Informationen ein, um die Operation zu bestätigen:
settings.wiki_delete=Wiki-Daten löschen
settings.wiki_delete_desc=Das Löschen von Wiki Daten kann nicht rückgängig gemacht werden. Bitte seien Sie vorsichtig.
settings.wiki_delete_desc=Das Löschen von Wiki-Daten kann nicht rückgängig gemacht werden. Bitte seien Sie vorsichtig.
settings.wiki_delete_notices_1=- Dies löscht und deaktiviert das Wiki für %s
settings.wiki_deletion_success=Repository Wiki Daten erfolgreich gelöscht.
settings.delete=Dieses Repository löschen
@@ -621,20 +792,25 @@ settings.collaborator_deletion_desc=Nach dem Löschen wird dieser Benutzer keine
settings.remove_collaborator_success=Mitarbeiter wurde entfernt.
settings.search_user_placeholder=Benutzer suchen...
settings.org_not_allowed_to_be_collaborator=Eine Organisation kann nicht als Mitarbeiter hinzugefügt werden.
settings.user_is_org_member=Benutzer ist ein Organisationsmitglied und 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.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_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.test_delivery=Senden testen
settings.webhook.test_delivery_desc=Sendet ein simuliertes Push-Ereignis, um die Webhook-Einstellungen zu testen
settings.webhook.test_delivery_success=Test-Webhook wurde zur Auslieferungswarteschlange hinzugefügt. Es kann einige Sekunden dauern, bevor es in der Auslieferungshistorie erscheint.
settings.webhook.redelivery=Erneuter Versand
settings.webhook.redelivery_success=Hook-Task '%s' wurde wieder zur Auslieferungswarteschlange hinzugefügt. Es kann einige Sekunden, bis sich der Auslieferungsstatus in der History aktualisiert hat.
settings.webhook.request=Anfrage
settings.webhook.response=Antwort
settings.webhook.headers=Kopfzeilen
settings.webhook.payload=Nutzdaten
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.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
@@ -644,6 +820,7 @@ settings.add_webhook_desc=Gogs sendet einen <code>POST</code>-Request an die unt
settings.payload_url=Payload URL
settings.content_type=Inhaltstyp
settings.secret=Secret
settings.secret_desc=Das Secret wird im <code>X-Gogs-Signature</code> Header als hexadezimalem SHA256 HMAC Stempel der Nutzlast.
settings.slack_username=Benutzername
settings.slack_icon_url=Icon URL
settings.slack_color=Farbe
@@ -653,8 +830,20 @@ settings.event_send_everything=Ich brauche <strong>alles</strong>.
settings.event_choose=Lass mich auswählen, was ich brauche.
settings.event_create=Erstellen
settings.event_create_desc=Branch/Tag erstellt
settings.event_delete=Löschen
settings.event_delete_desc=Branch/Tag gelöscht
settings.event_fork=Fork
settings.event_fork_desc=Repository geforkt
settings.event_push=Push
settings.event_push_desc=Git push auf ein Repository
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_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_issue_comment=Issue-Kommentar
settings.event_issue_comment_desc=Issue-Kommentar angelegt, geändert oder gelöscht.
settings.event_release=Release
settings.event_release_desc=Release in Repository veröffentlicht.
settings.active=Aktiv
settings.active_helper=Details über das auslösende Ereignis des Webhooks werden ebenfalls mit gesendet
settings.add_hook_success=Webhook hinzugefügt
@@ -664,10 +853,13 @@ settings.delete_webhook=Webhook löschen
settings.recent_deliveries=Letzte Zustellungen
settings.hook_type=Hook Typ
settings.add_slack_hook_desc=Fügen Sie <a href="%s">Slack</a>-Integration zu Ihrem Repository hinzu.
settings.add_discord_hook_desc=Fügen Sie <a href="%s">Discord</a>-Integration zu Ihrem Repository hinzu.
settings.add_dingtalk_hook_desc=<a href="%s">Dingtalk</a>-Integration zu deinem Repository hinzufügen.
settings.slack_token=Token
settings.slack_domain=Domain
settings.slack_channel=Kanal
settings.deploy_keys=Deploy-Schlüssel
settings.deploy_keys_helper=<b>Häufiger Fehler!</b> Wenn Sie öffentliche Schlüssel hinzufügen wollen, gehen Sie zu Ihren <a href="%s%s"> Kontoeinstellungen</a>.
settings.add_deploy_key=Deploy-Schlüssel hinzufügen
settings.deploy_key_desc=Deploy-Schlüssel haben nur lesenden Zugriff. Sie sind nicht identisch mit dem SSH-Schlüssel des persönlichen Kontos.
settings.no_deploy_keys=Sie haben noch keine Deploy-Schlüssel hinzugefügt.
@@ -679,6 +871,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_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.description_desc=Beschreibung des Repository. Maximal 512 Zeichen.
settings.description_length=Verfügbare Zeichen
diff.browse_source=Quellcode durchsuchen
diff.parent=Ursprung
@@ -690,14 +884,13 @@ diff.show_unified_view=Gesamtansicht
diff.stats_desc=<strong> %d geänderte Dateien</strong> mit <strong>%d neuen</strong> und <strong>%d gelöschten</strong> Zeilen
diff.bin=BIN
diff.view_file=Datei anzeigen
diff.file_supressed=Datei-Diff unterdrückt, da es zu groß ist
diff.file_suppressed=Datei-Diff unterdrückt, da er zu groß ist
diff.too_many_files=Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.
release.releases=Releases
release.new_release=Neues Release
release.draft=Entwurf
release.prerelease=Pre-Release
release.stable=Stabil
release.edit=bearbeiten
release.ahead=<strong>%d</strong> Commits zu %s seit diesem Release
release.source_code=Quelltext
@@ -722,6 +915,7 @@ release.deletion=Release löschen
release.deletion_desc=Beim Löschen dieses Releases wird das entsprechende Git-Tag gelöscht. Möchten Sie fortfahren?
release.deletion_success=Release wurde erfolgreich gelöscht!
release.tag_name_already_exist=Ein Release mit diesem Tag existiert bereits.
release.tag_name_invalid=Tag-Name ist nicht gültig.
release.downloads=Downloads
[org]
@@ -743,8 +937,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_permission_desc=Welche Berechtigungsstufe soll das Team haben?
form.name_reserved=Organisationsname '%s' ist bereits vergeben.
form.name_pattern_not_allowed=Organisationsnamen der Form '%s' sind nicht erlaubt.
form.name_not_allowed=Organisationsname oder Muster %q ist nicht zulässig.
form.team_name_not_allowed=Benutzername oder Muster %q ist nicht erlaubt.
settings=Einstellungen
settings.options=Optionen
@@ -816,12 +1010,19 @@ first_page=Erste
last_page=Letzte
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.operations=Operationen
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.operation_name=Name der Operation
dashboard.operation_switch=Wechseln
dashboard.select_operation_to_run=Bitte wählen Sie den auszuführenden Vorgang aus
dashboard.operation_run=Ausführen
dashboard.clean_unbind_oauth=Nicht verbundene OAuths bereinigen
dashboard.clean_unbind_oauth_success=Alle nicht verbundenen OAuth-Tokens wurden gelöscht.
@@ -835,8 +1036,8 @@ dashboard.git_gc_repos=Garbage Collection auf Repositories ausführen
dashboard.git_gc_repos_success=Garbage Collection wurde auf allen Repositories erfolgreich ausgeführt.
dashboard.resync_all_sshkeys=Datei '.ssh/authorized_keys' neu anlegen (Achtung: Schlüssel, die nicht zu Gogs gehören gehen verloren)
dashboard.resync_all_sshkeys_success=Alle öffentlichen Keys wurden erfolgreich neu geschrieben.
dashboard.resync_all_update_hooks=Alle Aktualisierungs-Hooks von Repositories neu anlegen (wird benötigt, wenn der angepasste Konfigurationspfad geändert wurde)
dashboard.resync_all_update_hooks_success=Die Hooks aller Repositories wurden erfolgreich neu angelegt.
dashboard.resync_all_hooks=Synchronisiere pre-receive, update und post-receive Hooks für alle Repositories
dashboard.resync_all_hooks_success=Pre-receive, update und post-receive Hooks aller Repositorien wurden erfolgreich synchronisiert.
dashboard.reinit_missing_repos=Alle Repository-Datensätze mit verloren gegangenen Git-Dateien neu initialisieren
dashboard.reinit_missing_repos_success=Alle Repository-Datensätze, die Git-Dateien verloren haben wurden erfolgreich neu initialisiert.
@@ -889,6 +1090,7 @@ users.edit_account=Konto bearbeiten
users.max_repo_creation=Maximale Anzahl erstellbarer Repositories
users.max_repo_creation_desc=(Auf -1 setzen, um das globale Standardlimit zu verwenden)
users.is_activated=Dieses Konto ist aktiviert
users.prohibit_login=Diesem Konto ist es nicht gestattet sich anzumelden
users.is_admin=Dieses Konto hat Administratorrechte
users.allow_git_hook=Dieses Konto ist berechtigt Git-Hooks zu erstellen
users.allow_import_local=Dieses Konto ist berechtigt, lokale Repositories zu importieren
@@ -910,12 +1112,14 @@ repos.private=Privat
repos.watches=Beobachtungen
repos.stars=Favoriten
repos.issues=Issues
repos.size=Größe
auths.auth_manage_panel=Authentifizierung
auths.auth_sources=Authentifizierungsquelle
auths.new=Neue Quelle hinzufügen
auths.name=Name
auths.type=Typ
auths.enabled=Aktiviert
auths.default=Standard
auths.updated=Aktualisiert
auths.auth_type=Authentifizierungstyp
auths.auth_name=Authentifizierungsname
@@ -924,15 +1128,21 @@ auths.domain=Domain
auths.host=Host
auths.port=Port
auths.bind_dn=DN binden
auths.bind_dn_helper=Sie können "%s" als Platzhalter für den Benutzernamen einsetzen, z.B. DOM\%s
auths.bind_password=Passwort binden
auths.bind_password_helper=Achtung: Das Passwort wird im Klartext gespeichert. Benutzen Sie kein Konto mit hoher Berechtigungsstufe.
auths.user_base=Basis für Benutzersuche
auths.user_dn=Benutzer DN
auths.user_dn=Benutzer-DN
auths.attribute_username=Attribut Benutzername
auths.attribute_username_placeholder=Leer lassen, um den Wert aus dem Anmeldeformular als Benutzernamen zu verwenden.
auths.attribute_name=Attribut Vorname
auths.attribute_name=Vornamenattribut
auths.attribute_surname=Attribut Nachname
auths.attribute_mail=Attribut E-Mail
auths.verify_group_membership=Überprüfen der Gruppenmitgliedschaft
auths.group_search_base_dn=Gruppensuche Basisdomainname
auths.group_filter=Gruppenfilter
auths.group_attribute_contain_user_list=Gruppenattribut, beinhaltet die Benutzerliste
auths.user_attribute_listed_in_group=Benutzerattribut in der Gruppenliste
auths.attributes_in_bind=Hole Attribute im Bind-Kontext
auths.filter=Benutzerfilter
auths.admin_filter=Admin Filter
@@ -946,9 +1156,9 @@ auths.enable_tls=TLS-Verschlüsselung aktivieren
auths.skip_tls_verify=TLS-Prüfung überspringen
auths.pam_service_name=PAM Dienstname
auths.enable_auto_register=Automatische Registrierung aktivieren
auths.tips=Tipps
auths.edit=Authentifizierungseinstellungen bearbeiten
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.update_success=Die Authentifizierungseinstellungen wurden erfolgreich aktualisiert.
auths.update=Authentifizierungseinstellungen aktualisieren
@@ -957,86 +1167,187 @@ auths.delete_auth_title=Authentifizierung löschen
auths.delete_auth_desc=Diese Authentifizierung wird gelöscht. Möchten Sie fortfahren?
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.login_source_exist=Login-Quelle '%s' ist bereits vorhanden.
auths.github_api_endpoint=API Endpunkt
config.not_set=(nicht festgelegt)
config.server_config=Serverkonfiguration
config.app_name=Anwendungsname
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.brand_name=Markenname
config.run_user=Ausführender Benutzer
config.run_mode=Laufzeit-Modus
config.repo_root_path=Repository-Verzeichnis
config.static_file_root_path=Verzeichnis für statische Dateien
config.log_file_root_path=Log-Verzeichnis
config.script_type=Skript-Typ
config.reverse_auth_user=Nutzer bei Reverse-Authentifizierung
config.server.external_url=Externe URL
config.server.domain=Domäne
config.server.protocol=Protokoll
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_enabled=Aktiviert
config.ssh_start_builtin_server=Eingebauten Server starten
config.ssh_domain=Domain
config.ssh_port=Port
config.ssh_listen_port=Listen Port
config.ssh_root_path=Verzeichnis
config.ssh_key_test_path=Schlüssel-Test-Pfad
config.ssh_keygen_path=Keygen ('ssh-keygen') Pfad
config.ssh_minimum_key_size_check=Prüfung der Mindestschlüssellänge
config.ssh_minimum_key_sizes=Minimale Schlüssellängen
config.ssh.enabled=Aktiviert
config.ssh.domain=Exponierte Domain
config.ssh.port=Exponierter Port
config.ssh.root_path=Wurzelpfad
config.ssh.keygen_path=Keygenpfad
config.ssh.key_test_path=Schlüsseltestpfad
config.ssh.minimum_key_size_check=Prüfung der Mindestschlüssellänge
config.ssh.minimum_key_sizes=Mindestschlüssellängen
config.ssh.rewrite_authorized_keys_at_start=Beim Start "authorized_keys" umschreiben
config.ssh.start_builtin_server=Eingebauten Server starten
config.ssh.listen_host=Listen-Host
config.ssh.listen_port=Listen-Port
config.ssh.server_ciphers=Serverchiffren
config.ssh.server_macs=Server MACs
config.repo_config=Repository-Konfiguration
config.repo.root_path=Wurzelpfad
config.repo.script_type=Skript-Typ
config.repo.ansi_chatset=ANSI-Zeichensatz
config.repo.force_private=Privat erzwingen
config.repo.max_creation_limit=Maximales Erstellungslimit
config.repo.preferred_licenses=Bevorzugte Lizenzen
config.repo.disable_http_git=HTTP-Git deaktivieren
config.repo.enable_local_path_migration=Lokale Pfadmigration aktivieren
config.repo.enable_raw_file_render_mode=Darstellen von Roh-Dateien aktivieren
config.repo.commits_fetch_concurrency=Anzahl gleichzeitiger Commit-/Fetch-Prozesse
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_type=Typ
config.db_host=Host
config.db_name=Name
config.db_user=Benutzer
config.db_ssl_mode=SSL-Modus
config.db_ssl_mode_helper=(nur für "postgres")
config.db_path=Verzeichnis
config.db_path_helper=(für "sqlite3" und "tidb")
config.service_config=Service-Konfiguration
config.register_email_confirm=E-Mail-Bestätigung bei Registrierung
config.disable_register=Registrierung deaktivieren
config.show_registration_button=Schaltfläche Registrieren anzeigen
config.require_sign_in_view=Ansehen erfordert Anmeldung
config.mail_notify=E-Mail-Benachrichtigung
config.disable_key_size_check=Prüfung der Mindestschlüssellänge deaktiveren
config.enable_captcha=Captcha aktivieren
config.active_code_lives=Aktivierungscode Lebensdauer
config.reset_password_code_lives=Passwortcode Lebensdauer
config.webhook_config=Webhook-Konfiguration
config.queue_length=Warteschlangenlänge
config.deliver_timeout=Zeitlimit für Zustellung
config.skip_tls_verify=TLS verifikation überspringen
config.mailer_config=Mailer-Konfiguration
config.mailer_enabled=Aktiviert
config.mailer_disable_helo=HELO Deaktivieren
config.mailer_name=Name
config.mailer_host=Host
config.mailer_user=Benutzer
config.send_test_mail=Test-E-Mail senden
config.test_mail_failed=Das Senden der Test-E-Mail an '%s': %v ist fehlgeschlagen
config.test_mail_sent=Test-E-Mail wurde an '%s' gesendet.
config.oauth_config=OAuth-Konfiguration
config.oauth_enabled=Aktiviert
config.cache_config=Cache-Konfiguration
config.cache_adapter=Cache-Adapter
config.cache_interval=Cache-Intervall
config.cache_conn=Cache-Anbindung
config.db.type=Typ
config.db.host=Host
config.db.name=Name
config.db.schema=Schema
config.db.schema_helper=(nur für "postgres")
config.db.user=Benutzer
config.db.ssl_mode=SSL-Modus
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.security_config=Sicherheitskonfiguration
config.security.login_remember_days=Anzahl Tage zum Speichern des Logins
config.security.cookie_remember_name=Cookie merken
config.security.cookie_username=Benutzernamen-Cookie
config.security.cookie_secure=Sicheres Cookie aktivieren
config.security.reverse_proxy_auth_user=Reverse-Proxy-Authentifizierungs-Header
config.security.enable_login_status_cookie=Login-Status-Cookie aktivieren
config.security.login_status_cookie_name=Login-Status-Cookie
config.security.local_network_allowlist=Zulassungsliste für lokale Netzwerke
config.email_config=E-Mail-Konfiguration
config.email.enabled=Aktiviert
config.email.subject_prefix=Betreff-Präfix
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.auth_config=Authentifizierungskonfiguration
config.auth.activate_code_lives=Aktivierungscode Lebensdauer
config.auth.reset_password_code_lives=Gültigkeitsdauer Zurücksetzungs-Code
config.auth.require_email_confirm=E-Mail-Bestätigung erforderlich
config.auth.require_sign_in_view=Anmeldung erforderlich
config.auth.disable_registration=Registrierung deaktivieren
config.auth.enable_registration_captcha=Registrierungs-Captcha aktivieren
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.user_config=Benutzerkonfiguration
config.user.enable_email_notify=E-Mail-Benachrichtigung aktivieren
config.session_config=Session-Konfiguration
config.session_provider=Session-Provider
config.provider_config=Provider-Einstellungen
config.cookie_name=Cookie-Name
config.enable_set_cookie=Cookies verwenden
config.gc_interval_time=GC-Intervall
config.session_life_time=Session-Lebensdauer
config.https_only=Nur HTTPS
config.cookie_life_time=Cookie-Lebensdauer
config.session.provider=Anbieter
config.session.provider_config=Anbieter-Konfiguration
config.session.cookie_name=Cookie
config.session.https_only=Nur HTTPS
config.session.gc_interval=GC-Intervall
config.session.max_life_time=Maximale Lebensdauer
config.session.csrf_cookie_name=CSRF-Cookie
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_service=Bildservice
config.disable_gravatar=Gravatar deaktivieren
config.picture.avatar_upload_path=Benutzer-Avatar Upload-Pfad
config.picture.repo_avatar_upload_path=Repository-Avatar Upload-Pfad
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.disable_diff_highlight=Diff-Syntaxhervorhebung ausschalten
config.git.max_diff_lines=Zeilenlimit für Diff (für eine einzelne Datei)
config.git.max_diff_line_characters=Zeichenlimit für Diff (für eine einzelne Datei)
config.git.max_diff_files=Dateilimit für Diff (für einen einzelnen Diff)
config.git.gc_args=GC-Argumente
config.git.migrate_timeout=Zeitlimit für Migration
config.git.mirror_timeout=Zeitlimit zum Spiegeln
config.git.clone_timeout=Clone-Timeout
config.git.pull_timeout=Pull-Timeout
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_mode=Log-Modus
config.log_file_root_path=Log-Verzeichnis
config.log_mode=Modus
config.log_options=Optionen
monitor.cron=Cron-Tasks
monitor.name=Name
@@ -1067,17 +1378,24 @@ notices.delete_success=Systemmitteilungen wurden erfolgreich gelöscht.
create_repo=hat das Repository <a href="%s">%s</a> erstellt
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
compare_commits=Zeige Vergleich für diese %d Commits
transfer_repo=hat Repository <code>%s</code> transferiert an <a href="%s">%s</a>
create_issue=`hat Issue <a href="%s/issues/%s">%s#%[2]s</a> geöffnet`
close_issue=`hat Issue <a href="%s/issues/%s">%s#%[2]s</a> geschlossen`
reopen_issue=`hat Issue <a href="%s/issues/%s">%s#%[2]s</a> wieder geöffnet`
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`
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`
comment_issue=`hat Issue <a href="%s/issues/%s">%s#%[2]s</a> kommentiert`
merge_pull_request=`hat Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> zuammengeführt`
transfer_repo=hat Repository <code>%s</code> transferiert an <a href="%s">%s</a>
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
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
compare_commits=Zeige Vergleich für diese %d Commits
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]
ago=vor
@@ -1099,6 +1417,7 @@ months=%[2]s %[1]d Monaten
years=%[2]s %[1]d Jahren
raw_seconds=Sekunden
raw_minutes=Minuten
raw_hours=Stunden
[dropzone]
default_message=Zum Hochladen hier klicken oder Datei hier ablegen.

1504
conf/locale/locale_en-GB.ini Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1429
conf/locale/locale_fa-IR.ini Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1428
conf/locale/locale_gl-ES.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_hu-HU.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_id-ID.ini Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1428
conf/locale/locale_ko-KR.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -6,10 +6,9 @@ explore=Izpētīt
help=Palīdzība
sign_in=Pierakstīties
sign_out=Izrakstīties
sign_up=Pieteikties
sign_up=Reģistrēties
register=Reģistrēties
website=Mājas lapa
version=Versija
page=Lapa
template=Sagatave
language=Valoda
@@ -44,23 +43,27 @@ issues=Problēmas
cancel=Atcelt
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install]
install=Instalācija
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ā!
requite_db_desc=Gogs nepieciešams MySQL, PostgreSQL, SQLite3 vai TiDB.
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Datu bāzes iestatījumi
db_type=Datu bāzes veids
host=Resursdators
user=Lietotājs
password=Parole
db_name=Datu bāzes nosaukums
db_schema=Schema
db_helper=Nepieciešams izmantot MySQL INNODB dzini ar rakstzīmju kopu utf8_general_ci.
ssl_mode=SSL režīms
path=Ceļš
sqlite_helper=SQLite3 vai TiDB datu bāzēs faila ceļš.<br>Izmantojiet absolūto ceļu, startējot kā servisu.
err_empty_db_path=Nepieciešams norādīt SQLite3 vai TiDB datu bāzes atrašanās vietu.
err_invalid_tidb_name=TiDB datu bāzes nosaukums nevar saturēt simbolus "." un "-".
sqlite_helper=Faila ceļs uz SQLite3 datu bāzi. <br>Norādiet absolūtu ceļu, kad laižat kā servisu.
err_empty_db_path=SQLite3 datu bāzes ceļš nevar būt tukšs.
no_admin_and_disable_registration=Reģistrāciju nevar atslēgt, kamēr nav izveidots administratora konts.
err_empty_admin_password=Administratora kontam ir obligāti jānorāda parole.
@@ -75,12 +78,16 @@ domain=Domēns
domain_helper=Tas ietekmē SSH klonēšanas URL.
ssh_port=SSH ports
ssh_port_helper=Porta numurs, kuru izmanto Jūsu SSH serveris, atstājiet tukšu, ja nevēlaties izmantot SSH.
use_builtin_ssh_server=Izmantot iebūvēto SSH serveri
use_builtin_ssh_server_popup=Startēt iebūvēto SSH serveri Git darbībām, lai atšķirtu no sistēmas SSH servisa.
http_port=HTTP ports
http_port_helper=Porta numurs pēc kura lietojumprogrammai būs iespējams pieslēgties.
app_url=Lietotnes URL
app_url_helper=Tas ietekmē HTTP/HTTPS klonēšanas URL un e-pasta saturā izsūtītās saites.
log_root_path=Žurnalizēšanas direktorija
log_root_path_helper=Direktorija, kurā tiks glabāti žurnāla faili.
enable_console_mode=Iespējot konsoles režīmu
enable_console_mode_popup=Papildus faila režīmam, papildus rakstīt žurnāla ierakstus konsolē.
optional_title=Neobligātie iestatījumi
email_title=E-pasta pakalpojuma iestatījumi
@@ -96,6 +103,8 @@ offline_mode=Iespējot bezsaistes režīmu
offline_mode_popup=Atspējot CDN arī produkcijas režīmā, visi resursu faili tiks piegādāti no servera.
disable_gravatar=Atspējot Gravatar pakalpojumu
disable_gravatar_popup=Atspējot Gravatar un citus avotus, visus avatarus augšupielādēts lietotāji vai izmantos noklusēto attēlu.
federated_avatar_lookup=Iespējot apvienoto profila bilžu meklētāju
federated_avatar_lookup_popup=Iespējot apvienoto profila bilžu meklētāju, lai izmantotu atvērtā koda apvienoto servisu balstītu uz libravatar.
disable_registration=Atspējot lietotāju reģistrāciju
disable_registration_popup=Atspējot lietotāju reģistrāciju, tikai administrators varēs izveidot jaunus lietotāju kontus.
enable_captcha=Iespējot drošības kodu
@@ -114,7 +123,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_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
smtp_host_missing_port=SMTP adresē nav norādīts ports.
invalid_smtp_from=SMTP sūtītāja lauks ir nekorekts: %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
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
@@ -124,6 +136,7 @@ uname_holder=Lietotājvārds vai e-pasts
password_holder=Parole
switch_dashboard_context=Mainīt infopaneļa kontekstu
my_repos=Mani repozitoriji
show_more_repos=Parādīt vairāk repozitorojus...
collaborative_repos=Sadarbības repozitoriji
my_orgs=Manas organizācijas
my_mirrors=Mani spoguļi
@@ -134,6 +147,7 @@ issues.in_your_repos=Jūsu repozitorijos
[explore]
repos=Repozitoriji
users=Lietotāji
organizations=Organizācijas
search=Meklēt
[auth]
@@ -142,22 +156,33 @@ register_hepler_msg=Jau ir konts? Pieraksties 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_mail=Atvainojiet, reģistrācijas e-pasta apstiprināšana ir atspējota.
auth_source=Autentificēšanas avots
local=Local
remember_me=Atcerēties mani
forgot_password=Aizmirsu paroli
forget_password=Aizmirsi paroli?
sign_up_now=Nepieciešams konts? Reģistrējies tagad.
confirmation_mail_sent_prompt=Jauns apstiprināšanas e-pasts ir nosūtīts uz <b>%s</b>, lūdzu, pārbaudies savu e-pasta kontu tuvāko %d stundu laikā, lai pabeigtu reģistrācijas procesu.
active_your_account=Aktivizēt savu kontu
prohibit_login=Aizliegt pieteikšanos
prohibit_login_desc=Ar Jūsu kontu nav atļauts pieteikties, sazinoties ar lapas administratoru.
resent_limit_prompt=Atvainojiet, Jūs sūtījāt aktivizācijas e-pastu pārāk bieži. Lūdzu, gaidiet 3 minūtes.
has_unconfirmed_mail=Sveiki %s, Jums ir neapstiprināta e-pasta adrese (<b>%s</b>). Ja neesat saņēmis apstiprināšanas e-pastu vai Jums ir nepieciešams nosūtīt jaunu, lūdzu, nospiediet pogu, kas atrodas zemāk.
resend_mail=Nospiediet šeit, lai vēlreiz nosūtītu aktivizācijas e-pastu
email_not_associate=Šī e-pasta adrese nav saistīta ar Jūsu kontu.
send_reset_mail=Spiediet šeit, lai nosūtītu paroles maiņas vēstuli uz Jūsu e-pastu
reset_password=Atjaunot savu paroli
invalid_code=Atvainojiet, Jūsu apstiprināšanas kodam ir beidzies derīguma termiņš vai arī tas ir nepareizs.
reset_password_helper=Nospiediet šeit, lai atjaunotu paroli
password_too_short=Paroles garums nedrīkst būt mazāks par 6.
non_local_account=Non-local accounts cannot change passwords through Gogs.
non_local_account=Tikai lokālie konti var nomainīt savu paroli Gogs.
login_two_factor=Divu faktoru autentifikācija
login_two_factor_passcode=Autentifikācijas kods
login_two_factor_enter_recovery_code=Ievadiet divu faktoru atjaunošanas kodu
login_two_factor_recovery=Divu faktoru atjaunošana
login_two_factor_recovery_code=Atjaunošanas kods
login_two_factor_enter_passcode=Ievadiet divu faktoru kodu
login_two_factor_invalid_recovery_code=Atjaunošanas kods jau ir izmantots vai nav pareizs.
[mail]
activate_account=Lūdzu, aktivizējiet savu kontu
@@ -184,9 +209,17 @@ TeamName=Komandas nosaukums
AuthName=Autorizācijas nosaukums
AdminEmail=Admin e-pasta adrese
NewBranchName=Jauna atzara nosaukums
CommitSummary=Revīzijas kopsavilkums
CommitMessage=Revīzijas ziņojums
CommitChoice=Revīzijas izvēle
TreeName=Faila ceļš
Content=Saturs
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_dot_error=` drīkst saturēt tikai latīņu alfabēta burtus, ciparus, domuzīmes (-_) vai punktu.`
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.`
min_size_error=` jabūt vismaz %s simbolu garumā.`
max_size_error=` jabūt ne mazāk kā %s simbolu garumā.`
@@ -203,6 +236,7 @@ org_name_been_taken=Organizācijas nosaukums ir jau aizņemts.
team_name_been_taken=Komandas nosaukums ir jau aizņemts.
email_been_used=E-pasta adrese jau tiek izmantota.
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_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.
@@ -220,7 +254,7 @@ org_still_own_repo=Šī organizācija ir vismaz viena repozitorija īpašnieks,
target_branch_not_exist=Mērķa atzars neeksistē
[user]
change_avatar=Change your avatar
change_avatar=Mainīt profila attēlu
join_on=Pievienojās
repositories=Repozitoriji
activity=Publiskā aktivitāte
@@ -230,18 +264,18 @@ following=Seko
follow=Sekot
unfollow=Nesekot
form.name_reserved=Lietotāja vārds '%s' jau ir aizņemts.
form.name_pattern_not_allowed=Lietotāja vārds '%s' nav atļauts.
form.name_not_allowed=User name or pattern %q is not allowed.
[settings]
profile=Profils
password=Parole
avatar=Profila attēls
ssh_keys=SSH atslēgas
social=Sociālie konti
applications=Lietotnes
security=Drošība
repos=Repozitoriji
orgs=Organizācijas
applications=Lietotnes
delete=Dzēst kontu
uid=Lietotāja ID
public_profile=Publiskais profils
profile_desc=Jūsu e-pasta adrese ir publiska un tiks izmantota, lai nosūtītju Jums paziņojumus, kas saistīti ar Jūsu kontu vai darbībām veiktām caur šo mājas lapu.
@@ -256,6 +290,8 @@ change_username_prompt=Šī izmaiņa ietekmēs saites, kas norāda uz Jūsu kont
continue=Turpināt
cancel=Atcelt
lookup_avatar_by_mail=Meklēt profila bildes pēc e-pasta
federated_avatar_lookup=Apvienotais profila bilžu meklētājs
enable_custom_avatar=Iespējot maināmu profila attēlu
choose_new_avatar=Izvēlēties jaunu profila attēlu
update_avatar=Saglabāt profila bildi
@@ -305,10 +341,31 @@ no_activity=Nav nesenas aktivitātes
key_state_desc=Šī atslēga tika izmantota pēdējo 7 dienu laikā
token_state_desc=Šis talons tika izmantots pēdējo 7 dienu laikā
manage_social=Pārvaldīt piesaistītos sociālos kontus
social_desc=Šeit tiek attēloti visi sociālie konti, kas ir piesaistīti Jūsu kontam. Dzēsiet visus, kurus Jūs neatpazīstat.
unbind=Atsaistīt
unbind_success=Sociālais konts tika atsaistīts.
two_factor=Divu faktoru autentifikācija
two_factor_status=Statuss:
two_factor_on=Ieslēgts
two_factor_off=Izslēgts
two_factor_enable=Iespējot
two_factor_disable=Atspējot
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=HTTP/HTTPS darbībām vairs nav iespējams izmantot tikai lietotāja vārdu un paroli. Izveidojiet un izmantojiet <a href="%[1]s%[2]s">Personīgo piekļuves talonu</a> kā pilnvaru, piemēram, <code>%[3]s</code>.
two_factor_enable_title=Iespējot divu faktoru autentifikāciju
two_factor_scan_qr=Please use your authentication application to scan the image:
two_factor_or_enter_secret=Vai ievadiet noslēpumu:
two_factor_then_enter_passcode=Pēc tam ievadiet kodu:
two_factor_verify=Pārbaudīt
two_factor_invalid_passcode=Ievadītais piekļuves kods nav derīgs. Lūdzu mēģiniet vēlreiz!
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_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_regenerate_recovery_codes=Regenerate Recovery Codes
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_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_success=Divu faktoru autentificēšana ir atspējota!
manage_access_token=Pārvaldīt personīgos piekļuves talonus
generate_new_token=Ģenerēt jaunu talonu
@@ -321,6 +378,16 @@ delete_token=Dzēst
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?
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=Jūs neesat nevienas organizācijas dalībnieks.
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?
repos.leave=Pamest
repos.leave_title=Pamest repozitoriju
repos.leave_desc=Tiks zaudēta piekļuve repozitorijam, kad būsiet to pametis. Vai patiešām vēlaties turpināt?
repos.leave_success=Repozitorijs '%s' veiksmīgi pamests!
delete_account=Dzēst savu kontu
delete_prompt=Šī darbība pilnībā izdzēsīs Jūsu kontu, kā arī tā ir <strong>NEATGRIEZENISKA</strong>!
@@ -333,7 +400,9 @@ owner=Īpašnieks
repo_name=Repozitorija nosaukums
repo_name_helper=Labi repzotoriju nosaukumi ir īsi, tādi kurus viegli atcerēties un <strong>unikāli</strong>.
visibility=Redzamība
unlisted=Unlisted
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_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!
@@ -342,40 +411,43 @@ fork_from=Atdalīt no
fork_visiblity_helper=Atdalītam repozitorijam nav iespējams nomainīt tā redzamību
repo_desc=Apraksts
repo_lang=Valoda
repo_lang_helper=Izvēlieties .gitignore failus
repo_gitignore_helper=Izvēlieties .gitignore sagatavi
license=Licence
license_helper=Izvēlieties licences failu
readme=LasiMani
readme_helper=Izvēlieties faila LasiMani sagatavi
auto_init=Inicializēt šo repozitoriju ar izvēlētajiem failiem un sagatavi
create_repo=Izveidot repozitoriju
default_branch=Noklusējuma atzars
mirror_prune=Prune
mirror_prune_desc=Remove any remote-tracking references that no longer exist on the remote
default_branch=Noklusētais atzars
mirror_prune=Izmest
mirror_prune_desc=Izdzēst visas ārējās atsauces, kas ārējā repozitorijā vairs neeksistē
mirror_interval=Spoguļošanas intervāls (stundās)
mirror_address=Spoguļa adrese
mirror_address_desc=Lūdzu iekļaujiet adresē nepieciešamo lietotājvārdu/paroli.
mirror_last_synced=Pēdējo reizi sinhronizēts
watchers=Novērotāji
stargazers=Zvaigžņdevēji
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.name_reserved=Repozitorija nosaukums '%s' ir rezervēts.
form.name_pattern_not_allowed=Repozitorija nosaukums '%s' nav atļauts.
form.name_not_allowed=Repository name or pattern %q is not allowed.
need_auth=Nepieciešama autorizācija
migrate_type=Migrācijas veids
migrate_type_helper=Šis repozitorijs būs <span class="text blue">spogulis</span>
migrate_repo=Migrēt repozitoriju
migrate.clone_address=Klonēšanas adrese
migrate.clone_address_desc=Tas var būt HTTP/HTTPS/GIT URL vai ceļš uz lokālā servera.
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.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.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
mirror_from=spogulis no
forked_from=atdalīts no
fork_from_self=Nav iespējams atdalīt repozitoriju, kuram esat īpašnieks!
copy_link=Kopēt
copy_link_success=Nokopēts!
copy_link_error=Nospiediet ⌘-C vai Ctrl-C, lai nokopētu
@@ -391,9 +463,9 @@ quick_guide=Īsa pamācība
clone_this_repo=Klonēt šo repozitoriju
create_new_repo_command=Izveidot jaunu repozitoriju komandrindā
push_exist_repo=Nosūtīt izmaiņas no komandrindas eksistējošam repozitorijam
repo_is_empty=Šis repozitorijs ir tukšs, apskatiet atkal vēlāk!
bare_message=This repository does not have any content yet.
code=Kods
files=Faili
branch=Atzars
tree=Koks
filter_branch_and_tag=Filtrēt atzarus vai tagus
@@ -404,12 +476,63 @@ pulls=Izmaiņu pieprasījumi
labels=Etiķetes
milestones=Atskaites punkti
commits=Revīzijas
git_branches=Atzari
releases=Laidieni
file_raw=Neapstrādāts
file_history=Vēsture
file_view_raw=Rādīt neapstrādātu
file_permalink=Patstāvīgā saite
file_too_large=Šis fails ir par lielu, lai to parādītu
video_not_supported_in_browser=Jūsu pārlūks neatbalsta HTML5 video.
branches.overview=Pārskats
branches.active_branches=Aktīvie atzari
branches.stale_branches=Pamests atzars
branches.all=Visi atzari
branches.updated_by=%[2]s atjaunoja %[1]s
branches.change_default_branch=Mainīt noklusēto atzaru
editor.new_file=Jauns fails
editor.upload_file=Augšupielādēt failu
editor.edit_file=Labot failu
editor.preview_changes=Priekšskatīt izmaiņas
editor.cannot_edit_non_text_files=Nevar rediģēt failus, kas nav teksta faili
editor.edit_this_file=Rediģēt šo failu
editor.must_be_on_a_branch=Ir jābūt izvēlētam atzaram, lai varētu veikt vai piedāvāt izmaiņas šim failam
editor.fork_before_edit=Lai varētu labot failu ir nepieciešams atdalīt repozitoriju
editor.delete_this_file=Dzēst šo failu
editor.must_have_write_access=Jums ir jābūt rakstīšanas tiesībām, lai varētu veikt vai piedāvāt izmaiņas šim failam
editor.file_delete_success=Fails '%s' ir veiksmīgi izdzēsts!
editor.name_your_file=Ievadiet faila nosaukumu...
editor.filename_help=Lai pievienotu direktoriju, ierakstiet tās nosaukumu un nospiediet /. Lai noņemtu direktoriju, ielieciet kursoru pirms faila nosaukuma un nospiediet atpakaļatkāpes taustiņu.
editor.or=vai
editor.cancel_lower=atcelt
editor.commit_changes=Pabeigt revīziju
editor.add_tmpl=Pievienot '%s/<filename>'
editor.add=Pievienot '%s'
editor.update=Atjaunināt '%s'
editor.delete=Dzēst '%s'
editor.commit_message_desc=Pievienot neobligātu paplašinātu aprakstu...
editor.commit_directly_to_this_branch=Apstiprināt revīzijas izmaiņas atzarā <strong class="branch-name">%s</strong>.
editor.create_new_branch=Izveidot <strong>jaunu atzaru</strong> un izmaiņu pieprasījumu šai revīzijai.
editor.new_branch_name_desc=Jaunā atzara nosaukums...
editor.cancel=Atcelt
editor.filename_cannot_be_empty=Nav ievadīts faila nosaukums.
editor.branch_already_exists=Atzars '%s' šajā repozitorijā jau eksistē.
editor.directory_is_a_file=Ieraksts '%s' vecāka ceļā ir fails nevis direktorija šajā repozitorijā.
editor.file_is_a_symlink=Fails '%s" ir norāde, kuru nav iespējams labot no tīmekļa redaktora.
editor.filename_is_a_directory=Faila nosaukums '%s' sakrīt ar direktorijas nosaukumu šajā repozitorijā.
editor.file_editing_no_longer_exists=Fails '%s', ko labojat, vairs neeksistē repozitorijā.
editor.file_changed_while_editing=Faila saturs ir mainījies kopš brīža, kad sākāt to labot. <a target="_blank" href="%s">Nospiediet šeit</a>, lai redzētu kas ir mainījies vai <strong>nospiediet atkārtoti pabeigt revīziju</strong>, lai pārrakstītu izmaiņas.
editor.file_already_exists=Fails ar nosaukumu '%s' repozitorijā jau eksistē.
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_delete_file=Neizdevās dzēst failu '%s', kļūda: %v
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.upload_files_to_dir=Augšupielādēt failus uz direktoriju '%s'
commits.commit_history=Revīziju vēsture
commits.commits=Revīzijas
commits.search=Meklēt revīzijas
commits.find=Meklēt
@@ -435,6 +558,11 @@ issues.create=Pieteikt problēmu
issues.new_label=Jauna etiķete
issues.new_label_placeholder=Etiķetes nosaukums...
issues.create_label=Izveidot etiķeti
issues.label_templates.title=Ielādēt sākotnēji noteikto etiķešu kopu
issues.label_templates.info=Nav definēta neviena etiķete. Nospiediet pogu "Izveidot etiķeti", lai to izveidotu vai izmantojiet zemāk piedāvātās etiķetes.
issues.label_templates.helper=Izvēlieties etiķešu kopu
issues.label_templates.use=Izmantot šo etiķešu kopu
issues.label_templates.fail_to_load_file=Neizdevās ielādēt etiķetes sagataves failu '%s': %v
issues.open_tab=%d atvērti
issues.close_tab=%d aizvērti
issues.filter_label=Etiķete
@@ -462,7 +590,8 @@ issues.next=Nākamā
issues.open_title=Atvērta
issues.closed_title=Slēgta
issues.num_comments=%d komentāri
issues.commented_at=`komentēja <a id="%[1]s" href="#%[1]s">%[2]s</a>`
issues.commented_at=` komentēja <a href="#%s">%s</a>`
issues.delete_comment_confirm=Vai patiešām vēlaties dzēst šo komentāru?
issues.no_content=Vēl nav satura.
issues.close_issue=Aizvērt
issues.close_comment_issue=Komentēt un aizvērt
@@ -475,8 +604,7 @@ issues.commit_ref_at=`pieminēja šo problēmu revīzijā <a id="%[1]s" href="#%
issues.poster=Autors
issues.collaborator=Līdzstrādnieks
issues.owner=Īpašnieks
issues.sign_up_for_free=Pievienojieties
issues.sign_in_require_desc=, lai piedalītos diskusijā. Jau ir konts? <a href="%s">Pierakstieties, lai komentētu</a>
issues.sign_in_require_desc=<a href="%s">Pierakstieties</a>, lai pievienotos šai sarunai.
issues.edit=Labot
issues.cancel=Atcelt
issues.save=Saglabāt
@@ -491,6 +619,8 @@ issues.label_deletion=Etiķetes dzēšana
issues.label_deletion_desc=Dzēšot šo etiķeti, tā tiks noņemta no visām saistītajām problēmām. Vai vēlaties turpināt?
issues.label_deletion_success=Etiķete tika veiksmīgi izdzēsta!
issues.num_participants=%d dalībnieki
issues.attachment.open_tab=`Noklikšķiniet, lai apskatītos "%s" jaunā logā`
issues.attachment.download=`Noklikšķiniet, lai lejupielādētu "%s"`
pulls.new=Jauns izmaiņu pieprasījums
pulls.compare_changes=Salīdzināt izmaiņas
@@ -500,6 +630,7 @@ pulls.compare_compare=salīdzināmais
pulls.filter_branch=Filtrēt atzarus
pulls.no_results=Nekas netika atrasts.
pulls.nothing_to_compare=Nav ko salīdzināt, jo bāzes un salīdzināmie atzari ir vienādi.
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history.
pulls.has_pull_request=`Jau eksistē izmaiņu pieprasījums starp šiem diviem atzariem: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Izveidot izmaiņu pieprasījumu
pulls.title_desc=vēlas sapludināt %[1]d revīzijas no <code>%[2]s</code> uz <code>%[3]s</code>
@@ -515,8 +646,13 @@ pulls.is_checking=Notiek konfliktu pārbaude, mirkli uzgaidiet un atjaunojiet la
pulls.can_auto_merge_desc=Šo izmaiņu pieprasījumu var automātiski saplūdināt.
pulls.cannot_auto_merge_desc=Šis izmaiņu pieprasījums nevar tikt automātiski saplūdināts konfliktu dēļ.
pulls.cannot_auto_merge_helper=Lūdzu sapludiniet manuāli, lai atrisinātu konfliktus.
pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
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.delete_branch=Dzēst atzaru
pulls.delete_branch_has_new_commits=Branch cannot be deleted because it has new commits after mergence.
milestones.new=Jauns atskaites punkts
milestones.open_tab=%d atvērti
@@ -563,30 +699,65 @@ wiki.last_updated=Pēdējo reizi labota %s
settings=Iestatījumi
settings.options=Opcijas
settings.collaboration=Sadarbība
settings.collaboration.admin=Admin
settings.collaboration.write=Write
settings.collaboration.read=Read
settings.collaboration.undefined=Undefined
settings.collaboration.admin=Administrators
settings.collaboration.write=Rakstīšanas
settings.collaboration.read=Skatīšanās
settings.collaboration.undefined=Nedefinētas
settings.branches=Atzari
settings.branches_bare=You cannot manage branches for bare repository. Please push some content first.
settings.default_branch=Noklusētais atzars
settings.default_branch_desc=Noklusētais atzars tiek uzskatīts par pamata atzaru koda revīzijām, izmaiņu pieprasījumiem un tiešsaistes rediģēšanai.
settings.update=Atjaunot
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.protected_branches=Aizsargātie atzari
settings.protected_branches_desc=Protect branches from force pushing, accidental deletion and whitelist code committers.
settings.choose_a_branch=Izvēlēties atzarus...
settings.branch_protection=Atzaru aizsargāšana
settings.branch_protection_desc=Please choose protect options for branch <b>%s</b>.
settings.protect_this_branch=Aizsargāt šo atzaru
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_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_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=Lietotāji, kas var nosūtīt izmaiņas uz šo atzaru
settings.protect_whitelist_search_users=Meklēt lietotajus
settings.protect_whitelist_teams=Teams for which members of them can push to this branch
settings.protect_whitelist_search_teams=Meklēt komandas
settings.update_protect_branch_success=Protect options for this branch has been updated successfully!
settings.hooks=Tīmekļa āķi
settings.githooks=Git āķi
settings.basic_settings=Pamatiestatījumi
settings.mirror_settings=Spoguļa iestatījumi
settings.sync_mirror=Sinhronizēt tagad
settings.mirror_sync_in_progress=Notiek spoguļa sinhronizācija, uzgaidiet aptuveni minūti un atjaunojiet lapu.
settings.site=Oficiālā mājas lapa
settings.update_settings=Mainīt iestatījumus
settings.change_reponame_prompt=Šī izmaiņa ietekmēs saites, kas ir saistītas ar šo repozitoriju.
settings.advanced_settings=Papildu iestatījumi
settings.wiki_desc=Iespējot vikivietni, lai atļautu cilvēkiem rakstīt dokumentus
settings.wiki_desc=Iespējot vikivietnes
settings.use_internal_wiki=Izmantot iebūvēto vikivietni
settings.allow_public_wiki_desc=Atļaut publisko piekļuvi vikivietnei, ja repozitorijs ir privāts
settings.use_external_wiki=Izmantot ārējo vikivietni
settings.external_wiki_url=Ārējās Vikivietnes adrese
settings.external_wiki_url_desc=Apmeklētāji tiks novirzīti uz adresi, kad viņi uzklikšķinās uz cilnes.
settings.issues_desc=Iespējot iebūvētu vieglu problēmu sekotāju
settings.issues_desc=Iespējot problēmu sekotāju
settings.use_internal_issue_tracker=Izmantot iebūvētu vieglu problēmu sekotāju
settings.allow_public_issues_desc=Atļaut publisko piekļuvi problēmām, ja repozitorijs ir privāts
settings.use_external_issue_tracker=Izmantot ārējo problēmu sekotāju
settings.external_tracker_url=Ārējā problēmu sekotāja URL
settings.external_tracker_url_desc=Visitors will be redirected to URL when they click on the tab.
settings.tracker_url_format=Ārējā problēmu sekotāja adreses formāts
settings.tracker_issue_style=External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric=Numeric <span class="ui light grey text">(1234)</span>
settings.tracker_issue_style.alphanumeric=Alphanumeric <span class="ui light grey text">(ABC-123, DEFG-234, ...)</span>
settings.tracker_issue_style=Ārējā problēmu reģistra nosaukumu stils:
settings.tracker_issue_style.numeric=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.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=Ignorēt atstarpju izmaiņas
settings.pulls.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=Bīstamā zona
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner.
settings.new_owner_has_same_repo=Jaunajam īpašniekam jau ir repozitorijs ar šādu nosaukumu.
settings.convert=Konvertēt uz parastu repozitoriju
settings.convert_desc=Šo spoguli ir iespējams konvertēt par parastu repozitoriju. Šī ir neatgriezeniska darbība.
@@ -606,7 +777,7 @@ 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_notices_1=- Šī darbība ir <strong>NEATGRIEZENISKA</strong>.
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=- All forks will become independent after deletion.
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.update_settings_success=Repozitorija opcijas ir veiksmīgi saglabātas.
settings.transfer_owner=Jaunais īpašnieks
@@ -621,20 +792,25 @@ settings.collaborator_deletion_desc=Šim lietotājam pēc dzēšanas vairs nebū
settings.remove_collaborator_success=Līdzstrādnieks tika noņemts.
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.user_is_org_member=Lietotājs ir organizācijas biedrs, kas nevar tikt pievienots kā līdzstrādnieks.
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.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_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.test_delivery=Testa piegāde
settings.webhook.test_delivery_desc=Veikt viltus push-notikuma piegādi lai notestētu Jūsu tīmekļa āķa iestatījumus
settings.webhook.test_delivery_success=Testa web-āķis ir pievienots piegādes rindai. Var paiet dažas sekundes, kamēr tas parādīsies piegāžu vēsturē.
settings.webhook.redelivery=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.request=Pieprasījums
settings.webhook.response=Atbilde
settings.webhook.headers=Galvenes
settings.webhook.payload=Derīgā krava
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.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
@@ -644,6 +820,7 @@ settings.add_webhook_desc=Uz norādīto URL tiks nosūtīts <code>POST</code> pi
settings.payload_url=Vērtuma URL
settings.content_type=Satura tips
settings.secret=Noslēpums
settings.secret_desc=Secret will be sent as SHA256 HMAC hex digest of payload via <code>X-Gogs-Signature</code> header.
settings.slack_username=Lietotājvārds
settings.slack_icon_url=Ikonas URL
settings.slack_color=Krāsa
@@ -653,8 +830,20 @@ settings.event_send_everything=Vēlos saņemt <strong>visu</strong>.
settings.event_choose=Atzīmēt, ko vēlos saņemt.
settings.event_create=Izveidot
settings.event_create_desc=Atzara vai taga izveidošana
settings.event_delete=Dzēst
settings.event_delete_desc=Atzars vai tags izdzēsts
settings.event_fork=Atdalīts
settings.event_fork_desc=Repozitorijs atdalīts
settings.event_push=Izmaiņu nosūtīšana
settings.event_push_desc=Git izmaiņu nosūtīšana uz repozitoriju
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_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_issue_comment=Problēmas komentārs
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Laidiens
settings.event_release_desc=Laidiens publicēts repozitorijā.
settings.active=Aktīvs
settings.active_helper=Tiks nosūtīti notikuma dati, kad nostrādās šis āķis.
settings.add_hook_success=Jauns tīmekļa āķis tika veiksmīgi pievienots.
@@ -664,10 +853,13 @@ settings.delete_webhook=Dzēst tīmekļa āķi
settings.recent_deliveries=Pēdējās piegādes
settings.hook_type=Āķa veids
settings.add_slack_hook_desc=PIevienot <a href="%s">Slack</a> integrāciju Jūsu repozitorijā.
settings.add_discord_hook_desc=Add <a href="%s">Discord</a> integration to your repository.
settings.add_dingtalk_hook_desc=Add <a href="%s">Dingtalk</a> integration to your repository.
settings.slack_token=Talons
settings.slack_domain=Domēns
settings.slack_channel=Kanāls
settings.deploy_keys=Izvietot atslēgas
settings.deploy_keys_helper=<b>Common Gotcha!</b> If you're looking for adding personal public keys, please add them in your <a href="%s%s">account settings</a>.
settings.add_deploy_key=Pievienot izvietošanas atslēgu
settings.deploy_key_desc=Izvietošanas atslēgai ir tikai lasīšanas piekļuve. Tā nav tā pati kā Jūsu personīgā konta SSH atslēga.
settings.no_deploy_keys=Nav pievienota neviena izvietošanas atslēga.
@@ -679,6 +871,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_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.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=Pārlūkot izejas kodu
diff.parent=vecāks
@@ -690,14 +884,13 @@ diff.show_unified_view=Apvienotais skats
diff.stats_desc=<strong>%d mainītis faili</strong> ar <strong>%d papildinājumiem</strong> un <strong>%d dzēšanām</strong>
diff.bin=BIN
diff.view_file=Parādīt failu
diff.file_supressed=File diff supressed because it is too large
diff.too_many_files=Some files were not shown because too many files changed in this diff
diff.file_suppressed=Failā izmaiņas netiks attēlotas, jo tās ir par lielu
diff.too_many_files=Daži faili netika attēloti, jo izmaiņu fails ir pārāk liels
release.releases=Laidieni
release.new_release=Jauns laidiens
release.draft=Melnraksts
release.prerelease=Pirmsizlaides versija
release.stable=Stabila
release.edit=labot
release.ahead=<strong>%d</strong> revīzijas atzarā %s kopš šī laidiena
release.source_code=Izejas kods
@@ -722,6 +915,7 @@ release.deletion=Laidiena dzēšana
release.deletion_desc=Dzēšot šo laidienu tiks dzēsts arī atbilstošs Git tags. Vai vēlaties turpināt?
release.deletion_success=Laidiens tika veiksmīgi dzēsts!
release.tag_name_already_exist=Laidiens ar šādu taga nosaukumu jau eksistē.
release.tag_name_invalid=Nekorekts birkas nosaukams.
release.downloads=Lejupielādes
[org]
@@ -743,8 +937,8 @@ team_name_helper=Šo nosaukumu varēs izmantot, lai pieminētu komandu sarunās.
team_desc_helper=Komandas apraksts
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_pattern_not_allowed=Organizācijas nosaukums '%s' nav atļauts.
form.name_not_allowed=Organization name or pattern %q is not allowed.
form.team_name_not_allowed=Team name or pattern %q is not allowed.
settings=Iestatījumi
settings.options=Opcijas
@@ -816,12 +1010,19 @@ first_page=Pirmā
last_page=Pēdējā
total=Kopā: %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=Statistika
dashboard.operations=Darbības
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.operation_name=Darbības nosaukums
dashboard.operation_switch=Pārslēgt
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=Palaist
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.
@@ -835,8 +1036,8 @@ dashboard.git_gc_repos=Veikt repozitoriju datu sakārtošānu (git gc)
dashboard.git_gc_repos_success=Datu sakārtošana visiem repozitorijiem veiksmīgi pabeigta.
dashboard.resync_all_sshkeys=Pārrakstīt '.ssh/authorized_keys' failu (brīdinājums: ne-Git atslēgas tiks pazaudētas)
dashboard.resync_all_sshkeys_success=Visas publiskās atslēgas tika veiksmīgi pārrakstītas.
dashboard.resync_all_update_hooks=Pārrakstīt visu repozitoriju izmaiņu āķus (nepieciešams, ja tiek mainīta konfigurācijas faila atrašanās vieta)
dashboard.resync_all_update_hooks_success=Visu repozitoriju izmaiņu āķi tika veiksmīgi pārrakstīti.
dashboard.resync_all_hooks=Resync pre-receive, update and post-receive hooks of all repositories
dashboard.resync_all_hooks_success=All repositories' pre-receive, update and post-receive hooks have been resynced successfully.
dashboard.reinit_missing_repos=Atkārtoti inicializēt visus repozitorija ierakstus, kam trūkst Git failu
dashboard.reinit_missing_repos_success=Visi repozitorija ieraksti, kam trūkst Git faili, tika atkārtoti inicializēti.
@@ -889,6 +1090,7 @@ users.edit_account=Labot kontu
users.max_repo_creation=Maksimāls repozitoriju veidošanas limits
users.max_repo_creation_desc=(Uzlikt -1 lai izmantotu globālu limitu pēc noklusējuma)
users.is_activated=Konts ir aktivizēts
users.prohibit_login=Šim kontam ir aizliegts autorizēties
users.is_admin=Šim kontam ir administratora piekļuves tiesības
users.allow_git_hook=Šim kontam ir tiesības pievienot/labot Git āķus
users.allow_import_local=Šim kontam ir tiesības importēt lokālus repozitorijus
@@ -910,20 +1112,23 @@ repos.private=Privāts
repos.watches=Vērošana
repos.stars=Atzīmētās zvaigznītes
repos.issues=Problēmas
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.name=Nosaukums
auths.type=Veids
auths.enabled=Iespējota
auths.default=Default
auths.updated=Atjaunināta
auths.auth_type=Autentifikācijas tips
auths.auth_name=Autentifikācijas nosaukums
auths.security_protocol=Security Protocol
auths.security_protocol=Drošības protokols
auths.domain=Domēns
auths.host=Resursdators
auths.port=Ports
auths.bind_dn=Saistīšanas DN
auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s
auths.bind_password=Saistīšanas parole
auths.bind_password_helper=Brīdinājums: Šī parole tiks saglabāta nešifrētā veidā. Neizmantojiet kontu ar augstām privilēģijām.
auths.user_base=Lietotāja pamatnosacījumi
@@ -933,6 +1138,11 @@ auths.attribute_username_placeholder=Atstājiet tukšu, lai izmantotu lietotājv
auths.attribute_name=Vārda atribūts
auths.attribute_surname=Uzvārda atribūts
auths.attribute_mail=E-pasta atribūts
auths.verify_group_membership=Pārbaudīt grupas piederību
auths.group_search_base_dn=Grupas meklēšanas pamata DN
auths.group_filter=Group Filter
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users
auths.user_attribute_listed_in_group=User Attribute Listed in Group
auths.attributes_in_bind=Nolasīt atribūtus no saistīšanas DN konteksta
auths.filter=Lietotāju filts
auths.admin_filter=Administratoru filtrs
@@ -946,9 +1156,9 @@ auths.enable_tls=Iespējot TLS šifrēšanu
auths.skip_tls_verify=Izlaist TLS verifikāciju
auths.pam_service_name=PAM servisa nosaukums
auths.enable_auto_register=Iespējot automātisko reģistrāciju
auths.tips=Padomi
auths.edit=Labot autentifikācijas iestatījumus
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.update_success=Autentifikācijas iestatījumi tika veiksmīgi saglabāti.
auths.update=Mainīt autentifikācijas iestatījumus
@@ -957,86 +1167,187 @@ auths.delete_auth_title=Autentifikācijas dzēšana
auths.delete_auth_desc=Šī autentifikācija tiks dzēsta, vai vēlaties turpināt?
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.login_source_exist=Pieteikšanās avots '%s' jau eksistē.
auths.github_api_endpoint=API Endpoint
config.not_set=(nav noteikts)
config.server_config=Servera konfigurācija
config.app_name=Lietotnes nosaukums
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.brand_name=Brand name
config.run_user=Izpildes lietotājs
config.run_mode=Izpildes režīms
config.repo_root_path=Repozitoriju glabāšanas vieta
config.static_file_root_path=Statisko failu atrašanās vieta
config.log_file_root_path=Žurnalizēšanas failu glabāšanas vieta
config.script_type=Skripta veids
config.reverse_auth_user=Reversā lietotāja autentifikācija
config.server.external_url=External URL
config.server.domain=Domain
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 konfigurācija
config.ssh_enabled=Iespējots
config.ssh_start_builtin_server=Startēt iebūvēto serveri
config.ssh_domain=Domēns
config.ssh_port=Ports
config.ssh_listen_port=Klausīšanās ports
config.ssh_root_path=Saknes ceļš
config.ssh_key_test_path=Atslēgu pārbaudes ceļš
config.ssh_keygen_path=Keygen ('ssh-keygen') ceļš
config.ssh_minimum_key_size_check=Minimālā atslēgas lieluma pārbaude
config.ssh_minimum_key_sizes=Minimālais atslēgas lielums
config.ssh.enabled=Enabled
config.ssh.domain=Exposed domain
config.ssh.port=Exposed port
config.ssh.root_path=Root path
config.ssh.keygen_path=Keygen path
config.ssh.key_test_path=Key test path
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.repo_config=Repozitorija konfigurācija
config.repo.root_path=Root path
config.repo.script_type=Script type
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=Datu bāzes konfigurācija
config.db_type=Veids
config.db_host=Resursdators
config.db_name=Nosaukums
config.db_user=Lietotājs
config.db_ssl_mode=SSL režīms
config.db_ssl_mode_helper=(tikai PostgreSQL datu bāzei)
config.db_path=Ceļš
config.db_path_helper=(priekš "sqlite3" and "tidb")
config.service_config=Pakalpojuma konfigurācija
config.register_email_confirm=Pieprasīt e-pasta apstiprināšanu
config.disable_register=Atspējot jaunu lietotāju reģistrāciju
config.show_registration_button=Rādīt reģistrēšanās pogu
config.require_sign_in_view=Nepieciešama autorizācija
config.mail_notify=Pasta paziņojumi
config.disable_key_size_check=Atspējot atslēgas minimālā garuma pārbaudi
config.enable_captcha=Iespējot drošības kodu
config.active_code_lives=Aktīvā koda ilgums
config.reset_password_code_lives=Paroles atiestatīšanas koda ilgums
config.webhook_config=Tīkla āķu konfigurācija
config.queue_length=Rindas garums
config.deliver_timeout=Piegādes noildze
config.skip_tls_verify=Izlaist TLS pārbaudi
config.mailer_config=Sūtītāja konfigurācija
config.mailer_enabled=Iespējots
config.mailer_disable_helo=Atspējot HELO
config.mailer_name=Nosaukums
config.mailer_host=Resursdators
config.mailer_user=Lietotājs
config.send_test_mail=Nosūtīt pārbaudes e-pastu
config.test_mail_failed=Neizdevās nosūtīt pārbaudes e-pasta vēstuli uz '%s': %v
config.test_mail_sent=Pārbaudes e-pasta vēstule tika nosūtīta uz '%s'.
config.oauth_config=OAuth konfigurācija
config.oauth_enabled=Iespējota
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.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.security_config=Security configuration
config.security.login_remember_days=Login remember days
config.security.cookie_remember_name=Remember cookie
config.security.cookie_username=Username cookie
config.security.cookie_secure=Enable secure cookie
config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.security.enable_login_status_cookie=Enable login status cookie
config.security.login_status_cookie_name=Login status cookie
config.security.local_network_allowlist=Local network allowlist
config.email_config=Email configuration
config.email.enabled=Enabled
config.email.subject_prefix=Subject prefix
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.auth_config=Authentication configuration
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=Sesijas konfigurācja
config.session_provider=Sesijas nodrošinātājs
config.provider_config=Pakalpojumu sniedzēja konfigurācija
config.cookie_name=Sīkdatnes nosaukums
config.enable_set_cookie=Ļaut izmantot sīkdatnes
config.gc_interval_time=GC laika intervāls
config.session_life_time=Sesijas ilgums
config.https_only=Tikai HTTPS
config.cookie_life_time=Sīkdatņu glabāšanas ilgums
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=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=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=Attēlu konfigurācija
config.picture_service=Lokāli attēli
config.disable_gravatar=Atspējot Gravatar
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=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.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=Žurnalizēšanas konfigurācija
config.log_mode=Žurnalizēšanas veids
config.log_file_root_path=Žurnalizēšanas failu glabāšanas vieta
config.log_mode=Režīms
config.log_options=Opcijas
monitor.cron=Cron uzdevumi
monitor.name=Nosaukums
@@ -1067,17 +1378,24 @@ notices.delete_success=Sistēmas paziņojumi tika veiksmīgi izdzēstas.
create_repo=izveidoja repozitoriju <a href="%s">%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>
compare_commits=Salīdzināt šīs %d revīzijas
transfer_repo=mainīja repozitorija <code>%s</code> īpašnieku uz <a href="%s">%s</a>
create_issue=`reģistrēja problēmu <a href="%s/issues/%s">%s#%[2]s</a>`
close_issue=`slēdza problēmu <a href="%s/issues/%s">%s#%[2]s</a>`
reopen_issue=`atkārtoti atvēra problēmu <a href="%s/issues/%s">%s#%[2]s</a>`
comment_issue=`pievienoja komentāru problēmai <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`izveidoja izmaiņu pieprasījumu <a href="%s/pulls/%s">%s#%[2]s</a>`
close_pull_request=`aizvēra izmaiņu pieprasījumu <a href="%s/pulls/%s">%s#%[2]s</a>`
reopen_pull_request=`atkārtoti atvēra izmaiņu pieprasījumu <a href="%s/pulls/%s">%s#%[2]s</a>`
comment_issue=`pievienoja komentāru problēmai <a href="%s/issues/%s">%s#%[2]s</a>`
merge_pull_request=`sapludināja izmaiņu pieprasījumu <a href="%s/pulls/%s">%s#%[2]s</a>`
transfer_repo=mainīja repozitorija <code>%s</code> īpašnieku uz <a href="%s">%s</a>
create_branch=izveidoja jaunu atzaru <a href="%[1]s/src/%[2]s">%[3]s</a> repozitorijā <a href="%[1]s">%[4]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>
compare_commits=Salīdzināt šīs %d revīzijas
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]
ago=atpakaļ
@@ -1099,6 +1417,7 @@ months=%d mēneši %s
years=%d gadi %s
raw_seconds=sekundes
raw_minutes=minūtes
raw_hours=hours
[dropzone]
default_message=Ievelciet failus šeit vai noklikšķiniet, lai augšupielādētu.

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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_pt-PT.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_ro-RO.ini Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_sk-SK.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_sr-SP.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_sv-SE.ini Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,6 @@ sign_out=Çıkış Yap
sign_up=Kaydol
register=Üye Ol
website=Web sitesi
version=Sürüm
page=Sayfa
template=Şablon
language=Dil
@@ -44,23 +43,27 @@ issues=Sorunlar
cancel=İptal
[status]
page_not_found=Sayfa Bulunamadı
internal_server_error=İç Sunucu Hatası.
[install]
install=Kurulum
title=İlk Kez Çalıştırma İçin Kurulum Adımları
docker_helper=Gogs'u Docker içinde kullanıyorsanız bu sayfada herhangi bir değişiklik yapmadan önce lütfen <a target="_blank" href="%s">kılavuzu</a> dikkatlice okuyunuz!
requite_db_desc=Gogs MySQL, PostgreSQL, SQLite3 veya TiDB gerektirir.
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=Veritabanı Ayarları
db_type=Veritabanı Türü
host=Sunucu
user=Kullanıcı
password=Parola
db_name=Veritabanı Adı
db_schema=Schema
db_helper=Lütfen MySQL için INNODB motorunu utf8_general_ci karakter setiyle kullanın.
ssl_mode=SSL Biçimi
path=Yol
sqlite_helper=SQLite3 veya TiDB veritabanının dosya yolu. <br>Lütfen servis olarak başlatırken mutlak yolu kullanın.
err_empty_db_path=SQLite3 veya TiDB veritabanı yolu boş olamaz.
err_invalid_tidb_name=TiDB veritabanı adında "." ve "-" karakterlerine izin verilmez.
sqlite_helper=SQLite3 veritabanının dosya yolu. <br>Lütfen hizmete başladığınızda kesin yolu kullanın.
err_empty_db_path=SQLite3 veritabanının yolu boş olamaz.
no_admin_and_disable_registration=Bir yönetici hesabı oluşturmadan kullanıcı kaydını devre dışı bırakamazsınız.
err_empty_admin_password=Yönetici parolası boş olamaz.
@@ -75,12 +78,16 @@ domain=Alan Adı
domain_helper=Bu, SSH klon bağlantılarını etkiler.
ssh_port=SSH Portu
ssh_port_helper=SSH sunucunuzun portu kullanılıyor, boş bırakın ya da SSH özelliğini devre dışı bırakın.
use_builtin_ssh_server=Yerleşik SSH sunucusu kullanın
use_builtin_ssh_server_popup=Git işlemlerinde SSH sunucusundan sistem SSH arka plan programından ayrılmaya başlayın.
http_port=HTTP Portu
http_port_helper=Uygulamanın dinleyeceği port.
app_url=Uygulama Bağlantısı
app_url_helper=Bu, HTTP/HTTPS klon bağlantılarını ve e-postadaki bazı kısımları etkiler.
log_root_path=Günlük Dosyaları Yolu
log_root_path_helper=Günlük dosyalarının yazılacağı dizin.
enable_console_mode=Konsol Modunu Etkinleştir
enable_console_mode_popup=Dosya moduna ek olarak , ayrıca konsolun günlüklerini yazdır.
optional_title=İsteğe Bağlı Ayarlar
email_title=E-Posta Servisi Ayarları
@@ -96,6 +103,8 @@ offline_mode=Çevrim Dışı Modu Etkinleştir
offline_mode_popup=CDN'i, üretim modunda bile devre dışı bırak, tüm kaynak dosyaları yerel olarak sunulacaktır.
disable_gravatar=Gravatar Servisini Devre Dışı Bırak
disable_gravatar_popup=Gravatar ve özel kaynakları devre dışı bırak. Tüm avatarlar kullanıcılar tarafından yüklenir veya varsayılan kalır.
federated_avatar_lookup=Birleşmiş Kişi Simgesi Aramasını Etkinleştir
federated_avatar_lookup_popup=Libravatar'a dayalı birleşmiş açık kaynaklı hizmeti kullanmak için birleşmiş avatarlar aramasını etkinleştirin.
disable_registration=Kendi Kendine Kaydolmayı Devre Dışı Bırak
disable_registration_popup=Kullanıcının kendi kendine kaydolmasını devre dışı bırak, yalnızca yönetici yeni hesaplar oluşturabilir.
enable_captcha=Captcha'yı Etkinleştir
@@ -114,7 +123,10 @@ sqlite3_not_available=Yayın sürümünüz SQLite3'ü desteklemiyor, lütfen %s'
invalid_db_setting=Veritabanı ayarları geçersiz: %v
invalid_repo_path=Depo kök dizini geçersiz: %v
run_user_not_match=Çalıştırma kullanıcısı geçerli kullanıcı değil: %s -> %s
smtp_host_missing_port=SMTP ana makine adresindeki bağlantı noktası eksik.
invalid_smtp_from=SMTP form alanı geçerli değil: %v
save_config_failed=Yapılandırma kaydedilemedi: %v
init_failed=Uygulama başlatılamadı: %v
invalid_admin_setting=Yönetici hesap ayarları geçersiz: %v
install_success=Merhaba! Gogs'u tercih ettiğiniz için çok mutluyuz, keyfini çıkarın!
invalid_log_root_path=Günlük kök dizini geçersiz: %v
@@ -124,6 +136,7 @@ uname_holder=Kullanıcı Adı veya E-Posta
password_holder=Parola
switch_dashboard_context=Panoya Geçiş Yap
my_repos=Depolarım
show_more_repos=Daha fazla depo göster...
collaborative_repos=Katkıya Açık Depolar
my_orgs=Organizasyonlarım
my_mirrors=Yansılarım
@@ -134,6 +147,7 @@ issues.in_your_repos=Depolarınızda
[explore]
repos=Depolar
users=Kullanıcılar
organizations=Organizasyonlar
search=Ara
[auth]
@@ -142,22 +156,33 @@ register_hepler_msg=Bir hesabınız var mı? Şimdi giriş yapın!
social_register_hepler_msg=Zaten bir hesabınız var mı? Şimdi bağlanın!
disable_register_prompt=Üzgünüz, kaydolma devre dışı bırakıldı. Lütfen site yöneticisiyle irtibata geçin.
disable_register_mail=Üzgünüz, kayıt doğrulama e-postası devre dışı bırakıldı.
auth_source=Yetkilendirme Kaynağı
local=Yerel
remember_me=Beni Hatırla
forgot_password=Parolamı Unuttum
forget_password=Parolanızı mı unuttunuz?
sign_up_now=Bir hesaba mı ihtiyacınız var? Şimdi kaydolun.
confirmation_mail_sent_prompt=<b>%s</b> adresinize yeni bir doğrulama e-postası gönderildi, kaydolma aşamalarını tamamlamak için lütfen %d saat içinde e-posta adresinizi kontrol edin.
active_your_account=Hesabınızı Aktifleştirin
prohibit_login=Oturum açılması yasak
prohibit_login_desc=Hesabınızla oturum açmanız yasaklanmış, lütfen site yöneticisi ile iletişime geçin.
resent_limit_prompt=Üzgünüz, zaten bir doğrulama e-postası talep ettiniz. Lütfen 3 dakika bekleyip tekrar deneyin.
has_unconfirmed_mail=Merhaba %s, doğrulanmamış bir e-posta adresin var (<b>%s</b>). Bir doğrulama e-postası almadıysanız ya da yenisine ihtiyacınız varsa lütfen aşağıdaki düğmeye tıklayın.
resend_mail=Doğrulama e-postasını tekrar almak için buraya tıklayın
email_not_associate=Bu e-posta adresi hiçbir hesaba bağlı değil.
send_reset_mail=Parola sıfırlama e-postasını (yeniden) göndermek için buraya tıklayın
reset_password=Parolanızı Sıfırlayın
invalid_code=Üzgünüz, doğrulama kodunuz geçersiz veya süresi dolmuş.
reset_password_helper=Parolanızı sıfırlamak için buraya tıklayın
password_too_short=Parola uzunluğu 6 karakterden az olamaz.
non_local_account=Non-local accounts cannot change passwords through Gogs.
non_local_account=Yerel olmayan hesapların şifrelerini Gogs aracılığıyla değiştiremezsiniz.
login_two_factor=İki aşamalı doğrulama
login_two_factor_passcode=Kimlik doğrulama Şifre kodu
login_two_factor_enter_recovery_code=İki faktörlü kurtarma kodu girin
login_two_factor_recovery=İki faktörlü Kurtarma
login_two_factor_recovery_code=Kurtarma kodu
login_two_factor_enter_passcode=İki faktörlü şifre kodu girin
login_two_factor_invalid_recovery_code=Kurtarma kodu kullanılmış veya geçerli değil.
[mail]
activate_account=Lütfen hesabınızı aktifleştirin
@@ -184,9 +209,17 @@ TeamName=Takım ismi
AuthName=Yetkilendirme adı
AdminEmail=Yönetici e-postası
NewBranchName=Yeni bölüm adı
CommitSummary=İşleme özeti
CommitMessage=İşleme mesajı
CommitChoice=İşleme tercihi
TreeName=Dosya yolu
Content=İçerik
require_error=` boş olamaz.`
alpha_dash_error=` sadece karakter, rakam veya çizgi(-_) içermelidir.`
alpha_dash_dot_error=` sadece karakter, rakam, çizgi(-_) veya nokta içermelidir.`
alpha_dash_error=` geçerli karakter, sayısal veya tire(-_) olmalı.`
alpha_dash_dot_error=` geçerli karakter, sayısal, tire(-_) veya nokta olmalı.`
alpha_dash_dot_slash_error=` geçerli alfa veya sayısal veya uzunçizgi(-_) veya nokta karakterler veya eğiz çizgi olmalıdır.`
size_error=` uzunluk en fazla %s olmalıdır.`
min_size_error=` en az %s karakter içermelidir.`
max_size_error=` en fazla %s karakter içermelidir.`
@@ -203,6 +236,7 @@ org_name_been_taken=Bu organizasyon adı zaten alınmış.
team_name_been_taken=Bu takım adı zaten alınmış.
email_been_used=Bu e-posta adresi zaten kullanımda.
username_password_incorrect=Kullanıcı adı veya parola hatalı.
auth_source_mismatch=Seçilen kimlik doğrulama kaynağı kullanıcı ile ilişkili değil.
enterred_invalid_repo_name=Lütfen girdiğiniz depo isminin doğru olduğundan emin olun.
enterred_invalid_owner_name=Lütfen girdiğiniz depo sahibi isminin doğru olduğundan emin olun.
enterred_invalid_password=Lütfen girdiğiniz parolanın doğru olduğundan emin olun.
@@ -220,7 +254,7 @@ org_still_own_repo=Bu organizasyon hala bazı depoların sahibi durumunda. Önce
target_branch_not_exist=Hedef dal mevcut değil.
[user]
change_avatar=Change your avatar
change_avatar=Profil resmini değiştir
join_on=Şuna katıldınız
repositories=Depolar
activity=Genel Aktivite
@@ -230,18 +264,18 @@ following=Takip Edilenler
follow=Takip Et
unfollow=Takibi Bırak
form.name_reserved=Kullanıcı adı '%s' başka birine ayrılmış.
form.name_pattern_not_allowed=Kullanıcı adında '%s' modeline izin verilmez.
form.name_not_allowed=Kullanıcı adı veya %q desenine izin verilmiyor.
[settings]
profile=Profil
password=Parola
avatar=Avatar
ssh_keys=SSH Anahtarları
social=Sosyal Medya Hesapları
applications=Uygulamalar
security=Güvenlik
repos=Depolar
orgs=Organizasyonlar
applications=Uygulamalar
delete=Hesabı Sil
uid=Tekil ID
public_profile=Herkese Açık Profil
profile_desc=E-posta adresiniz herkese açıktır ve hesabınızla ilgili bilgilendirmelerde ve web tabanlı operasyonlarda kullanılacaktır.
@@ -256,6 +290,8 @@ change_username_prompt=Bu değişiklik, hesabınızla ilişkili olan bağlantıl
continue=Devam Et
cancel=İptal
lookup_avatar_by_mail=E-postaya göre Avatar Arama
federated_avatar_lookup=Birleşmiş Avatar Araması
enable_custom_avatar=Özel Avatarı Etkinleştir
choose_new_avatar=Yeni Avatar Seç
update_avatar=Avatar Ayarlarını Güncelle
@@ -305,10 +341,31 @@ no_activity=Yeni aktivite yok
key_state_desc=Bu anahtar son 7 gün içinde kullanıldı
token_state_desc=Bu erişim anahtarı son 7 gün içinde kullanıldı
manage_social=Bağlanmış Sosyal Hesapları Yönet
social_desc=Bu, bağlanmış sosyal hesapların bir listesidir. Tanımadığınız bağlantıyı kaldırın.
unbind=Bağlantıyı Kopar
unbind_success=Sosyal hesabın bağlantısı koparıldı.
two_factor=İki faktörlü Kimlik doğrulama
two_factor_status=Durum:
two_factor_on=ık
two_factor_off=Kapalı
two_factor_enable=Etkin
two_factor_disable=Devre dışı
two_factor_view_recovery_codes=Görüntüle ve güvenli bir yere </a> kurtarma kodlarınızı <a href="%s%s"><a href="%s%s"><a href="%s%s"> kaydedin. Eğer kimlik doğrulama uygulamanız için erişimi kaybetmişseniz bunları şifre kodu olarak kullanabilirsiniz.
two_factor_http=HTTP/HTTPS işlemleri için , artık düz kullanıcı adı ve şifre kullanamazsınız. Lütfen oluşturun ve <a href="%[1]s%[2]s"> Kişisel Erişim Jetonu </a> kimlik belgesi olarak kullanın , örneğin <code>%[3]s</code>.
two_factor_enable_title=İki faktörlü Kimlik doğrulamasını Etkinleştir
two_factor_scan_qr=Lütfen resmi taramak için kimlik doğrulama uygulamanızı kullanın:
two_factor_or_enter_secret=Veya parola girin:
two_factor_then_enter_passcode=Daha sonra şifre kodunu girin:
two_factor_verify=Doğrula
two_factor_invalid_passcode=Girdiğiniz şifre kodu geçersiz,lütfen tekrar deneyin!
two_factor_reused_passcode=Girdiğiniz şifre zaten kullanılmış, lütfen başka bir tane deneyin!
two_factor_enable_error=İki faktörlü kimlik doğrulama etkinleştirmesi başarısız :%v
two_factor_enable_success=Hesabınız için iki faktörlü kimlik doğrulama başarıyla devre dışı bırakıldı!
two_factor_recovery_codes_title=İki faktörlü Kimlik doğrulama Kurtarma Kodları
two_factor_recovery_codes_desc=Kurtarma kodları , geçici olarak kimlik doğrulama uygulamanızın erişimini kaybettiğinizde kullanıldı. Herbir kurtarma kodu sadece birkez kullanılablir,<b>lütfen bu kodları güvenli bir yere sakla</b>.
two_factor_regenerate_recovery_codes=Kurtarma Kodlarını Yeniden oluştur
two_factor_regenerate_recovery_codes_error=Kurtarma kodları yeniden oluşturma başarısız: %v
two_factor_regenerate_recovery_codes_success=Yeni kurtarma kodları başarıyla oluşturuldu!
two_factor_disable_title=İki faktörlü Kimlik doğrulama Devre dışı
two_factor_disable_desc=Hesap güvenliği seviyeniz, devre dışı bırakılmış iki faktörlü kimlik doğrulamadan sonra azalacaktır. Devam etmek istiyor musunuz?
two_factor_disable_success=İki faktörlü kimli doğrulama başarıyla devre dışı bırakıldı!
manage_access_token=Kişisel Erişim Anahtarlarını Yönet
generate_new_token=Yeni Erişim Anahtarı Üret
@@ -321,6 +378,16 @@ delete_token=Sil
access_token_deletion=Kişisel Erişim Anahtarını Silme
access_token_deletion_desc=Bu kişisel erişim anahtarını silerseniz uygulamanıza ilişkin tüm erişimler de kaldırılacaktır. Devam etmek istiyor musunuz?
delete_token_success=Kişisel erişim anahtarı başarıyla kaldırıldı! Uygulamanızı güncellemeyi de unutmayın!
token_name_exists=Aynı ada sahip simge zaten var.
orgs.none=Hiçbir organizasyonların üyesi değilsiniz.
orgs.leave_title=Organizasyondan ayrıl
orgs.leave_desc=Organizasyondan ayrıldıktan sonra tüm depolar ve ekiplere erişimi kaybedeceksiniz.Devam etmek istiyor musunuz?
repos.leave=Ayrıl
repos.leave_title=Depodan ayrıl
repos.leave_desc=Çıktıktan sonra depo erişimini kaybedeceksiniz.Devam etmek istiyor musunuz?
repos.leave_success='%s' deposundan başarıyla ayrıldınız!
delete_account=Hesabınızı Silin
delete_prompt=Bu işlem hesabınızı kalıcı olarak silecektir ve <strong>GERİ ALINAMAZ</strong>!
@@ -333,7 +400,9 @@ owner=Sahibi
repo_name=Depo İsmi
repo_name_helper=İyi bir depo ismi genellikle kısa, akılda kalıcı ve benzersiz kelimelerden oluşur.
visibility=Görünürlük
unlisted=Unlisted
visiblity_helper=Bu depo <span class="ui red text">Özel</span>
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
visiblity_helper_forced=Site yöneticisi tüm depolara erişimleri <span class="ui red text">Özel</span> olarak ayarlamaya zorladı
visiblity_fork_helper=(Bu değerin değişmesi tüm çatallamaları etkileyecektir)
clone_helper=Klonlama konusunda yardıma mı ihtiyacınız var? <a target="_blank" href="%s">Yardım</a> bağlantısını ziyaret edin!
@@ -342,7 +411,7 @@ fork_from=Buradan Çatalla
fork_visiblity_helper=Çatallanmış bir deponun görünürlüğünü değiştiremezsiniz.
repo_desc=ıklama
repo_lang=Dil
repo_lang_helper=.gitignore dosyalarını seçin
repo_gitignore_helper=.gitignore şablonlarını seç
license=Lisans
license_helper=Bir lisans dosyası seçin
readme=Benioku
@@ -350,32 +419,35 @@ readme_helper=Bir benioku şablonu seçin
auto_init=Bu depoyu seçilen dosya ve şablonlarla oluştur
create_repo=Depo Oluştur
default_branch=Varsayılan Dal
mirror_prune=Prune
mirror_prune_desc=Remove any remote-tracking references that no longer exist on the remote
mirror_prune=Buda
mirror_prune_desc=Uzakta olmayan bütün uzaktan-izleme referanslarını sil
mirror_interval=Yansı Aralığı (saat)
mirror_address=Yansı Adresi
mirror_address_desc=Lütfen gerekli kimlik bilgilerini adreste bulundurun.
mirror_last_synced=Son Eşzamanlama
watchers=İzleyenler
stargazers=Yıldızlayanlar
forks=Çatallamalar
repo_description_helper=Depo açıklaması. Maksimum 512 karakter uzunluğu.
repo_description_length=Mevcut karakterler
form.reach_limit_of_creation=Sahip, maksimum %d depo oluşturma limitine ulaşmıştır.
form.name_reserved=Depo ismi '%s' başkasına ayrılmış.
form.name_pattern_not_allowed=Depo isminde '%s' modeline izin verilmiyor.
form.name_not_allowed=Depo adı veya %q desenine izin verilmiyor.
need_auth=Yetkilendirme Gereklidir
migrate_type=Göç Türü
migrate_type_helper=Bu depo bir <span class="text blue">yansı</span> olacaktır
migrate_repo=Depoyu Göç Ettir
migrate.clone_address=Klon Adresi
migrate.clone_address_desc=Bu bağlantı HTTP/HTTPS/GIT veya yerel bir sunucu yolu olabilir.
migrate.clone_address_desc=Bu HTTP/HTTPS/GIT URL'si olabilir.
migrate.clone_address_desc_import_local=Bir depoyu yerel sunucu yolu ile taşımanıza izin verilir.
migrate.permission_denied=Yerel depoları içeri aktarma izniniz yok.
migrate.invalid_local_path=Geçersiz yerel dizin! Böyle bir yol yok ya da bir dizin değil.
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
migrate.failed=Göç başarısız: %v
mirror_from=şunun yansıması
forked_from=şundan çatallanmış
fork_from_self=Sahibi olduğunuz bir depoyu çatallayamazsınız!
copy_link=Kopyala
copy_link_success=Kopyalandı!
copy_link_error=Kopyalamak için ⌘-C veya Ctrl-C tuşlarına basın
@@ -391,9 +463,9 @@ quick_guide=Hızlı Başlangıç Kılavuzu
clone_this_repo=Bu depoyu klonla
create_new_repo_command=Komut satırında yeni bir depo oluştur
push_exist_repo=Var olan bir depoyu komut satırında gönder
repo_is_empty=Bu depo boş. Lütfen daha sonra tekrar gelin!
bare_message=Bu depo henüz hiçbir içeriğe sahip değil.
code=Kod
files=Dosyalar
branch=Dal
tree=Ağaç
filter_branch_and_tag=Dal veya biçim imini filtrele
@@ -404,12 +476,63 @@ pulls=Değişiklik İstekleri
labels=Etiketler
milestones=Kilometre Taşları
commits=İşlemeler
git_branches=Bölümler
releases=Sürümler
file_raw=Ham
file_history=Geçmiş
file_view_raw=Ham Görünüm
file_permalink=Kalıcı Bağlantı
file_too_large=Bu dosya sergilenmek için çok büyük
video_not_supported_in_browser=Tarayıcınız HTML5 video etkiketini desteklemiyor.
branches.overview=Genel görünüm
branches.active_branches=Aktif Bölümler
branches.stale_branches=Eskimiş Bölümler
branches.all=Bütün Bölümler
branches.updated_by=%[2]s tarafından %[1]s güncellendi
branches.change_default_branch=Varsayılan Bölümü Değiştir
editor.new_file=Yeni dosya
editor.upload_file=Dosyayı yükle
editor.edit_file=Dosya düzenle
editor.preview_changes=Değişiklikleri Önizle
editor.cannot_edit_non_text_files=Metin dışı dosyalar düzenlenemez
editor.edit_this_file=Bu dosyayı düzenle
editor.must_be_on_a_branch=Bu dosyada değişiklik yapmak için bir bölümde olmalısınız.
editor.fork_before_edit=Dosyayı düzenlemeden önce bu depoyu iki kola ayırmalısınız
editor.delete_this_file=Bu dosyayı sil
editor.must_have_write_access=Bu dosyada değişiklik yapmak için yazma erişiminizin olması gerekir.
editor.file_delete_success=%s dosyası başarıyla silindi!
editor.name_your_file=Dosyanızın adı...
editor.filename_help=Dizin eklemek için, dizini yazın ve / tuşuna basın. Bir dizini kaldırmak için alanın başına gidin ve geri tuşuna basın.
editor.or=veya
editor.cancel_lower=iptal
editor.commit_changes=Değişiklikleri İşle
editor.add_tmpl='%s/<filename>' ekle
editor.add='%s' ekle
editor.update='%s' güncelle
editor.delete='%s' sil
editor.commit_message_desc=İsteğe bağlı genişletilmiş açıklama ekleyin ...
editor.commit_directly_to_this_branch=Doğrudan <strong class="Branch-name">%s</strong> şubesine geçin.
editor.create_new_branch=Bu taahhüt ve çekme isteği başlatmak için.<strong>yeni şube</strong> oluşturma.
editor.new_branch_name_desc=Yen şube adı...
editor.cancel=İptal
editor.filename_cannot_be_empty=Dosya adı boş olmamalı.
editor.branch_already_exists='% s ' Şubesi bu depoda zaten var.
editor.directory_is_a_file=Üst yoldaki '% s' girişi, bu depoda bir dizini olmayan dosyadır.
editor.file_is_a_symlink='%s' dosyası, web editöründen değiştirilemeyen bir sembolik bağ.
editor.filename_is_a_directory=Dosya adı '%s' bu depoda mevcut bir dizindir.
editor.file_editing_no_longer_exists=Düzenlediğiniz dosya '%s' artık depoda yok.
editor.file_changed_while_editing=Düzenlemeye başladıktan sonra dosya içeriği değiştirildi. Ne değiştiğini görmek için<a target="_blank" href="%s">Buraya tıklayın</a>Bu değişikliklerin üzerine yazmak için.<strong>yeniden yürütmeye basın</strong>.
editor.file_already_exists='% s ' adlı bir dosya mevcutta zaten var.
editor.no_changes_to_show=Gösterilecek bir değişiklik mevcut değil.
editor.fail_to_update_file='%s' dosyası güncellenemedi / oluşturulamadı : %v hatasıyla
editor.fail_to_delete_file='%s' dosyası hatalı bir şekilde silinemedi: %v
editor.add_subdir=Alt dizin Ekle...
editor.unable_to_upload_files='%s' dosyası yüklenemedi : %v hatasıyla
editor.upload_files_to_dir=Dosyaları '%s' ye yükle
commits.commit_history=Geçmişin Kaydedilmesi
commits.commits=İşlemeler
commits.search=İşleme Arama
commits.find=Bul
@@ -435,6 +558,11 @@ issues.create=Sorun Oluştur
issues.new_label=Yeni Etiket
issues.new_label_placeholder=Etiket adı...
issues.create_label=Etiket Oluştur
issues.label_templates.title=Önceden tanımlanmış bir etiket kümesi yükleyin
issues.label_templates.info=Henüz etiket yok. Yeni etiket oluşturmak için aşağıdaki "Yeni Etiket" düğmesine tıklayabilir veya aşağıda önceden tanımlanmış bir kümeyi kullanabilirsiniz.
issues.label_templates.helper=Bir etiket seti seçin
issues.label_templates.use=Use this label set
issues.label_templates.fail_to_load_file=Etiket şablon dosyası '%s' yüklenemedi: %v hatasıyla
issues.open_tab=%d açık
issues.close_tab=%d kapanmış
issues.filter_label=Etiket
@@ -462,7 +590,8 @@ issues.next=Sonraki
issues.open_title=ık
issues.closed_title=Kapalı
issues.num_comments=%d yorum
issues.commented_at=`<a id="%[1]s" href="#%[1]s">%[2]s</a> yorum yaptı`
issues.commented_at=`<a href="#%s">%s</a> olarak yorumlandı`
issues.delete_comment_confirm=Bu yorumu silmek istediğinizden emin misiniz?
issues.no_content=Henüz bir içerik yok.
issues.close_issue=Kapat
issues.close_comment_issue=Yorum yap ve kapat
@@ -475,8 +604,7 @@ issues.commit_ref_at=`<a id="%[1]s" href="#%[1]s">%[2]s</a> işlemesinde bu soru
issues.poster=Poster
issues.collaborator=Katkıcı
issues.owner=Sahibi
issues.sign_up_for_free=Ücretsiz Kaydolun
issues.sign_in_require_desc=bu konuşmaya katılmak için. Zaten bir hesabınız var mı? <a href="%s">Yorum yapmak için giriş yapın</a>
issues.sign_in_require_desc=<a href="%s">Giriş yap</a> bu konuşmaya katılmak için.
issues.edit=Düzenle
issues.cancel=İptal
issues.save=Kaydet
@@ -491,6 +619,8 @@ issues.label_deletion=Etiket Silme
issues.label_deletion_desc=Bu etiketi silerseniz, bu etikete iliştirilmiş sorunlardaki tüm bilgiler de silinecektir. Devam etmek istiyor musunuz?
issues.label_deletion_success=Etiket başarıyla silindi!
issues.num_participants=%d Katılımcı
issues.attachment.open_tab=` "%s '' yi yeni bir sekmede görmek için tıklayın `
issues.attachment.download=`"%s" yi İndirmek için tıklayın `
pulls.new=Yeni Değişiklik İsteği
pulls.compare_changes=Değişiklikleri Karşılaştır
@@ -500,6 +630,7 @@ pulls.compare_compare=karşılaştır
pulls.filter_branch=Dal filtrele
pulls.no_results=Sonuç bulunamadı.
pulls.nothing_to_compare=Karşılaştırılacak hiçbir şey yok, çünkü temel ve ana dal aynı.
pulls.nothing_merge_base=Karşılaştırılacak bir şey yok çünkü iki şubenin tarihi tamamen farklı.
pulls.has_pull_request=`Bu iki hedef için zaten bir değişiklik isteği var: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=Değişiklik İsteği Oluştur
pulls.title_desc=<code>%[3]s</code> içindeki <code>%[2]s</code> işlemelerini %[1]d ile birleştirmek istiyor
@@ -515,8 +646,13 @@ pulls.is_checking=Çakışma kontrolü sürüyor. Lütfen birkaç dakika içinde
pulls.can_auto_merge_desc=Bu değişiklik isteği otomatik olarak birleştirilebilir.
pulls.cannot_auto_merge_desc=Çakışmalardan dolayı bu değişiklik isteği otomatik olarak birleştirilemez.
pulls.cannot_auto_merge_helper=Çakışmaları çözmek için lütfen elle birleştirin.
pulls.create_merge_commit=Birleştirme işlemi oluşturma
pulls.rebase_before_merging=Birleştirmeden önce yenidenreferans al
pulls.commit_description=Taahhüt Açıklaması
pulls.merge_pull_request=Değişiklik İsteğini Birleştir
pulls.open_unmerged_pull_exists=`Yeniden açma işlemini gerçekleştiremezsiniz. Çünkü zaten aynı depodan, aynı birleştirme bilgisiyle açık olan bir değişiklik isteği var (#%d) ve birleştirme bekliyor.`
pulls.delete_branch=Şubeyi Sil
pulls.delete_branch_has_new_commits=Birleşmeden sonra yeni taahhütlere sahip olduğu için şube silinemez.
milestones.new=Yeni Kilometre Taşı
milestones.open_tab=%d Açık
@@ -563,30 +699,65 @@ wiki.last_updated=Son güncelleme %s
settings=Ayarlar
settings.options=Tercihler
settings.collaboration=İş birliği
settings.collaboration.admin=Admin
settings.collaboration.write=Write
settings.collaboration.read=Read
settings.collaboration.undefined=Undefined
settings.collaboration.admin=Yönetici
settings.collaboration.write=Yaz
settings.collaboration.read=Oku
settings.collaboration.undefined=Belirsiz
settings.branches=Şubeler
settings.branches_bare=Korunmasız depo için şubeleri yönetemezsiniz. Önce bir miktar içeriği itin.
settings.default_branch=Varsayılan Şube
settings.default_branch_desc=Varsayılan şube , kod taahütleri, çekme talepleri ve çevrimiçi düzenleme için "temel" şube olarak kabul edilir.
settings.update=Güncelle
settings.update_default_branch_unsupported=Varsayılan şubeyi değiştir , sunucu üzerindeki Git sürüm tarafından desteklenmiyor.
settings.update_default_branch_success=Bu deponun varsayılan şubesi başarıyla güncellendi!
settings.protected_branches=Korunan Şubeler
settings.protected_branches_desc=Şubeleri zorla bastırma, yanlışlıkla silme ve beyaz liste kod belirleyicilerine karşı koruyun.
settings.choose_a_branch=Şube seç...
settings.branch_protection=Şube Koruma
settings.branch_protection_desc=Şube için koruma seçeneklerini seçiniz <b>%s</b>.
settings.protect_this_branch=Bu şubeyi koru
settings.protect_this_branch_desc=Kuvveti devre dışı bırak ve silinmesini önler.
settings.protect_require_pull_request=Doğrudan itmek yerine istek istemek gereklidir
settings.protect_require_pull_request_desc=Bu şubeye doğrudan itmeyi devre dışı bırakmak için bu seçeneği etkinleştirin. Komiteler korunmayan bir başka şubeye ittirilmeli ve çekme talebi vasıtasıyla bu şubeye birleştirilmelidir.
settings.protect_whitelist_committers=Beyaz liste , bu şubeye kim itebilir
settings.protect_whitelist_committers_desc=Bu şubeye doğrudan itilen beyaz listeye kişi veya ek ekleyin. Beyaz listeden atlanılacak olan kullanıcılar çekme isteği kontrolüne ihtiyaç duyar.
settings.protect_whitelist_users=Bu şubeye itebilecek kullanıcılar
settings.protect_whitelist_search_users=Kullanıcıları ara
settings.protect_whitelist_teams=Onların üyelerinin bu şubeye itebilecek takımları
settings.protect_whitelist_search_teams=Takımları ara
settings.update_protect_branch_success=Bu şube için koruma seçenekleri başarıyla güncellendi!
settings.hooks=Web İstekleri
settings.githooks=Git İstekleri
settings.basic_settings=Temel Ayarlar
settings.mirror_settings=Ayna Ayarları
settings.sync_mirror=Şimdi Senkronize Et
settings.mirror_sync_in_progress=Ayna senkronizasyonu devam ediyor, lütfen sayfayı yaklaşık bir dakika içinde yenileyin.
settings.site=Resmi Web Sitesi
settings.update_settings=Ayarları Güncelle
settings.change_reponame_prompt=Bu değişiklik, bağlantıların depoyla olan ilişkisini etkileyecektir.
settings.advanced_settings=Gelişmiş Ayarlar
settings.wiki_desc=İnsanların belge yazması için Wiki'yi etkinleştir
settings.wiki_desc=Viki sıstemini etkinleştir
settings.use_internal_wiki=Yerleşik wiki'yi kullanın
settings.allow_public_wiki_desc=Depo özel olduğunda wiki'ye herkesin erişmesine izin ver
settings.use_external_wiki=Harici Wiki kullan
settings.external_wiki_url=Harici Wiki bağlantısı
settings.external_wiki_url_desc=Ziyaretçiler, sekmeye tıkladıklarında bağlantıya yönlendirilecektir.
settings.issues_desc=Hazır gelen hafif sorun takipçisini etkinleştir
settings.issues_desc=Sorun izleyiciyi etkinleştir
settings.use_internal_issue_tracker=Yerleşik hafif sorun izleyici kullanma
settings.allow_public_issues_desc=Depo özel olduğunda toplulukların herkese açık olarak erişmesine izin ver
settings.use_external_issue_tracker=Harici sorun takipçisi kullan
settings.external_tracker_url=Harici Konu İzleyici URL'si
settings.external_tracker_url_desc=Ziyaretçiler, sekmeye tıkladıklarında bağlantıya yönlendirilecektir.
settings.tracker_url_format=Harici Sorun Takipçisi Bağlantı Formatı
settings.tracker_issue_style=External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric=Numeric <span class="ui light grey text">(1234)</span>
settings.tracker_issue_style.alphanumeric=Alphanumeric <span class="ui light grey text">(ABC-123, DEFG-234, ...)</span>
settings.tracker_issue_style=Harici Hata İzleyicisi Adlandırma Stili:
settings.tracker_issue_style.numeric=Sayısal
settings.tracker_issue_style.alphanumeric=Alfanumerik
settings.tracker_url_format_desc=Kullanıcı adı, depo ismi ve hata indeksi için <code>{kullanıcı} {depo} {indeks}</code> tutucusunu kullanabilirsiniz.
settings.pulls_desc=Herkese açık katkıları kabul etmek için değişiklik isteklerini etkinleştirin
settings.pulls_desc=Depolar ve Şubeler arasındaki katkıları kabul etmek için çekme isteklerini etkinleştir
settings.pulls.ignore_whitespace=Boşluktaki değişiklikleri yoksay
settings.pulls.allow_rebase_merge=Taahhütleri birleştirmek için yeniden tabanın kullanmasına izin ver
settings.danger_zone=Tehlike Alanı
settings.cannot_fork_to_same_owner=Bir depoyu orijinal sahibine ayıramazsınız.
settings.new_owner_has_same_repo=Yeni sahibin aynı isimde başka bir deposu var. Lütfen farklı bir isim seçin.
settings.convert=Düzenli Depoya Dönüştür
settings.convert_desc=Bu yansıyı düzenli bir depoya dönüştürebilirsiniz. Bu işlem geri alınamaz.
@@ -605,8 +776,8 @@ settings.wiki_deletion_success=Deponun Wiki verisi başarıyla silindi.
settings.delete=Bu Depoyu Sil
settings.delete_desc=Bir depoyu bir kez sildiğiniz taktirde geri getiremezsiniz. Lütfen emin olun.
settings.delete_notices_1=- Bu işlem geri <strong>ALINAMAZ</strong>.
settings.delete_notices_2=- Bu işlem, bu depodaki her şeyi (Git verisini, sorunları, yorumları ve katkıcı erişimlerini) kalıcı olarak silecektir.
settings.delete_notices_fork_1=- All forks will become independent after deletion.
settings.delete_notices_2=- Bu işlem, git verileri, sorunlar, yorumlar ve işbirlikçi erişimi de dahil olmak üzere bu depodaki her şeyi kalıcı olarak siler.
settings.delete_notices_fork_1=Silme işleminden sonra bütün çatallar bağımsız hale gelir.
settings.deletion_success=Depo başarıyla silindi!
settings.update_settings_success=Depo seçenekleri başarıyla güncellendi.
settings.transfer_owner=Yeni Sahip
@@ -621,20 +792,25 @@ settings.collaborator_deletion_desc=Kullanıcı, silme işleminden sonra bu depo
settings.remove_collaborator_success=Katkıcı silindi.
settings.search_user_placeholder=Kullanıcı ara...
settings.org_not_allowed_to_be_collaborator=Organizasyon, bir katkıcı olarak eklenemez.
settings.user_is_org_member=Kullanıcı organizasyon üyesi olduğu için katkıcı olarak eklenemez.
settings.add_webhook=Web İsteği Ekle
settings.hooks_desc=Web istekleri, HTTP POST olay tetikleyicileri gibidirler. Gogs'ta ne zaman bir şey olsa, hedef belirttiğiniz sunuculara bildirim yapabilecek duruma geliriz. Daha fazla bilgiyi <a target="_blank" href="%s">Web İstekleri Kılavuzu</a>'nda bulabilirsiniz.
settings.webhooks.add_new=Yeni bir web istemci ekle:
settings.webhooks.choose_a_type=Bir tür seç...
settings.add_webhook=Web İsteği Ekle
settings.webhook_deletion=Web İsteğini Sil
settings.webhook_deletion_desc=Bu web isteğini silerseniz buna bağlı olan tüm bilgiler ve dağıtım geçmişi de silinecektir. Devam etmek istiyor musunuz?
settings.webhook_deletion_success=Web isteği başarıyla silindi!
settings.webhook.test_delivery=Test Dağıtımı
settings.webhook.test_delivery_desc=Web isteği ayarlarınızı test etmek için sahte bir anlık olay gönderin
settings.webhook.test_delivery_success=Test web isteği, dağıtım kuyruğuna eklendi. Bunun dağıtım geçmişinde görünmesi birkaç saniye sürebilir.
settings.webhook.redelivery=Yeniden teslimat
settings.webhook.redelivery_success=Kanca görev '%s' teslim kuyruğuna eklenmiştir. Bu tarihte teslim durumunu güncellemek birkaç saniye sürebilir.
settings.webhook.request=İstekler
settings.webhook.response=Cevaplar
settings.webhook.headers=Başlıklar
settings.webhook.payload=Yükler
settings.webhook.body=Gövde
settings.webhook.err_cannot_parse_payload_url=Yük URL'si ayrıştırılamıyor: %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 istekleri, Git'in kendisi tarafından güçlendirilmiştir. Özel işlemleri gerçekleştirmek için aşağıdaki listedeki desteklenen isteklerin dosyalarını düzenleyebilirsiniz.
settings.githook_edit_desc=İstek aktif değilse örnek içerik sunulacaktır. İçeriği boş bırakmak, isteği devre dışı bırakmayı beraberinde getirecektir.
settings.githook_name=İstek İsmi
@@ -644,6 +820,7 @@ settings.add_webhook_desc=Gogs, meydana gelen olay ile birlikte belirttiğiniz b
settings.payload_url=Yük Bağlantısı
settings.content_type=İçerik Türü
settings.secret=Gizli
settings.secret_desc=Gizli, <code>X-Gogs-Signature</code> başlığı ile SHA256 hmac hexdigest yükü olarak gönderilecektir.
settings.slack_username=Kullanıcı Adı
settings.slack_icon_url=Simge Bağlantısı
settings.slack_color=Renk
@@ -653,8 +830,20 @@ settings.event_send_everything=<strong>Her şeye</strong> ihtiyacım var.
settings.event_choose=Neye ihtiyacım olduğunu seçtir.
settings.event_create=Oluştur
settings.event_create_desc=Dal veya biçim imi oluşturuldu
settings.event_delete=Sil
settings.event_delete_desc=Dal veya etiket silindi
settings.event_fork=Çatalla
settings.event_fork_desc=Depo çatallandı
settings.event_push=Push
settings.event_push_desc=Bir depoya git push
settings.event_issues=Sorunlar
settings.event_issues_desc=Sorun açıldı, kapatıldı, yeniden açıldı, düzenlendi, atandı, atanmadı, etiket güncellendi, etiket silindi, dönüm noktası yapıldı ya da iptal edildi.
settings.event_pull_request=İstek Çek
settings.event_pull_request_desc=Çekme isteği açıldı, kapatıldı, yeniden açıldı, düzenlendi, atandı, atanmamış, etiket güncellendi, etiket silindi, kilometre taşları, dönüm noktası veya senkronize edildi.
settings.event_issue_comment=Sorun Yorumu
settings.event_issue_comment_desc=Konu yorumu eklendi, düzenlendi veya silindi.
settings.event_release=Yayın
settings.event_release_desc=Bir depoda yayınlanan sürüm.
settings.active=Aktif
settings.active_helper=Bu isteği tetikleyen olaya ilişkin detaylar da gönderilecektir.
settings.add_hook_success=Yeni web isteği eklendi.
@@ -664,10 +853,13 @@ settings.delete_webhook=Web İsteğini Sil
settings.recent_deliveries=Son Dağıtımlar
settings.hook_type=İstek Türü
settings.add_slack_hook_desc=Deponuza <a href="%s">Slack</a> entegrasyonunu ekleyin.
settings.add_discord_hook_desc=Deponuza <a href="%s">Discord</a> entegrasyonu ekleyin.
settings.add_dingtalk_hook_desc=Deponuza <a href="%s">Dingtalk</a> entegrasyonu ekleyin.
settings.slack_token=Erişim Anahtarı
settings.slack_domain=Alan Adı
settings.slack_channel=Kanal
settings.deploy_keys=Dağıtım Anahtarları
settings.deploy_keys_helper=<b>Ortak Gotcha!</b> Kişisel ortak anahtarlar eklemek istiyorsanız lütfen bunları <a href="%s%s">hesap ayarlarınıza</a> ekleyin.
settings.add_deploy_key=Dağıtım Anahtarı Ekle
settings.deploy_key_desc=Dağıtım anahtarlarının yalnızca okuma izni vardır. Kişisel hesapların SSH anahtarlarıyla aynı değillerdir.
settings.no_deploy_keys=Herhangi bir dağıtım anahtarı eklemediniz.
@@ -679,6 +871,8 @@ settings.add_key_success=Yeni dağıtım anahtarı '%s' başarıyla eklendi!
settings.deploy_key_deletion=Dağıtım Anahtarını Sil
settings.deploy_key_deletion_desc=Bu dağıtım anahtarını silerseniz bu depoya ilişkin tüm erişimler de kaldırılacaktır. Devam etmek istiyor musunuz?
settings.deploy_key_deletion_success=Dağıtım anahtarı başarıyla silindi!
settings.description_desc=Depo açıklaması. Maksimum 512 karakter uzunluğu.
settings.description_length=Mevcut karakterler
diff.browse_source=Kaynağa Gözat
diff.parent=ebeveyn
@@ -690,14 +884,13 @@ diff.show_unified_view=Birleşik Görünüm
diff.stats_desc=<strong> %d değiştirilmiş dosya</strong> ile <strong>%d ekleme</strong> ve <strong>%d silme</strong>
diff.bin=BIN
diff.view_file=Dosyayı Görüntüle
diff.file_supressed=File diff supressed because it is too large
diff.too_many_files=Some files were not shown because too many files changed in this diff
diff.file_suppressed=Dosya farkı çok büyük olduğundan ihmal edildi
diff.too_many_files=Bu fark içinde çok fazla dosya değişikliği olduğu için bazı dosyalar gösterilmiyor
release.releases=Sürümler
release.new_release=Yeni Sürüm
release.draft=Taslak
release.prerelease=Ön Sürüm
release.stable=Kararlı
release.edit=düzenle
release.ahead=%s son sürümden beri <strong>%d</strong> işleme
release.source_code=Kaynak Kodu
@@ -722,6 +915,7 @@ release.deletion=Sürüm Silme
release.deletion_desc=Bu sürümü silerseniz buna uyan tüm Git biçim imleri de silinecektir. Devam etmek istiyor musunuz?
release.deletion_success=Sürüm başarıyla silindi!
release.tag_name_already_exist=Bu biçim imi adıyla başka bir sürüm zaten var.
release.tag_name_invalid=Etiket adı geçerli değil.
release.downloads=İndirmeler
[org]
@@ -743,8 +937,8 @@ team_name_helper=Sohbetlerde bu takımdan bahsetmek için bu ismi kullanacaksın
team_desc_helper=Bu takım ne hakkında?
team_permission_desc=Bu takım, ne gibi bir izin seviyesine sahiptir?
form.name_reserved=Organizasyon adı '%s' başka birisine ayrılmış.
form.name_pattern_not_allowed=Organizasyon adı modeli '%s' geçersiz.
form.name_not_allowed=Organizasyon adı veya %q desenine izin verilmiyor.
form.team_name_not_allowed=Takım adı veya %q desenine izin verilmiyor.
settings=Ayarlar
settings.options=Seçenekler
@@ -816,12 +1010,19 @@ first_page=İlk
last_page=Son
total=Toplam: %d
dashboard.build_info=Derleme Bilgisi
dashboard.app_ver=Uygulama sürümü
dashboard.git_version=Git sürümü
dashboard.go_version=Go sürümü
dashboard.build_time=Derleme zamanı
dashboard.build_commit=Derleme işlemesi
dashboard.statistic=İstatistik
dashboard.operations=İşlemler
dashboard.system_status=Sistem İzleme Durumu
dashboard.statistic_info=Gogs veritabanında <b>%d</b> kullanıcı, <b>%d</b> organizasyon, <b>%d</b> genel anahtar, <b>%d</b> depo, <b>%d</b> izleme, <b>%d</b> yıldız, <b>%d</b> hareket, <b>%d</b> erişim, <b>%d</b> sorun, <b>%d</b> yorum, <b>%d</b> sosyal hesap, <b>%d</b> takip, <b>%d</b> yansı, <b>%d</b> sürüm, <b>%d</b> giriş kaynağı, <b>%d</b> web isteği, <b>%d</b> kilometre taşı, <b>%d</b> etiket, <b>%d</b> istek görevi, <b>%d</b> takım, <b>%d</b> güncellenmiş görev, <b>%d</b> ek var.
dashboard.operation_name=İşlem Adı
dashboard.operation_switch=Geç
dashboard.select_operation_to_run=Lütfen çalıştırılacak işlemi seçin
dashboard.operation_run=Çalıştır
dashboard.clean_unbind_oauth=Bağlanmamış OAuth'ları Temizle
dashboard.clean_unbind_oauth_success=Bağlanmamış tüm OAuth'lar başarıyla silindi.
@@ -835,8 +1036,8 @@ dashboard.git_gc_repos=Depolarda çöp toplama işlemini gerçekleştir
dashboard.git_gc_repos_success=Tüm depolarda çöp toplama işlemi başarıyla gerçekleştirildi.
dashboard.resync_all_sshkeys='.ssh/authorized_keys' dosyasını yeniden yaz (dikkat: Gogs'un olmayan anahtarlar silinecektir)
dashboard.resync_all_sshkeys_success=Tüm genel anahtarlar başarıyla yeniden yazıldı.
dashboard.resync_all_update_hooks=Tüm depoların güncel web isteklerini yeniden yaz (özel yapılandırma yolu değiştiğinde gerekir)
dashboard.resync_all_update_hooks_success=Tüm depoların güncel web istekleri başarıyla yeniden yazıldı.
dashboard.resync_all_hooks=Tüm depoların yeniden alımı, güncellemesi ve gönderi alım kancalarını yeniden senkronize et
dashboard.resync_all_hooks_success=Tüm depoların önceden alımı, güncellemesi ve gönderi alımı kancaları başarıyla senkronize edildi.
dashboard.reinit_missing_repos=Git dosyalarını kaybetmiş tüm depoları yeniden oluştur
dashboard.reinit_missing_repos_success=Git dosyalarını kaybetmiş tüm depolar başarıyla yeniden oluşturuldu.
@@ -889,6 +1090,7 @@ users.edit_account=Hesabı Düzenle
users.max_repo_creation=Maksimum Depo Oluşturma Limiti
users.max_repo_creation_desc=(Genel varsayılan limiti kullanmak için -1 yazın)
users.is_activated=Bu hesap aktivleştirildi
users.prohibit_login=Bu hesap oturum açmaya engellenmiş
users.is_admin=Bu hesap, yönetici izinlerine sahiptir
users.allow_git_hook=Bu hesap, Git istekleri oluşturmak için gereken yetkilere sahip
users.allow_import_local=Bu hesap, yerel depoları içeri aktarmak için gereken yetkilere sahip
@@ -910,29 +1112,37 @@ repos.private=Özel
repos.watches=İzlemeler
repos.stars=Yıldızlar
repos.issues=Sorunlar
repos.size=Boyut
auths.auth_manage_panel=Yetkilendirme Yönetim Paneli
auths.auth_sources=Yetkilendirme Kaynakları
auths.new=Yeni Kaynak Ekle
auths.name=İsim
auths.type=Tür
auths.enabled=Aktifleştirilmiş
auths.default=Varsayılan
auths.updated=Güncellendi
auths.auth_type=Yetki Türü
auths.auth_name=Yetki İsmi
auths.security_protocol=Security Protocol
auths.security_protocol=Güvenlik Protokolü
auths.domain=Alan Adı
auths.host=Sunucu
auths.port=Port
auths.bind_dn=Bağlama DN'i
auths.bind_dn_helper=Kullanıcı adı için yer tutucu olarak '%s' kullanabilirsiniz, Örneğin DOM\%s
auths.bind_password=Bağlama Parolası
auths.bind_password_helper=Uyarı: Bu parola, ham halde bir metin dosyası içerisinde saklanacaktır. Yüksek izinli bir hesap kullanmayın.
auths.user_base=Kullanıcı Arama Tabanı
auths.user_dn=Kullanıcı DN'i
auths.attribute_username=Kullanıcı özelliği
auths.attribute_username_placeholder=Kullanıcı adı için giriş yapma form alanı kullanmak için boş bırakın.
auths.attribute_name=Ad özelliği
auths.attribute_name=İlk Ad Özelliği
auths.attribute_surname=Soyad özelliği
auths.attribute_mail=E-posta özelliği
auths.verify_group_membership=Grup üyeliğini doğrula
auths.group_search_base_dn=Grup Arama Tabanı DN
auths.group_filter=Grup Filtresi
auths.group_attribute_contain_user_list=Kullanıcı Listesi İçeren Grup Özelliği
auths.user_attribute_listed_in_group=Grupta Listelenen Kullanıcı Özelliği
auths.attributes_in_bind=Bağlı DN tabanındaki özellikleri çek
auths.filter=Kullanıcı Filtresi
auths.admin_filter=Yönetici Filtresi
@@ -946,9 +1156,9 @@ auths.enable_tls=TLS Şifrelemeyi Aktifleştir
auths.skip_tls_verify=TLS Doğrulamasını Atla
auths.pam_service_name=PAM Servis Adı
auths.enable_auto_register=Otomatik Kaydolmayı Aktifleştir
auths.tips=İpuçları
auths.edit=Yetkilendirme Ayarlarını Düzenle
auths.activated=Bu yetkilendirme aktif
auths.default_auth=Bu kimlik doğrulama varsayılan giriş kaynağıdır
auths.new_success=Yeni yetkilendirme '%s' başarıyla eklendi.
auths.update_success=Yetkilendirme ayarları başarıyla güncellendi.
auths.update=Yetkilendirme Ayarlarını Güncelle
@@ -957,86 +1167,187 @@ auths.delete_auth_title=Yetkilendirme Silme
auths.delete_auth_desc=Bu yetkilendirme silinecek. Devam etmek istiyor musunuz?
auths.still_in_used=Bu yetkilendirme hala bazı kullanıcılar tarafından kullanılıyor. Lütfen öncelikle bunları silin ya da başka oturum açma türlerine çevirin.
auths.deletion_success=Yetkilendirme başarıyla silindi!
auths.login_source_exist='%s' giriş kaynağı zaten mevcut.
auths.github_api_endpoint=API Uç Noktası
config.not_set=(ayarlı değil)
config.server_config=Sunucu Yapılandırması
config.app_name=Uygulama Adı
config.app_ver=Uygulama Sürümü
config.app_url=Uygulama Bağlantısı
config.domain=Alan Adı
config.offline_mode=Çevrim Dışı Modu
config.disable_router_log=Yönlendirici Log'larını Devre Dışı Bırak
config.brand_name=Marka adı
config.run_user=Çalıştırma Kullanıcısı
config.run_mode=Çalıştırma Modu
config.repo_root_path=Depo Kök Yolu
config.static_file_root_path=Sabit Dosya Kök Yolu
config.log_file_root_path=Log Dosyası Kök Yolu
config.script_type=Betik Türü
config.reverse_auth_user=Tersine Yetkilendirme Kullanıcısı
config.server.external_url=Dış URL
config.server.domain=Alan Adı
config.server.protocol=Protokol
config.server.http_addr=HTTP adresi
config.server.http_port=HTTP portu
config.server.cert_file=Sertifika dosyası
config.server.key_file=Anahtar dosyası
config.server.tls_min_version=En az TLS sürümü
config.server.unix_socket_permission=Unix soket izni
config.server.local_root_url=Yerel kök URL'si
config.server.offline_mode=Çevrimdışı kip
config.server.disable_router_log=Yönlendirici günlüğünü devre dışı bırak
config.server.enable_gzip=Gzip'i etkinleştir
config.server.app_data_path=Uygulama veri yolu
config.server.load_assets_from_disk=Varlıkları diskten yükle
config.server.landing_url=ılış URL'si
config.ssh_config=SSH Yapılandırması
config.ssh_enabled=Aktif
config.ssh_start_builtin_server=Hazır Sunucuyu Başlat
config.ssh_domain=Alan Adı
config.ssh_port=Port
config.ssh_listen_port=Port'u Dinle
config.ssh_root_path=Kök Yol
config.ssh_key_test_path=Anahtar Test Yolu
config.ssh_keygen_path=Keygen ('ssh-keygen') Yolu
config.ssh_minimum_key_size_check=Minimum Anahtar Uzunluğu Kontrolü
config.ssh_minimum_key_sizes=Minimum Anahtar Uzunlukları
config.ssh.enabled=Etkin
config.ssh.domain=Maruz kalan alan adı
config.ssh.port=Maruz kalan port
config.ssh.root_path=Kök yolu
config.ssh.keygen_path=Keygen yolu
config.ssh.key_test_path=Anahtar test yolu
config.ssh.minimum_key_size_check=En az anahtar boyutu denetimi
config.ssh.minimum_key_sizes=En az anahtar boyutları
config.ssh.rewrite_authorized_keys_at_start=Başlangıçta "yetkili_anahtarlar" ı yeniden yaz
config.ssh.start_builtin_server=Yerleşik sunucuyu başlat
config.ssh.listen_host=Ana makineyi dinle
config.ssh.listen_port=Port'u dinle
config.ssh.server_ciphers=Sunucu şifreleri
config.ssh.server_macs=Server MACs
config.repo_config=Depo Yapılandırması
config.repo.root_path=Kök yolu
config.repo.script_type=Betik türü
config.repo.ansi_chatset=ANSI karakter kümesi
config.repo.force_private=Özeli zorla
config.repo.max_creation_limit=En fazla oluşturma sınırı
config.repo.preferred_licenses=Tercih edilen lisanslar
config.repo.disable_http_git=HTTP Git'i devre dışı bırak
config.repo.enable_local_path_migration=Yerel yol göçünü etkinleştir
config.repo.enable_raw_file_render_mode=Ham dosya oluşturma modunu etkinleştir
config.repo.commits_fetch_concurrency=İşlemeler eşzamanlılık getirir
config.repo.editor.line_wrap_extensions=Düzenleyici satır kaydırma eklentileri
config.repo.editor.previewable_file_modes=Düzenleyici önizlenebilir dosya modları
config.repo.upload.enabled=Yükleme etkinleştirildi
config.repo.upload.temp_path=Yükleme geçici yolu
config.repo.upload.allowed_types=Yükleme kabul edilebilir türleri
config.repo.upload.file_max_size=Yükleme dosya boyutu sınırı
config.repo.upload.max_files=Yükleme dosya sınırı
config.db_config=Veritabanı Yapılandırması
config.db_type=Türü
config.db_host=Sunucu
config.db_name=İsim
config.db_user=Kullanıcı
config.db_ssl_mode=SSL Biçimi
config.db_ssl_mode_helper=(sadece "postgres" için)
config.db_path=Yol
config.db_path_helper=("sqlite3" ve "tidb" için)
config.service_config=Servis Yapılandırması
config.register_email_confirm=E-posta Onayı Gerekli
config.disable_register=Kaydolma Hizmet Dışı
config.show_registration_button=Kaydolma Tuşunu Göster
config.require_sign_in_view=Oturum Açma Görünümünü İste
config.mail_notify=E-posta Bildirimi
config.disable_key_size_check=Minimum Anahtar Uzunluğu Kontrolünü Devre Dışı Bırak
config.enable_captcha=Captcha'yı Aktifleştir
config.active_code_lives=Kod Yaşamlarını Aktifleştir
config.reset_password_code_lives=Kod Yaşamları Parolasını Yenile
config.webhook_config=Web İstekleri Yapılandırması
config.queue_length=Kuyruk Uzunluğu
config.deliver_timeout=Dağıtım Zaman Aşımı
config.skip_tls_verify=TLS Doğrulamasını Atla
config.mailer_config=Mailer Yapılandırması
config.mailer_enabled=Aktif
config.mailer_disable_helo=HELO'yu Devre Dışı Bırak
config.mailer_name=İsim
config.mailer_host=Sunucu
config.mailer_user=Kullanıcı
config.send_test_mail=Test E-Postası Gönder
config.test_mail_failed='%s' adresine test e-postası gönderimi başarısız: %v
config.test_mail_sent='%s' adresine test e-postası gönderildi.
config.oauth_config=OAuth Yapılandırması
config.oauth_enabled=Aktif
config.cache_config=Önbellek Yapılandırması
config.cache_adapter=Önbellek Uyarlayıcısı
config.cache_interval=Önbellek Aralığı
config.cache_conn=Önbellek Bağlantısı
config.db.type=Tür
config.db.host=Sunucu
config.db.name=Ad
config.db.schema=Schema
config.db.schema_helper=(for "postgres" only)
config.db.user=Kullanıcı
config.db.ssl_mode=SSL modu
config.db.ssl_mode_helper=(sadece "postgres" için)
config.db.path=Yol
config.db.path_helper=(sadece "sqlite3" için)
config.db.max_open_conns=En fazla açık bağlantı
config.db.max_idle_conns=En fazla boş bağlantı
config.security_config=Güvenlik yapılandırması
config.security.login_remember_days=Giriş günlerini hatırla
config.security.cookie_remember_name=Çerezi hatırla
config.security.cookie_username=Kullanıcı adı çerezi
config.security.cookie_secure=Güvenli çerezi etkinleştir
config.security.reverse_proxy_auth_user=Ters proxy kimlik doğrulama başlığı
config.security.enable_login_status_cookie=Giriş durumu çerezini etkinleştir
config.security.login_status_cookie_name=Giriş durumu çerezi
config.security.local_network_allowlist=Local network allowlist
config.email_config=E-Posta yapılandırması
config.email.enabled=Etkin
config.email.subject_prefix=Konu öneki
config.email.host=Sunucu
config.email.from=Kimden
config.email.user=Kullanıcı
config.email.disable_helo=HELO'yu Devre Dışı Bırak
config.email.helo_hostname=HELO sunucu adı
config.email.skip_verify=Sertifika doğrulamayı atla
config.email.use_certificate=Özel sertifika kullan
config.email.cert_file=Sertifika dosyası
config.email.key_file=Anahtar dosyası
config.email.use_plain_text=Düz metin kullan
config.email.add_plain_text_alt=Düz metin alternatifi ekle
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.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=Oturum Yapılandırması
config.session_provider=Oturum Sağlayıcı
config.provider_config=Sağlayıcı Yapılandırması
config.cookie_name=Çerez Adı
config.enable_set_cookie=Çerezleri Aktifleştir
config.gc_interval_time=GC Aralık Zamanı
config.session_life_time=Oturum Yaşam Zamanı
config.https_only=Yalnız HTTPS
config.cookie_life_time=Çerez Yaşam Zamanı
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=Önbellek Yapılandırması
config.cache.adapter=Adapter
config.cache.interval=GC interval
config.cache.host=Host
config.http_config=HTTP Yapılandırması
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=Resim Yapılandırması
config.picture_service=Resim Servisi
config.disable_gravatar=Gravatar Hizmet Dışı
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=Web İstekleri Yapılandırması
config.webhook.types=Types
config.webhook.deliver_timeout=Deliver timeout
config.webhook.skip_tls_verify=Skip TLS verify
config.git_config=Git Yapılandırması
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=Farklı dosya sınırı (tek bir fark için)
config.git.gc_args=GC değişkenleri
config.git.migrate_timeout=Göç zaman aşımı
config.git.mirror_timeout=Yansı getirme zaman aşımı
config.git.clone_timeout=Klon zaman aşımı
config.git.pull_timeout=Çekme zaman aşımı
config.git.gc_timeout=GC zaman aşımı
config.lfs_config=LFS yapılandırması
config.lfs.storage=Depolama
config.lfs.objects_path=Nesnelerin yolu
config.log_config=Log Yapılandırması
config.log_mode=Log Modu
config.log_file_root_path=Log Dosyası Kök Yolu
config.log_mode=Mod
config.log_options=Seçenekler
monitor.cron=Cron Görevleri
monitor.name=İsim
@@ -1067,17 +1378,24 @@ notices.delete_success=Sistem bildirimleri başarıyla silindi.
create_repo=depo <a href="%s">%s</a> oluşturuldu
rename_repo=<code>%[1]s</code> olan depo adını <a href="%[2]s">%[3]s</a> buna çevirdi
commit_repo=<a href="%[1]s">%[4]s</a> zamanında <a href="%[1]s/src/%[2]s">%[3]s</a> buraya push yaptı
compare_commits=Bu %d işlemeler için karşılaştırmaları görüntüle
transfer_repo=depo <code>%s</code> <a href="%s">%s</a>'a aktarıldı
create_issue=`<a href="%s/issues/%s">%s#%[2]s</a> sorununu açtı`
close_issue=`<a href="%s/issues/%s">%s#%[2]s</a> sorununu kapattı`
reopen_issue=`<a href="%s/issues/%s">%s#%[2]s</a> sorununu tekrar açtı`
comment_issue=`<a href="%s/issues/%s">%s#%[2]s</a> sorununa yorum yazdı`
create_pull_request=`<a href="%s/pulls/%s">%s#%[2]s</a> değişiklik isteğini oluşturdu`
close_pull_request=`<a href="%s/pulls/%s">%s#%[2]s</a> değişiklik isteğini kapattı`
reopen_pull_request=`<a href="%s/pulls/%s">%s#%[2]s</a> değişiklik isteğini tekrar açtı`
comment_issue=`<a href="%s/issues/%s">%s#%[2]s</a> sorununa yorum yazdı`
merge_pull_request=`<a href="%s/pulls/%s">%s#%[2]s</a> değişim isteğini birleştirdi`
transfer_repo=depo <code>%s</code> <a href="%s">%s</a>'a aktarıldı
create_branch=<a href="%[1]s/src/%[2]s">%[3]s</a> at <a href="%[1]s">%[4]s</a> yeni şubesi oluşturuldu
delete_branch=<code>%[2]s</code> 'ın <a href="%[1]s">%[3]s</a> şubesi silindi
push_tag=etiket <a href="%s/src/%s">%[2]s</a> <a href="%[1]s">%[3]s</a>'a itelendi
compare_commits=Bu %d işlemeler için karşılaştırmaları görüntüle
delete_tag=<code>%[2]s</code> 'ın <a href="%[1]s">%[3]s</a> etiketi silindi
fork_repo=<a href="%s">%s</a> için bir depo çatalladı
mirror_sync_push=işlemeler yansıdan <a href="%[1]s">%[4]s</a> deposundaki <a href="%[1]s/src/%[2]s"> dalına eşitlendi
mirror_sync_create=yansıdan yeni <a href="%s/src/%s">%[2]s</a> referansı <a href="%[1]s">%[3]s</a> konumuna eşitlendi
mirror_sync_delete=yansıdan <a href="%[1]s">%[3]s</a> konumundaki <code>%[2]s</code> referansı eşitlendi ve silindi
[tool]
ago=önce
@@ -1099,6 +1417,7 @@ months=%d ay %s
years=%d yıl %s
raw_seconds=saniyeler
raw_minutes=dakikalar
raw_hours=saat
[dropzone]
default_message=Dosyaları yüklemek için sürükleyin veya tıklayın.

1427
conf/locale/locale_uk-UA.ini Normal file

File diff suppressed because it is too large Load Diff

1427
conf/locale/locale_vi-VN.ini Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -9,7 +9,6 @@ sign_out=登出
sign_up=註冊
register=註冊
website=網站
version=版本
page=頁面
template=樣板
language=語言
@@ -44,23 +43,27 @@ issues=問題
cancel=取消
[status]
page_not_found=Page Not Found
internal_server_error=Internal Server Error
[install]
install=安裝頁面
title=首次安裝步驟
docker_helper=如果您正在使用 Docker 容器運行 Gogs請務必先仔細閱讀 <a target="_blank" href="%s">官方文檔</a> 後再對本頁面進行填寫。
requite_db_desc=Gogs 要求安裝 MySQLPostgreSQLSQLite3 TiDB
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
db_title=數據庫設置
db_type=資料庫類型
host=主機
user=帳號
password=密碼
db_name=資料庫名稱
db_schema=Schema
db_helper=如果您使用 MySQL請使用 INNODB 引擎以及 utf8_general_ci 字符集。
ssl_mode=SSL 模式
path=數據庫文件路徑
sqlite_helper=SQLite3 或 TiDB 資料庫檔案路徑。<br>作為以服務執行時,請使用絕對路徑。
err_empty_db_path=SQLite3 或 TiDB 的數據庫路徑不能為空。
err_invalid_tidb_name=TiDB 數據庫名稱不允許包含字符 "." 或 "-" 。
sqlite_helper=The file path of SQLite3 database. <br>Please use absolute path when you start as service.
err_empty_db_path=SQLite3 database path cannot be empty.
no_admin_and_disable_registration=您不能夠在未創建管理員用戶的情況下禁止註冊。
err_empty_admin_password=管理員密碼不能為空。
@@ -75,12 +78,16 @@ domain=域名
domain_helper=該設置影響 SSH 複製地址。
ssh_port=SSH 埠
ssh_port_helper=您的 SSH 服務正在使用此埠號若要禁用SSH 功能請保持欄位空白。
use_builtin_ssh_server=Use Builtin SSH Server
use_builtin_ssh_server_popup=Start builtin SSH server for Git operations to distinguish from system SSH daemon.
http_port=HTTP 端口號
http_port_helper=應用監聽的端口號
app_url=應用程式網址
app_url_helper=該設置影響 HTTP/HTTPS 複製地址和一些郵箱中的連結。
log_root_path=日誌路徑
log_root_path_helper=寫入日誌檔目錄
enable_console_mode=Enable Console Mode
enable_console_mode_popup=In addition to file mode, also print logs to console.
optional_title=可選設置
email_title=電子郵件服務設定
@@ -96,6 +103,8 @@ offline_mode=啓用離線模式
offline_mode_popup=在部署模式下也禁用從 CDN 獲取文件,所有的資源將從本地伺服器獲取。
disable_gravatar=禁用 Gravatar 服務
disable_gravatar_popup=禁用 Gravatar 和自定義源,僅使用由用戶上傳或默認的頭像。
federated_avatar_lookup=Enable Federated Avatars Lookup
federated_avatar_lookup_popup=Enable federated avatars lookup to use federated open source service based on libravatar.
disable_registration=禁止用戶自主註冊
disable_registration_popup=禁止用戶自主註冊功能,只有管理員可以添加帳號。
enable_captcha=啟用驗證碼服務
@@ -114,7 +123,10 @@ sqlite3_not_available=您所使用的發行版本不支持 SQLite3請從 %s
invalid_db_setting=數據庫設置不正確:%v
invalid_repo_path=倉庫根目錄設置不正確:%v
run_user_not_match=執行系統用戶非當前用戶:%s -> %s
smtp_host_missing_port=SMTP Host port missing from address.
invalid_smtp_from=SMTP From field is invalid: %v
save_config_failed=應用配置保存失敗:%v
init_failed=Failed to initialize application: %v
invalid_admin_setting=管理員帳戶設置不正確:%v
install_success=您好!我們很高興您選擇使用 Gogs祝您使用愉快代碼從此無 BUG
invalid_log_root_path=日誌根目錄無效: %v
@@ -124,6 +136,7 @@ uname_holder=用戶名或郵箱
password_holder=密碼
switch_dashboard_context=切換控制面版用戶
my_repos=我的倉庫
show_more_repos=Show more repositories...
collaborative_repos=參與協作的倉庫
my_orgs=我的組織
my_mirrors=我的鏡像
@@ -134,6 +147,7 @@ issues.in_your_repos=屬於該用戶倉庫的
[explore]
repos=探索倉庫
users=用戶
organizations=Organizations
search=搜索
[auth]
@@ -142,16 +156,19 @@ register_hepler_msg=已經註冊?立即登錄!
social_register_hepler_msg=已經註冊?立即綁定!
disable_register_prompt=對不起,註冊功能已被關閉。請聯系網站管理員。
disable_register_mail=對不起,註冊郵箱確認功能已被關閉。
auth_source=Authentication Source
local=Local
remember_me=記住登錄
forgot_password=忘記密碼
forget_password=忘記密碼?
sign_up_now=還沒帳戶?馬上註冊。
confirmation_mail_sent_prompt=一封新的確認郵件已經被發送至 <b>%s</b>,請檢查您的收件箱並在 %d 小時內完成確認註冊操作。
active_your_account=激活您的帳戶
prohibit_login=Login Prohibited
prohibit_login_desc=Your account is prohibited from logging in. Please contact the site admin.
resent_limit_prompt=對不起,您請求發送激活郵件過於頻繁,請等待 3 分鐘後再試!
has_unconfirmed_mail=%s 您好,您有一封發送至( <b>%s</b>) 但未被確認的郵件。如果您未收到激活郵件,或需要重新發送,請單擊下方的按鈕。
resend_mail=單擊此處重新發送確認郵件
email_not_associate=您輸入的郵箱地址未被關聯到任何帳號!
send_reset_mail=單擊此處(重新)發送您的密碼重置郵件
reset_password=重置密碼
invalid_code=對不起,您的確認代碼已過期或已失效。
@@ -159,6 +176,14 @@ reset_password_helper=單擊此處重置密碼
password_too_short=密碼長度不能少於 6 位!
non_local_account=Non-local accounts cannot change passwords through Gogs.
login_two_factor=Two-factor Authentication
login_two_factor_passcode=Authentication Passcode
login_two_factor_enter_recovery_code=Enter a two-factor recovery code
login_two_factor_recovery=Two-factor Recovery
login_two_factor_recovery_code=Recovery Code
login_two_factor_enter_passcode=Enter a two-factor passcode
login_two_factor_invalid_recovery_code=Recovery code already used or invalid.
[mail]
activate_account=請激活您的帳戶
activate_email=請驗證您的郵箱地址
@@ -184,9 +209,17 @@ TeamName=團隊名稱
AuthName=認證名稱
AdminEmail=管理員郵箱
NewBranchName=New branch name
CommitSummary=Commit summary
CommitMessage=Commit message
CommitChoice=Commit choice
TreeName=File path
Content=內容
require_error=不能為空。
alpha_dash_error=必須為英文字母、阿拉伯數字或橫線(-_
alpha_dash_dot_error=必須為英文字母、阿拉伯數字、橫線(-_或點。
alpha_dash_dot_slash_error=` must be alphanumeric, dash (-_), dot or slash characters.`
size_error=長度必須為 %s。
min_size_error=長度最小為 %s 個字符。
max_size_error=長度最大為 %s 個字符。
@@ -203,6 +236,7 @@ org_name_been_taken=組織名稱已經被佔用。
team_name_been_taken=團隊名稱已經被佔用。
email_been_used=郵箱地址已經被使用。
username_password_incorrect=用戶名或密碼不正確。
auth_source_mismatch=The authentication source selected is not associated with the user.
enterred_invalid_repo_name=請檢查您輸入的倉庫名稱是正確。
enterred_invalid_owner_name=請檢查您輸入的新所有者用戶名是否正確。
enterred_invalid_password=請檢查您輸入的密碼是否正確。
@@ -224,24 +258,24 @@ change_avatar=Change your avatar
join_on=加入於
repositories=倉庫列表
activity=公開活動
followers=
followers=
starred=已讚好
following=
following=
follow=關注
unfollow=取消關注
form.name_reserved=用戶名 '%s' 是被保留的。
form.name_pattern_not_allowed=用戶名不允許 '%s' 的格式。
form.name_not_allowed=User name or pattern %q is not allowed.
[settings]
profile=個人信息
password=修改密碼
avatar=頭像
ssh_keys=管理 SSH 密鑰
social=社交帳號綁定
applications=管理授權應用
security=安全
repos=倉庫
orgs=管理組織
applications=管理授權應用
delete=刪除帳戶
uid=用戶 ID
public_profile=公開信息
profile_desc=您的郵箱地址將會被公開,並被用於接收帳戶的所有提醒和通知。
@@ -256,6 +290,8 @@ change_username_prompt=該操作將會影響到所有與您帳戶有關的鏈接
continue=繼續操作
cancel=取消操作
lookup_avatar_by_mail=Lookup Avatar by mail
federated_avatar_lookup=Federated Avatar Lookup
enable_custom_avatar=啟動自定義頭像
choose_new_avatar=選擇新的頭像
update_avatar=更新頭像設置
@@ -305,10 +341,31 @@ no_activity=沒有最近活動
key_state_desc=該密鑰在 7 天內被使用過
token_state_desc=此token在過去七天內曾經被使用過
manage_social=管理關聯社交帳戶
social_desc=以下是與您帳戶所關聯的社交帳號,如果您發現有陌生的關聯,請立即解除綁定!
unbind=解除綁定
unbind_success=社交帳號解除綁定成功!
two_factor=Two-factor Authentication
two_factor_status=狀態:
two_factor_on=開啟
two_factor_off=關閉
two_factor_enable=啟用
two_factor_disable=禁用
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_enable_title=Enable Two-factor Authentication
two_factor_scan_qr=Please use your authentication application to scan the image:
two_factor_or_enter_secret=或者輸入密碼:
two_factor_then_enter_passcode=然後輸入驗證碼:
two_factor_verify=驗證
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_success=Two-factor authentication has enabled for your account successfully!
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_regenerate_recovery_codes=Regenerate Recovery Codes
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_disable_title=Disable Two-factor Authentication
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!
manage_access_token=管理個人操作令牌
generate_new_token=生成新的令牌
@@ -321,6 +378,16 @@ delete_token=删除令牌
access_token_deletion=刪除個人的連接token
access_token_deletion_desc=刪除此連接token將會刪除與相關應用程式的連結。您想要繼續嗎?
delete_token_success=您的連接token已成功刪除。請記得更新您的應用程式。
token_name_exists=Token with same name already exists.
orgs.none=You are not a member of any organizations.
orgs.leave_title=Leave organization
orgs.leave_desc=You will lose access to all repositories and teams after you left the organization. Do you want to continue?
repos.leave=Leave
repos.leave_title=Leave repository
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!
delete_account=刪除當前帳戶
delete_prompt=刪除操作會永久清除您的帳戶信息,並且 <strong>不可恢復</strong>
@@ -333,7 +400,9 @@ owner=擁有者
repo_name=倉庫名稱
repo_name_helper=偉大的倉庫名稱一般都較短、令人深刻並且 <strong>獨一無二</strong> 的。
visibility=可見度
unlisted=Unlisted
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_fork_helper=(修改該值將會影響到所有派生倉庫)
clone_helper=不知道如何操作?訪問 <a target="_blank"href="%s"> 帮助説明</a>
@@ -342,7 +411,7 @@ fork_from=派生自
fork_visiblity_helper=派生倉庫無法修改可見性。
repo_desc=倉庫描述
repo_lang=倉庫語言
repo_lang_helper=請選擇 .gitignore 文件
repo_gitignore_helper=Select .gitignore templates
license=授權許可
license_helper=請選擇授權許可文件
readme=Readme
@@ -355,27 +424,30 @@ mirror_prune_desc=Remove any remote-tracking references that no longer exist on
mirror_interval=鏡像同步周期(小時)
mirror_address=鏡像地址
mirror_address_desc=請在位址中包括必要的使用者憑據。
mirror_last_synced=Last Synced
watchers=關注者
stargazers=稱讚者
forks=派生倉庫
repo_description_helper=Description of repository. Maximum 512 characters length.
repo_description_length=Available characters
form.reach_limit_of_creation=擁有者已達到儲存庫最大的新增上限 %d。
form.name_reserved=倉庫名稱 '%s' 是被保留的。
form.name_pattern_not_allowed=倉庫名稱不允許 '%s' 的格式。
form.name_not_allowed=Repository name or pattern %q is not allowed.
need_auth=需要授權驗證
migrate_type=遷移類型
migrate_type_helper=該倉庫將是一個 <span class="text blue">鏡像</span>
migrate_repo=遷移倉庫
migrate.clone_address=複製地址
migrate.clone_address_desc=該地址可以是 HTTP/HTTPS/GIT URL 或本地服務器路徑。
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.permission_denied=您並沒有導入本地倉庫的權限。
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
mirror_from=镜像来自
forked_from=派生自
fork_from_self=無法派生已經擁有的倉庫!
copy_link=複製連結
copy_link_success=複製成功!
copy_link_error=請按下 ⌘-C 或 Ctrl-C 複製
@@ -391,9 +463,9 @@ quick_guide=快速幫助
clone_this_repo=複製當前倉庫
create_new_repo_command=從命令行創建一個新的倉庫
push_exist_repo=從命令行推送已經創建的倉庫
repo_is_empty=這倉庫不包含任何內容,請稍後再訪問!
bare_message=This repository does not have any content yet.
code=代碼
files=Files
branch=分支
tree=目錄樹
filter_branch_and_tag=過濾分支或標籤
@@ -404,12 +476,63 @@ pulls=合併請求
labels=標籤
milestones=里程碑
commits=提交歷史
git_branches=Branches
releases=版本發佈
file_raw=原始文件
file_history=文件歷史
file_view_raw=查看原始文件
file_permalink=永久連結
file_too_large=This file is too large to be shown
video_not_supported_in_browser=Your browser doesn't support HTML5 video tag.
branches.overview=Overview
branches.active_branches=Active Branches
branches.stale_branches=Stale Branches
branches.all=All Branches
branches.updated_by=Updated %[1]s by %[2]s
branches.change_default_branch=Change Default Branch
editor.new_file=New file
editor.upload_file=Upload file
editor.edit_file=Edit file
editor.preview_changes=Preview Changes
editor.cannot_edit_non_text_files=Cannot edit non-text files
editor.edit_this_file=Edit this file
editor.must_be_on_a_branch=You must be on a branch to make or propose changes to this file
editor.fork_before_edit=You must fork this repository before editing the file
editor.delete_this_file=Delete this file
editor.must_have_write_access=You must have write access to make or propose changes to this file
editor.file_delete_success=File '%s' has been deleted successfully!
editor.name_your_file=Name your file...
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.or=or
editor.cancel_lower=cancel
editor.commit_changes=Commit Changes
editor.add_tmpl=Add '%s/<filename>'
editor.add=Add '%s'
editor.update=Update '%s'
editor.delete=Delete '%s'
editor.commit_message_desc=Add an optional extended description...
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.new_branch_name_desc=New branch name...
editor.cancel=Cancel
editor.filename_cannot_be_empty=Filename cannot be empty.
editor.branch_already_exists=Branch '%s' already exists in this repository.
editor.directory_is_a_file=Entry '%s' in the parent path is a file not a directory in this repository.
editor.file_is_a_symlink=The file '%s' is a symlink that cannot be modified from the web editor.
editor.filename_is_a_directory=The filename '%s' is an existing directory in this repository.
editor.file_editing_no_longer_exists=The file '%s' you are editing no longer exists in the repository.
editor.file_changed_while_editing=File content has been changed since you started editing. <a target="_blank" href="%s">Click here</a> to see what have been changed or <strong>press commit again</strong> to overwrite those changes.
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.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.unable_to_upload_files=Failed to upload files to '%s' with error: %v
editor.upload_files_to_dir=Upload files to '%s'
commits.commit_history=Commit History
commits.commits=次代碼提交
commits.search=搜索提交歷史
commits.find=查找
@@ -435,6 +558,11 @@ issues.create=創建問題
issues.new_label=創建標籤
issues.new_label_placeholder=標籤名稱...
issues.create_label=創建標籤
issues.label_templates.title=Load a predefined set of labels
issues.label_templates.info=There aren't any labels yet. You can click on the "New Label" button above to create one or use a predefined set below.
issues.label_templates.helper=Select a label set
issues.label_templates.use=Use this label set
issues.label_templates.fail_to_load_file=Failed to load label template file '%s': %v
issues.open_tab=%d 個開啓中
issues.close_tab=%d 個已關閉
issues.filter_label=標籤篩選
@@ -462,7 +590,8 @@ issues.next=下一頁
issues.open_title=開啟中
issues.closed_title=已關閉
issues.num_comments=%d 條評論
issues.commented_at=`於 <a id="%[1]s" href="#%[1]s">%[2]s</a> 評論`
issues.commented_at=`commented <a href="#%s">%s</a>`
issues.delete_comment_confirm=Are you sure you want to delete this comment?
issues.no_content=尚未有任何內容
issues.close_issue=關閉
issues.close_comment_issue=關閉及評論
@@ -475,8 +604,7 @@ issues.commit_ref_at=`在代碼提交 <a id="%[1]s" href="#%[1]s">%[2]s</a> 中
issues.poster=發佈者
issues.collaborator=協同者
issues.owner=所有者
issues.sign_up_for_free=免費註冊
issues.sign_in_require_desc=及加入到對話當中。如果您已經註冊,可以直接 <a href="%s">登錄及評論</a>
issues.sign_in_require_desc=<a href="%s">Sign in</a> to join this conversation.
issues.edit=編輯
issues.cancel=取消
issues.save=保存
@@ -491,6 +619,8 @@ issues.label_deletion=刪除標籤
issues.label_deletion_desc=刪除該標籤將會移除所有問題中相關的訊息。是否繼續?
issues.label_deletion_success=標籤刪除成功!
issues.num_participants=%d 參與者
issues.attachment.open_tab=`Click to see "%s" in a new tab`
issues.attachment.download=`Click to download "%s"`
pulls.new=創建合併請求
pulls.compare_changes=對比文件變化
@@ -500,6 +630,7 @@ pulls.compare_compare=對比文件變化
pulls.filter_branch=過濾分支
pulls.no_results=未找到結果
pulls.nothing_to_compare=基準和對比分支代碼已經同步,無需進行對比。
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history.
pulls.has_pull_request=`已經存在目標分支的合併請求:<a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
pulls.create=創建合併請求
pulls.title_desc=請求將 %[1]d 次代碼提交從 <code>%[2]s</code> 合併至 <code>%[3]s</code>
@@ -515,8 +646,13 @@ pulls.is_checking=該合併請求正在進行衝突檢查,請稍後再刷新
pulls.can_auto_merge_desc=這個拉請求可以自動合併。
pulls.cannot_auto_merge_desc=由於存在衝突,不能自動合併這推送請求。
pulls.cannot_auto_merge_helper=請手動合併來解決衝突。
pulls.create_merge_commit=Create a merge commit
pulls.rebase_before_merging=Rebase before merging
pulls.commit_description=Commit Description
pulls.merge_pull_request=合併請求
pulls.open_unmerged_pull_exists=`由於已經存在來自相同倉庫和合併信息的未合併請求(#%d您無法執行重新開啟操作。`
pulls.delete_branch=Delete Branch
pulls.delete_branch_has_new_commits=Branch cannot be deleted because it has new commits after mergence.
milestones.new=新的里程碑
milestones.open_tab=%d 開啟中
@@ -567,26 +703,61 @@ settings.collaboration.admin=Admin
settings.collaboration.write=Write
settings.collaboration.read=Read
settings.collaboration.undefined=Undefined
settings.branches=Branches
settings.branches_bare=You cannot manage branches for bare repository. Please push some content first.
settings.default_branch=Default Branch
settings.default_branch_desc=The default branch is considered the "base" branch for code commits, pull requests and online editing.
settings.update=Update
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.protected_branches=Protected Branches
settings.protected_branches_desc=Protect branches from force pushing, accidental deletion and whitelist code committers.
settings.choose_a_branch=Choose a branch...
settings.branch_protection=Branch Protection
settings.branch_protection_desc=Please choose protect options for branch <b>%s</b>.
settings.protect_this_branch=Protect this branch
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_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_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_search_users=Search users
settings.protect_whitelist_teams=Teams for which members of them can push to this branch
settings.protect_whitelist_search_teams=Search teams
settings.update_protect_branch_success=Protect options for this branch has been updated successfully!
settings.hooks=管理 Web 鉤子
settings.githooks=管理 Git 鉤子
settings.basic_settings=基本設置
settings.mirror_settings=Mirror Settings
settings.sync_mirror=Sync Now
settings.mirror_sync_in_progress=Mirror syncing is in progress, please refresh page in about a minute.
settings.site=官方網站
settings.update_settings=更新倉庫設置
settings.change_reponame_prompt=該操作將會影響到所有與該倉庫有關的鏈接
settings.advanced_settings=高級設置
settings.wiki_desc=啟用 Wiki 以允許用戶協作文檔
settings.wiki_desc=Enable wiki system
settings.use_internal_wiki=Use builtin wiki
settings.allow_public_wiki_desc=Allow public access to wiki when repository is private
settings.use_external_wiki=使用外部 wiki
settings.external_wiki_url=外部 Wiki 連結
settings.external_wiki_url_desc=當分頁上按一下,訪客將會重新導到 URL。
settings.issues_desc=啟用內置的輕量級問題管理系統
settings.issues_desc=Enable issue tracker
settings.use_internal_issue_tracker=Use builtin lightweight issue tracker
settings.allow_public_issues_desc=Allow public access to issues when repository is private
settings.use_external_issue_tracker=使用外部的問題管理系統
settings.external_tracker_url=External Issue Tracker URL
settings.external_tracker_url_desc=Visitors will be redirected to URL when they click on the tab.
settings.tracker_url_format=外部問題管理系統的 URL 格式
settings.tracker_issue_style=External Issue Tracker Naming Style:
settings.tracker_issue_style.numeric=Numeric <span class="ui light grey text">(1234)</span>
settings.tracker_issue_style.alphanumeric=Alphanumeric <span class="ui light grey text">(ABC-123, DEFG-234, ...)</span>
settings.tracker_issue_style.numeric=Numeric
settings.tracker_issue_style.alphanumeric=Alphanumeric
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.allow_rebase_merge=Allow use rebase to merge commits
settings.danger_zone=危險操作區
settings.cannot_fork_to_same_owner=You cannot fork a repository to its original owner.
settings.new_owner_has_same_repo=新的倉庫擁有者已經存在同名倉庫!
settings.convert=轉換為正規倉庫
settings.convert_desc=您可以將此鏡像轉成正規倉庫。此動做不可逆。
@@ -605,7 +776,7 @@ settings.wiki_deletion_success=Repository wiki data have been erased successfull
settings.delete=刪除本倉庫
settings.delete_desc=刪除倉庫操作不可逆轉,請三思而後行。
settings.delete_notices_1=- 此操作 <strong>不可以</strong> 被回滾。
settings.delete_notices_2=- 此操作將永久刪除該倉庫,包括 Git 數據、 問題、 評論和協作者的操作權限。
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.deletion_success=倉庫刪除成功!
settings.update_settings_success=倉庫設置更新成功!
@@ -621,20 +792,25 @@ settings.collaborator_deletion_desc=This user will no longer have collaboration
settings.remove_collaborator_success=被操作的協作者已經被收回權限!
settings.search_user_placeholder=搜索用戶...
settings.org_not_allowed_to_be_collaborator=Organization is not allowed to be added as a collaborator.
settings.user_is_org_member=被操作的用戶是組織成員,因此無法添加為協作者!
settings.add_webhook=添加 Web 鉤子
settings.hooks_desc=Web 鉤子允許您設定在 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=添加 Web 鉤子
settings.webhook_deletion=刪除 Web 鉤子
settings.webhook_deletion_desc=刪除該 Web 鉤子將會刪除與其有關的信息和推送歷史。是否繼續?
settings.webhook_deletion_success=Web 鉤子刪除成功!
settings.webhook.test_delivery=測試推送
settings.webhook.test_delivery_desc=生成並推送一個模擬的 Push 事件
settings.webhook.test_delivery_success=測試推送已經加入到隊列,請耐心等待數秒再刷新推送記錄。
settings.webhook.redelivery=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.request=請求內容
settings.webhook.response=響應內容
settings.webhook.headers=標題
settings.webhook.payload=推送內容
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 本身提供的功能,以下為 Gogs 所支持的鉤子列表。
settings.githook_edit_desc=如果鉤子未啟動,則會顯示樣例文件中的內容。如果想要刪除某個鉤子,則提交空白文本即可。
settings.githook_name=鉤子名稱
@@ -644,6 +820,7 @@ settings.add_webhook_desc=我們會通過 <code>POST</code> 請求將訂閱事
settings.payload_url=推送地址
settings.content_type=數據格式
settings.secret=密鑰文本
settings.secret_desc=Secret will be sent as SHA256 HMAC hex digest of payload via <code>X-Gogs-Signature</code> header.
settings.slack_username=服務名稱
settings.slack_icon_url=圖標 URL
settings.slack_color=顏色代碼
@@ -653,8 +830,20 @@ settings.event_send_everything=推送 <strong>所有</strong> 事件
settings.event_choose=讓我選擇我的需要
settings.event_create=創建
settings.event_create_desc=創建分支或標籤
settings.event_delete=Delete
settings.event_delete_desc=Branch or tag deleted
settings.event_fork=Fork
settings.event_fork_desc=Repository forked
settings.event_push=推送
settings.event_push_desc=Git 倉庫推送
settings.event_issues=Issues
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
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_issue_comment=Issue Comment
settings.event_issue_comment_desc=Issue comment created, edited, or deleted.
settings.event_release=Release
settings.event_release_desc=Release published in a repository.
settings.active=是否激活
settings.active_helper=當指定事件發生時我們將會觸發此 Web 鉤子。
settings.add_hook_success=Web 鉤子添加成功!
@@ -664,10 +853,13 @@ settings.delete_webhook=刪除 Web 鉤子
settings.recent_deliveries=最近推送記錄
settings.hook_type=鉤子類型
settings.add_slack_hook_desc=為您的倉庫增加 <a href="%s">Slack</a> 集成。
settings.add_discord_hook_desc=Add <a href="%s">Discord</a> integration to your repository.
settings.add_dingtalk_hook_desc=Add <a href="%s">Dingtalk</a> integration to your repository.
settings.slack_token=令牌
settings.slack_domain=域名
settings.slack_channel=頻道
settings.deploy_keys=管理部署密鑰
settings.deploy_keys_helper=<b>Common Gotcha!</b> If you're looking for adding personal public keys, please add them in your <a href="%s%s">account settings</a>.
settings.add_deploy_key=添加部署密鑰
settings.deploy_key_desc=部署密鑰僅具有隻讀權限,它在功能上和個人用戶的公開密鑰有本質區別。
settings.no_deploy_keys=您還沒有添加任何部署密鑰。
@@ -679,6 +871,8 @@ settings.add_key_success=新的部署密鑰 '%s' 添加成功!
settings.deploy_key_deletion=刪除部署密鑰
settings.deploy_key_deletion_desc=刪除該部署密鑰會移除本倉庫所有相關的操作權限。是否繼續?
settings.deploy_key_deletion_success=刪除部署密鑰成功!
settings.description_desc=Description of repository. Maximum 512 characters length.
settings.description_length=Available characters
diff.browse_source=瀏覽代碼
diff.parent=父節點
@@ -690,14 +884,13 @@ diff.show_unified_view=統一視圖
diff.stats_desc=共有 <strong> %d 個文件被更改</strong>,包括 <strong>%d 次插入</strong> 和 <strong>%d 次删除</strong>
diff.bin=二進制
diff.view_file=查看文件
diff.file_supressed=File diff supressed because it is too large
diff.file_suppressed=File diff suppressed because it is too large
diff.too_many_files=Some files were not shown because too many files changed in this diff
release.releases=版本發佈
release.new_release=發佈新版本
release.draft=草稿
release.prerelease=預發佈版本
release.stable=穩定
release.edit=編輯
release.ahead=在該版本發佈之後已有 <strong>%d</strong> 次代碼提交到 %s 分支
release.source_code=源代碼
@@ -722,6 +915,7 @@ release.deletion=刪除版本發布操作
release.deletion_desc=刪除該版本發布將會移除相應的 Git 標籤。是否繼續?
release.deletion_success=版本發布刪除成功!
release.tag_name_already_exist=已經存在使用相同標籤的發佈版本。
release.tag_name_invalid=Tag name is not valid.
release.downloads=下載附件
[org]
@@ -743,8 +937,8 @@ team_name_helper=您可以使用該名稱來通知改組全體成員。
team_desc_helper=一句話描述這個團隊是做什麼的。
team_permission_desc=請選擇該團隊所具有的權限等級:
form.name_reserved=組織名稱 '%s' 是被保留的。
form.name_pattern_not_allowed=組織名稱不允許 '%s' 的格式。
form.name_not_allowed=Organization name or pattern %q is not allowed.
form.team_name_not_allowed=Team name or pattern %q is not allowed.
settings=組織設置
settings.options=基本設置
@@ -816,12 +1010,19 @@ first_page=首頁
last_page=末頁
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.operations=管理員操作
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> 個 Web 鉤子,<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_switch=開關
dashboard.select_operation_to_run=Please select operation to run
dashboard.operation_run=執行
dashboard.clean_unbind_oauth=清理未綁定社交帳號
dashboard.clean_unbind_oauth_success=所有未綁定社交數據清除成功!
@@ -835,8 +1036,8 @@ dashboard.git_gc_repos=對倉庫進行垃圾回收
dashboard.git_gc_repos_success=所有倉庫的垃圾回收已成功完成!
dashboard.resync_all_sshkeys=重新生成 '.ssh/authorized_keys' 文件(警告:不是 Gogs 的密鑰也會被刪除)
dashboard.resync_all_sshkeys_success=所有公鑰重新生成成功!
dashboard.resync_all_update_hooks=重新生成所有倉庫的 Update 鈎子(用於被修改的自定義配置文件)
dashboard.resync_all_update_hooks_success=已成功重新生成所有倉庫的 Update 鈎子!
dashboard.resync_all_hooks=Resync pre-receive, update and post-receive hooks of all repositories
dashboard.resync_all_hooks_success=All repositories' pre-receive, update and post-receive hooks have been resynced successfully.
dashboard.reinit_missing_repos=Reinitialize all repository records that lost Git files
dashboard.reinit_missing_repos_success=All repository records that lost Git files have been reinitialized successfully.
@@ -889,6 +1090,7 @@ users.edit_account=編輯用戶信息
users.max_repo_creation=最大儲存庫新增限制
users.max_repo_creation_desc=(設定 -1 使用全域預設限制)
users.is_activated=該用戶已被激活
users.prohibit_login=This account is prohibited to login
users.is_admin=該用戶具有管理員權限
users.allow_git_hook=該帳戶具有創建 Git 鉤子的權限
users.allow_import_local=該用戶具有導入本地倉庫的權限
@@ -910,12 +1112,14 @@ repos.private=私有庫
repos.watches=關註數
repos.stars=讚好數
repos.issues=問題數
repos.size=Size
auths.auth_manage_panel=認證管理面板
auths.auth_sources=Authentication Sources
auths.new=添加新認證源
auths.name=認證名稱
auths.type=認證類型
auths.enabled=已啟用
auths.default=Default
auths.updated=最後更新時間
auths.auth_type=認證類型
auths.auth_name=認證名稱
@@ -924,15 +1128,21 @@ auths.domain=域名
auths.host=主機地址
auths.port=主機端口
auths.bind_dn=綁定DN
auths.bind_dn_helper=You can use '%s' as placeholder for username, e.g. DOM\%s
auths.bind_password=綁定密碼
auths.bind_password_helper=警告:該密碼將會以明文的形式保存在數據庫中。請不要使用擁有高權限的帳戶!
auths.user_base=用戶搜索基準
auths.user_dn=User DN
auths.attribute_username=用戶名屬性
auths.attribute_username_placeholder=留空表示使用用戶登錄時所使用的用戶名
auths.attribute_name=名子屬性
auths.attribute_name=First Name Attribute
auths.attribute_surname=姓氏屬性
auths.attribute_mail=電子郵箱屬性
auths.verify_group_membership=Verify group membership
auths.group_search_base_dn=Group Search Base DN
auths.group_filter=Group Filter
auths.group_attribute_contain_user_list=Group Attribute Containing List of Users
auths.user_attribute_listed_in_group=User Attribute Listed in Group
auths.attributes_in_bind=Fetch attributes in Bind DN context
auths.filter=使用者篩選器
auths.admin_filter=管理者篩選器
@@ -946,9 +1156,9 @@ auths.enable_tls=啟用 TLS 加密
auths.skip_tls_verify=忽略 TLS 驗證
auths.pam_service_name=PAM 服務名稱
auths.enable_auto_register=允許授權用戶自動註冊
auths.tips=幫助提示
auths.edit=編輯認證設置
auths.activated=該授權認證已經啟用
auths.default_auth=This authentication is default login source
auths.new_success=新的認證源 "%s" 添加成功!
auths.update_success=認證設置更新成功!
auths.update=更新認證設置
@@ -957,86 +1167,187 @@ auths.delete_auth_title=刪除認證操作
auths.delete_auth_desc=該認證將被刪除。是否繼續?
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=認證源刪除成功!
auths.login_source_exist=Login source '%s' already exists.
auths.github_api_endpoint=API Endpoint
config.not_set=(not set)
config.server_config=服務器配置
config.app_name=應用名稱
config.app_ver=應用版本
config.app_url=應用 URL
config.domain=應用域名
config.offline_mode=離線模式
config.disable_router_log=關閉路由日志
config.brand_name=Brand name
config.run_user=執行用戶
config.run_mode=執行模式
config.repo_root_path=倉庫根目錄
config.static_file_root_path=靜態文件根目錄
config.log_file_root_path=日志文件根目錄
config.script_type=腳本類型
config.reverse_auth_user=反向代理認證
config.server.external_url=External URL
config.server.domain=Domain
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 配置
config.ssh_enabled=已啟用
config.ssh_start_builtin_server=啟動內建伺服器
config.ssh_domain=Domain
config.ssh_port=
config.ssh_listen_port=監聽埠
config.ssh_root_path=根路徑
config.ssh_key_test_path=金鑰測試路徑
config.ssh_keygen_path=金鑰產生 (' ssh-keygen ') 路徑
config.ssh_minimum_key_size_check=金鑰最小大小檢查
config.ssh_minimum_key_sizes=金鑰最小大小
config.ssh.enabled=Enabled
config.ssh.domain=Exposed domain
config.ssh.port=Exposed port
config.ssh.root_path=Root path
config.ssh.keygen_path=Keygen path
config.ssh.key_test_path=Key test path
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.repo_config=Repository configuration
config.repo.root_path=Root path
config.repo.script_type=Script type
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=數據庫配置
config.db_type=數據庫類型
config.db_host=主機地址
config.db_name=數據庫名稱
config.db_user=數據庫用戶
config.db_ssl_mode=SSL 模式
config.db_ssl_mode_helper=(僅限 "postgres" 使用)
config.db_path=數據庫路徑
config.db_path_helper=(用於 "sqlite3" 和 "tidb"
config.service_config=服務配置
config.register_email_confirm=註冊電子郵件確認
config.disable_register=關閉註冊功能
config.show_registration_button=顯示註冊按鈕
config.require_sign_in_view=強制登錄瀏覽
config.mail_notify=郵件通知提醒
config.disable_key_size_check=禁用密鑰最小長度檢查
config.enable_captcha=啟用驗證碼服務
config.active_code_lives=激活用戶連結有效期
config.reset_password_code_lives=重置密碼連結有效期
config.webhook_config=Web 鉤子配置
config.queue_length=隊列長度
config.deliver_timeout=推送超時
config.skip_tls_verify=忽略 TLS 驗證
config.mailer_config=郵件配置
config.mailer_enabled=啟用服務
config.mailer_disable_helo=禁用 HELO 操作
config.mailer_name=發送者名稱
config.mailer_host=郵件主機地址
config.mailer_user=發送者帳號
config.send_test_mail=發送測試郵件
config.test_mail_failed=無法向 '%s' 發送測試郵件: %v
config.test_mail_sent=測試電子郵件已發送到 '%s'。
config.oauth_config=社交帳號配置
config.oauth_enabled=啟用服務
config.cache_config=Cache 配置
config.cache_adapter=Cache 適配器
config.cache_interval=Cache 周期
config.cache_conn=Cache 連接字符串
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.security_config=Security configuration
config.security.login_remember_days=Login remember days
config.security.cookie_remember_name=Remember cookie
config.security.cookie_username=Username cookie
config.security.cookie_secure=Enable secure cookie
config.security.reverse_proxy_auth_user=Reverse proxy authentication header
config.security.enable_login_status_cookie=Enable login status cookie
config.security.login_status_cookie_name=Login status cookie
config.security.local_network_allowlist=Local network allowlist
config.email_config=Email configuration
config.email.enabled=Enabled
config.email.subject_prefix=Subject prefix
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.auth_config=Authentication configuration
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 配置
config.session_provider=Session 提供者
config.provider_config=提供者配置
config.cookie_name=Cookie 名稱
config.enable_set_cookie=啟用設置 Cookie
config.gc_interval_time=垃圾收集周期
config.session_life_time=Session 生命周期
config.https_only=僅限 HTTPS
config.cookie_life_time=Cookie 生命周期
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 配置
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=圖片配置
config.picture_service=圖片服務
config.disable_gravatar=禁用 Gravatar 頭像
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=Web 鉤子配置
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=日誌配置
config.log_mode=日誌模式
config.log_file_root_path=日志文件根目錄
config.log_mode=Mode
config.log_options=Options
monitor.cron=Cron 任務
monitor.name=任務名稱
@@ -1067,17 +1378,24 @@ notices.delete_success=系統提示刪除成功!
create_repo=創建了儲存庫 <a href="%s">%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>
compare_commits=查看 %d 次提交的內容比對
transfer_repo=將儲存庫 <code>%s</code> 轉移至 <a href="%s">%s</a>
create_issue=`創建了問題 <a href="%s/issues/%s">%s#%[2]s</a>`
close_issue=`closed issue <a href="%s/issues/%s">%s#%[2]s</a>`
reopen_issue=`reopened issue <a href="%s/issues/%s">%s#%[2]s</a>`
comment_issue=`評論了問題 <a href="%s/issues/%s">%s#%[2]s</a>`
create_pull_request=`創建了合併請求 <a href="%s/pulls/%s">%s#%[2]s</a>`
close_pull_request=`closed pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
reopen_pull_request=`reopened pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
comment_issue=`評論了問題 <a href="%s/issues/%s">%s#%[2]s</a>`
merge_pull_request=`合併了合併請求 <a href="%s/pulls/%s">%s#%[2]s</a>`
transfer_repo=將儲存庫 <code>%s</code> 轉移至 <a href="%s">%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>
push_tag=推送了標籤 <a href="%s/src/%s">%[2]s</a> 到 <a href="%[1]s">%[3]s</a>
compare_commits=查看 %d 次提交的內容比對
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]
ago=之前
@@ -1099,6 +1417,7 @@ months=%d 月%s
years=%d 年%s
raw_seconds=
raw_minutes=分鐘
raw_hours=hours
[dropzone]
default_message=拖曳文件到此處或單擊上傳

File diff suppressed because it is too large Load Diff

View File

@@ -1,12 +1,14 @@
# Docker for Gogs
Visit [Docker Hub](https://hub.docker.com/r/gogs/) see all available images and tags.
![Docker pulls](https://img.shields.io/docker/pulls/gogs/gogs?logo=docker&style=for-the-badge)
Visit [Docker Hub](https://hub.docker.com/u/gogs) or [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs) to see all available images and tags.
## Usage
To keep your data out of Docker container, we do a volume (`/var/gogs` -> `/data`) here, and you can change it based on your situation.
```
```sh
# Pull image from Docker Hub.
$ docker pull gogs/gogs
@@ -14,13 +16,13 @@ $ docker pull gogs/gogs
$ mkdir -p /var/gogs
# Use `docker run` for the first time.
$ docker run --name=gogs -p 10022:22 -p 10080:3000 -v /var/gogs:/data gogs/gogs
$ docker run --name=gogs -p 10022:22 -p 10880:3000 -v /var/gogs:/data gogs/gogs
# Use `docker start` if you have stopped it.
$ docker start gogs
```
Note: It is important to map the Gogs ssh service from the container to the host and set the appropriate SSH Port and URI settings when setting up Gogs for the first time. To access and clone Gogs Git repositories with the above configuration you would use: `git clone ssh://git@hostname:10022/username/myrepo.git` for example.
Note: It is important to map the SSH service from the container to the host and set the appropriate SSH Port and URI settings when setting up Gogs for the first time. To access and clone Git repositories with the above configuration you would use: `git clone ssh://git@hostname:10022/username/myrepo.git` for example.
Files will be store in local path `/var/gogs` in my case.
@@ -36,46 +38,38 @@ Directory `/var/gogs` keeps Git repositories and Gogs data:
|-- data
|-- log
### Volume with data container
#### Custom directory
If you're more comfortable with mounting data to a data container, the commands you execute at the first time will look like as follows:
The "custom" directory may not be obvious in Docker environment. The `/var/gogs/gogs` (in the host) and `/data/gogs` (in the container) is already the "custom" directory and you do not need to create another layer but directly edit corresponding files under this directory.
```
# Create data container
docker run --name=gogs-data --entrypoint /bin/true gogs/gogs
#### Using Docker volumes
# Use `docker run` for the first time.
docker run --name=gogs --volumes-from gogs-data -p 10022:22 -p 10080:3000 gogs/gogs
```
#### Using Docker 1.9 Volume command
```
```sh
# Create docker volume.
$ docker volume create --name gogs-data
# Use `docker run` for the first time.
$ docker run --name=gogs -p 10022:22 -p 10080:3000 -v gogs-data:/data gogs/gogs
$ docker run --name=gogs -p 10022:22 -p 10880:3000 -v gogs-data:/data gogs/gogs
```
## Settings
### Application
Most of settings are obvious and easy to understand, but there are some settings can be confusing by running Gogs inside Docker:
Most of the settings are obvious and easy to understand, but there are some settings can be confusing by running Gogs inside Docker:
- **Repository Root Path**: keep it as default value `/home/git/gogs-repositories` because `start.sh` already made a symbolic link for you.
- **Run User**: keep it as default value `git` because `start.sh` already setup a user with name `git`.
- **Run User**: keep it as default value `git` because `build/finalize.sh` already setup a user with name `git`.
- **Domain**: fill in with Docker container IP (e.g. `192.168.99.100`). But if you want to access your Gogs instance from a different physical machine, please fill in with the hostname or IP address of the Docker host machine.
- **SSH Port**: Use the exposed port from Docker container. For example, your SSH server listens on `22` inside Docker, but you expose it by `10022:22`, then use `10022` for this value. **Builtin SSH server is not recommended inside Docker Container**
- **HTTP Port**: Use port you want Gogs to listen on inside Docker container. For example, your Gogs listens on `3000` inside Docker, and you expose it by `10080:3000`, but you still use `3000` for this value.
- **Application URL**: Use combination of **Domain** and **exposed HTTP Port** values (e.g. `http://192.168.99.100:10080/`).
- **SSH Port**: Use the exposed port from Docker container. For example, your SSH server listens on `22` inside Docker, **but** you expose it by `10022:22`, then use `10022` for this value. **Builtin SSH server is not recommended inside Docker Container**
- **HTTP Port**: Use port you want Gogs to listen on inside Docker container. For example, your Gogs listens on `3000` inside Docker, **and** you expose it by `10880:3000`, but you still use `3000` for this value.
- **Application URL**: Use combination of **Domain** and **exposed HTTP Port** values (e.g. `http://192.168.99.100:10880/`).
Full documentation of application settings can be found [here](http://gogs.io/docs/advanced/configuration_cheat_sheet.html).
Full documentation of application settings can be found [here](https://github.com/gogs/gogs/blob/main/conf/app.ini).
### Container options
### Container options
This container have some options available via environment variables, these options are opt-in features that can help the administration of this container:
This container has some options available via environment variables, these options are opt-in features that can help the administration of this container:
- **SOCAT_LINK**:
- <u>Possible value:</u>
@@ -94,6 +88,53 @@ This container have some options available via environment variables, these opti
`false`
- <u>Action:</u>
Request crond to be run inside the container. Its default configuration will periodically run all scripts from `/etc/periodic/${period}` but custom crontabs can be added to `/var/spool/cron/crontabs/`.
- **BACKUP_INTERVAL**:
- <u>Possible value:</u>
`3h`, `7d`, `3M`
- <u>Default:</u>
`null`
- <u>Action:</u>
In combination with `RUN_CROND` set to `true`, enables backup system.\
See: [Backup System](#backup-system)
- **BACKUP_RETENTION**:
- <u>Possible value:</u>
`360m`, `7d`, `...m/d`
- <u>Default:</u>
`7d`
- <u>Action:</u>
Used by backup system. Backups older than specified in expression are deleted periodically.\
See: [Backup System](#backup-system)
- **BACKUP_ARG_CONFIG**:
- <u>Possible value:</u>
`/app/gogs/example/custom/config`
- <u>Default:</u>
`null`
- <u>Action:</u>
Used by backup system. If defined, supplies `--config` argument to `gogs backup`.\
See: [Backup System](#backup-system)
- **BACKUP_ARG_EXCLUDE_REPOS**:
- <u>Possible value:</u>
`test-repo1`, `test-repo2`
- <u>Default:</u>
`null`
- <u>Action:</u>
Used by backup system. If defined, supplies `--exclude-repos` argument to `gogs backup`.\
See: [Backup System](#backup-system)
- **BACKUP_EXTRA_ARGS**:
- <u>Possible value:</u>
`--verbose --exclude-mirror-repos`
- <u>Default:</u>
`null`
- <u>Action:</u>
Used by backup system. If defined, append content to arguments to `gogs backup`.\
See: [Backup System](#backup-system)
## Backup system
Automated backups with retention policy:
- `BACKUP_INTERVAL` controls how often the backup job runs and supports interval in hours (h), days (d), and months (M), eg. `3h`, `7d`, `3M`. The lowest possible value is one hour (`1h`).
- `BACKUP_RETENTION` supports expressions in minutes (m) and days (d), eg. `360m`, `2d`. The lowest possible value is 60 minutes (`60m`).
## Upgrade
@@ -104,8 +145,12 @@ Steps to upgrade Gogs with Docker:
- `docker pull gogs/gogs`
- `docker stop gogs`
- `docker rm gogs`
- Finally, create container as the first time and don't forget to do same volume and port mapping.
- Finally, create a container for the first time and don't forget to do the same for the volume and port mapping.
## Known Issues
## Known issues
- The docker container can not currently be build on Raspberry 1 (armv6l) as our base image `alpine` does not have a `go` package available for this platform.
- The docker container cannot currently be built on Raspberry 1 (armv6l) as our base image `alpine` does not have a `go` package available for this platform.
## Useful links
- [Share port 22 between Gogs inside Docker & the local system](http://www.ateijelo.com/blog/2016/07/09/share-port-22-between-docker-gogs-ssh-and-local-system)

View File

@@ -1,36 +0,0 @@
#!/bin/sh
set -x
set -e
# Set temp environment vars
export GOPATH=/tmp/go
export PATH=${PATH}:${GOPATH}/bin
export GO15VENDOREXPERIMENT=1
# Install build deps
apk --no-cache --no-progress add --virtual build-deps build-base linux-pam-dev go
# Install glide
git clone -b 0.10.2 https://github.com/Masterminds/glide ${GOPATH}/src/github.com/Masterminds/glide
cd ${GOPATH}/src/github.com/Masterminds/glide
make build
go install
# Build Gogs
mkdir -p ${GOPATH}/src/github.com/gogits/
ln -s /app/gogs/ ${GOPATH}/src/github.com/gogits/gogs
cd ${GOPATH}/src/github.com/gogits/gogs
glide install
make build TAGS="sqlite cert pam"
# Cleanup GOPATH & vendoring dir
rm -r $GOPATH /app/gogs/vendor
# Remove build deps
apk --no-progress del build-deps
# Create git user for Gogs
adduser -H -D -g 'Gogs Git User' git -h /data/git -s /bin/bash && passwd -u git
echo "export GOGS_CUSTOM=${GOGS_CUSTOM}" >> /etc/profile

30
docker/build/finalize.sh Executable file
View File

@@ -0,0 +1,30 @@
#!/bin/sh
set -xe
# Install gosu
if [ "$(uname -m)" = "aarch64" ]; then
export arch='arm64'
export checksum='73244a858f5514a927a0f2510d533b4b57169b64d2aa3f9d98d92a7a7df80cea'
elif [ "$(uname -m)" = "armv7l" ]; then
export arch='armhf'
export checksum='abb1489357358b443789571d52b5410258ddaca525ee7ac3ba0dd91d34484589'
else
export arch='amd64'
export checksum='bd8be776e97ec2b911190a82d9ab3fa6c013ae6d3121eea3d0bfd5c82a0eaf8c'
fi
wget --quiet https://github.com/tianon/gosu/releases/download/1.14/gosu-${arch} -O /usr/sbin/gosu
echo "${checksum} /usr/sbin/gosu" | sha256sum -cs
chmod +x /usr/sbin/gosu
# Create git user for Gogs
addgroup -S git
adduser -G git -H -D -g 'Gogs Git User' git -h /data/git -s /bin/bash && usermod -p '*' git && passwd -u git
echo "export GOGS_CUSTOM=${GOGS_CUSTOM}" >> /etc/profile
# Final cleaning
rm -rf /app/gogs/build
rm -rf /app/gogs/docker/build
rm /app/gogs/docker/nsswitch.conf
rm /app/gogs/docker/README.md

20
docker/build/install-task.sh Executable file
View File

@@ -0,0 +1,20 @@
#!/bin/sh
set -xe
if [ "$(uname -m)" = "aarch64" ]; then
export arch='arm64'
export checksum='44fad3d61ad39d0abff33f90fdbb99a666524dbeab08dc9d138d5d3a532ff68a'
elif [ "$(uname -m)" = "armv7l" ]; then
export arch='arm'
export checksum='b10ae7d85749025740097b0c349b946fbabd417c7ee4d2df8ccc5604750accd9'
else
export arch='amd64'
export checksum='b9c5986f33a53094751b5e22ccc33e050b4a0a485658442121331cbb724e631e'
fi
wget --quiet https://github.com/go-task/task/releases/download/v3.12.1/task_linux_${arch}.tar.gz -O task_linux_${arch}.tar.gz
echo "${checksum} task_linux_${arch}.tar.gz" | sha256sum -cs
tar -xzf task_linux_${arch}.tar.gz
mv task /usr/local/bin/task

View File

@@ -0,0 +1,144 @@
#!/usr/bin/env bash
set -e
BACKUP_PATH="/backup"
# Make sure that required directories exist
mkdir -p "${BACKUP_PATH}"
mkdir -p "/etc/crontabs"
chown git:git /backup
chmod 2770 /backup
# [string] BACKUP_INTERVAL Period expression
# [string] BACKUP_RETENTION Period expression
if [ -z "${BACKUP_INTERVAL}" ]; then
echo "Backup disabled: BACKUP_INTERVAL has not been found" 1>&2
exit 1
fi
if [ -z "${BACKUP_RETENTION}" ]; then
echo "Backup retention period is not defined, default to 7 days" 1>&2
BACKUP_RETENTION='7d'
fi
# Parse BACKUP_INTERVAL environment variable and generate appropriate cron expression. Backup cron task will be run as scheduled.
# Expected format: nu (n - number, u - unit) (eg. 3d means 3 days)
# Supported units: h - hours, d - days, M - months
parse_generate_cron_expression() {
CRON_EXPR_MINUTES="*"
CRON_EXPR_HOURS="*"
CRON_EXPR_DAYS="*"
CRON_EXPR_MONTHS="*"
# shellcheck disable=SC2001
TIME_INTERVAL=$(echo "${BACKUP_INTERVAL}" | sed -e 's/[hdM]$//')
# shellcheck disable=SC2001
TIME_UNIT=$(echo "${BACKUP_INTERVAL}" | sed -e 's/^[0-9]\+//')
if [ "${TIME_UNIT}" = "h" ]; then
if [ ! "${TIME_INTERVAL}" -le 23 ]; then
echo "Parse error: Time unit 'h' (hour) cannot be greater than 23" 1>&2
exit 1
fi
CRON_EXPR_MINUTES=0
CRON_EXPR_HOURS="*/${TIME_INTERVAL}"
elif [ "${TIME_UNIT}" = "d" ]; then
if [ ! "${TIME_INTERVAL}" -le 30 ]; then
echo "Parse error: Time unit 'd' (day) cannot be greater than 30" 1>&2
exit 1
fi
CRON_EXPR_MINUTES=0
CRON_EXPR_HOURS=0
CRON_EXPR_DAYS="*/${TIME_INTERVAL}"
elif [ "${TIME_UNIT}" = "M" ]; then
if [ ! "${TIME_INTERVAL}" -le 12 ]; then
echo "Parse error: Time unit 'M' (month) cannot be greater than 12" 1>&2
exit 1
fi
CRON_EXPR_MINUTES=0
CRON_EXPR_HOURS=0
CRON_EXPR_DAYS="1"
CRON_EXPR_MONTHS="*/${TIME_INTERVAL}"
else
echo "Parse error: BACKUP_INTERVAL expression is invalid" 1>&2
exit 1
fi
echo "${CRON_EXPR_MINUTES} ${CRON_EXPR_HOURS} ${CRON_EXPR_DAYS} ${CRON_EXPR_MONTHS} *"
}
# Parse BACKUP_RETENTION environment variable and generate appropriate find command expression.
# Expected format: nu (n - number, u - unit) (eg. 3d means 3 days)
# Supported units: m - minutes, d - days
parse_generate_retention_expression() {
FIND_TIME_EXPR='mtime'
# shellcheck disable=SC2001
TIME_INTERVAL=$(echo "${BACKUP_RETENTION}" | sed -e 's/[mhdM]$//')
# shellcheck disable=SC2001
TIME_UNIT=$(echo "${BACKUP_RETENTION}" | sed -e 's/^[0-9]\+//')
if [ "${TIME_UNIT}" = "m" ]; then
if [ "${TIME_INTERVAL}" -le 59 ]; then
echo "Warning: Minimal retention is 60m. Value set to 60m" 1>&2
TIME_INTERVAL=60
fi
FIND_TIME_EXPR="mmin"
elif [ "${TIME_UNIT}" = "h" ]; then
echo "Error: Unsupported expression - Try: eg. 120m for 2 hours." 1>&2
exit 1
elif [ "${TIME_UNIT}" = "d" ]; then
FIND_TIME_EXPR="mtime"
elif [ "${TIME_UNIT}" = "M" ]; then
echo "Error: Unsupported expression - Try: eg. 60d for 2 months." 1>&2
exit 1
else
echo "Parse error: BACKUP_RETENTION expression is invalid" 1>&2
exit 1
fi
echo "${FIND_TIME_EXPR} +${TIME_INTERVAL:-7}"
}
add_backup_cronjob() {
CRONTAB_USER="${1:-git}"
CRONTAB_FILE="/etc/crontabs/${CRONTAB_USER}"
CRONJOB_EXPRESSION="${2:-}"
CRONJOB_EXECUTOR="${3:-}"
CRONJOB_EXECUTOR_ARGUMENTS="${4:-}"
CRONJOB_TASK="${CRONJOB_EXPRESSION} /bin/sh ${CRONJOB_EXECUTOR} ${CRONJOB_EXECUTOR_ARGUMENTS}"
if [ -f "${CRONTAB_FILE}" ]; then
CRONJOB_EXECUTOR_COUNT=$(grep -c "${CRONJOB_EXECUTOR}" "${CRONTAB_FILE}" || exit 0)
if [ "${CRONJOB_EXECUTOR_COUNT}" != "0" ]; then
echo "Cron job already exists for ${CRONJOB_EXECUTOR}. Updating existing." 1>&2
CRONJOB_TASK=$(echo "{CRONJOB_TASK}" | sed 's/\//\\\//g' )
CRONJOB_EXECUTOR=$(echo "{CRONJOB_EXECUTOR}" | sed 's/\//\\\//g' )
sed -i "/${CRONJOB_EXECUTOR}/c\\${CRONJOB_TASK}" "${CRONTAB_FILE}"
return 0
fi
fi
# Finally append new line with cron task expression
echo "${CRONJOB_TASK}" >>"${CRONTAB_FILE}"
}
CRONTAB_USER=$(awk -v val="${PUID}" -F ":" '$3==val{print $1}' /etc/passwd)
# Up to this point, it was desirable that interpreter handles the command errors and halts execution upon any error.
# From now, we handle the errors our self.
set +e
RETENTION_EXPRESSION="$(parse_generate_retention_expression)"
if [ -z "${RETENTION_EXPRESSION}" ]; then
echo "Couldn't generate backup retention expression. Aborting backup setup" 1>&2
exit 1
fi
# Backup rotator cron will run every 5 minutes
add_backup_cronjob "${CRONTAB_USER}" "*/5 * * * *" "/app/gogs/docker/runtime/backup-rotator.sh" "'${BACKUP_PATH}' '${RETENTION_EXPRESSION}'"
add_backup_cronjob "${CRONTAB_USER}" "$(parse_generate_cron_expression)" "/app/gogs/docker/runtime/backup-job.sh" "'${BACKUP_PATH}'"

View File

@@ -0,0 +1,40 @@
#!/usr/bin/env sh
execute_backup_job() {
BACKUP_ARG_PATH="${1:-}"
BACKUP_ARG_CONFIG="${BACKUP_ARG_CONFIG:-}"
BACKUP_ARG_EXCLUDE_REPOS="${BACKUP_ARG_EXCLUDE_REPOS:-}"
BACKUP_EXTRA_ARGS="${BACKUP_EXTRA_ARGS:-}"
cd "/app/gogs" || exit 1
BACKUP_ARGS="--target=${BACKUP_ARG_PATH}"
if [ -n "${BACKUP_ARG_CONFIG}" ]; then
BACKUP_ARGS="${BACKUP_ARGS} --config=${BACKUP_ARG_CONFIG}"
fi
if [ -n "${BACKUP_ARG_EXCLUDE_REPOS}" ]; then
BACKUP_ARGS="${BACKUP_ARGS} --exclude-repos=${BACKUP_ARG_EXCLUDE_REPOS}"
fi
if [ -n "${BACKUP_EXTRA_ARGS}" ]; then
BACKUP_ARGS="${BACKUP_ARGS} ${BACKUP_EXTRA_ARGS}"
fi
# NOTE: We actually need word splitting to be able to pass multiple arguments.
# shellcheck disable=SC2086
./gogs backup ${BACKUP_ARGS} || echo "Error: Backup job returned non-successful code." && exit 1
}
main() {
BACKUP_PATH="${1:-}"
if [ -z "${BACKUP_PATH}" ]; then
echo "Required argument missing BACKUP_PATH" 1>&2
exit 1
fi
execute_backup_job "${BACKUP_PATH}"
}
main "$@"

View File

@@ -0,0 +1,28 @@
#!/usr/bin/env sh
# This is very simple, yet effective backup rotation script.
# Using find command, all files that are older than BACKUP_RETENTION_DAYS are accumulated and deleted using rm.
main() {
BACKUP_PATH="${1:-}"
FIND_EXPRESSION="${2:-mtime +7}"
if [ -z "${BACKUP_PATH}" ]; then
echo "Error: Required argument missing BACKUP_PATH" 1>&2
exit 1
fi
if [ "$(realpath "${BACKUP_PATH}")" = "/" ]; then
echo "Error: Dangerous BACKUP_PATH: /" 1>&2
exit 1
fi
if [ ! -d "${BACKUP_PATH}" ]; then
echo "Error: BACKUP_PATH doesn't exist or is not a directory" 1>&2
exit 1
fi
# shellcheck disable=SC2086
find "${BACKUP_PATH}/" -type f -name "gogs-backup-*.zip" -${FIND_EXPRESSION} -print -exec rm "{}" +
}
main "$@"

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