mirror of
https://github.com/gogs/gogs.git
synced 2026-02-28 17:20:59 +01:00
Compare commits
65 Commits
release-ar
...
v0.12.10
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
1ce5171ae1 | ||
|
|
47297c0510 | ||
|
|
a2113bd13a | ||
|
|
7be49a8f2f | ||
|
|
7f147eb573 | ||
|
|
012a1ba19e | ||
|
|
a24b22c909 | ||
|
|
20923a8829 | ||
|
|
4c02b480dc | ||
|
|
deeb3f73e4 | ||
|
|
1bc379f4d4 | ||
|
|
8e8b185ea1 | ||
|
|
42ad18a245 | ||
|
|
7f8799c01f | ||
|
|
4c6cac637f | ||
|
|
6a6cdb209b | ||
|
|
2d58fd163f | ||
|
|
5250403d60 | ||
|
|
bcebe673d1 | ||
|
|
93f65dd95d | ||
|
|
8b395a49b3 | ||
|
|
d06ba7e527 | ||
|
|
b0a902dcca | ||
|
|
bc77440b30 | ||
|
|
2a8f561c64 | ||
|
|
8a046c22a8 | ||
|
|
26395294bd | ||
|
|
c91365774b | ||
|
|
dff067ac28 | ||
|
|
45fdfecf64 | ||
|
|
1bf5d89386 | ||
|
|
670cbccf98 | ||
|
|
4e10265568 | ||
|
|
640e2f62e0 | ||
|
|
eddae31ada | ||
|
|
0fef3c9082 | ||
|
|
5aca56d2dd | ||
|
|
e309bc8324 | ||
|
|
64102be2c9 | ||
|
|
91f2cde5e9 | ||
|
|
b3541030c3 | ||
|
|
bc8b8c3767 | ||
|
|
d4ae178b72 | ||
|
|
fa1d9174ad | ||
|
|
2210ab7a42 | ||
|
|
01a2c68abb | ||
|
|
2626bcf94f | ||
|
|
5a04c47cf0 | ||
|
|
ec84506da4 | ||
|
|
eb3386c4aa | ||
|
|
f0e3cd90f8 | ||
|
|
fbe34c8c61 | ||
|
|
e6b4c467e8 | ||
|
|
6b6bfe8bb0 | ||
|
|
253b2bef4c | ||
|
|
1a051ae5f8 | ||
|
|
ca54cbd055 | ||
|
|
9044afa40f | ||
|
|
672625b55c | ||
|
|
98c65f319f | ||
|
|
43fc826085 | ||
|
|
d7a6bb8bcb | ||
|
|
db037495de | ||
|
|
39bdd5c2cd | ||
|
|
f17e7d5a2c |
@@ -1,13 +0,0 @@
|
||||
Analyze and help fix the GitHub Security Advisory (GHSA) at: $ARGUMENTS
|
||||
|
||||
Steps:
|
||||
1. Fetch the GHSA page using `gh api repos/gogs/gogs/security-advisories` and understand the vulnerability details (description, severity, affected versions, CWE).
|
||||
2. Verify the reported vulnerability actually exists, and why.
|
||||
3. Identify the affected code in this repository.
|
||||
4. Propose a fix with a clear explanation of the root cause and how the fix addresses it. Check for prior art in the codebase to stay consistent with existing patterns.
|
||||
5. Implement the fix. Only add tests when there is something meaningful to test at our layer.
|
||||
6. Run all the usual build and test commands.
|
||||
7. If a changelog entry is warranted (user will specify), add it to CHANGELOG.md with a placeholder for the PR link.
|
||||
8. Create a branch named after the GHSA ID, commit, and push.
|
||||
9. Create a pull request with a proper title and description, do not reveal too much detail and link the GHSA.
|
||||
10. If a changelog entry was added, update it with the PR link, then commit and push again.
|
||||
@@ -1,26 +0,0 @@
|
||||
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
|
||||
@@ -4,6 +4,7 @@ scripts
|
||||
scripts/**
|
||||
.github/
|
||||
.github/**
|
||||
config.codekit
|
||||
.dockerignore
|
||||
*.yml
|
||||
*.md
|
||||
@@ -11,5 +12,3 @@ scripts/**
|
||||
.gitignore
|
||||
Dockerfile*
|
||||
gogs
|
||||
|
||||
!Taskfile.yml
|
||||
|
||||
@@ -4,6 +4,7 @@ root = true
|
||||
|
||||
[*]
|
||||
charset = utf-8
|
||||
end_of_line = lf
|
||||
insert_final_newline = true
|
||||
trim_trailing_whitespace = true
|
||||
|
||||
|
||||
17
.gitattributes
vendored
17
.gitattributes
vendored
@@ -1,8 +1,9 @@
|
||||
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
|
||||
conf/gitignore/* linguist-vendored
|
||||
conf/license/* linguist-vendored
|
||||
public/assets/* linguist-vendored
|
||||
public/plugins/* linguist-vendored
|
||||
public/css/themes/* linguist-vendored
|
||||
public/css/semantic-2.4.2.min.css linguist-vendored
|
||||
public/js/libs/* linguist-vendored
|
||||
public/js/jquery-3.4.1.min.js linguist-vendored
|
||||
public/js/semantic-2.4.2.min.js linguist-vendored
|
||||
|
||||
2
.github/CODEOWNERS
vendored
2
.github/CODEOWNERS
vendored
@@ -1,2 +0,0 @@
|
||||
# Default
|
||||
* @unknwon
|
||||
82
.github/CONTRIBUTING.md
vendored
82
.github/CONTRIBUTING.md
vendored
@@ -1,78 +1,44 @@
|
||||
# Welcome to Gogs contributing guide
|
||||
# Contributing to Gogs
|
||||
|
||||
Thank you for investing your time in contributing to our projects!
|
||||
> This guidelines sheet is forked from [CONTRIBUTING.md](https://github.com/drone/drone/blob/8d9c7cee56d6c2eac81dc156ce27be6716d97e68/CONTRIBUTING.md).
|
||||
|
||||
Read our [Code of Conduct](https://go.dev/conduct) to keep our community approachable and respectable.
|
||||
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.
|
||||
|
||||
In this guide you will get an overview of the contribution workflow from opening an issue, creating a PR, reviewing, and merging the PR.
|
||||
## Contribution guidelines
|
||||
|
||||
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.
|
||||
Depends on the situation, you will:
|
||||
|
||||
## New contributor guide
|
||||
- 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
|
||||
|
||||
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:
|
||||
### Bug Report
|
||||
|
||||
- [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)
|
||||
If you find something you consider a bug, please create an issue on [GitHub](https://github.com/gogits/gogs/issues). To avoid wasting time and reduce back-and-forth communication with team members, please be respect to [Issue Template](ISSUE_TEMPLATE.md).
|
||||
|
||||
In addition to the general guides with open source contributions, you would also need to:
|
||||
### Feature Request
|
||||
|
||||
- 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).
|
||||
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.
|
||||
|
||||
## Issues
|
||||
### Pull Request
|
||||
|
||||
### Ask for help
|
||||
Please read detailed information on [Wiki](https://github.com/gogits/gogs/wiki/Contributing-Code).
|
||||
|
||||
Before opening an issue, please make sure the problem you're encountering isn't already addressed on the [Troubleshooting](https://gogs.io/asking/troubleshooting) and [FAQs](https://gogs.io/asking/faq) pages.
|
||||
### Ask For Help
|
||||
|
||||
### Create a new issue
|
||||
Before opening an issue, please make sure your problem isn't already addressed on the [Troubleshooting](https://gogs.io/docs/intro/troubleshooting.html) and [FAQs](https://gogs.io/docs/intro/faqs.html) pages.
|
||||
|
||||
- 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.
|
||||
## Code of conduct
|
||||
|
||||
### Pick up an issue to solve
|
||||
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.
|
||||
|
||||
- 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 🙇♂️
|
||||
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.
|
||||
|
||||
## Add new features or make big 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.
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
## Pull requests
|
||||
Instances of abusive, harassing, or otherwise unacceptable behavior can be reported by emailing u@gogs.io
|
||||
|
||||
When you're finished with the changes, create a pull request, or a series of pull requests if necessary.
|
||||
|
||||
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:
|
||||
|
||||
- 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.
|
||||
|
||||
### Things we do not accept
|
||||
|
||||
1. Updates to locale files (`conf/locale_xx-XX.ini`) other than the `conf/locale_en-US.ini`. Please read the [guide for localizing Gogs](https://gogs.io/advancing/localization).
|
||||
1. Docker compose files.
|
||||
|
||||
### Coding guidelines
|
||||
|
||||
1. Please read the Sourcegraph's [Go style guide](https://github.com/sourcegraph/sourcegraph-public-snapshot/blob/main/doc/dev/background-information/languages/go.md).
|
||||
1. **NO** direct modifications to `.css` files, `.css` files are all generated by `.less` files. You can regenerate `.css` files by executing `task less`.
|
||||
|
||||
## Your PR is merged!
|
||||
|
||||
Congratulations 🎉🎉 Thanks again for taking the effort to have this journey with us 🌟
|
||||
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/)
|
||||
|
||||
65
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
65
.github/ISSUE_TEMPLATE/bug_report.md
vendored
Normal file
@@ -0,0 +1,65 @@
|
||||
---
|
||||
name: Bug report
|
||||
about: Report problems and unexpected behavior
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
First of all, please read https://www.chiark.greenend.org.uk/~sgtatham/bugs.html.
|
||||
|
||||
If you don't want to read, it's up to you. But don't waste your time continue reporting.
|
||||
|
||||
The issue will be closed without any explanation if it does not satisfy any of following requirements:
|
||||
|
||||
1. Please speak English, we have forum in 中文: https://discuss.gogs.io/c/getting-help/getting-help-chinese.
|
||||
2. Please post any questions, configuration or deploy problems on our forum: https://discuss.gogs.io.
|
||||
3. Please do not end your title with a question mark or period.
|
||||
4. Please take a moment to search and make sure the issue doesn't already exist.
|
||||
5. Please give all relevant information below for bug reports; incomplete details are considered invalid report.
|
||||
|
||||
-->
|
||||
|
||||
**Describe the bug**
|
||||
<!-- A clear and concise description of what the bug is -->
|
||||
|
||||
**Gogs version and commit**
|
||||
<!--
|
||||
The version number or the commit SHA of the Gogs instance you use.
|
||||
You can find these information in the admin dashboard ("/admin").
|
||||
-->
|
||||
|
||||
**Git version**
|
||||
|
||||
```
|
||||
$ git version
|
||||
|
||||
```
|
||||
|
||||
**Operating system**
|
||||
<!-- The name and version of your operating system -->
|
||||
|
||||
**Database**
|
||||
<!-- The database and version you use -->
|
||||
|
||||
**To Reproduce**
|
||||
Steps to reproduce the behavior:
|
||||
1. Go to '...'
|
||||
2. Click on '....'
|
||||
3. Scroll down to '....'
|
||||
4. See error
|
||||
|
||||
**Can you reproduce the bug at https://try.gogs.io?**
|
||||
<!-- If yes, please provide the example URL; if no, please explain why -->
|
||||
|
||||
**Expected behavior**
|
||||
<!-- A clear and concise description of what you expected to happen -->
|
||||
|
||||
**Actual behavior**
|
||||
<!-- A clear and concise description of what you see instead -->
|
||||
|
||||
**Screenshots**
|
||||
<!-- If applicable, add screenshots to help explain your problem -->
|
||||
|
||||
**Additional context**
|
||||
<!-- Please include any error logs found in `log/gogs.log` -->
|
||||
82
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
82
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@@ -1,82 +0,0 @@
|
||||
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
|
||||
11
.github/ISSUE_TEMPLATE/config.yml
vendored
11
.github/ISSUE_TEMPLATE/config.yml
vendored
@@ -1,8 +1,5 @@
|
||||
blank_issues_enabled: true
|
||||
blank_issues_enabled: false
|
||||
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.
|
||||
- name: Gogs Community Forum
|
||||
url: https://discuss.gogs.io/
|
||||
about: Please ask and answer questions here.
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
---
|
||||
name: "Dev: Release a minor version"
|
||||
about: ONLY USED BY MAINTAINERS.
|
||||
assignees: "unknwon"
|
||||
title: "Release [VERSION]"
|
||||
labels: 📸 release
|
||||
---
|
||||
|
||||
_This is generated from the [minor release template](https://github.com/gogs/gogs/blob/main/.github/ISSUE_TEMPLATE/dev_release_minor_version.md)._
|
||||
|
||||
## Before release
|
||||
|
||||
On the `main` branch:
|
||||
|
||||
- [ ] Close stale issues with the label [status: needs feedback](https://github.com/gogs/gogs/issues?q=is%3Aissue+is%3Aopen+label%3A%22status%3A+needs+feedback%22).
|
||||
- [ ] [Sync locales from Crowdin](https://github.com/gogs/gogs/blob/main/docs/dev/import_locale.md).
|
||||
- [ ] [Update CHANGELOG](https://github.com/gogs/gogs/commit/f1102a7a7c545ec221d2906f02fa19170d96f96d) to include entries for the current minor release.
|
||||
- Do not forget adding entries for GHSA patches.
|
||||
- [ ] Cut a new release branch `release/<MAJOR>.<MINOR>`, e.g. `release/0.14`.
|
||||
|
||||
## During release
|
||||
|
||||
On the release branch:
|
||||
|
||||
- [ ] [Update the hard-coded version](https://github.com/gogs/gogs/commit/f0e3cd90f8d7695960eeef2e4e54b2e717302f6c) to the current release, e.g. `0.14.0+dev` -> `0.14.0`.
|
||||
- [ ] Wait for GitHub Actions to complete and no failed jobs.
|
||||
- [ ] Publish new RC releases (e.g. `v0.14.0-rc.1`, `v0.14.0-rc.2`) ⚠️ **on the release branch** ⚠️ and ensure Docker and release workflows both succeed.
|
||||
- [ ] Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
|
||||
- [ ] Download one of the release archives and run through application setup to make sure nothing blows up.
|
||||
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) ⚠️ **on the release branch** ⚠️ with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md) for the current minor release.
|
||||
- [ ] [Wait for new image tags for the current release](https://github.com/gogs/gogs/actions/workflows/docker.yml?query=event%3Arelease) to be created automatically on both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs).
|
||||
- Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
|
||||
- [ ] Download all release archives and [generate SHA256 checksum](https://github.com/gogs/gogs/blob/main/docs/dev/release/sha256.sh) for all binaries to the file `checksum_sha256.txt`.
|
||||
- [ ] Upload all archives and `checksum_sha256.txt` to https://dl.gogs.io.
|
||||
|
||||
## After release
|
||||
|
||||
On the `main` branch:
|
||||
|
||||
- [ ] Update the repository mirror on [Gitee](https://gitee.com/unknwon/gogs).
|
||||
- [ ] Create a new release announcement in [Discussions](https://github.com/gogs/gogs/discussions/categories/announcements).
|
||||
- [ ] Send a tweet on the [official Twitter account](https://twitter.com/GogsHQ) for the minor release.
|
||||
- [ ] Close the milestone for the minor release.
|
||||
- [ ] [Bump the hard-coded version](https://github.com/gogs/gogs/commit/a98968436cd5841cf691bb0b80c54c81470d1676) to the new develop version, e.g. `0.14.0+dev` -> `0.15.0+dev`.
|
||||
- [ ] Run `task legacy` to identify deprecated code that is aimed to be removed in current develop version.
|
||||
- [ ] **After 14 days**, publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.
|
||||
@@ -1,49 +0,0 @@
|
||||
---
|
||||
name: "Dev: Release a patch version"
|
||||
about: ONLY USED BY MAINTAINERS.
|
||||
assignees: "unknwon"
|
||||
title: "Release [VERSION]"
|
||||
labels: 📸 release
|
||||
---
|
||||
|
||||
_This is generated from the [patch release template](https://github.com/gogs/gogs/blob/main/.github/ISSUE_TEMPLATE/dev_release_patch_version.md)._
|
||||
|
||||
## Before release
|
||||
|
||||
On the release branch:
|
||||
|
||||
- [ ] Make sure all commits are cherry-picked from the `main` branch by checking the patch milestone.
|
||||
- Run `task build` for every cherry-picked commit to make sure there is no compilation error.
|
||||
- [ ] [Update CHANGELOG on the `main` branch](https://github.com/gogs/gogs/commit/f1102a7a7c545ec221d2906f02fa19170d96f96d) to include entries for the current patch release.
|
||||
|
||||
## During release
|
||||
|
||||
On the release branch:
|
||||
|
||||
- [ ] [Update the hard-coded version](https://github.com/gogs/gogs/commit/f0e3cd90f8d7695960eeef2e4e54b2e717302f6c) to the current release, e.g. `0.12.0` -> `0.12.1`.
|
||||
- [ ] Wait for GitHub Actions to complete and no failed jobs.
|
||||
- [ ] Publish new RC releases in [GitHub release](https://github.com/gogs/gogs/releases) (e.g. `v0.12.0-rc.1`, `v0.12.0-rc.2`) ⚠️ **on the release branch** ⚠️ and ensure Docker workflow succeeds.
|
||||
- [ ] Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
|
||||
- [ ] Download one of the release archives and run through application setup to make sure nothing blows up.
|
||||
- [ ] Publish a new [GitHub release](https://github.com/gogs/gogs/releases) ⚠️ **on the release branch** ⚠️ with entries from [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md) for the current patch release and all previous releases with same minor version.
|
||||
- [ ] Update all previous GitHub releases with same minor version with the warning:
|
||||
```
|
||||
**ℹ️ Heads up! There is a new patch release [0.12.1](https://github.com/gogs/gogs/releases/tag/v0.12.1) available, we recommend directly installing or upgrading to that version.**
|
||||
```
|
||||
- [ ] [Wait for new image tags for the current release](https://github.com/gogs/gogs/actions/workflows/docker.yml?query=event%3Arelease) to be created automatically on both [Docker Hub](https://hub.docker.com/r/gogs/gogs/tags) and [GitHub Container registry](https://github.com/gogs/gogs/pkgs/container/gogs).
|
||||
- Pull down the Docker image and [run through application setup](https://github.com/gogs/gogs/blob/main/docker/README.md) to make sure nothing blows up.
|
||||
- [ ] Download all release archives and [generate SHA256 checksum](https://github.com/gogs/gogs/blob/main/docs/dev/release/sha256.sh) for all binaries to the file `checksum_sha256.txt`.
|
||||
- [ ] Upload all archives and `checksum_sha256.txt` to https://dl.gogs.io.
|
||||
|
||||
## After release
|
||||
|
||||
On the `main` branch:
|
||||
|
||||
- [ ] Post the following message on issues that are included in the patch milestone:
|
||||
```
|
||||
The <MAJOR>.<MINOR>.<PATCH> has been released that includes the patch of the reported issue.
|
||||
```
|
||||
- [ ] Create a new release announcement in [Discussions](https://github.com/gogs/gogs/discussions/categories/announcements).
|
||||
- [ ] Send a tweet on the [official Twitter account](https://twitter.com/GogsHQ) for the patch release.
|
||||
- [ ] Close the milestone for the patch release.
|
||||
- [ ] **After 14 days**, publish [GitHub security advisories](https://github.com/gogs/gogs/security) for security patches included in the release.
|
||||
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
32
.github/ISSUE_TEMPLATE/documentation.yml
vendored
@@ -1,32 +0,0 @@
|
||||
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
|
||||
32
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
32
.github/ISSUE_TEMPLATE/feature_request.md
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
---
|
||||
name: Feature request
|
||||
about: Suggest an idea for this project
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
First of all, please read https://www.chiark.greenend.org.uk/~sgtatham/bugs.html.
|
||||
|
||||
If you don't want to read, it's up to you. But don't waste your time continue reporting.
|
||||
|
||||
The issue will be closed without any explanation if it does not satisfy any of following requirements:
|
||||
|
||||
1. Please speak English, we have forum in 中文: https://discuss.gogs.io/c/getting-help/getting-help-chinese.
|
||||
2. Please post any questions, configuration or deploy problems on our forum: https://discuss.gogs.io.
|
||||
3. Please do not end your title with a question mark or period.
|
||||
4. Please take a moment to search and make sure the issue doesn't already exist.
|
||||
|
||||
-->
|
||||
|
||||
**Describe the feature**
|
||||
<!-- A description of what feature you would like -->
|
||||
|
||||
**Describe the solution you'd like**
|
||||
<!-- A clear and concise description of what you want to happen -->
|
||||
|
||||
**Describe alternatives you've considered**
|
||||
<!-- A clear and concise description of any alternative solutions or features you've considered -->
|
||||
|
||||
**Additional context**
|
||||
<!-- Add any other context or screenshots about the feature request here -->
|
||||
47
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
47
.github/ISSUE_TEMPLATE/feature_request.yml
vendored
@@ -1,47 +0,0 @@
|
||||
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
|
||||
12
.github/ISSUE_TEMPLATE/security.md
vendored
Normal file
12
.github/ISSUE_TEMPLATE/security.md
vendored
Normal file
@@ -0,0 +1,12 @@
|
||||
---
|
||||
name: Security vulnerability
|
||||
about: Report security vulnerability for this project
|
||||
|
||||
---
|
||||
|
||||
<!--
|
||||
|
||||
Please create a dummy issue with high-level description of the security vulnerability,
|
||||
then report details to u@gogs.io privately, thank you!
|
||||
|
||||
-->
|
||||
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
8
.github/PULL_REQUEST_TEMPLATE.md
vendored
Normal file
@@ -0,0 +1,8 @@
|
||||
The pull request will be closed without any reasons if it does not satisfy any of following requirements:
|
||||
|
||||
1. Please read contributing guidelines:
|
||||
https://github.com/gogits/gogs/wiki/Contributing-Code
|
||||
2. Please describe what your pull request does and which issue you're targeting
|
||||
3. ... if it is not related to any particular issues, explain why we should not reject your pull request.
|
||||
|
||||
**You MUST delete above content including this line before posting; too lazy to take this action considered invalid pull request.**
|
||||
9
.github/dependabot.yml
vendored
9
.github/dependabot.yml
vendored
@@ -1,9 +0,0 @@
|
||||
# Docs: https://git.io/JCUAY
|
||||
version: 2
|
||||
updates:
|
||||
- package-ecosystem: "gomod"
|
||||
directory: "/"
|
||||
schedule:
|
||||
interval: "monthly"
|
||||
commit-message:
|
||||
prefix: "mod:"
|
||||
16
.github/pull_request_template.md
vendored
16
.github/pull_request_template.md
vendored
@@ -1,16 +0,0 @@
|
||||
## Describe the pull request
|
||||
|
||||
A clear and concise description of what the pull request is about, i.e. what problem should be fixed?
|
||||
|
||||
Link to the issue: <!-- paste the issue link here, or put "n/a" if not applicable -->
|
||||
|
||||
## Checklist
|
||||
|
||||
- [ ] I agree to follow the [Code of Conduct](https://go.dev/conduct) by submitting this pull request.
|
||||
- [ ] I have read and acknowledge the [Contributing guide](https://github.com/gogs/gogs/blob/main/.github/CONTRIBUTING.md).
|
||||
- [ ] I have added test cases to cover the new code or have provided the test plan. (if applicable)
|
||||
- [ ] I have added an entry to [CHANGELOG](https://github.com/gogs/gogs/blob/main/CHANGELOG.md). (if applicable)
|
||||
|
||||
## Test plan
|
||||
|
||||
<!-- Please provide concrete but concise steps to proof things are working as stated, see an example in https://github.com/gogs/gogs/pull/7345 -->
|
||||
95
.github/workflows/codeql.yml
vendored
95
.github/workflows/codeql.yml
vendored
@@ -1,75 +1,52 @@
|
||||
# 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"
|
||||
name: "Code scanning - action"
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/codeql.yml'
|
||||
branches: [master]
|
||||
schedule:
|
||||
- cron: '0 19 * * 0'
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
security-events: write
|
||||
|
||||
jobs:
|
||||
analyze:
|
||||
name: Analyze
|
||||
CodeQL-Build:
|
||||
|
||||
# CodeQL runs on ubuntu-latest and windows-latest
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
language: [ 'go' ]
|
||||
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python' ]
|
||||
# Learn more:
|
||||
# https://docs.github.com/en/free-pro-team@latest/github/finding-security-vulnerabilities-and-errors-in-your-code/configuring-code-scanning#changing-the-languages-that-are-analyzed
|
||||
|
||||
steps:
|
||||
- name: Check out repository
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
with:
|
||||
# We must fetch at least the immediate parents so that if this is
|
||||
# a pull request then we can checkout the head.
|
||||
fetch-depth: 2
|
||||
- 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@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3
|
||||
with:
|
||||
languages: ${{ matrix.language }}
|
||||
# If you wish to specify custom queries, you can do so here or in a config file.
|
||||
# By default, queries listed here will override any specified in a config file.
|
||||
# Prefix the list here with "+" to use these queries and those in the config file.
|
||||
# queries: ./path/to/local/query, your-org/your-repo/queries@main
|
||||
# If this run was triggered by a pull request event, then checkout
|
||||
# the head of the pull request instead of the merge commit.
|
||||
- run: git checkout HEAD^2
|
||||
if: ${{ github.event_name == 'pull_request' }}
|
||||
|
||||
# Initializes the CodeQL tools for scanning.
|
||||
- name: Initialize CodeQL
|
||||
uses: github/codeql-action/init@v1
|
||||
# Override language selection by uncommenting this and choosing your languages
|
||||
# with:
|
||||
# languages: go, javascript, csharp, python, cpp, java
|
||||
|
||||
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
|
||||
# If this step fails, then you should remove it and run the build manually (see below)
|
||||
- name: Autobuild
|
||||
uses: github/codeql-action/autobuild@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3
|
||||
# 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
|
||||
# ℹ️ 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
|
||||
# ✏️ 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
|
||||
#- run: |
|
||||
# make bootstrap
|
||||
# make release
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@fdbfb4d2750291e159f0156def62b853c2798ca2 # v3.28.3
|
||||
- name: Perform CodeQL Analysis
|
||||
uses: github/codeql-action/analyze@v1
|
||||
|
||||
26
.github/workflows/digitalocean_gc.yml
vendored
26
.github/workflows/digitalocean_gc.yml
vendored
@@ -1,26 +0,0 @@
|
||||
name: DigitalOcean
|
||||
on:
|
||||
workflow_dispatch:
|
||||
workflow_call:
|
||||
|
||||
jobs:
|
||||
garbage-collection:
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Install doctl
|
||||
uses: digitalocean/action-doctl@5727c67aa3c2c34ae9462d5a0ecfea8a1b31e5ce # v2
|
||||
with:
|
||||
token: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
|
||||
- name: Run garbage collection
|
||||
run: |
|
||||
# --force: Required for CI to skip confirmation prompts
|
||||
# --include-untagged-manifests: Deletes unreferenced manifests to maximize space
|
||||
doctl registry garbage-collection start --force --include-untagged-manifests
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
346
.github/workflows/docker.yml
vendored
346
.github/workflows/docker.yml
vendored
@@ -5,36 +5,37 @@ on:
|
||||
- main
|
||||
pull_request:
|
||||
paths:
|
||||
- '.trivy.yaml'
|
||||
- 'Dockerfile'
|
||||
- 'Dockerfile.next'
|
||||
- 'docker/**'
|
||||
- 'docker-next/**'
|
||||
- '.github/workflows/docker.yml'
|
||||
release:
|
||||
types: [ published ]
|
||||
|
||||
jobs:
|
||||
buildx:
|
||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
actions: write
|
||||
contents: read
|
||||
packages: write
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
- name: Canel previous runs
|
||||
uses: styfle/cancel-workflow-action@0.9.1
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
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@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
config-inline: |
|
||||
[worker.oci]
|
||||
max-parallelism = 2
|
||||
- name: Inspect builder
|
||||
run: |
|
||||
echo "Name: ${{ steps.buildx.outputs.name }}"
|
||||
@@ -43,18 +44,18 @@ jobs:
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Login to GitHub Container registry
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
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@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
@@ -62,38 +63,38 @@ jobs:
|
||||
tags: |
|
||||
gogs/gogs:latest
|
||||
ghcr.io/gogs/gogs:latest
|
||||
- name: Scan for container vulnerabilities
|
||||
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
|
||||
with:
|
||||
image-ref: gogs/gogs:latest
|
||||
exit-code: '1'
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
uses: dawidd6/action-send-mail@v3
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
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 }}".
|
||||
|
||||
buildx-next:
|
||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-next-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
|
||||
buildx-pull-request:
|
||||
if: ${{ github.event_name == 'pull_request' && github.repository == 'gogs/gogs' }}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
actions: write
|
||||
contents: read
|
||||
packages: write
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
config-inline: |
|
||||
[worker.oci]
|
||||
max-parallelism = 2
|
||||
- name: Inspect builder
|
||||
run: |
|
||||
echo "Name: ${{ steps.buildx.outputs.name }}"
|
||||
@@ -102,121 +103,32 @@ jobs:
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Login to GitHub Container registry
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Login to DigitalOcean Container registry
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
registry: registry.digitalocean.com
|
||||
username: ${{ secrets.DIGITALOCEAN_USERNAME }}
|
||||
password: ${{ secrets.DIGITALOCEAN_ACCESS_TOKEN }}
|
||||
- name: Build and push next-gen images
|
||||
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
with:
|
||||
context: .
|
||||
file: Dockerfile.next
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: |
|
||||
gogs/gogs:next-latest
|
||||
ghcr.io/gogs/gogs:next-latest
|
||||
registry.digitalocean.com/gogs/gogs:next-latest
|
||||
- name: Scan for container vulnerabilities
|
||||
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
|
||||
with:
|
||||
image-ref: gogs/gogs:next-latest
|
||||
exit-code: '1'
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
|
||||
deploy-demo:
|
||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
|
||||
needs: buildx-next
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Configure kubectl
|
||||
run: |
|
||||
mkdir -p ~/.kube
|
||||
echo "${KUBECONFIG}" | base64 -d > ~/.kube/config
|
||||
env:
|
||||
KUBECONFIG: ${{ secrets.DIGITALOCEAN_K8S_CLUSTER_KUBECONFIG }}
|
||||
- name: Restart gogs-demo deployment
|
||||
timeout-minutes: 5
|
||||
run: |
|
||||
set -ex
|
||||
kubectl rollout restart deployment gogs-demo -n gogs
|
||||
kubectl rollout status deployment gogs-demo -n gogs
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
|
||||
buildx-pull-request:
|
||||
if: ${{ github.event_name == 'pull_request'}}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
with:
|
||||
config-inline: |
|
||||
[worker.oci]
|
||||
max-parallelism = 2
|
||||
- name: Inspect builder
|
||||
run: |
|
||||
echo "Name: ${{ steps.buildx.outputs.name }}"
|
||||
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
|
||||
echo "Status: ${{ steps.buildx.outputs.status }}"
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Compute short commit SHA
|
||||
id: short-sha
|
||||
uses: benjlevesque/short-sha@599815c8ee942a9616c92bcfb4f947a3b670ab0b # v3.0
|
||||
uses: benjlevesque/short-sha@v1.2
|
||||
- name: Build and push images
|
||||
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ttl.sh/gogs/gogs-${{ steps.short-sha.outputs.sha }}:7d
|
||||
- name: Scan for container vulnerabilities
|
||||
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
|
||||
with:
|
||||
image-ref: ttl.sh/gogs/gogs-${{ steps.short-sha.outputs.sha }}:7d
|
||||
exit-code: '1'
|
||||
gogs/gogs:commit-${{ env.SHA }}
|
||||
|
||||
buildx-next-pull-request:
|
||||
if: ${{ github.event_name == 'pull_request'}}
|
||||
buildx-pull-request-fork:
|
||||
if: ${{ github.event_name == 'pull_request' && github.repository != 'gogs/gogs' }}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
contents: read
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
config-inline: |
|
||||
[worker.oci]
|
||||
@@ -228,25 +140,12 @@ jobs:
|
||||
echo "Status: ${{ steps.buildx.outputs.status }}"
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Compute short commit SHA
|
||||
id: short-sha
|
||||
uses: benjlevesque/short-sha@599815c8ee942a9616c92bcfb4f947a3b670ab0b # v3.0
|
||||
- name: Build and push next-gen images
|
||||
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
- name: Build images
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
file: Dockerfile.next
|
||||
platforms: linux/amd64
|
||||
push: true
|
||||
tags: |
|
||||
ttl.sh/gogs/gogs-next-${{ steps.short-sha.outputs.sha }}:7d
|
||||
- name: Scan for container vulnerabilities
|
||||
uses: aquasecurity/trivy-action@b6643a29fecd7f34b3597bc6acb0a98b03d33ff8 # 0.33.1
|
||||
with:
|
||||
image-ref: ttl.sh/gogs/gogs-next-${{ steps.short-sha.outputs.sha }}:7d
|
||||
exit-code: '1'
|
||||
|
||||
# Updates to the following section needs to be synced to all release branches within their lifecycles.
|
||||
buildx-release:
|
||||
if: ${{ github.event_name == 'release' }}
|
||||
runs-on: ubuntu-latest
|
||||
@@ -255,34 +154,19 @@ jobs:
|
||||
contents: read
|
||||
packages: write
|
||||
steps:
|
||||
- name: Compute image tags
|
||||
run: |
|
||||
IMAGE_TAG=$(echo $GITHUB_REF_NAME | cut -c 2-)
|
||||
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
|
||||
|
||||
TAGS="gogs/gogs:$IMAGE_TAG
|
||||
ghcr.io/gogs/gogs:$IMAGE_TAG"
|
||||
|
||||
# Add minor version tag for stable releases (no prerelease suffix per semver).
|
||||
if [[ ! "$IMAGE_TAG" =~ - ]]; then
|
||||
MINOR_TAG=$(echo "$IMAGE_TAG" | cut -d. -f1,2)
|
||||
TAGS="$TAGS
|
||||
gogs/gogs:$MINOR_TAG
|
||||
ghcr.io/gogs/gogs:$MINOR_TAG"
|
||||
fi
|
||||
|
||||
echo "TAGS<<EOF" >> $GITHUB_ENV
|
||||
echo "$TAGS" >> $GITHUB_ENV
|
||||
echo "EOF" >> $GITHUB_ENV
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: 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@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
uses: docker/setup-qemu-action@v1
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
uses: docker/setup-buildx-action@v1
|
||||
with:
|
||||
config-inline: |
|
||||
[worker.oci]
|
||||
max-parallelism = 2
|
||||
- name: Inspect builder
|
||||
run: |
|
||||
echo "Name: ${{ steps.buildx.outputs.name }}"
|
||||
@@ -291,112 +175,38 @@ jobs:
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
uses: docker/login-action@v1
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Login to GitHub Container registry
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
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@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
uses: docker/build-push-action@v2
|
||||
with:
|
||||
context: .
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: ${{ env.TAGS }}
|
||||
tags: |
|
||||
gogs/gogs:${{ env.IMAGE_TAG }}
|
||||
ghcr.io/gogs/gogs:${{ env.IMAGE_TAG }}
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
uses: dawidd6/action-send-mail@v3
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
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 }}".
|
||||
|
||||
# Updates to the following section needs to be synced to all release branches within their lifecycles.
|
||||
buildx-next-release:
|
||||
if: ${{ github.event_name == 'release' }}
|
||||
runs-on: ubuntu-latest
|
||||
permissions:
|
||||
actions: write
|
||||
contents: read
|
||||
packages: write
|
||||
steps:
|
||||
- name: Compute image tags
|
||||
run: |
|
||||
IMAGE_TAG=$(echo $GITHUB_REF_NAME | cut -c 2-)
|
||||
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
|
||||
|
||||
TAGS="gogs/gogs:next-$IMAGE_TAG
|
||||
ghcr.io/gogs/gogs:next-$IMAGE_TAG"
|
||||
|
||||
# Add minor version tag for stable releases (no prerelease suffix per semver).
|
||||
if [[ ! "$IMAGE_TAG" =~ - ]]; then
|
||||
MINOR_TAG=$(echo "$IMAGE_TAG" | cut -d. -f1,2)
|
||||
TAGS="$TAGS
|
||||
gogs/gogs:next-$MINOR_TAG
|
||||
ghcr.io/gogs/gogs:next-$MINOR_TAG"
|
||||
fi
|
||||
|
||||
echo "TAGS<<EOF" >> $GITHUB_ENV
|
||||
echo "$TAGS" >> $GITHUB_ENV
|
||||
echo "EOF" >> $GITHUB_ENV
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@c7c53464625b32c7a7e944ae62b3e17d2b600130 # v3.7.0
|
||||
with:
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
- name: Set up Docker Buildx
|
||||
id: buildx
|
||||
uses: docker/setup-buildx-action@e468171a9de216ec08956ac3ada2f0791b6bd435 # v3.11.1
|
||||
- name: Inspect builder
|
||||
run: |
|
||||
echo "Name: ${{ steps.buildx.outputs.name }}"
|
||||
echo "Endpoint: ${{ steps.buildx.outputs.endpoint }}"
|
||||
echo "Status: ${{ steps.buildx.outputs.status }}"
|
||||
echo "Flags: ${{ steps.buildx.outputs.flags }}"
|
||||
echo "Platforms: ${{ steps.buildx.outputs.platforms }}"
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
||||
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
||||
- name: Login to GitHub Container registry
|
||||
uses: docker/login-action@5e57cd118135c172c3672efd75eb46360885c0ef # v3.6.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Build and push next-gen images
|
||||
uses: docker/build-push-action@263435318d21b8e681c14492fe198d362a7d2c83 # v6.18.0
|
||||
with:
|
||||
context: .
|
||||
file: Dockerfile.next
|
||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||
push: true
|
||||
tags: ${{ env.TAGS }}
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
if: ${{ failure() }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
|
||||
digitalocean-gc:
|
||||
if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' && github.repository == 'gogs/gogs' }}
|
||||
needs: buildx-next
|
||||
permissions:
|
||||
contents: read
|
||||
uses: ./.github/workflows/digitalocean_gc.yml
|
||||
secrets: inherit
|
||||
|
||||
digitalocean-gc-pull-request:
|
||||
if: ${{ github.event_name == 'pull_request' && github.repository == 'gogs/gogs' }}
|
||||
needs: buildx-next-pull-request
|
||||
permissions:
|
||||
contents: read
|
||||
uses: ./.github/workflows/digitalocean_gc.yml
|
||||
secrets: inherit
|
||||
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
|
||||
168
.github/workflows/go.yml
vendored
168
.github/workflows/go.yml
vendored
@@ -18,159 +18,111 @@ on:
|
||||
env:
|
||||
GOPROXY: "https://proxy.golang.org"
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
lint:
|
||||
permissions:
|
||||
contents: read # for actions/checkout to fetch code
|
||||
pull-requests: read # for golangci/golangci-lint-action to fetch pull requests
|
||||
name: Lint
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v2
|
||||
- name: Run golangci-lint
|
||||
uses: golangci/golangci-lint-action@v2
|
||||
with:
|
||||
go-version: 1.26.x
|
||||
version: latest
|
||||
args: --timeout=30m
|
||||
- name: Install Task
|
||||
uses: arduino/setup-task@b91d5d2c96a56797b48ac1e0e89220bf64044611 # v2.0.0
|
||||
with:
|
||||
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
||||
- name: Check Go module tidiness and generated files
|
||||
uses: arduino/setup-task@v1
|
||||
- name: Install go-bindata
|
||||
shell: bash
|
||||
run: |
|
||||
curl --silent --location --output /usr/local/bin/go-bindata https://github.com/kevinburke/go-bindata/releases/download/v3.23.0/go-bindata-linux-amd64
|
||||
chmod +x /usr/local/bin/go-bindata
|
||||
- name: Check Go module tidiness
|
||||
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"
|
||||
echo "Run 'go mod tidy' and commit them"
|
||||
exit 1
|
||||
fi
|
||||
- name: Run golangci-lint
|
||||
uses: golangci/golangci-lint-action@9fae48acfc02a90574d7c304a1758ef9895495fa # v7.0.1
|
||||
with:
|
||||
version: latest
|
||||
args: --timeout=30m
|
||||
|
||||
test:
|
||||
name: Test
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [ 1.26.x ]
|
||||
go-version: [ 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x ]
|
||||
platform: [ ubuntu-latest, macos-latest ]
|
||||
runs-on: ${{ matrix.platform }}
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
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 -json ./... > test-report.json
|
||||
go install github.com/mfridman/tparse@latest
|
||||
tparse -all -file=test-report.json
|
||||
run: go test -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: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
uses: dawidd6/action-send-mail@v3
|
||||
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
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 Windows
|
||||
name: Test
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [ 1.26.x ]
|
||||
go-version: [ 1.14.x, 1.15.x, 1.16.x, 1.17.x, 1.18.x ]
|
||||
platform: [ windows-latest ]
|
||||
runs-on: ${{ matrix.platform }}
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
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 ./...
|
||||
run: go test -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: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
uses: dawidd6/action-send-mail@v3
|
||||
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
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 }}".
|
||||
|
||||
postgres:
|
||||
name: Postgres
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [ 1.26.x ]
|
||||
platform: [ ubuntu-latest ]
|
||||
runs-on: ${{ matrix.platform }}
|
||||
services:
|
||||
postgres:
|
||||
image: postgres:9.6
|
||||
env:
|
||||
POSTGRES_PASSWORD: postgres
|
||||
options: >-
|
||||
--health-cmd pg_isready
|
||||
--health-interval 10s
|
||||
--health-timeout 5s
|
||||
--health-retries 5
|
||||
ports:
|
||||
- 5432:5432
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
- name: Run tests with coverage
|
||||
run: |
|
||||
go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic -json ./internal/database/... > test-report.json
|
||||
go install github.com/mfridman/tparse@latest
|
||||
tparse -all -file=test-report.json
|
||||
env:
|
||||
GOGS_DATABASE_TYPE: postgres
|
||||
PGPORT: 5432
|
||||
PGHOST: localhost
|
||||
PGUSER: postgres
|
||||
PGPASSWORD: postgres
|
||||
PGSSLMODE: disable
|
||||
|
||||
mysql:
|
||||
name: MySQL
|
||||
strategy:
|
||||
matrix:
|
||||
go-version: [ 1.26.x ]
|
||||
platform: [ ubuntu-22.04 ] # Use the lowest version possible for backwards compatibility
|
||||
runs-on: ${{ matrix.platform }}
|
||||
steps:
|
||||
- name: Start MySQL server
|
||||
run: sudo systemctl start mysql
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Install Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
- name: Run tests with coverage
|
||||
run: |
|
||||
go test -shuffle=on -v -race -coverprofile=coverage -covermode=atomic -json ./internal/database/... > test-report.json
|
||||
go install github.com/mfridman/tparse@latest
|
||||
tparse -all -file=test-report.json
|
||||
env:
|
||||
GOGS_DATABASE_TYPE: mysql
|
||||
MYSQL_USER: root
|
||||
MYSQL_PASSWORD: root
|
||||
MYSQL_HOST: localhost
|
||||
MYSQL_PORT: 3306
|
||||
View the job run at: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
|
||||
|
||||
25
.github/workflows/lock.yml
vendored
25
.github/workflows/lock.yml
vendored
@@ -1,25 +0,0 @@
|
||||
name: 'Lock Threads'
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 0 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
permissions:
|
||||
issues: write
|
||||
pull-requests: write
|
||||
|
||||
concurrency:
|
||||
group: lock
|
||||
|
||||
jobs:
|
||||
action:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: dessant/lock-threads@1bf7ec25051fe7c00bdd17e6a7cf3d7bfb7dc771 # v5.0.1
|
||||
with:
|
||||
github-token: ${{ github.token }}
|
||||
issue-inactive-days: '90'
|
||||
issue-lock-reason: 'resolved'
|
||||
pr-inactive-days: '365'
|
||||
pr-lock-reason: 'resolved'
|
||||
28
.github/workflows/lsif.yml
vendored
Normal file
28
.github/workflows/lsif.yml
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
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 sourcegraph.unknwon.cn
|
||||
continue-on-error: true
|
||||
uses: docker://sourcegraph/src-cli:latest
|
||||
with:
|
||||
args: -endpoint=https://sourcegraph.unknwon.cn lsif upload -github-token=${{ secrets.GITHUB_TOKEN }}
|
||||
146
.github/workflows/release.yml
vendored
146
.github/workflows/release.yml
vendored
@@ -1,146 +0,0 @@
|
||||
name: Release
|
||||
|
||||
on:
|
||||
release:
|
||||
types: [published]
|
||||
push:
|
||||
branches:
|
||||
- main
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/release.yml'
|
||||
|
||||
concurrency:
|
||||
group: ${{ github.workflow }}-${{ github.ref }}
|
||||
cancel-in-progress: true
|
||||
|
||||
env:
|
||||
GOPROXY: "https://proxy.golang.org"
|
||||
|
||||
permissions:
|
||||
contents: write
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Build ${{ matrix.goos }}/${{ matrix.goarch }}${{ matrix.suffix }}
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
include:
|
||||
- {goos: linux, goarch: amd64}
|
||||
- {goos: linux, goarch: arm64}
|
||||
- {goos: linux, goarch: "386"}
|
||||
- {goos: darwin, goarch: amd64}
|
||||
- {goos: darwin, goarch: arm64}
|
||||
- {goos: windows, goarch: amd64}
|
||||
- {goos: windows, goarch: arm64}
|
||||
- {goos: windows, goarch: "386"}
|
||||
- {goos: windows, goarch: amd64, suffix: "_mws", tags: minwinsvc}
|
||||
- {goos: windows, goarch: arm64, suffix: "_mws", tags: minwinsvc}
|
||||
- {goos: windows, goarch: "386", suffix: "_mws", tags: minwinsvc}
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- name: Set up Go
|
||||
uses: actions/setup-go@d35c59abb061a4a6fb18e82ac0862c26744d6ab5 # v5.5.0
|
||||
with:
|
||||
go-version: 1.26.x
|
||||
- name: Determine version
|
||||
id: version
|
||||
run: |
|
||||
if [ "${{ github.event_name }}" = "release" ]; then
|
||||
echo "version=${{ github.event.release.tag_name }}" | sed 's/version=v/version=/' >> "$GITHUB_OUTPUT"
|
||||
echo "release_tag=${{ github.event.release.tag_name }}" >> "$GITHUB_OUTPUT"
|
||||
elif [ "${{ github.event_name }}" = "push" ] && [ "${{ github.ref }}" = "refs/heads/main" ]; then
|
||||
echo "version=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT"
|
||||
echo "release_tag=latest-commit-build" >> "$GITHUB_OUTPUT"
|
||||
else
|
||||
echo "version=$(git rev-parse --short HEAD)" >> "$GITHUB_OUTPUT"
|
||||
echo "release_tag=release-archive-testing" >> "$GITHUB_OUTPUT"
|
||||
fi
|
||||
- name: Build binary
|
||||
env:
|
||||
GOOS: ${{ matrix.goos }}
|
||||
GOARCH: ${{ matrix.goarch }}
|
||||
CGO_ENABLED: "0"
|
||||
run: |
|
||||
BINARY_NAME="gogs"
|
||||
if [ "${{ matrix.goos }}" = "windows" ]; then
|
||||
BINARY_NAME="gogs.exe"
|
||||
fi
|
||||
|
||||
TAGS_FLAG=""
|
||||
if [ -n "${{ matrix.tags }}" ]; then
|
||||
TAGS_FLAG="-tags ${{ matrix.tags }}"
|
||||
fi
|
||||
|
||||
go build -v \
|
||||
-ldflags "
|
||||
-X \"gogs.io/gogs/internal/conf.BuildTime=$(date -u '+%Y-%m-%d %I:%M:%S %Z')\"
|
||||
-X \"gogs.io/gogs/internal/conf.BuildCommit=$(git rev-parse HEAD)\"
|
||||
" \
|
||||
$TAGS_FLAG \
|
||||
-trimpath -o "$BINARY_NAME" ./cmd/gogs
|
||||
- name: Prepare archive contents
|
||||
run: |
|
||||
mkdir -p dist/gogs
|
||||
BINARY_NAME="gogs"
|
||||
if [ "${{ matrix.goos }}" = "windows" ]; then
|
||||
BINARY_NAME="gogs.exe"
|
||||
fi
|
||||
cp "$BINARY_NAME" dist/gogs/
|
||||
cp LICENSE README.md dist/gogs/
|
||||
cp -r scripts dist/gogs/
|
||||
- name: Create archives
|
||||
working-directory: dist
|
||||
run: |
|
||||
VERSION="${{ steps.version.outputs.version }}"
|
||||
ARCHIVE_BASE="gogs_${VERSION}_${{ matrix.goos }}_${{ matrix.goarch }}${{ matrix.suffix }}"
|
||||
|
||||
zip -r "${ARCHIVE_BASE}.zip" gogs
|
||||
|
||||
if [ "${{ matrix.goos }}" = "linux" ]; then
|
||||
tar -czvf "${ARCHIVE_BASE}.tar.gz" gogs
|
||||
fi
|
||||
- name: Upload to release
|
||||
env:
|
||||
GH_TOKEN: ${{ github.token }}
|
||||
run: |
|
||||
RELEASE_TAG="${{ steps.version.outputs.release_tag }}"
|
||||
|
||||
if [ "${{ github.event_name }}" != "release" ]; then
|
||||
git tag -f "$RELEASE_TAG"
|
||||
git push origin "$RELEASE_TAG" --force || true
|
||||
|
||||
RELEASE_TITLE="Release Archive Testing"
|
||||
RELEASE_NOTES="Automated testing release for workflow development."
|
||||
if [ "$RELEASE_TAG" = "latest-commit-build" ]; then
|
||||
RELEASE_TITLE="Latest Commit Build"
|
||||
RELEASE_NOTES="Automated build from the latest commit on main branch. This release is updated automatically with every push to main."
|
||||
fi
|
||||
|
||||
gh release view "$RELEASE_TAG" || gh release create "$RELEASE_TAG" --title "$RELEASE_TITLE" --notes "$RELEASE_NOTES" --prerelease
|
||||
fi
|
||||
|
||||
PATTERN="_${{ matrix.goos }}_${{ matrix.goarch }}${{ matrix.suffix }}\."
|
||||
gh release view "$RELEASE_TAG" --json assets --jq ".assets[].name" | grep "$PATTERN" | while read -r asset; do
|
||||
gh release delete-asset "$RELEASE_TAG" "$asset" --yes || true
|
||||
done
|
||||
|
||||
gh release upload "$RELEASE_TAG" dist/gogs_*.zip --clobber
|
||||
if [ "${{ matrix.goos }}" = "linux" ]; then
|
||||
gh release upload "$RELEASE_TAG" dist/gogs_*.tar.gz --clobber
|
||||
fi
|
||||
|
||||
notify-failure:
|
||||
name: Notify on failure
|
||||
runs-on: ubuntu-latest
|
||||
needs: [build]
|
||||
if: ${{ failure() && github.event_name == 'push' && github.ref == 'refs/heads/main' }}
|
||||
steps:
|
||||
- name: Send email on failure
|
||||
uses: unknwon/send-email-on-failure@89339a1bc93f4ad1d30f3b7e4911fcba985c9adb # v1
|
||||
with:
|
||||
smtp_username: ${{ secrets.SMTP_USERNAME }}
|
||||
smtp_password: ${{ secrets.SMTP_PASSWORD }}
|
||||
7
.github/workflows/shell.yml
vendored
7
.github/workflows/shell.yml
vendored
@@ -4,14 +4,11 @@ on:
|
||||
branches: [ main ]
|
||||
pull_request:
|
||||
|
||||
permissions:
|
||||
contents: read
|
||||
|
||||
jobs:
|
||||
shellcheck:
|
||||
name: Shellcheck
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@1af3b93b6815bc44a9784bd300feb67ff0d1eeb3 # v6.0.0
|
||||
- uses: actions/checkout@v2
|
||||
- name: Run ShellCheck
|
||||
uses: ludeeus/action-shellcheck@00cae500b08a931fb5698e11e79bfbd38e612a38 # 2.0.0
|
||||
uses: ludeeus/action-shellcheck@master
|
||||
|
||||
27
.gitignore
vendored
27
.gitignore
vendored
@@ -1,16 +1,19 @@
|
||||
# Build artifacts
|
||||
.bin/
|
||||
dist/
|
||||
|
||||
# Runtime data
|
||||
.DS_Store
|
||||
*.db
|
||||
*.log
|
||||
log/
|
||||
custom/
|
||||
data/
|
||||
|
||||
# Configuration and application files
|
||||
.idea/
|
||||
.task/
|
||||
.envrc
|
||||
|
||||
# System junk
|
||||
.DS_Store
|
||||
*.iml
|
||||
public/img/avatar/
|
||||
*.exe
|
||||
*.exe~
|
||||
/gogs
|
||||
profile/
|
||||
*.pem
|
||||
output*
|
||||
*.sublime-project
|
||||
*.sublime-workspace
|
||||
/release
|
||||
.task
|
||||
|
||||
@@ -1,42 +1,26 @@
|
||||
version: "2"
|
||||
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:
|
||||
- deadcode
|
||||
- errcheck
|
||||
- gosimple
|
||||
- govet
|
||||
- ineffassign
|
||||
- staticcheck
|
||||
- structcheck
|
||||
- typecheck
|
||||
- unused
|
||||
- varcheck
|
||||
- nakedret
|
||||
- gofmt
|
||||
- rowserrcheck
|
||||
- unconvert
|
||||
- unparam
|
||||
settings:
|
||||
govet:
|
||||
disable:
|
||||
# printf: non-constant format string in call to fmt.Errorf (govet)
|
||||
# showing up since golangci-lint version 1.60.1
|
||||
- printf
|
||||
staticcheck:
|
||||
checks:
|
||||
- all
|
||||
- "-SA1019" # This project is under active refactoring and not all code is up to date.
|
||||
- "-QF1001" # I'm a math noob
|
||||
- "-ST1016" # Some legit code uses this pattern
|
||||
nakedret:
|
||||
max-func-lines: 0 # Disallow any unnamed return statement
|
||||
exclusions:
|
||||
generated: lax
|
||||
presets:
|
||||
- comments
|
||||
- common-false-positives
|
||||
- legacy
|
||||
- std-error-handling
|
||||
paths:
|
||||
- third_party$
|
||||
- builtin$
|
||||
- examples$
|
||||
formatters:
|
||||
enable:
|
||||
- gofmt
|
||||
- goimports
|
||||
exclusions:
|
||||
generated: lax
|
||||
paths:
|
||||
- third_party$
|
||||
- builtin$
|
||||
- examples$
|
||||
|
||||
6
.mailmap
6
.mailmap
@@ -1,4 +1,2 @@
|
||||
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>
|
||||
Unknwon <u@gogs.io> <joe2010xtmf@163.com>
|
||||
Unknwon <u@gogs.io> 无闻 <u@gogs.io>
|
||||
|
||||
25
.pkgr.yml
25
.pkgr.yml
@@ -1,25 +1,26 @@
|
||||
targets:
|
||||
debian-11: &debian
|
||||
debian-8: &debian
|
||||
build_dependencies:
|
||||
- libpam0g-dev
|
||||
dependencies:
|
||||
- libpam0g
|
||||
- git
|
||||
debian-12:
|
||||
debian-9:
|
||||
<<: *debian
|
||||
debian-13:
|
||||
debian-10:
|
||||
<<: *debian
|
||||
debian-14:
|
||||
debian-11:
|
||||
<<: *debian
|
||||
ubuntu-14.04:
|
||||
<<: *debian
|
||||
ubuntu-16.04:
|
||||
<<: *debian
|
||||
build_dependencies:
|
||||
- bzr
|
||||
- mercurial
|
||||
ubuntu-18.04:
|
||||
<<: *debian
|
||||
ubuntu-20.04:
|
||||
<<: *debian
|
||||
ubuntu-22.04:
|
||||
<<: *debian
|
||||
ubuntu-24.04:
|
||||
<<: *debian
|
||||
centos-9:
|
||||
centos-7:
|
||||
build_dependencies:
|
||||
- pam-devel
|
||||
# required for Go buildpack
|
||||
@@ -32,4 +33,4 @@ before:
|
||||
after:
|
||||
- mv bin/gogs gogs
|
||||
after_install: ./.packager/hooks/postinst
|
||||
buildpack: https://github.com/heroku/heroku-buildpack-go.git#main
|
||||
buildpack: https://github.com/heroku/heroku-buildpack-go.git
|
||||
|
||||
33
AGENTS.md
33
AGENTS.md
@@ -1,33 +0,0 @@
|
||||
## Core principles
|
||||
|
||||
- Stop telling me "You're right", it just shows how incompetent you are. Do it right on your first try, fact-check and review after changes. If you are not sure, ask for help.
|
||||
- When you see changes made outside your knowledge, use the current version as your new starting point. Do not blindly overwrite those changes or you suck. Even if you have to update the code, always respect the pattern in the surrounding context!
|
||||
|
||||
## Style and mechanics
|
||||
|
||||
This applies to all texts, including but not limited to UI, documentation, code comments.
|
||||
|
||||
- Use sentence case. Preserve original casing for brand names.
|
||||
- End with a period for a full sentence.
|
||||
- Do not add comments that repeat what the code is doing, always prefer more descriptive names. Do add comments for intentions that aren't obvious via reading the code alone. This rule takes precedence over matching existing patterns.
|
||||
|
||||
## Coding guidelines
|
||||
|
||||
- Use `github.com/cockroachdb/errors` for error handling.
|
||||
- Use `github.com/stretchr/testify` for assertions in tests. Be mindful about the choice of `require` and `assert`, the former should be used when the test cannot proceed meaningfully after a failed assertion.
|
||||
|
||||
## Build instructions
|
||||
|
||||
- Prefer `task` command over vanilla `go` command when available. Use `--force` flag when necessary.
|
||||
- Run `task lint` after every time you finish changing code, and fix all linter errors.
|
||||
- Run `go mod tidy` after every time you change `go.mod`, do not manually edit `go.sum` file.
|
||||
|
||||
## Tool-use guidance
|
||||
|
||||
- Use `gh` CLI to access information on github.com that is not publicly available.
|
||||
|
||||
## Source code control
|
||||
|
||||
- When pushing changes to a pull request from a fork, use SSH address and do not add remote.
|
||||
- Never commit on the `main` branch directly unless being explicitly asked to do so. A single ask only grants a single commit action on the `main` branch.
|
||||
- Never amend commits unless being explicitly asked to do so.
|
||||
116
CHANGELOG.md
116
CHANGELOG.md
@@ -2,118 +2,30 @@
|
||||
|
||||
All notable changes to Gogs are documented in this file.
|
||||
|
||||
## 0.15.0+dev (`main`)
|
||||
|
||||
### Fixed
|
||||
|
||||
- _Security:_ Cross-repository LFS object overwrite via missing content hash verification. [#8166](https://github.com/gogs/gogs/pull/8166) - [GHSA-gmf8-978x-2fg2](https://github.com/gogs/gogs/security/advisories/GHSA-gmf8-978x-2fg2)
|
||||
|
||||
### Removed
|
||||
|
||||
- Support for passing API access tokens via URL query parameters (`token`, `access_token`). Use the `Authorization` header instead. [#8177](https://github.com/gogs/gogs/pull/8177) - [GHSA-x9p5-w45c-7ffc](https://github.com/gogs/gogs/security/advisories/GHSA-x9p5-w45c-7ffc)
|
||||
- The `gogs cert` subcommand. [#8153](https://github.com/gogs/gogs/pull/8153)
|
||||
- The `[email] DISABLE_HELO` configuration option. HELO/EHLO is now always sent during SMTP handshake. [#8164](https://github.com/gogs/gogs/pull/8164)
|
||||
- Support for MSSQL as a database backend. Stay on 0.14 for continued usage. [#8173](https://github.com/gogs/gogs/pull/8173)
|
||||
|
||||
## 0.14.1
|
||||
## 0.13.0+dev (`main`)
|
||||
|
||||
### Added
|
||||
|
||||
- Support comparing tags in addition to branches. [#6141](https://github.com/gogs/gogs/issues/6141)
|
||||
- Show file name in browser tab title when viewing files. [#5896](https://github.com/gogs/gogs/pull/5896)
|
||||
- Support using TLS for Redis session provider using `[session] PROVIDER_CONFIG = ...,tls=true`. [#7860](https://github.com/gogs/gogs/pull/7860)
|
||||
- Support expanading values in `app.ini` from environment variables, e.g. `[database] PASSWORD = ${DATABASE_PASSWORD}`. [#8057](https://github.com/gogs/gogs/pull/8057)
|
||||
- Support custom logout URL that users get redirected to after sign out using `[auth] CUSTOM_LOGOUT_URL`. [#8089](https://github.com/gogs/gogs/pull/8089)
|
||||
- Start publishing next-generation, security-focused Docker image via `gogs/gogs:next-latest`, which will become the default image distribution (`gogs/gogs:latest`) starting 0.16.0. While not all container options support have been added in the next-generation image, the use of current legacy Docker image is deprecated, it will be published as `gogs/gogs:legacy-latest` starting 0.16.0, and be completely removed no earlier than 0.17.0. [#8061](https://github.com/gogs/gogs/pull/8061)
|
||||
|
||||
### Changed
|
||||
|
||||
- The required Go version to compile source code changed to 1.25.
|
||||
- The build tag `cert` has been removed, and the `gogs cert` subcommand is now always available. [#7883](https://github.com/gogs/gogs/pull/7883)
|
||||
- Switched to pure-Go SQLite driver, CGO is no longer required to compile Gogs. [#7882](https://github.com/gogs/gogs/issues/7882)
|
||||
- Updated Mermaid JS to 11.9.0. [#8009](https://github.com/gogs/gogs/pull/8009)
|
||||
- Halt the repository creation and leave the directory untouched if the repository root already exists. [#8091](https://github.com/gogs/gogs/pull/8091)
|
||||
|
||||
### Fixed
|
||||
|
||||
- _Security:_ Unauthenticated file upload. [#8128](https://github.com/gogs/gogs/pull/8128) - [GHSA-fc3h-92p8-h36f](https://github.com/gogs/gogs/security/advisories/GHSA-fc3h-92p8-h36f)
|
||||
- _Security:_ Protected branch bypass in web UI. [#8124](https://github.com/gogs/gogs/pull/8124) - [GHSA-2c6v-8r3v-gh6p](https://github.com/gogs/gogs/security/advisories/GHSA-2c6v-8r3v-gh6p)
|
||||
- _Security:_ Authorization bypass allows cross-repository label modification. [#8123](https://github.com/gogs/gogs/pull/8123) - [GHSA-cv22-72px-f4gh](https://github.com/gogs/gogs/security/advisories/GHSA-cv22-72px-f4gh)
|
||||
- _Security:_ Cross-repository comment deletion. [#8119](https://github.com/gogs/gogs/pull/8119) - [GHSA-jj5m-h57j-5gv7](https://github.com/gogs/gogs/security/advisories/GHSA-jj5m-h57j-5gv7)
|
||||
- 500 error on repository watchers and stargazers pages when using MSSQL. [#5482](https://github.com/gogs/gogs/issues/5482)
|
||||
- Submodules using `ssh://` protocol and a port number are not rendered correctly. [#4941](https://github.com/gogs/gogs/issues/4941)
|
||||
- Missing link to user profile on the first commit in commits history page. [#7404](https://github.com/gogs/gogs/issues/7404)
|
||||
- Unable to delete or display files with special characters in their names. [#7596](https://github.com/gogs/gogs/issues/7596)
|
||||
- Docker healthcheck fails when `HTTP_PROXY` or `HTTPS_PROXY` environment variables are set. [#7529](https://github.com/gogs/gogs/issues/7529)
|
||||
|
||||
## 0.13.4
|
||||
|
||||
### Fixed
|
||||
|
||||
- _Security:_ DoS in repository mirror sync. [#8065](https://github.com/gogs/gogs/pull/8065) - [GHSA-cr88-6mqm-4g57](https://github.com/gogs/gogs/security/advisories/GHSA-cr88-6mqm-4g57)
|
||||
- _Security:_ RCE in repository put contents API. [#8082](https://github.com/gogs/gogs/pull/8082) - [GHSA-gg64-xxr9-qhjp](https://github.com/gogs/gogs/security/advisories/GHSA-gg64-xxr9-qhjp)
|
||||
- _Security:_ Arbitrary file deletion via path traversal in wiki page update. [#8099](https://github.com/gogs/gogs/pull/8099) - [GHSA-jp7c-wj6q-3qf2](https://github.com/gogs/gogs/security/advisories/GHSA-jp7c-wj6q-3qf2)
|
||||
- _Security:_ 2FA bypass via recovery code. [#8100](https://github.com/gogs/gogs/pull/8100) - [GHSA-p6x6-9mx6-26wj](https://github.com/gogs/gogs/security/advisories/GHSA-p6x6-9mx6-26wj)
|
||||
- _Security:_ Authorization bypass in repository deletion API. [#8101](https://github.com/gogs/gogs/pull/8101) - [GHSA-rjv5-9px2-fqw6](https://github.com/gogs/gogs/security/advisories/GHSA-rjv5-9px2-fqw6)
|
||||
- _Security:_ Update repository content via API with read-only permission. [#8102](https://github.com/gogs/gogs/pull/8102) - [GHSA-5qhx-gwfj-6jqr](https://github.com/gogs/gogs/security/advisories/GHSA-5qhx-gwfj-6jqr)
|
||||
- _Security:_ Arbitrary file read/write via path traversal in Git hook editing. [#8103](https://github.com/gogs/gogs/pull/8103) - [GHSA-mrph-w4hh-gx3g](https://github.com/gogs/gogs/security/advisories/GHSA-mrph-w4hh-gx3g)
|
||||
- _Security:_ Stored XSS via Mermaid diagrams. [`2c88cd4`](https://github.com/gogs/gogs/commit/2c88cd4d9fdc346d8e06d82f5368d657c10e79c2) - [GHSA-26gq-grmh-6xm6](https://github.com/gogs/gogs/security/advisories/GHSA-26gq-grmh-6xm6)
|
||||
- Route `GET /api/v1/user/repos` responses 500 when accessible repositories contain forks. [#8069](https://github.com/gogs/gogs/pull/8069)
|
||||
- Newer Git versions that uses default branch `main` cause wiki initialization to fail. [#8094](https://github.com/gogs/gogs/pull/8094)
|
||||
|
||||
## 0.13.3
|
||||
|
||||
### Fixed
|
||||
|
||||
- _Security:_ Stored XSS in PDF renderer. [GHSA-xh32-cx6c-cp4v](https://github.com/gogs/gogs/security/advisories/GHSA-xh32-cx6c-cp4v)
|
||||
- _Security:_ Path Traversal in file editing UI. [GHSA-wj44-9vcg-wjq7](https://github.com/gogs/gogs/security/advisories/GHSA-wj44-9vcg-wjq7)
|
||||
- Randomly timeout on repository file uploads. [#7890](https://github.com/gogs/gogs/pull/7890)
|
||||
- Unable to override email templates in custom directory. [#7905](https://github.com/gogs/gogs/pull/7905)
|
||||
|
||||
## 0.13.2
|
||||
|
||||
### Fixed
|
||||
|
||||
- _Security:_ Path Traversal in file editing UI. [GHSA-r7j8-5h9c-f6fx](https://github.com/gogs/gogs/security/advisories/GHSA-r7j8-5h9c-f6fx)
|
||||
- _Security:_ Path Traversal in file update API. [GHSA-qf5v-rp47-55gg](https://github.com/gogs/gogs/security/advisories/GHSA-qf5v-rp47-55gg)
|
||||
- _Security:_ Argument Injection in the built-in SSH server. [GHSA-vm62-9jw3-c8w3](https://github.com/gogs/gogs/security/advisories/GHSA-vm62-9jw3-c8w3)
|
||||
- _Security:_ Deletion of internal files. [GHSA-ccqv-43vm-4f3w](https://github.com/gogs/gogs/security/advisories/GHSA-ccqv-43vm-4f3w)
|
||||
- _Security:_ Argument Injection during changes preview. [GHSA-9pp6-wq8c-3w2c](https://github.com/gogs/gogs/security/advisories/GHSA-9pp6-wq8c-3w2c)
|
||||
- _Security:_ Argument Injection when tagging new releases. [GHSA-m27m-h5gj-wwmg](https://github.com/gogs/gogs/security/advisories/GHSA-m27m-h5gj-wwmg)
|
||||
- Use the non-deprecated section name `[email]` during installation for email settings. [#7704](https://github.com/gogs/gogs/pull/7704)
|
||||
- Use the non-deprecated section name `[email] PASSWORD` during installation for email password. [#7807](https://github.com/gogs/gogs/pull/7807)
|
||||
- Make purple template label color to actually use the hexcode of purple. [#7722](https://github.com/gogs/gogs/pull/7722)
|
||||
|
||||
## 0.13.0
|
||||
|
||||
### Added
|
||||
|
||||
- Support using personal access token in the password field. [#3866](https://github.com/gogs/gogs/issues/3866)
|
||||
- An unlisted option is added when create or migrate a repository. Unlisted repositories are public but not being listed for users without direct access in the UI. [#5733](https://github.com/gogs/gogs/issues/5733)
|
||||
- New API endpoint `PUT /repos/:owner/:repo/contents/:path` for creating and update repository contents. [#5967](https://github.com/gogs/gogs/issues/5967)
|
||||
- New configuration option `[git.timeout] DIFF` for customizing operation timeout of `git diff`. [#6315](https://github.com/gogs/gogs/issues/6315)
|
||||
- New configuration option `[server] SSH_SERVER_MACS` for setting list of accepted MACs for connections to builtin SSH server. [#6434](https://github.com/gogs/gogs/issues/6434)
|
||||
- New configuration option `[repository] DEFAULT_BRANCH` for setting default branch name for new repositories. [#7291](https://github.com/gogs/gogs/issues/7291)
|
||||
- New configuration option `[server] SSH_SERVER_ALGORITHMS` for specifying the list of accepted key exchange algorithms for connections to builtin SSH server. [#7345](https://github.com/gogs/gogs/pull/7345)
|
||||
- Support specifying custom schema for PostgreSQL. [#6695](https://github.com/gogs/gogs/pull/6695)
|
||||
- Support rendering Mermaid diagrams in Markdown. [#6776](https://github.com/gogs/gogs/pull/6776)
|
||||
- Docker: Allow passing extra arguments to the `backup` command. [#7060](https://github.com/gogs/gogs/pull/7060)
|
||||
- New languages support: Mongolian, Romanian. [#6510](https://github.com/gogs/gogs/pull/6510) [#7082](https://github.com/gogs/gogs/pull/7082)
|
||||
- New languages support: Mongolian. [#6510](https://github.com/gogs/gogs/pull/6510)
|
||||
|
||||
### 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.
|
||||
- The required Go version to compile source code changed to 1.16.
|
||||
- Access tokens are now stored using their SHA256 hashes instead of raw values. [#7008](https://github.com/gogs/gogs/pull/7008)
|
||||
- Support using `[security] LOCAL_NETWORK_ALLOWLIST = *` to allow all hostnames. [#7111](https://github.com/gogs/gogs/pull/7111)
|
||||
|
||||
### 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)
|
||||
- Unable to send webhooks to local network addresses after configured `[security] LOCAL_NETWORK_ALLOWLIST`. [#7074](https://github.com/gogs/gogs/issues/7074)
|
||||
|
||||
### Removed
|
||||
|
||||
@@ -135,24 +47,6 @@ All notable changes to Gogs are documented in this file.
|
||||
- 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
|
||||
|
||||
@@ -1,2 +0,0 @@
|
||||
# Default
|
||||
* @gogs/core
|
||||
29
Dockerfile
29
Dockerfile
@@ -1,4 +1,4 @@
|
||||
FROM golang:alpine3.21 AS binarybuilder
|
||||
FROM golang:alpine3.14 AS binarybuilder
|
||||
RUN apk --no-cache --no-progress add --virtual \
|
||||
build-deps \
|
||||
build-base \
|
||||
@@ -7,12 +7,20 @@ RUN apk --no-cache --no-progress add --virtual \
|
||||
|
||||
WORKDIR /gogs.io/gogs
|
||||
COPY . .
|
||||
RUN make build TAGS="cert pam"
|
||||
|
||||
RUN ./docker/build/install-task.sh
|
||||
RUN TAGS="cert pam" task build
|
||||
|
||||
FROM alpine:3.21
|
||||
RUN apk --no-cache --no-progress add \
|
||||
FROM alpine:3.14
|
||||
RUN if [ `uname -m` == "aarch64" ] ; then \
|
||||
export arch="arm64" ; \
|
||||
elif [ `uname -m` == "armv7l" ] ; then \
|
||||
export arch="armhf"; \
|
||||
else \
|
||||
export arch="amd64" ; \
|
||||
fi \
|
||||
&& wget https://github.com/tianon/gosu/releases/download/1.11/gosu-$arch -O /usr/sbin/gosu \
|
||||
&& chmod +x /usr/sbin/gosu \
|
||||
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
|
||||
&& apk --no-cache --no-progress add \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
@@ -25,20 +33,19 @@ RUN apk --no-cache --no-progress add \
|
||||
tzdata \
|
||||
rsync
|
||||
|
||||
ENV GOGS_CUSTOM=/data/gogs
|
||||
ENV GOGS_CUSTOM /data/gogs
|
||||
|
||||
# Configure LibC Name Service
|
||||
COPY docker/nsswitch.conf /etc/nsswitch.conf
|
||||
|
||||
WORKDIR /app/gogs
|
||||
COPY docker ./docker
|
||||
COPY --from=binarybuilder /gogs.io/gogs/.bin/gogs .
|
||||
COPY --from=binarybuilder /gogs.io/gogs/gogs .
|
||||
|
||||
RUN ./docker/build/finalize.sh
|
||||
RUN ./docker/finalize.sh
|
||||
|
||||
# Configure Docker Container
|
||||
VOLUME ["/data", "/backup"]
|
||||
EXPOSE 22 3000
|
||||
HEALTHCHECK CMD (curl --noproxy localhost -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
|
||||
ENTRYPOINT ["/app/gogs/docker/start.sh"]
|
||||
CMD ["/usr/bin/s6-svscan", "/app/gogs/docker/s6/"]
|
||||
CMD ["/bin/s6-svscan", "/app/gogs/docker/s6/"]
|
||||
|
||||
@@ -1,50 +0,0 @@
|
||||
FROM golang:alpine3.23 AS binarybuilder
|
||||
RUN apk --no-cache --no-progress add --virtual \
|
||||
build-deps \
|
||||
build-base \
|
||||
git \
|
||||
linux-pam-dev
|
||||
|
||||
WORKDIR /gogs.io/gogs
|
||||
COPY . .
|
||||
|
||||
RUN ./docker/build/install-task.sh
|
||||
RUN TAGS="cert pam" task build
|
||||
|
||||
FROM alpine:3.23
|
||||
|
||||
# Create git user and group with fixed UID/GID at build time for better K8s security context support.
|
||||
# Using 1000:1000 as it's a common non-root UID/GID that works well with most volume permission setups.
|
||||
ARG GOGS_UID=1000
|
||||
ARG GOGS_GID=1000
|
||||
RUN addgroup -g ${GOGS_GID} -S git && \
|
||||
adduser -u ${GOGS_UID} -G git -H -D -g 'Gogs Git User' -h /data/git -s /bin/sh git
|
||||
|
||||
RUN apk --no-cache --no-progress add \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
linux-pam \
|
||||
openssh-keygen
|
||||
|
||||
ENV GOGS_CUSTOM=/data/gogs
|
||||
|
||||
WORKDIR /app/gogs
|
||||
COPY --from=binarybuilder /gogs.io/gogs/.bin/gogs .
|
||||
COPY docker-next/start.sh .
|
||||
RUN chmod +x start.sh && \
|
||||
mkdir -p /data && \
|
||||
ln -s /data/git /home/git && \
|
||||
chown -R git:git /app/gogs /data
|
||||
|
||||
# Configure Docker Container
|
||||
VOLUME ["/data", "/backup"]
|
||||
EXPOSE 22 3000
|
||||
HEALTHCHECK CMD (curl --noproxy localhost -o /dev/null -sS http://localhost:3000/healthcheck) || exit 1
|
||||
|
||||
# Run as non-root user by default for better K8s security context support.
|
||||
USER git:git
|
||||
|
||||
ENTRYPOINT ["/app/gogs/start.sh"]
|
||||
CMD ["/app/gogs/gogs", "web"]
|
||||
64
Makefile
Normal file
64
Makefile
Normal file
@@ -0,0 +1,64 @@
|
||||
LDFLAGS += -X "gogs.io/gogs/internal/conf.BuildTime=$(shell date -u '+%Y-%m-%d %I:%M:%S %Z')"
|
||||
LDFLAGS += -X "gogs.io/gogs/internal/conf.BuildCommit=$(shell git rev-parse HEAD)"
|
||||
|
||||
CONF_FILES := $(shell find conf | sed 's/ /\\ /g')
|
||||
TEMPLATES_FILES := $(shell find templates | sed 's/ /\\ /g')
|
||||
PUBLIC_FILES := $(shell find public | sed 's/ /\\ /g')
|
||||
LESS_FILES := $(wildcard public/less/*.less)
|
||||
|
||||
TAGS = ""
|
||||
BUILD_FLAGS = "-v"
|
||||
|
||||
RELEASE_ROOT = "release"
|
||||
RELEASE_GOGS = "release/gogs"
|
||||
NOW = $(shell date -u '+%Y%m%d%I%M%S')
|
||||
|
||||
.PHONY: check dist build build-no-gen pack release generate less clean test fixme todo legacy
|
||||
|
||||
.IGNORE: public/css/gogs.css
|
||||
|
||||
all: build
|
||||
|
||||
check: test
|
||||
|
||||
dist: release
|
||||
|
||||
web: build
|
||||
./gogs web
|
||||
|
||||
build:
|
||||
go build $(BUILD_FLAGS) -ldflags '$(LDFLAGS)' -tags '$(TAGS)' -trimpath -o gogs
|
||||
|
||||
pack:
|
||||
rm -rf $(RELEASE_GOGS)
|
||||
mkdir -p $(RELEASE_GOGS)
|
||||
cp -r gogs LICENSE README.md README_ZH.md scripts $(RELEASE_GOGS)
|
||||
cd $(RELEASE_ROOT) && zip -r gogs.$(NOW).zip "gogs"
|
||||
|
||||
release: build pack
|
||||
|
||||
generate: clean
|
||||
go generate internal/assets/conf/conf.go
|
||||
go generate internal/assets/templates/templates.go
|
||||
go generate internal/assets/public/public.go
|
||||
|
||||
less: clean public/css/gogs.min.css
|
||||
|
||||
public/css/gogs.min.css: $(LESS_FILES)
|
||||
@type lessc >/dev/null 2>&1 && lessc --clean-css --source-map "public/less/gogs.less" $@ || echo "lessc command not found or failed"
|
||||
|
||||
clean:
|
||||
find . -name "*.DS_Store" -type f -delete
|
||||
|
||||
test:
|
||||
go test -cover -race ./...
|
||||
|
||||
fixme:
|
||||
grep -rnw "FIXME" internal
|
||||
|
||||
todo:
|
||||
grep -rnw "TODO" internal
|
||||
|
||||
# Legacy code should be removed by the time of release
|
||||
legacy:
|
||||
grep -rnw "\(LEGACY\|Deprecated\)" internal
|
||||
76
README.md
76
README.md
@@ -1,22 +1,24 @@
|
||||

|
||||
# <img src="https://github.com/gogs/gogs/raw/master/public/img/favicon.png" width="45" align="left">Gogs - A painless self-hosted Git service
|
||||
|
||||
[](https://github.com/gogs/gogs/actions?query=branch%3Amain) [](https://sourcegraph.com/github.com/gogs/gogs)
|
||||
[](https://github.com/gogs/gogs/actions?query=workflow%3AGo) [](https://discord.gg/9aqdHU7) [](https://sourcegraph.com/github.com/gogs/gogs)
|
||||
|
||||
👉 Deploy on DigitalOcean and [get $200 in free credits](https://m.do.co/c/5aeb02268b55)!
|
||||

|
||||
|
||||
[简体中文](README_ZH.md)
|
||||
|
||||
## 🔮 Vision
|
||||
|
||||
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.
|
||||
The Gogs (`/gɑgz/`) project aims to build a simple, stable and extensible self-hosted Git service that can be setup 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.
|
||||
|
||||
## 📡 Overview
|
||||
|
||||
- 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? Help yourself with [troubleshooting](https://gogs.io/asking/troubleshooting) or ask questions in [Discussions](https://github.com/gogs/gogs/discussions).
|
||||
- Want to help with localization? Check out the [localization documentation](https://gogs.io/advancing/localization).
|
||||
- Ready to get hands dirty? Read our [contributing guide](.github/CONTRIBUTING.md).
|
||||
- Hmm... What about APIs? We have experimental support with [documentation](https://gogs.io/api-reference).
|
||||
- Having trouble? Help yourself with [troubleshooting](https://gogs.io/docs/intro/troubleshooting.html) or ask questions on [user forum](https://discuss.gogs.io/).
|
||||
- Want to help with localization? Check out the [localization documentation](https://gogs.io/docs/features/i18n.html).
|
||||
- Ready to get hands dirty? Read our guide to [set up your development environment](docs/dev/local_development.md).
|
||||
- Hmm... What about APIs? We have experimental support with [documentation](https://github.com/gogs/docs-api).
|
||||
|
||||
## 💌 Features
|
||||
|
||||
@@ -31,12 +33,12 @@ The Gogs (`/gɑgz/`) project aims to build a simple, stable and extensible self-
|
||||
- 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 support, including PostgreSQL, MySQL, SQLite3 or any database backend that speaks one of those protocols.
|
||||
- Have localization over [31 languages](https://crowdin.com/project/gogs).
|
||||
- Rich database backend, including PostgreSQL, MySQL, SQLite3 and [TiDB](https://github.com/pingcap/tidb).
|
||||
- Have localization over [30 languages](https://crowdin.com/project/gogs).
|
||||
|
||||
## 💾 Hardware requirements
|
||||
|
||||
- A Raspberry Pi or $5 Digital Ocean Droplet is more than enough to get you started. Some even use 64MB RAM Docker [CaaS](https://www.docker.com/blog/containers-as-a-service-caas/).
|
||||
- A Raspberry Pi or $5 Digital Ocean Droplet is more than enough to get you started. Some even use 64MB RAM Docker [CaaS](https://blog.docker.com/2016/02/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.
|
||||
|
||||
@@ -47,47 +49,57 @@ The Gogs (`/gɑgz/`) project aims to build a simple, stable and extensible self-
|
||||
|
||||
## 📜 Installation
|
||||
|
||||
Please follow [the guide in our documentation](https://gogs.io/getting-started/installation).
|
||||
Make sure you install the [prerequisites](https://gogs.io/docs/installation) first.
|
||||
|
||||
There are 6 ways to install 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/master/docker)
|
||||
- [Install with Vagrant](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
|
||||
- [Install with Kubernetes Using Helm Charts](https://github.com/helm/charts/tree/master/incubator/gogs)
|
||||
|
||||
### Deploy to cloud
|
||||
|
||||
- [Cloudron](https://www.cloudron.io/store/io.gogs.cloudronapp.html)
|
||||
- [Cloudron](https://cloudron.io/appstore.html#io.gogs.cloudronapp)
|
||||
- [Scaleway](https://www.scaleway.com/imagehub/gogs/)
|
||||
- [Sandstorm](https://github.com/cem/gogs-sandstorm)
|
||||
- [sloppy.io](https://github.com/sloppyio/quickstarters/tree/master/gogs)
|
||||
- [YunoHost](https://github.com/YunoHost-Apps/gogs_ynh)
|
||||
- [alwaysdata](https://www.alwaysdata.com/en/marketplace/gogs/)
|
||||
- [DPlatform](https://github.com/j8r/DPlatform)
|
||||
- [LunaNode](https://github.com/LunaNode/launchgogs)
|
||||
|
||||
### 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](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)
|
||||
- [Run your own GitHub-like service with the help of Docker](http://blog.hypriot.com/post/run-your-own-github-like-service-with-docker/)
|
||||
- [Dockerized Gogs git server and alpine postgres in 20 minutes or less](http://garthwaite.org/docker-gogs.html)
|
||||
- [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)
|
||||
- [阿里云上 Ubuntu 14.04 64 位安装 Gogs](http://my.oschina.net/luyao/blog/375654) (Chinese)
|
||||
- [Installing Gogs on FreeBSD](https://www.codejam.info/2015/03/installing-gogs-on-freebsd.html)
|
||||
- [Cloudflare Full SSL with Gogs 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)
|
||||
|
||||
## 📦 Software, service and product support
|
||||
|
||||
- [Fabric8](http://fabric8.io/) (DevOps)
|
||||
- [Jenkins](https://plugins.jenkins.io/gogs-webhook/) (CI)
|
||||
- [Puppet](https://forge.puppet.com/modules/Siteminds/gogs) (IT)
|
||||
- [Taiga](https://taiga.io/) (Project Management)
|
||||
- [Puppet](https://forge.puppet.com/Siteminds/gogs) (IT)
|
||||
- [Kanboard](https://github.com/kanboard/plugin-gogs-webhook) (Project Management)
|
||||
- [BearyChat](https://bearychat.com/) (Team Communication)
|
||||
- [GitPitch](https://gitpitch.com/) (Markdown Presentations)
|
||||
- [Synology](https://www.synology.com) (Docker)
|
||||
- [Syncloud](https://syncloud.org/) (App Store)
|
||||
|
||||
## 🙇♂️ Acknowledgments
|
||||
|
||||
<p>This project is proudly supported by:</p>
|
||||
<p>
|
||||
<a href="https://m.do.co/c/5aeb02268b55">
|
||||
<img src="https://opensource.nyc3.cdn.digitaloceanspaces.com/attribution/assets/SVG/DO_Logo_horizontal_blue.svg" width="201px">
|
||||
</a>
|
||||
</p>
|
||||
|
||||
Other acknowledgments:
|
||||
|
||||
- Thanks [Egon Elbre](https://twitter.com/egonelbre) for designing the original version of the logo.
|
||||
- Thanks [Mintlify](https://mintlify.com) for sponsoring open source documentation plan.
|
||||
- Thanks [Crowdin](https://crowdin.com) for sponsoring open source translation plan.
|
||||
- Thanks [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/) and [BitLaunch](https://bitlaunch.io) 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
|
||||
@@ -95,6 +107,6 @@ Other acknowledgments:
|
||||
- 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/gogs/gogs/blob/main/LICENSE) file for the full license text.
|
||||
This project is under the MIT License. See the [LICENSE](https://github.com/gogs/gogs/blob/master/LICENSE) file for the full license text.
|
||||
|
||||
103
README_ZH.md
Normal file
103
README_ZH.md
Normal file
@@ -0,0 +1,103 @@
|
||||
# Gogs
|
||||
|
||||
Gogs 是一款极易搭建的自助 Git 服务。
|
||||
|
||||
## 项目愿景
|
||||
|
||||
Gogs(`/gɑgz/`)项目旨在打造一个以最简便的方式搭建简单、稳定和可扩展的自助 Git 服务。使用 Go 语言开发使得 Gogs 能够通过独立的二进制分发,并且支持 Go 语言支持的 **所有平台**,包括 Linux、macOS、Windows 以及 ARM 平台。
|
||||
|
||||
## 概览
|
||||
|
||||
- 请移步[官网](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/local_development.md)配置开发环境
|
||||
- 想调用 API 吗?请查看[文档](https://github.com/gogs/docs-api)吧
|
||||
|
||||
## 主要特性
|
||||
|
||||
- 控制面板、用户页面以及活动时间线
|
||||
- 通过 SSH、HTTP 和 HTTPS 协议操作仓库
|
||||
- 管理用户、组织和仓库
|
||||
- 仓库和组织级 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)
|
||||
- 超过[30 种语言](https://crowdin.com/project/gogs)的本地化
|
||||
|
||||
## 硬件要求
|
||||
|
||||
- 最低的系统硬件要求为一个廉价的树莓派
|
||||
- 如果用于团队项目管理,建议使用 2 核 CPU 及 512MB 内存
|
||||
- 当团队成员大量增加时,可以考虑添加 CPU 核数,内存占用保持不变
|
||||
|
||||
## 浏览器支持
|
||||
|
||||
- 请根据 [Semantic UI](https://github.com/Semantic-Org/Semantic-UI#browser-support) 查看具体支持的浏览器版本。
|
||||
- 官方支持的最小 UI 尺寸为 **1024*768**,UI 不一定会在更小尺寸的设备上被破坏,但我们无法保证且不会修复。
|
||||
|
||||
## 安装部署
|
||||
|
||||
在安装 Gogs 之前,您需要先安装 [基本环境](https://gogs.io/docs/installation)。
|
||||
|
||||
然后,您可以通过以下 6 种方式来安装 Gogs:
|
||||
|
||||
- [二进制安装](https://gogs.io/docs/installation/install_from_binary.html)
|
||||
- [源码安装](https://gogs.io/docs/installation/install_from_source.html)
|
||||
- [包管理安装](https://gogs.io/docs/installation/install_from_packages.html)
|
||||
- [采用 Docker 部署](https://github.com/gogs/gogs/tree/master/docker)
|
||||
- [通过 Vagrant 安装](https://github.com/geerlingguy/ansible-vagrant-examples/tree/master/gogs)
|
||||
- [通过基于 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/)
|
||||
- [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)
|
||||
|
||||
## 软件、服务以及产品支持
|
||||
|
||||
- [Fabric8](http://fabric8.io/)(DevOps)
|
||||
- [Jenkins](https://plugins.jenkins.io/gogs-webhook/)(CI)
|
||||
- [Taiga](https://taiga.io/)(项目管理)
|
||||
- [Puppet](https://forge.puppet.com/Siteminds/gogs)(IT)
|
||||
- [Kanboard](https://github.com/kanboard/plugin-gogs-webhook)(项目管理)
|
||||
- [BearyChat](https://bearychat.com/)(团队交流)
|
||||
- [GitPitch](https://gitpitch.com/)(Markdown 演示)
|
||||
- [Synology](https://www.synology.com)(Docker)
|
||||
- [Syncloud](https://syncloud.org/)(应用商店)
|
||||
|
||||
## 特别鸣谢
|
||||
|
||||
- 感谢 [Egon Elbre](https://twitter.com/egonelbre) 设计的 Logo。
|
||||
- 感谢 [Crowdin](https://crowdin.com/project/gogs) 提供免费的开源项目本地化支持。
|
||||
- 感谢 [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 支持。
|
||||
|
||||
## 贡献成员
|
||||
|
||||
- 您可以通过查看 [贡献者页面](https://github.com/gogs/gogs/graphs/contributors) 获取 TOP 100 的贡献者列表。
|
||||
- 您可以通过查看 [TRANSLATORS](conf/locale/TRANSLATORS) 文件获取公开的翻译人员列表。
|
||||
|
||||
## 授权许可
|
||||
|
||||
本项目采用 MIT 开源授权许可证,完整的授权说明已放置在 [LICENSE](https://github.com/gogs/gogs/blob/master/LICENSE) 文件中。
|
||||
24
SECURITY.md
24
SECURITY.md
@@ -2,26 +2,10 @@
|
||||
|
||||
## Supported versions
|
||||
|
||||
Only the latest minor version releases are supported (e.g., 0.14) for patching vulnerabilities. You can find the latest minor version in the [GitHub releases](https://github.com/gogs/gogs/releases) page.
|
||||
Only lastest two minor version releases are supported for patching security fixes.
|
||||
|
||||
Existing vulnerability reports are being tracked in [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories). Not all accepted GHSA are published.
|
||||
## Reporting a vulnerability
|
||||
|
||||
## Vulnerability lifecycle
|
||||
Please send report privately to [security@gogs.io](mailto:security@gogs.io), and include how would you like to be credited.
|
||||
|
||||
> [!important]
|
||||
> Starting **Nov 9, 2023 00:00 UTC**, only security vulnerabilities reported through [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories/new) are accepted.
|
||||
> Pre-existing vulnerability reported through https://huntr.dev/ or email (`security@gogs.io`) will continue to be worked through.
|
||||
|
||||
1. Report an advisory for the vulnerability.
|
||||
- Please be aware that **only advisories reported in plain English** will be reviewed.
|
||||
- We DO NOT accept vulnerabilities cannot be reproduced on the latest `main` commit.
|
||||
1. Project maintainers review the advisory:
|
||||
- Ask clarifying questions
|
||||
- Make sure there was no prior advisory exists for the same vulnerability
|
||||
- Confirm or deny the vulnerability
|
||||
1. Once the advisory is accepted, the reporter may submit a patch or wait for project maintainers to patch.
|
||||
- The latter is usually significantly slower.
|
||||
1. Patch releases will be made for the supported versions.
|
||||
1. After 14 days of the release, publish the corresponding advisory on [GitHub Security Advisories](https://github.com/gogs/gogs/security/advisories).
|
||||
|
||||
Thank you for making open source community a better place!
|
||||
Thank you!
|
||||
|
||||
80
Taskfile.yml
80
Taskfile.yml
@@ -5,24 +5,22 @@ vars:
|
||||
sh: echo '{{if eq OS "windows"}}.exe{{end}}'
|
||||
|
||||
tasks:
|
||||
default:
|
||||
deps: [build]
|
||||
web:
|
||||
desc: Build the binary and start the web server
|
||||
desc: Build the binary and start the web server.
|
||||
deps: [build]
|
||||
cmds:
|
||||
- .bin/gogs web
|
||||
- ./gogs web
|
||||
|
||||
build:
|
||||
desc: Build the binary
|
||||
desc: Build the binary.
|
||||
cmds:
|
||||
- go build -v
|
||||
-ldflags '
|
||||
-X "{{.PKG_PATH}}.BuildTime={{.BUILD_TIME}}"
|
||||
-X "{{.PKG_PATH}}.BuildCommit={{.BUILD_COMMIT}}"
|
||||
-X "{{.PKG_PATH}}.BuildTime={{.BUILD_TIME}}"
|
||||
-X "{{.PKG_PATH}}.BuildCommit={{.BUILD_COMMIT}}"
|
||||
'
|
||||
-tags '{{.TAGS}}'
|
||||
-trimpath -o .bin/gogs{{.BINARY_EXT}} ./cmd/gogs
|
||||
-trimpath -o gogs{{.BINARY_EXT}}
|
||||
vars:
|
||||
PKG_PATH: gogs.io/gogs/internal/conf
|
||||
BUILD_TIME:
|
||||
@@ -30,24 +28,25 @@ tasks:
|
||||
BUILD_COMMIT:
|
||||
sh: git rev-parse HEAD
|
||||
sources:
|
||||
- go.mod
|
||||
- cmd/gogs/*.go
|
||||
- gogs.go
|
||||
- internal/**/*.go
|
||||
- conf/**/*
|
||||
- public/**/*
|
||||
- templates/**/*
|
||||
- custom/**/*
|
||||
method: timestamp
|
||||
|
||||
generate-bindata:
|
||||
desc: Generate bindata for all assets.
|
||||
deps: [clean]
|
||||
cmds:
|
||||
- go generate internal/assets/conf/conf.go
|
||||
- go generate internal/assets/templates/templates.go
|
||||
- go generate internal/assets/public/public.go
|
||||
|
||||
generate-schemadoc:
|
||||
desc: Generate database schema documentation
|
||||
desc: Generate database schema documentation.
|
||||
cmds:
|
||||
- go generate ./internal/database/schemadoc
|
||||
- go generate ./internal/db/schemadoc
|
||||
|
||||
generate:
|
||||
desc: Run all go:generate commands
|
||||
cmds:
|
||||
- go generate ./...
|
||||
desc: Run all go:generate commands.
|
||||
deps: [generate-bindata, generate-schemadoc]
|
||||
|
||||
test:
|
||||
desc: Run all tests.
|
||||
@@ -55,45 +54,38 @@ tasks:
|
||||
- go test -cover -race ./...
|
||||
|
||||
clean:
|
||||
desc: Cleans up system meta files
|
||||
desc: Cleans up system meta files for code generation.
|
||||
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.$(NOW).zip "gogs"
|
||||
vars:
|
||||
RELEASE_ROOT: release
|
||||
RELEASE_GOGS: release/gogs
|
||||
|
||||
less:
|
||||
desc: Generate CSS from LESS files
|
||||
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"
|
||||
desc: Show all occurrences of "FIXME".
|
||||
cmds:
|
||||
- grep -rnw "FIXME" internal
|
||||
|
||||
todo:
|
||||
desc: Show all occurrences of "TODO"
|
||||
desc: Show all occurrences of "TODO".
|
||||
cmds:
|
||||
- grep -rnw "TODO" internal
|
||||
|
||||
legacy:
|
||||
desc: Identify legacy and deprecated lines
|
||||
desc: Identify legacy and deprecated lines.
|
||||
cmds:
|
||||
- grep -rnw "\(LEGACY\|Deprecated\)" internal
|
||||
|
||||
drop-test-db:
|
||||
desc: Drop the test database
|
||||
cmds:
|
||||
- |
|
||||
for dbname in $(psql -Xc "copy (select datname from pg_database where datname like 'gogs-%') to stdout"); do
|
||||
dropdb "$dbname"
|
||||
echo "dropped $dbname"
|
||||
done
|
||||
|
||||
lint:
|
||||
desc: Run all linters
|
||||
cmds:
|
||||
- golangci-lint run
|
||||
|
||||
docs:
|
||||
desc: Start docs server
|
||||
cmds:
|
||||
- cd docs && mint dev --port 3333
|
||||
|
||||
@@ -1,43 +0,0 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"strings"
|
||||
|
||||
"github.com/urfave/cli/v3"
|
||||
)
|
||||
|
||||
func stringFlag(name, value, usage string) *cli.StringFlag {
|
||||
parts := strings.SplitN(name, ", ", 2)
|
||||
f := &cli.StringFlag{
|
||||
Name: parts[0],
|
||||
Value: value,
|
||||
Usage: usage,
|
||||
}
|
||||
if len(parts) > 1 {
|
||||
f.Aliases = []string{parts[1]}
|
||||
}
|
||||
return f
|
||||
}
|
||||
|
||||
// configFromLineage walks the command lineage to find the --config flag value.
|
||||
// This is needed because subcommands may not directly see flags set on parent commands.
|
||||
func configFromLineage(cmd *cli.Command) string {
|
||||
for _, c := range cmd.Lineage() {
|
||||
if c.IsSet("config") {
|
||||
return c.String("config")
|
||||
}
|
||||
}
|
||||
return ""
|
||||
}
|
||||
|
||||
func boolFlag(name, usage string) *cli.BoolFlag {
|
||||
parts := strings.SplitN(name, ", ", 2)
|
||||
f := &cli.BoolFlag{
|
||||
Name: parts[0],
|
||||
Usage: usage,
|
||||
}
|
||||
if len(parts) > 1 {
|
||||
f.Aliases = []string{parts[1]}
|
||||
}
|
||||
return f
|
||||
}
|
||||
@@ -1,36 +0,0 @@
|
||||
// Gogs is a painless self-hosted Git Service.
|
||||
package main
|
||||
|
||||
import (
|
||||
"context"
|
||||
"os"
|
||||
|
||||
"github.com/urfave/cli/v3"
|
||||
log "unknwon.dev/clog/v2"
|
||||
|
||||
"gogs.io/gogs/internal/conf"
|
||||
)
|
||||
|
||||
func init() {
|
||||
conf.App.Version = "0.15.0+dev"
|
||||
}
|
||||
|
||||
func main() {
|
||||
cmd := &cli.Command{
|
||||
Name: "Gogs",
|
||||
Usage: "A painless self-hosted Git service",
|
||||
Version: conf.App.Version,
|
||||
Commands: []*cli.Command{
|
||||
&webCommand,
|
||||
&servCommand,
|
||||
&hookCommand,
|
||||
&adminCommand,
|
||||
&importCommand,
|
||||
&backupCommand,
|
||||
&restoreCommand,
|
||||
},
|
||||
}
|
||||
if err := cmd.Run(context.Background(), os.Args); err != nil {
|
||||
log.Fatal("Failed to start application: %v", err)
|
||||
}
|
||||
}
|
||||
9
codecov.yml
Normal file
9
codecov.yml
Normal file
@@ -0,0 +1,9 @@
|
||||
coverage:
|
||||
range: "60...95"
|
||||
status:
|
||||
project:
|
||||
default:
|
||||
threshold: 1%
|
||||
|
||||
comment:
|
||||
layout: 'diff'
|
||||
27
conf/app.ini
27
conf/app.ini
@@ -81,10 +81,6 @@ SSH_LISTEN_HOST = 0.0.0.0
|
||||
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]
|
||||
@@ -117,8 +113,6 @@ ENABLE_RAW_FILE_RENDER_MODE = false
|
||||
; 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
|
||||
|
||||
[repository.editor]
|
||||
; List of file extensions that should have line wraps in the CodeMirror editor.
|
||||
@@ -141,14 +135,13 @@ FILE_MAX_SIZE = 3
|
||||
MAX_FILES = 5
|
||||
|
||||
[database]
|
||||
; The database backend, either "postgres", "mysql" or "sqlite3".
|
||||
; 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.
|
||||
@@ -196,6 +189,8 @@ 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 =
|
||||
|
||||
@@ -244,7 +239,7 @@ PROVIDER = memory
|
||||
; The configuration for respective provider:
|
||||
; - memory: does not need any config yet
|
||||
; - file: session file path, e.g. `data/sessions`
|
||||
; - redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180,tls=true
|
||||
; - 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
|
||||
@@ -276,8 +271,6 @@ ACCESS_CONTROL_ALLOW_ORIGIN =
|
||||
STORAGE = local
|
||||
; The root path to store LFS objects on local file system.
|
||||
OBJECTS_PATH = data/lfs-objects
|
||||
; The path to temporarily store LFS objects during upload verification.
|
||||
OBJECTS_TEMP_PATH = data/tmp/lfs-objects
|
||||
|
||||
[attachment]
|
||||
; Whether to enabled upload attachments in general.
|
||||
@@ -470,7 +463,6 @@ MIGRATE = 600
|
||||
MIRROR = 300
|
||||
CLONE = 300
|
||||
PULL = 300
|
||||
DIFF = 60
|
||||
GC = 60
|
||||
|
||||
[mirror]
|
||||
@@ -529,11 +521,10 @@ BASIC_AUTH_PASSWORD =
|
||||
[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ă
|
||||
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
|
||||
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
|
||||
|
||||
; Used for jQuery DateTimePicker,
|
||||
; list of supported languages in https://xdsoft.net/jqplugins/datetimepicker/#lang
|
||||
; Used for datetimepicker
|
||||
[i18n.datelang]
|
||||
en-US = en
|
||||
zh-CN = zh
|
||||
@@ -565,8 +556,6 @@ id-ID = id
|
||||
fa-IR = fa
|
||||
vi-VN = vi
|
||||
pt-PT = pt
|
||||
mn-MN = mn
|
||||
ro-RO = ro
|
||||
|
||||
[other]
|
||||
SHOW_FOOTER_BRANDING = false
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
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
|
||||
}
|
||||
@@ -1,16 +0,0 @@
|
||||
package conf
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestFileNames(t *testing.T) {
|
||||
names, err := FileNames(".")
|
||||
require.NoError(t, err)
|
||||
|
||||
want := []string{"app.ini", "auth.d", "gitignore", "label", "license", "locale", "readme"}
|
||||
assert.Equal(t, want, names)
|
||||
}
|
||||
@@ -76,11 +76,9 @@ 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>
|
||||
|
||||
@@ -44,21 +44,21 @@ issues=Задачи
|
||||
cancel=Отказ
|
||||
|
||||
[status]
|
||||
page_not_found=Страницата не е намерена
|
||||
internal_server_error=Вътрешна грешка в сървър
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Инсталация
|
||||
title=Стъпки за инсталиране при първоначално стартиране
|
||||
docker_helper=Ако Gogs е стартиран в Docker контейнер, моля прочетете <a target="_blank" href="%s">нашите указания</a> внимателно, преди да правите промени по настройките на тази страница!
|
||||
requite_db_desc=Gogs изисква MySQL, PostgreSQL, SQLite3 или TiDB (през MySQL протокол).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Настройки на базата данни
|
||||
db_type=Тип на база данни
|
||||
host=Сървър
|
||||
user=Потребител
|
||||
password=Парола
|
||||
db_name=Име на база данни
|
||||
db_schema=Схема
|
||||
db_schema=Schema
|
||||
db_helper=Моля, използвайте INNODB engine с utf8_general_ci кодиране на знаци за MySQL.
|
||||
ssl_mode=Режим SSL
|
||||
path=Път
|
||||
@@ -88,7 +88,6 @@ log_root_path=Път към журналите
|
||||
log_root_path_helper=Директория в която се записват журналите.
|
||||
enable_console_mode=Включване на конзолен режим
|
||||
enable_console_mode_popup=Изписване на логовете в конзолата, в допълнение към файловият режим.
|
||||
default_branch=Клон по подразбиране
|
||||
|
||||
optional_title=Опционални настройки
|
||||
email_title=Настройки на пощенска услуга
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=Потребителският контекст на прил
|
||||
smtp_host_missing_port=Липсва порт в зададения SMTP адрес.
|
||||
invalid_smtp_from=Невалидно поле От: %v
|
||||
save_config_failed=Неуспешно запазване на конфигурация: %v
|
||||
init_failed=Грешка при инициализация на приложение: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=Настройките на профил на администратора са невалидни: %v
|
||||
install_success=Добре дошли! Радваме се, че избрахте Gogs, и Ви пожелаваме приятна работа и сърдечни поздрави!
|
||||
invalid_log_root_path=Основният път към журналите е невалиден: %v
|
||||
@@ -157,8 +156,8 @@ register_hepler_msg=Вече имате профил? Впишете се сег
|
||||
social_register_hepler_msg=Вече имате профил? Свържете се сега!
|
||||
disable_register_prompt=За съжаление създаването на нови регистрации е изключено. Обърнете се към администратора на сайта.
|
||||
disable_register_mail=За съжаление потвърждението на регистрации е изключено.
|
||||
auth_source=Източник за удостоверяване
|
||||
local=Локален
|
||||
auth_source=Authentication Source
|
||||
local=Local
|
||||
remember_me=Запомни ме
|
||||
forgot_password=Забравена парола
|
||||
forget_password=Забравена парола?
|
||||
@@ -179,10 +178,10 @@ non_local_account=Нелокални потребители не могат да
|
||||
|
||||
login_two_factor=Двуфакторно удостоверяване
|
||||
login_two_factor_passcode=Парола за удостоверяване
|
||||
login_two_factor_enter_recovery_code=Въведете двуфакторен код за възстановяване
|
||||
login_two_factor_recovery=Двуфакторно възстановяване
|
||||
login_two_factor_enter_recovery_code=Enter a two-factor recovery code
|
||||
login_two_factor_recovery=Two-factor Recovery
|
||||
login_two_factor_recovery_code=Код за възстановяване
|
||||
login_two_factor_enter_passcode=Въведете двуфакторен код
|
||||
login_two_factor_enter_passcode=Enter a two-factor passcode
|
||||
login_two_factor_invalid_recovery_code=Този код за възстановяване вече е бил използван или не е валиден.
|
||||
|
||||
[mail]
|
||||
@@ -317,7 +316,6 @@ delete_email=Изтрий
|
||||
email_deletion=Изтрий ел. поща
|
||||
email_deletion_desc=При изтриване на тази ел. поща ще се премахне свързаната информация от Вашия профил. Желаете ли да продължите?
|
||||
email_deletion_success=Ел. пощата беше изтрита успешно!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Добавяне на нов адрес на ел. поща
|
||||
add_email=Добави ел. поща
|
||||
add_email_confirmation_sent=Ново писмо за потвърждение е изпратено до '%s'. Моля проверете пощенската си кутия в рамките на следващите %d часа, за да завършите процеса на регистрация.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=Управление на индивидуални API ключове за достъп
|
||||
generate_new_token=Генериране на нов API ключ
|
||||
tokens_desc=Генерирани API ключове, които могат да се използват за достъп до API на Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Всеки API ключ ще има пълен достъп до Вашия профил.
|
||||
token_name=Име на API ключ
|
||||
generate_token=Генериране на API ключ
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Застинали клонове
|
||||
branches.all=Всички клонове
|
||||
branches.updated_by=Актуализирани %[1]s от %[2]s
|
||||
branches.change_default_branch=Промяна на клон по подразбиране
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Нов файл
|
||||
editor.upload_file=Качи файл
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Конфигурация на хранилище
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Adresář systémových záznamů
|
||||
log_root_path_helper=Adresář, kam se budou zapisovat soubory se systémovými záznamy.
|
||||
enable_console_mode=Povolit režim konzole
|
||||
enable_console_mode_popup=Mimo zápisu do souboru vytisknout systémové záznamy i do konzole.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Dodatečná nastavení
|
||||
email_title=Nastavení e-mailové služby
|
||||
@@ -317,7 +316,6 @@ delete_email=Smazat
|
||||
email_deletion=Smazání e-mailové adresy
|
||||
email_deletion_desc=Smazání této e-mailové adresy odstraní návazné informace z vašeho účtu. Chcete pokračovat?
|
||||
email_deletion_success=E-mailová adresa byla smazána!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Přidat novou e-mailovou adresu
|
||||
add_email=Přidat e-mailovou adresu
|
||||
add_email_confirmation_sent=Nový potvrzovací e-mail byl odeslán na adresu '%s', prosím zkontrolujte si vaši doručenou poštu během následujících %d hodin pro dokončení procesu potvrzení.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Dvoufaktorové ověření bylo zakázáno!
|
||||
manage_access_token=Správa osobních přístupových poukázek
|
||||
generate_new_token=Vygenerovat novou poukázku
|
||||
tokens_desc=Poukázky, které jste vygeneroval, mohou být použity pro přístup k Gogs API.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Každá poukázka má úplný přístup k vašemu účtu.
|
||||
token_name=Název poukázky
|
||||
generate_token=Vygenerovat poukázku
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Zastaralé větve
|
||||
branches.all=Všechny větve
|
||||
branches.updated_by=%[2]s změnil %[1]s
|
||||
branches.change_default_branch=Změnit výchozí větev
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nový soubor
|
||||
editor.upload_file=Nahrát soubor
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Serverové šifry
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Nastavení repositáře
|
||||
config.repo.root_path=Kořenová cesta
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -50,8 +50,8 @@ internal_server_error=Interner Serverfehler
|
||||
[install]
|
||||
install=Installation
|
||||
title=Installationsschritte für den ersten Start
|
||||
docker_helper=Wenn Gogs innerhalb von Docker läuft, lesen Sie sich bitte den <a target="_blank" href="%s">Leitfaden</a> genau durch, bevor Sie etwas auf dieser Seite ändern!
|
||||
requite_db_desc=Gogs benötigt MySQL, PostgreSQL, SQLite3 oder TiDB (mit MySQL-Protokoll)
|
||||
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 requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Datenbankeinstellungen
|
||||
db_type=Datenbanktyp
|
||||
host=Host
|
||||
@@ -88,7 +88,6 @@ 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.
|
||||
default_branch=Standard Branch
|
||||
|
||||
optional_title=Optionale Einstellungen
|
||||
email_title=E-Mail-Service Einstellungen
|
||||
@@ -317,7 +316,6 @@ delete_email=Löschen
|
||||
email_deletion=E-Mail löschen
|
||||
email_deletion_desc=Das Löschen dieser E-Mail Adresse wird alle Informationen entfernen, die mit dieser E-Mail Adresse verknüpft sind. Wollen Sie fortfahren?
|
||||
email_deletion_success=E-Mail-Adresse wurde erfolgreich gelöscht!
|
||||
email_deletion_primary=Die primäre E-Mail-Adresse kann nicht gelöscht werden.
|
||||
add_new_email=Neue E-Mail-Adresse hinzufügen
|
||||
add_email=E-Mail-Adresse hinzufügen
|
||||
add_email_confirmation_sent=Eine neue Bestätigungsmail wurde an '%s' gesendet, bitte überprüfen Sie Ihren Posteingang innerhalb von %d Stunden um die Bestätigung abzuschließen.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Die Zwei-Faktor-Authentifizierung wurde erfolgreich d
|
||||
manage_access_token=Verwaltung persönlicher Zugangs-Token
|
||||
generate_new_token=Neues Token erzeugen
|
||||
tokens_desc=Die von Ihnen erzeugten Token können zum Zugriff auf die Gogs-API verwendet werden.
|
||||
access_token_tips=Der persönliche Zugangs-Token kann entweder als Benutzername oder als Passwort verwendet werden. Es wird empfohlen den "x-access-token" als Benutzernamen und den persönlichen Zugangs-Token als Passwort für Git-Anwendungen zu verwenden.
|
||||
new_token_desc=Jeder Token erlaubt vollen Zugriff auf ihr Konto.
|
||||
token_name=Token-Name
|
||||
generate_token=Token generieren
|
||||
@@ -403,9 +400,9 @@ 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
|
||||
unlisted=Unlisted
|
||||
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>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</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=Brauchen Sie Hilfe beim Klonen? Hier gibt es <a target="_blank" href="%s">Hilfe</a>!
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=Dies kann eine HTTP/HTTPS/GIT-URL sein.
|
||||
migrate.clone_address_desc_import_local=Sie dürfen auch ein Repository vom lokalen Serverpfad migrieren.
|
||||
migrate.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.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Fehler bei Migration: %v
|
||||
|
||||
mirror_from=Mirror von
|
||||
@@ -494,8 +491,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Neue Datei
|
||||
editor.upload_file=Datei hochladen
|
||||
@@ -815,7 +810,7 @@ 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.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
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
|
||||
@@ -942,7 +937,7 @@ 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_not_allowed=Organisationsname oder Muster %q ist nicht zulässig.
|
||||
form.name_not_allowed=Organization name or pattern %q is not allowed.
|
||||
form.team_name_not_allowed=Benutzername oder Muster %q ist nicht erlaubt.
|
||||
|
||||
settings=Einstellungen
|
||||
@@ -1027,7 +1022,7 @@ 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.select_operation_to_run=Please select operation to run
|
||||
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.
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen-Host
|
||||
config.ssh.listen_port=Listen-Port
|
||||
config.ssh.server_ciphers=Serverchiffren
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server-Algorithmen
|
||||
|
||||
config.repo_config=Repository-Konfiguration
|
||||
config.repo.root_path=Wurzelpfad
|
||||
@@ -1238,14 +1232,14 @@ 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.schema_helper=(for "postgres" only)
|
||||
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.db.max_open_conns=Maximum open connections
|
||||
config.db.max_idle_conns=Maximum idle connections
|
||||
|
||||
config.security_config=Sicherheitskonfiguration
|
||||
config.security.login_remember_days=Anzahl Tage zum Speichern des Logins
|
||||
@@ -1255,7 +1249,7 @@ 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.security.local_network_allowlist=Local network allowlist
|
||||
|
||||
config.email_config=E-Mail-Konfiguration
|
||||
config.email.enabled=Aktiviert
|
||||
@@ -1276,7 +1270,6 @@ 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_custom_logout_url=Custom logout URL
|
||||
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
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Log Path
|
||||
log_root_path_helper=Directory to write log files to.
|
||||
enable_console_mode=Enable Console Mode
|
||||
enable_console_mode_popup=In addition to file mode, also print logs to console.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Optional Settings
|
||||
email_title=Email Service Settings
|
||||
@@ -319,7 +318,6 @@ delete_email=Delete
|
||||
email_deletion=Email Deletion
|
||||
email_deletion_desc=Deleting this email address will remove related information from your account. Do you want to continue?
|
||||
email_deletion_success=Email has been deleted successfully!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Add new email address
|
||||
add_email=Add email
|
||||
add_email_confirmation_sent=A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process.
|
||||
@@ -375,7 +373,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=Manage Personal Access Tokens
|
||||
generate_new_token=Generate New Token
|
||||
tokens_desc=Tokens you have generated that can be used to access the Gogs APIs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Each token will have full access to your account.
|
||||
token_name=Token Name
|
||||
generate_token=Generate Token
|
||||
@@ -501,8 +498,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=New file
|
||||
editor.upload_file=Upload file
|
||||
@@ -1265,7 +1260,6 @@ config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository Configuration
|
||||
config.repo.root_path=Root path
|
||||
@@ -1348,7 +1342,6 @@ config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
|
||||
@@ -51,14 +51,13 @@ internal_server_error = Internal Server Error
|
||||
install = Installation
|
||||
title = Install Steps For First-time Run
|
||||
docker_helper = If you're running Gogs inside Docker, please read <a target="_blank" href="%s">Guidelines</a> carefully before you change anything in this page!
|
||||
requite_db_desc = Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
requite_db_desc = Gogs requires MySQL, PostgreSQL, SQLite3, MSSQL or TiDB.
|
||||
db_title = Database Settings
|
||||
db_type = Database Type
|
||||
host = Host
|
||||
user = User
|
||||
password = Password
|
||||
db_name = Database Name
|
||||
db_schema = Schema
|
||||
db_helper = Please use INNODB engine with utf8_general_ci charset for MySQL.
|
||||
ssl_mode = SSL Mode
|
||||
path = Path
|
||||
@@ -88,7 +87,6 @@ log_root_path = Log Path
|
||||
log_root_path_helper = Directory to write log files to.
|
||||
enable_console_mode = Enable Console Mode
|
||||
enable_console_mode_popup = In addition to file mode, also print logs to console.
|
||||
default_branch = Default Branch
|
||||
|
||||
optional_title = Optional Settings
|
||||
email_title = Email Service Settings
|
||||
@@ -120,6 +118,7 @@ confirm_password = Confirm Password
|
||||
admin_email = Admin Email
|
||||
install_gogs = Install Gogs
|
||||
test_git_failed = Failed to test 'git' command: %v
|
||||
sqlite3_not_available = Your release version does not support SQLite3, please download the official binary version from %s, NOT the gobuild version.
|
||||
invalid_db_setting = Database setting is not correct: %v
|
||||
invalid_repo_path = Repository root path is invalid: %v
|
||||
run_user_not_match = Run user isn't the current user: %s -> %s
|
||||
@@ -316,7 +315,6 @@ delete_email = Delete
|
||||
email_deletion = Email Deletion
|
||||
email_deletion_desc = Deleting this email address will remove related information from your account. Do you want to continue?
|
||||
email_deletion_success = Email has been deleted successfully!
|
||||
email_deletion_primary = Cannot delete primary email address.
|
||||
add_new_email = Add new email address
|
||||
add_email = Add Email
|
||||
add_email_confirmation_sent = A new confirmation email has been sent to '%s', please check your inbox within the next %d hours to complete the confirmation process.
|
||||
@@ -371,7 +369,6 @@ two_factor_disable_success = Two-factor authentication has disabled successfully
|
||||
manage_access_token = Manage Personal Access Tokens
|
||||
generate_new_token = Generate New Token
|
||||
tokens_desc = Tokens you have generated that can be used to access the Gogs APIs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc = Each token will have full access to your account.
|
||||
token_name = Token Name
|
||||
generate_token = Generate Token
|
||||
@@ -402,9 +399,7 @@ owner = Owner
|
||||
repo_name = Repository Name
|
||||
repo_name_helper = A good repository name is usually composed of short, memorable and unique keywords.
|
||||
visibility = Visibility
|
||||
unlisted = Unlisted
|
||||
visiblity_helper = This repository is <span class="ui red text">Private</span>
|
||||
unlisted_helper = This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced = Site admin has forced all new repositories to be <span class="ui red text">Private</span>
|
||||
visiblity_fork_helper = (Change of this value will affect all forks)
|
||||
clone_helper = Need help cloning? Visit <a target="_blank" href="%s">Help</a>!
|
||||
@@ -493,8 +488,6 @@ 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
|
||||
branches.default_deletion_not_allowed = Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed = Cannot delete a protected branch.
|
||||
|
||||
editor.new_file = New file
|
||||
editor.upload_file = Upload file
|
||||
@@ -1210,8 +1203,6 @@ config.ssh.start_builtin_server = Start builtin server
|
||||
config.ssh.listen_host = Listen host
|
||||
config.ssh.listen_port = Listen port
|
||||
config.ssh.server_ciphers = Server ciphers
|
||||
config.ssh.server_macs = Server MACs
|
||||
config.ssh.server_algorithms = Server algorithms
|
||||
|
||||
config.repo_config = Repository configuration
|
||||
config.repo.root_path = Root path
|
||||
@@ -1236,8 +1227,6 @@ config.db_config = Database configuration
|
||||
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)
|
||||
@@ -1262,6 +1251,7 @@ 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
|
||||
@@ -1274,7 +1264,6 @@ config.email.test_mail_failed = Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent = Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config = Authentication configuration
|
||||
config.auth_custom_logout_url = Custom logout URL
|
||||
config.auth.activate_code_lives = Activate code lives
|
||||
config.auth.reset_password_code_lives = Reset password code lives
|
||||
config.auth.require_email_confirm = Require email confirmation
|
||||
|
||||
@@ -44,21 +44,21 @@ issues=Incidencias
|
||||
cancel=Cancelar
|
||||
|
||||
[status]
|
||||
page_not_found=Página no encontrada
|
||||
internal_server_error=Error Interno del Servidor
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Instalación
|
||||
title=Pasos de la instalación por primera vez
|
||||
docker_helper=Si está ejecutando Gogs usando Docker, ¡por favor lea <a target="_blank" href="%s"> estas pautas</a> antes de cambiar nada en esta página!
|
||||
requite_db_desc=Gogs requiere MySQL, PostgreSQL, SQLite3 o TiDB (a través del protocolo MySQL).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Configuración de base de datos
|
||||
db_type=Tipo de base de datos
|
||||
host=Host
|
||||
user=Usuario
|
||||
password=Contraseña
|
||||
db_name=Nombre de la base de datos
|
||||
db_schema=Esquema
|
||||
db_schema=Schema
|
||||
db_helper=Por favor utilice el motor INNODB con la configuración de caracteres utf8_general_ci para MySQL.
|
||||
ssl_mode=Modo SSL
|
||||
path=Ruta
|
||||
@@ -88,7 +88,6 @@ log_root_path=Ruta del registro
|
||||
log_root_path_helper=Directorio donde almacenar los registros.
|
||||
enable_console_mode=Activar Modo Consola
|
||||
enable_console_mode_popup=Además del modo archivo, también imprime los registros en consola.
|
||||
default_branch=Rama por defecto
|
||||
|
||||
optional_title=Configuración opcional
|
||||
email_title=Configuración del servicio de correo
|
||||
@@ -119,7 +118,7 @@ admin_password=Contraseña
|
||||
confirm_password=Confirmar Contraseña
|
||||
admin_email=Correo electrónico del administrador
|
||||
install_gogs=Instalar Gogs
|
||||
test_git_failed=Error al probar el comando 'git': %v
|
||||
test_git_failed=Fallo al probar el comando 'git': %v
|
||||
sqlite3_not_available=Tu versión no soporta SQLite3, por favor descarga el binario oficial desde %s, NO la versión de gobuild.
|
||||
invalid_db_setting=La configuración de la base de datos no es correcta: %v
|
||||
invalid_repo_path=La ruta de la raíz del repositorio es inválida: %v
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=El usuario que está ejecutando la aplicación no es el usuar
|
||||
smtp_host_missing_port=No se ha definido el puerto para el host SMTP.
|
||||
invalid_smtp_from=El campo SMTP no es válido: %v
|
||||
save_config_failed=Error al guardar la configuración: %v
|
||||
init_failed=Error al inicializar la aplicación: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=La configuración de la cuenta de administración es inválida: %v
|
||||
install_success=Bienvenido! Estamos encantados de que hayas escogido Gogs, diviértete y cuídate.
|
||||
invalid_log_root_path=La ruta para los registros es inválida: %v
|
||||
@@ -265,7 +264,7 @@ following=Siguiendo
|
||||
follow=Seguir
|
||||
unfollow=Dejar de seguir
|
||||
|
||||
form.name_not_allowed=El nombre de usuario o patrón %q no está permitido.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=Perfil
|
||||
@@ -317,7 +316,6 @@ delete_email=Eliminar
|
||||
email_deletion=Eliminar correo electrónico
|
||||
email_deletion_desc=Al eliminar esta dirección de correo electrónico se eliminará toda la información asociada a esta. ¿Deseas continuar?
|
||||
email_deletion_success=¡El correo electrónico ha sido eliminado correctamente!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Añadir nueva dirección de correo electrónico
|
||||
add_email=Añadir correo electrónico
|
||||
add_email_confirmation_sent=Un nuevo correo de confirmación ha sido enviado a '%s'. Por favor, comprueba tu bandeja de entrada en las próximas %d horas para completar el proceso.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=¡La autenticación en dos pasos ha sido deshabilitad
|
||||
manage_access_token=Gestionar los Tokens de Acceso personales
|
||||
generate_new_token=Generar nuevo Token
|
||||
tokens_desc=Tokens usados para acceder al API de Gogs.
|
||||
access_token_tips=El token de acceso personal puede utilizarse como nombre de usuario o como contraseña. Se recomienda utilizar el "x-access-token" como nombre de usuario y el token de acceso personal como contraseña para las aplicaciones Git.
|
||||
new_token_desc=Desde ahora, todos los tokens tendrán acceso completo a tu cuenta.
|
||||
token_name=Nombre del Token
|
||||
generate_token=Generar Token
|
||||
@@ -381,7 +378,7 @@ delete_token=Eliminar
|
||||
access_token_deletion=Borrado de Token de Acceso Personal
|
||||
access_token_deletion_desc=Si elimina este token de acceso personal la aplicación asociada perderá el permiso de acceso. ¿Desea continuar?
|
||||
delete_token_success=¡El token de acceso personal ha sido eliminado con éxito! No se olvide de actualizar también las aplicaciones asociadas.
|
||||
token_name_exists=Ya existe un token con el mismo nombre.
|
||||
token_name_exists=Token with same name already exists.
|
||||
|
||||
orgs.none=No eres un miembro de ninguna organización.
|
||||
orgs.leave_title=Salir de una organización
|
||||
@@ -403,9 +400,9 @@ owner=Propietario
|
||||
repo_name=Nombre del repositorio
|
||||
repo_name_helper=Los grandes nombres de repositorios son cortos, memorables y <strong>únicos</strong>.
|
||||
visibility=Visibilidad
|
||||
unlisted=Sin listar
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Este repositorio es <span class="ui red text">privado</span>
|
||||
unlisted_helper=Este repositorio <span class="ui red text">no está en la lista</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=El administrador web ha obligado a todos los repositorios nuevos a ser <span class="ui red text"> privados</span>
|
||||
visiblity_fork_helper=(Este cambio afectará a todos los forks)
|
||||
clone_helper=¿Necesitas ayuda con el clone? ¡Consulta la <a target="_blank" href="%s">Ayuda</a>!
|
||||
@@ -423,7 +420,7 @@ auto_init=Inicializar los archivos seleccionados y plantillas de este repositori
|
||||
create_repo=Crear repositorio
|
||||
default_branch=Rama por defecto
|
||||
mirror_prune=Purgar
|
||||
mirror_prune_desc=Elimina cualquier referencia de seguimiento remoto que ya no exista en el remoto
|
||||
mirror_prune_desc=Remover referencias remotas que no existan remotamente
|
||||
mirror_interval=Intervalo de la réplica (en horas)
|
||||
mirror_address=Dirección de la réplica
|
||||
mirror_address_desc=Por favor, incluya las credenciales de usuario necesarias en la dirección.
|
||||
@@ -435,7 +432,7 @@ repo_description_helper=Descripción del repositorio. Longitud máxima de 512 ca
|
||||
repo_description_length=Caracteres disponibles
|
||||
|
||||
form.reach_limit_of_creation=El propietario ha alcanzado el límite máximo de %d repositorios creados.
|
||||
form.name_not_allowed=El nombre de repositorio o patrón %q no está permitido.
|
||||
form.name_not_allowed=Repository name or pattern %q is not allowed.
|
||||
|
||||
need_auth=Requiere autorización
|
||||
migrate_type=Tipo de migración
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=Esto puede ser una dirección URL HTTP/HTTPS/GIT.
|
||||
migrate.clone_address_desc_import_local=También se le permite migrar un repositorio por la ruta del servidor local.
|
||||
migrate.permission_denied=No te está permitido importar repositorios locales.
|
||||
migrate.invalid_local_path=Rutal local inválida, no existe o no es un directorio.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=La dirección de clonado se ha resuelto a una dirección de red local que está implícitamente bloqueada.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Migración fallida: %v
|
||||
|
||||
mirror_from=espejo de
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Ramas Viejas
|
||||
branches.all=Todas las Ramas
|
||||
branches.updated_by=%[1]s actualizado por %[2]s
|
||||
branches.change_default_branch=Cambiar la Rama por Defecto
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nuevo archivo
|
||||
editor.upload_file=Subir archivo
|
||||
@@ -798,8 +793,8 @@ settings.remove_collaborator_success=El colaborador ha sido eliminado.
|
||||
settings.search_user_placeholder=Buscar usuario...
|
||||
settings.org_not_allowed_to_be_collaborator=Las organizaciones no tiene permitido ser añadidas como colaboradores.
|
||||
settings.hooks_desc=Los Webhooks permiten a servicios externos recibir notificaciones cuando sucedan ciertos eventos en Gogs. Cuando sucedan los eventos especificados, enviaremos una petición POST a cada una de las URLs indicadas. Para obtener más información, consulta nuestra <a target="_blank" href="%s">Guía de Webhooks</a>.
|
||||
settings.webhooks.add_new=Añadir un nuevo webhook:
|
||||
settings.webhooks.choose_a_type=Elige un tipo...
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=Añadir Webhook
|
||||
settings.webhook_deletion=Eliminar Webhook
|
||||
settings.webhook_deletion_desc=Al borrar este webhook se eliminará su información y todo su historial. ¿Desea continuar?
|
||||
@@ -814,8 +809,8 @@ settings.webhook.response=Respuesta
|
||||
settings.webhook.headers=Encabezado
|
||||
settings.webhook.payload=Payload
|
||||
settings.webhook.body=Cuerpo del mensaje
|
||||
settings.webhook.err_cannot_parse_payload_url=No se puede analizar la URL de payload: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=La URL de payload se ha resuelto a una dirección de red local que está implícitamente bloqueada.
|
||||
settings.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=Los Git Hooks son una funcionalidad del propio Git, puedes editar los ficheros de los hooks soportados en la siguiente lista para aplicar operaciones personalizadas.
|
||||
settings.githook_edit_desc=Si el hook no está activo, se mostrará contenido de ejemplo. Dejar el contenido vacío deshabilitará este hook.
|
||||
settings.githook_name=Nombre del Hook
|
||||
@@ -942,8 +937,8 @@ team_name_helper=Utiliza este nombre para mencionar a este equipo en las convers
|
||||
team_desc_helper=¿En qué consiste este equipo?
|
||||
team_permission_desc=¿Qué nivel de permisos debería tener este equipo?
|
||||
|
||||
form.name_not_allowed=El nombre de la organización o patrón %q no está permitido.
|
||||
form.team_name_not_allowed=El nombre del equipo o patrón %q no está permitido.
|
||||
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=Configuración
|
||||
settings.options=Opciones
|
||||
@@ -1016,10 +1011,10 @@ last_page=Última
|
||||
total=Total: %d
|
||||
|
||||
dashboard.build_info=Build Information
|
||||
dashboard.app_ver=Versión de la aplicación
|
||||
dashboard.git_version=Versión de Git
|
||||
dashboard.go_version=Versión de Go
|
||||
dashboard.build_time=Tiempo de compilación
|
||||
dashboard.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=Estadísticas
|
||||
dashboard.operations=Operaciones
|
||||
@@ -1173,21 +1168,21 @@ auths.delete_auth_desc=Esta autenticación será eliminada. ¿Deseas continuar?
|
||||
auths.still_in_used=Este método de autentificación aún es utilizado por algunos usuarios, por favor elimine o convierta estos usuarios a otro tipo de autentificación.
|
||||
auths.deletion_success=¡La autenticación ha sido eliminada con éxito!
|
||||
auths.login_source_exist=El origen de autenticación '%s' ya existe.
|
||||
auths.github_api_endpoint=Endpoint de la API
|
||||
auths.github_api_endpoint=API Endpoint
|
||||
|
||||
config.not_set=(sin definir)
|
||||
config.server_config=Configuración del servidor
|
||||
config.brand_name=Nombre de la marca
|
||||
config.brand_name=Brand name
|
||||
config.run_user=Ejecutada como Usuario
|
||||
config.run_mode=Modo de ejecución
|
||||
config.server.external_url=URL externa
|
||||
config.server.domain=Dominio
|
||||
config.server.protocol=Protocolo
|
||||
config.server.http_addr=Dirección HTTP
|
||||
config.server.http_port=Puerto HTTP
|
||||
config.server.cert_file=Archivo de certificado
|
||||
config.server.key_file=Archivo de claves
|
||||
config.server.tls_min_version=Versión mínima de TLS
|
||||
config.server.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
|
||||
@@ -1198,29 +1193,28 @@ config.server.load_assets_from_disk=Load assets from disk
|
||||
config.server.landing_url=Landing URL
|
||||
|
||||
config.ssh_config=Configuración SSH
|
||||
config.ssh.enabled=Activado
|
||||
config.ssh.domain=Dominio expuesto
|
||||
config.ssh.port=Puerto expuesto
|
||||
config.ssh.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Root path
|
||||
config.ssh.keygen_path=Ruta del generador de claves
|
||||
config.ssh.key_test_path=Ruta de la clave de prueba
|
||||
config.ssh.minimum_key_size_check=Comprobación del tamaño mínimo de la clave
|
||||
config.ssh.minimum_key_sizes=Tamaño mínimo de las claves
|
||||
config.ssh.rewrite_authorized_keys_at_start=Reescribir "authorized_keys" al inicio
|
||||
config.ssh.start_builtin_server=Iniciar servidor integrado
|
||||
config.ssh.listen_host=Host de escucha
|
||||
config.ssh.listen_port=Puerto de escucha
|
||||
config.ssh.server_ciphers=Cifrados del servidor
|
||||
config.ssh.server_macs=MACs del servidor
|
||||
config.ssh.server_algorithms=Algoritmos del servidor
|
||||
config.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=Configuración del repositorio
|
||||
config.repo.root_path=Ruta raíz
|
||||
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=Licencias preferidas
|
||||
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
|
||||
@@ -1234,18 +1228,18 @@ config.repo.upload.file_max_size=Upload file size limit
|
||||
config.repo.upload.max_files=Upload files limit
|
||||
|
||||
config.db_config=Configuración de la Base de Datos
|
||||
config.db.type=Tipo
|
||||
config.db.type=Type
|
||||
config.db.host=Host
|
||||
config.db.name=Nombre
|
||||
config.db.schema=Esquema
|
||||
config.db.schema_helper=(sólo para "postgres")
|
||||
config.db.user=Usuario
|
||||
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=(sólo para "postgres")
|
||||
config.db.path=Ruta
|
||||
config.db.path_helper=(sólo para "sqlite3")
|
||||
config.db.max_open_conns=Número máximo de conexiones abiertas
|
||||
config.db.max_idle_conns=Número máximo de conexiones inactivas
|
||||
config.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
|
||||
@@ -1268,15 +1262,14 @@ config.email.helo_hostname=HELO hostname
|
||||
config.email.skip_verify=Skip certificate verify
|
||||
config.email.use_certificate=Use custom certificate
|
||||
config.email.cert_file=Certificate file
|
||||
config.email.key_file=Archivo de claves
|
||||
config.email.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=Enviar correo de prueba
|
||||
config.email.test_mail_failed=Error al enviar correo electrónico de prueba a '%s': %v
|
||||
config.email.send_test_mail=Send test email
|
||||
config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
@@ -1328,7 +1321,7 @@ config.picture.disable_gravatar=Disable Gravatar
|
||||
config.picture.enable_federated_avatar=Enable federated avatars
|
||||
|
||||
config.mirror_config=Mirror configuration
|
||||
config.mirror.default_interval=Intervalo por defecto
|
||||
config.mirror.default_interval=Default interval
|
||||
|
||||
config.webhook_config=Configuración de Webhooks
|
||||
config.webhook.types=Types
|
||||
|
||||
@@ -44,14 +44,14 @@ issues=مسائل
|
||||
cancel=لغو
|
||||
|
||||
[status]
|
||||
page_not_found=صفحه مورد نظر یافت نشد.
|
||||
internal_server_error=خطای داخلی سرور
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=نصب
|
||||
title=مراحل نصب برای اولین اجرا
|
||||
docker_helper=اگر شما Gogs را با استفاده از Docker اجرا میکنید، لطفا قبل از انجام هرگونه تغییر این <a target="_blank" href="%s"> راهنما</a> را به دقت مطالعه فرمایید!
|
||||
requite_db_desc=Gogs جهت راهاندازی نیازمند یکی از پایگاه دادههای MySQL، PostgreSql، SQLite3 و TIDB میباشد.
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=تنظیمات پایگاه داده
|
||||
db_type=نوع پایگاه داده
|
||||
host=میزبان
|
||||
@@ -88,7 +88,6 @@ log_root_path=مسیر گزارشها
|
||||
log_root_path_helper=پوشهای برای نوشتن فایل گزارش.
|
||||
enable_console_mode=فعال کردن حالت کنسول
|
||||
enable_console_mode_popup=لاگها علاوه بر ذخیره در فایل، در کنسول نیز به نمایش در آید.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=تنظیمات اختیاری
|
||||
email_title=تنظیمات سرویس ایمیل
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=کاربری را اجرا کنید که کاربر فعلی
|
||||
smtp_host_missing_port=شماره پورت در آدرس میزبان SMTP وارد نشده است.
|
||||
invalid_smtp_from=مقدار وارد شده در فرم SMTP معتبر نیست: %v
|
||||
save_config_failed=تنظیمات ذخیره نشد: %v
|
||||
init_failed=بارگزاری برنامه به مشکل برخورد: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=تنظیمات حساب مدیر نامعتبر است: %v
|
||||
install_success=خوش آمدی! ما خوشحالیم که شما Gogs را انتخاب کردید. لذت ببرید و مراقب خودتون باشید.
|
||||
invalid_log_root_path=آدرس روت فایل لاگ صحیح نیست: %v
|
||||
@@ -265,7 +264,7 @@ following=دنبال می کند
|
||||
follow=دنبال کردن
|
||||
unfollow=لغو دنبال کردن
|
||||
|
||||
form.name_not_allowed=الگوی نام کاربری '%s' مجاز نیست.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=پروفایل
|
||||
@@ -317,7 +316,6 @@ delete_email=حذف
|
||||
email_deletion=حذف ایمیل
|
||||
email_deletion_desc=حذف این آدرس ایمیل دیگر اطلاعات مربوط به آن را هم از حساب شما حذف میکند. آیا مایلید ادامه دهید؟
|
||||
email_deletion_success=ایمیل با موفقیت حذف شد!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=اضافه کردن آدرس ایمیل جدید
|
||||
add_email=اضافه کردن ایمیل
|
||||
add_email_confirmation_sent=یک ایمیل تایید به آدرس %s ارسال شد, لطفا صندوق خود را حداکثر تا %d ساعت دیگر برای تکمیل فرایند تایید بررسی کنید.
|
||||
@@ -374,7 +372,6 @@ two_factor_disable_success=احراز هویت دوعاملی با موفقیت
|
||||
manage_access_token=مدیریت توکن دسترسی شخصی
|
||||
generate_new_token=تولید توکن جدید
|
||||
tokens_desc=نشانه ایجاد شده که می تواند برای دسترسی به رابط های برنامه کاربردی Gogs مورد استفاده قرار گیرد.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=هر توکن می تواند دسترسی کامل به حساب شما داشته باشد.
|
||||
token_name=نام توکن
|
||||
generate_token=تولید توکن
|
||||
@@ -383,7 +380,7 @@ delete_token=حذف
|
||||
access_token_deletion=حذف توکن دسترسی شخصی
|
||||
access_token_deletion_desc=حذف این توکن دسترسی شخصی ، تمام دسترسی های مرتبط به برنامه را حذف خواهد کرد. آیا ادامه می دهید؟
|
||||
delete_token_success=رمز دسترسی شخصی با موفقیت حذف شد! به روز رسانی نرم افزار خود را نیز فراموش نکنید.
|
||||
token_name_exists=نشان امنیتی با این نام از قبل وجود دارد
|
||||
token_name_exists=Token with same name already exists.
|
||||
|
||||
orgs.none=شما عضو هیچ سازمانی نیستید.
|
||||
orgs.leave_title=ترک یک سازمان
|
||||
@@ -437,7 +434,7 @@ repo_description_helper=توضیحات مخرن. حداکثر طول ۵۱۲ کا
|
||||
repo_description_length=کاراکترهای موجود
|
||||
|
||||
form.reach_limit_of_creation=مخزن های دارنده حساب به حداکثر تعداد مجاز %d رسیده است.
|
||||
form.name_not_allowed=الگو یا نام مخزن %s مجاز نیست.
|
||||
form.name_not_allowed=Repository name or pattern %q is not allowed.
|
||||
|
||||
need_auth=نیاز به مجوز
|
||||
migrate_type=نوع انتقال
|
||||
@@ -496,8 +493,6 @@ branches.stale_branches=شاخه های قدیمی
|
||||
branches.all=همه شاخه
|
||||
branches.updated_by=%[1]s به روزشده توسط %[2]s
|
||||
branches.change_default_branch=تغییر شاخه ی پیش فرض
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=پرونده جدید
|
||||
editor.upload_file=بارگذاری پرونده
|
||||
@@ -760,7 +755,7 @@ settings.tracker_issue_style=سبک نامگذاری Issue Tracker خارجی:
|
||||
settings.tracker_issue_style.numeric=عددی
|
||||
settings.tracker_issue_style.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=نادیده گرفتن تغییرات در فضاهای خالی
|
||||
settings.pulls.allow_rebase_merge=مجاز کردن rebase برای ادغام کردن کامیت ها
|
||||
settings.danger_zone=منطقه خطر
|
||||
@@ -783,7 +778,7 @@ settings.wiki_deletion_success=اطلاعات عمومی درباره مخزن
|
||||
settings.delete=حذف این مخزن
|
||||
settings.delete_desc=هنگامی که یک مخزن حذف میشود ، راه برگشتی وجود ندارد. لطفا مطمئن باشید.
|
||||
settings.delete_notices_1=این عملیات <strong>غیرقابل</strong> برگشت است.
|
||||
settings.delete_notices_2=- این عملیات تمامی اطلاعات این مخزن شامل اطلاعات گیت ، مسائل ، نظرات و دسترسی همکاران را برای همیشه پاک خواهد کرد.
|
||||
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=پس از حذف ارتباط همه ی نسخه های برگرفته شده قطع خواهد شد.
|
||||
settings.deletion_success=مخزن با موفقیت حذف شد!
|
||||
settings.update_settings_success=تنظیمات مخزن با موفقیت به روز شد.
|
||||
@@ -800,8 +795,8 @@ settings.remove_collaborator_success=همكار حذف شد.
|
||||
settings.search_user_placeholder=جستجوی کاربر...
|
||||
settings.org_not_allowed_to_be_collaborator=سازمان ها را نمیتوان به عنوان همکار افزود.
|
||||
settings.hooks_desc=Webhook ها مانند یک درخواست POST در HTTP اند. هرگاه رخدادی در gogs رخ می دهد، ما نوتیفیکیشنی برای هاستی که شما تعریف کرده اید ارسال می کنیم. برای اطلاعات بیشتر <a target="_blank" href="%s"> راهنمای webhook</a> را مطالعه کنید.
|
||||
settings.webhooks.add_new=یک webhook جدید اضافه کن:
|
||||
settings.webhooks.choose_a_type=نوع را انتخاب کن...
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=اضافهکردن Webhook
|
||||
settings.webhook_deletion=حذف Webhook
|
||||
settings.webhook_deletion_desc=حذف این webhook باعث می شود که تمامی اطلاعات آن و تاریخچه ی تمام دلیوری های آن حذف شود. آیا ادامه میدهید؟
|
||||
@@ -878,8 +873,8 @@ settings.add_key_success=کلیدDeploy جدید %s با موفقیت افزود
|
||||
settings.deploy_key_deletion=حذف کلید Deploy
|
||||
settings.deploy_key_deletion_desc=با حذف کلید Deploy، تمام دسترسی ها به این مخزن از طریق این کلید از بین میرود. آیا ادامه می دهید؟
|
||||
settings.deploy_key_deletion_success=کلید Deploy با موفقیت حذف شد!
|
||||
settings.description_desc=توضیحات مخرن. حداکثر طول ۵۱۲ کاراکتر.
|
||||
settings.description_length=کاراکترهای موجود
|
||||
settings.description_desc=Description of repository. Maximum 512 characters length.
|
||||
settings.description_length=Available characters
|
||||
|
||||
diff.browse_source=فهرست منبع
|
||||
diff.parent=والد
|
||||
@@ -944,8 +939,8 @@ team_name_helper=ما از این نام برای اشاره به این تیم
|
||||
team_desc_helper=این تیم درکل در مورد چیست؟
|
||||
team_permission_desc=این تیم چه سطح دسترسی میتواند داشته باشد؟
|
||||
|
||||
form.name_not_allowed=نام سازمان یا الگوی q% مجاز نیست.
|
||||
form.team_name_not_allowed=نام تیم یا الگوی %q مجاز نیست.
|
||||
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=گزینهها
|
||||
@@ -1017,12 +1012,12 @@ first_page=اولین
|
||||
last_page=آخرين
|
||||
total=مجموع: %d
|
||||
|
||||
dashboard.build_info=اطلاعات ساخت
|
||||
dashboard.app_ver=نسخه برنامه
|
||||
dashboard.git_version=نسخهی Git
|
||||
dashboard.go_version=نسخهی Go
|
||||
dashboard.build_time=زمان ساخت
|
||||
dashboard.build_commit=کامیت ساخت
|
||||
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=سیستم مانیتور وضعیت
|
||||
@@ -1175,32 +1170,32 @@ auths.delete_auth_desc=این سیستم احراز هویت حذف خواهد
|
||||
auths.still_in_used=این متد اعتبار احرازهویت هنوز توسط برخی از کاربران در حال استفاده است، لطفا ابتدا این کاربران را حذف کنید یا متد احرازهویت آنان را تغییر دهید.
|
||||
auths.deletion_success=متد احرازهویت با موفقیت حذف شد!
|
||||
auths.login_source_exist=مدخل لاگین %s قبلا موجود بوده است.
|
||||
auths.github_api_endpoint=نشانه پایانی API
|
||||
auths.github_api_endpoint=API Endpoint
|
||||
|
||||
config.not_set=(تنظیم نشده)
|
||||
config.server_config=پیکربندی سرور
|
||||
config.brand_name=نام برند
|
||||
config.brand_name=Brand name
|
||||
config.run_user=کاربر در حال اجرا
|
||||
config.run_mode=حالت اجرا
|
||||
config.server.external_url=آدرس خارجی
|
||||
config.server.domain=دامنه
|
||||
config.server.protocol=پروتکل
|
||||
config.server.http_addr=آدرس HTTP
|
||||
config.server.http_port=پورت HTTP
|
||||
config.server.cert_file=فایل گواهی
|
||||
config.server.key_file=فایل کلید
|
||||
config.server.tls_min_version=کمترین نسخه TLS
|
||||
config.server.unix_socket_permission=مجوز سوکت یونیکس
|
||||
config.server.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=حالت آفلاین
|
||||
config.server.disable_router_log=غیرفعال کردن لاگ مسیریاب
|
||||
config.server.enable_gzip=فعال کردن Gzip
|
||||
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.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Root path
|
||||
@@ -1214,7 +1209,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=پیکربندی مخزن
|
||||
config.repo.root_path=Root path
|
||||
@@ -1278,7 +1272,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
@@ -1426,7 +1419,7 @@ months=%d ماه %s
|
||||
years=%d سال %s
|
||||
raw_seconds=ثانیه
|
||||
raw_minutes=دقیقه ها
|
||||
raw_hours=ساعت
|
||||
raw_hours=hours
|
||||
|
||||
[dropzone]
|
||||
default_message=فایل را در این محل رها کنید یا دکمه ی آپلود یا بارگزاری را فشار دهید.
|
||||
|
||||
@@ -22,13 +22,13 @@ password=Salasana
|
||||
re_type=Kirjoita uudelleen
|
||||
captcha=Captcha
|
||||
|
||||
repository=Tietosäilö
|
||||
repository=Repository
|
||||
organization=Organisaatio
|
||||
mirror=Peili
|
||||
new_repo=Uusi tietosäilö
|
||||
new_repo=Uusi repository
|
||||
new_migrate=Uusi migraatio
|
||||
new_mirror=Uusi peilaus
|
||||
new_fork=Uusi tietosäilö haarautuksesta
|
||||
new_fork=Uusi fork-repository
|
||||
new_org=Uusi organisaatio
|
||||
manage_org=Ylläpidä organisaatioita
|
||||
admin_panel=Ylläpito paneeli
|
||||
@@ -38,8 +38,8 @@ your_profile=Profiilisi
|
||||
your_settings=Asetuksesi
|
||||
|
||||
activities=Toimet
|
||||
pull_requests=Vetopyynnöt
|
||||
issues=Esitykset
|
||||
pull_requests=Pull requestit
|
||||
issues=Ongelmat
|
||||
|
||||
cancel=Peruuta
|
||||
|
||||
@@ -51,14 +51,14 @@ internal_server_error=Sisäinen palvelinvirhe
|
||||
install=Asennus
|
||||
title=Asennusvaiheet ottaessa ensi kertaa käyttöön
|
||||
docker_helper=Jos käytät Gogsia Dockerin sisällä, ole hyvä ja lue <a target="_blank" href="%s">ohjeet</a> huolellisesti ennen kuin muutat mitään tältä sivulta!
|
||||
requite_db_desc=Gogs tarvitsee tietokannakseen MySQL, PostgreSQL, SQLite3 tai TiDB (MySQL-protkollan kautta).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Tietokannan asetukset
|
||||
db_type=Tietokannan tyyppi
|
||||
host=Isäntä
|
||||
user=Käyttäjä
|
||||
password=Salasana
|
||||
db_name=Tietokannan nimi
|
||||
db_schema=Skeema
|
||||
db_schema=Schema
|
||||
db_helper=Ole hyvä ja käytä INNODB moottoria ja utf8_general_ci merkistöä MySQLssä.
|
||||
ssl_mode=SSL-tila
|
||||
path=Polku
|
||||
@@ -70,8 +70,8 @@ err_empty_admin_password=Ylläpito salasana ei voi olla tyhjä.
|
||||
general_title=Sovellus yleiset asetukset
|
||||
app_name=Sovelluksen nimi
|
||||
app_name_helper=Laita organisaatiosi nimi tähän isolla ja kovaäänisesti!
|
||||
repo_path=Tietosäilön juurihakemisto
|
||||
repo_path_helper=Kaikki Git-etätietosäilöt tullaan tallentamaan tähän hakemistoon.
|
||||
repo_path=Repon juuren polku
|
||||
repo_path_helper=Kaikki Git-etärepot tullaan tallentamaan tähän hakemistoon.
|
||||
run_user=Suorita käyttäjänä
|
||||
run_user_helper=Käyttäjällä täytyy olla oikeus repositoryn juuripolkuun. Käyttäjällä täytyy myös olla oikeus suorittaa Gogs.
|
||||
domain=Verkkotunnus
|
||||
@@ -88,7 +88,6 @@ log_root_path=Lokin polku
|
||||
log_root_path_helper=Lokien tallennushakemisto.
|
||||
enable_console_mode=Ota käyttöön konsoli tila
|
||||
enable_console_mode_popup=Tiedosto tilan lisäksi tulosta logit konsoliin.
|
||||
default_branch=Oletus haara
|
||||
|
||||
optional_title=Valinnaiset asetukset
|
||||
email_title=Sähköposti palvelu asetukset
|
||||
@@ -122,7 +121,7 @@ install_gogs=Asenna Gogs
|
||||
test_git_failed=Epäonnistui testata 'git' komentoa: %v
|
||||
sqlite3_not_available=Julkaisuversiosi ei tue SQLite3:a, ole hyvä ja lataa virallinen binääriversio osoitteesta %s, EI gobuild-versiota.
|
||||
invalid_db_setting=Tietokanta asetus ei ole oikea: %v
|
||||
invalid_repo_path=Tietosäilön juurihakemisto on virheellinen: %v
|
||||
invalid_repo_path=Repo juuri polku on virheellinen: %v
|
||||
run_user_not_match=Suoritus käyttäjä ei ole nykyinen käyttäjä: %s -> %s
|
||||
smtp_host_missing_port=SMTP-isännältä puuttuu portin osoite.
|
||||
invalid_smtp_from=SMTP From kenttä ei ole kelvollinen: %v
|
||||
@@ -136,17 +135,17 @@ invalid_log_root_path=Loki juurihakemisto ei kelpaa: %v
|
||||
uname_holder=Käyttäjätunnus tai sähköposti
|
||||
password_holder=Salasana
|
||||
switch_dashboard_context=Vaihda kojelaudan kontekstia
|
||||
my_repos=Minun tietosäilöt
|
||||
show_more_repos=Näytä lisää tietosäilöjä...
|
||||
collaborative_repos=Yhteistyötietosäilöt
|
||||
my_repos=Reponi
|
||||
show_more_repos=Näytä lisää repoja...
|
||||
collaborative_repos=Yhteistyörepot
|
||||
my_orgs=Organisaationi
|
||||
my_mirrors=Peilaukseni
|
||||
my_mirrors=Peilini
|
||||
view_home=Näytä %s
|
||||
|
||||
issues.in_your_repos=Sinun tietosäilöissäsi
|
||||
issues.in_your_repos=Repoissasi
|
||||
|
||||
[explore]
|
||||
repos=Tietosäilöt
|
||||
repos=Repot
|
||||
users=Käyttäjät
|
||||
organizations=Organisaatiot
|
||||
search=Hae
|
||||
@@ -199,7 +198,7 @@ modify=Muokkaa
|
||||
|
||||
[form]
|
||||
UserName=Käyttäjätunnus
|
||||
RepoName=Tietosäilön nimi
|
||||
RepoName=Repon nimi
|
||||
Email=Sähköpostiosoite
|
||||
Password=Salasana
|
||||
Retype=Kirjoita salasana uudelleen
|
||||
@@ -211,8 +210,8 @@ AuthName=Luvan nimi
|
||||
AdminEmail=Ylläpito sähköposti
|
||||
|
||||
NewBranchName=Uuden haaran nimi
|
||||
CommitSummary=Sitoutuksen yhteenveto
|
||||
CommitMessage=Sitoutuksen viesti
|
||||
CommitSummary=Commitin yhteenveto
|
||||
CommitMessage=Commitin viesti
|
||||
CommitChoice=Commitin valinta
|
||||
TreeName=Tiedostopolku
|
||||
Content=Sisältö
|
||||
@@ -232,13 +231,13 @@ captcha_incorrect=Captcha ei ollut oikein.
|
||||
password_not_match=Salasana ja salasanan varmistus eivät ole samoja.
|
||||
|
||||
username_been_taken=Käyttäjätunnus on jo käytössä.
|
||||
repo_name_been_taken=Tietosäilön nimi on jo käytössä.
|
||||
repo_name_been_taken=Repon nimi on jo käytössä.
|
||||
org_name_been_taken=Organisaation nimi on jo käytössä.
|
||||
team_name_been_taken=Tiimin nimi on jo käytössä.
|
||||
email_been_used=Sähköpostiosoite on jo käytössä.
|
||||
username_password_incorrect=Käyttäjätunnus tai salasana ei ole oikein.
|
||||
auth_source_mismatch=Valittua todennuslähdettä ei liitetä käyttäjään.
|
||||
enterred_invalid_repo_name=Ole hyvä ja varmista että kirjoittamasi tietosäilön nimi on oikein.
|
||||
enterred_invalid_repo_name=Ole hyvä ja varmista että kirjoittamasi repon nimi on oikein.
|
||||
enterred_invalid_owner_name=Ole hyvä ja varmista että kirjoittamasi omistajan nimi on oikein.
|
||||
enterred_invalid_password=Ole hyvä ja varmista että kirjoittamasi salasana on oikein.
|
||||
user_not_exist=Käyttäjää ei ole olemassa.
|
||||
@@ -248,16 +247,16 @@ invalid_ssh_key=Pahoittelut, emme pystyneet varmistamaan SSH-avainta: %s
|
||||
unable_verify_ssh_key=Gogs ei voi varmistaa SSH-avaintasi, mutta oletamme että se on toimiva, ole hyvä ja tarkista se.
|
||||
auth_failed=Todennus epäonnistui: %v
|
||||
|
||||
still_own_repo=Tililläsi on yhä omistajuus ainakin yhteen tietosäilöön, sinun täytyy poistaa tai siirtää ne ensin.
|
||||
still_own_repo=Tililläsi on yhä omistajuus ainakin yhteen repoon, sinun täytyy poistaa tai siirtää ne ensin.
|
||||
still_has_org=Tililläsi on yhä jäsenyys ainakin yhteen organisaatioon, sinun täytyy jäädä pois tai poistaa jäsenyyksiä ensin.
|
||||
org_still_own_repo=Tällä organisaatiolla on yhä omistajuus tietosäilöön, sinun täytyy poistaa tai siirtää ne ensin.
|
||||
org_still_own_repo=Tällä organisaatiolla on yhä omistajuus repoon, sinun täytyy poistaa tai siirtää ne ensin.
|
||||
|
||||
target_branch_not_exist=Kohde haaraa ei ole olemassa.
|
||||
target_branch_not_exist=Kohde branchia ei ole olemassa.
|
||||
|
||||
[user]
|
||||
change_avatar=Vaihda profiilikuvasi
|
||||
join_on=Liitytty
|
||||
repositories=Tietosäilöt
|
||||
repositories=Repot
|
||||
activity=Julkinen toiminta
|
||||
followers=Seuraajat
|
||||
starred=Äänestetty
|
||||
@@ -273,7 +272,7 @@ password=Salasana
|
||||
avatar=Profiilikuva
|
||||
ssh_keys=SSH avaimet
|
||||
security=Turvallisuus
|
||||
repos=Tietosäilö
|
||||
repos=Repot
|
||||
orgs=Organisaatiot
|
||||
applications=Sovellukset
|
||||
delete=Poista tili
|
||||
@@ -317,7 +316,6 @@ delete_email=Poista
|
||||
email_deletion=Sähköpostin poistaminen
|
||||
email_deletion_desc=Tämän sähköpostiosoitteen poistaminen poistaa siihen liittyvät tiedot tililtäsi. Haluatko jatkaa?
|
||||
email_deletion_success=Sähköposti on poistettu onnistuneesti!
|
||||
email_deletion_primary=Pääsähköpostin poistaminen ei onnistu.
|
||||
add_new_email=Lisää uusi sähköpostiosoite
|
||||
add_email=Lisää sähköposti
|
||||
add_email_confirmation_sent=Uusi varmistussähköposti on lähetetty osoitteeseen '%s', ole hyvä ja tarkista saapuneet seuraavan %d tunnin sisällä saadaksesi rekisteröintiprosessin valmiiksi.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Kaksivaiheinen todennus on poistettu käytöstä onni
|
||||
manage_access_token=Hallitse henkilökohtaisia pääsymerkkejä
|
||||
generate_new_token=Luo uusi pääsymerkki
|
||||
tokens_desc=Luomiasi pääsymerkkejä voidaan käyttää Gogs APIn kanssa.
|
||||
access_token_tips=Henkilökohtaista pääsytunnusta voidaan käyttää joko käyttäjätunnuksena tai salasanana. On suositeltavaa käyttää "x-access-token" käyttäjätunnuksena ja henkilökohtaista pääsytunnusta Git-sovellusten salasanana.
|
||||
new_token_desc=Joka pääsymerkillä on täysi pääsy tiliisi.
|
||||
token_name=Pääsymerkin nimi
|
||||
generate_token=Luo pääsymerkki
|
||||
@@ -388,9 +385,9 @@ orgs.leave_title=Poistu organisaatiosta
|
||||
orgs.leave_desc=Menetät oikeudet kaikkiin niihin repoihin ja tiimeihin joihin organisaatio on sinulle oikeudet antanut. Haluatko varmasti jatkaa?
|
||||
|
||||
repos.leave=Poistu
|
||||
repos.leave_title=Poistu tietosäilöstä
|
||||
repos.leave_desc=Menetät pääsyn tietosäilöön poistuessasi. Haluatko jatkaa?
|
||||
repos.leave_success=Olet poistunut tietosäilöstä '%s' onnistuneesti!
|
||||
repos.leave_title=Poistu reposta
|
||||
repos.leave_desc=Menetät pääsyn repoon kun poistut. Haluatko jatkaa?
|
||||
repos.leave_success=Olet poistunut reposta '%s' onnistuneesti!
|
||||
|
||||
delete_account=Poista tilisi
|
||||
delete_prompt=Toiminto poistaa tilisi pysyvästi ja tätä <strong>EI VOI</strong> peruuttaa myöhemmin!
|
||||
@@ -400,18 +397,18 @@ delete_account_desc=Tämä tili poistetaan lopullisesti, haluatko jatkaa?
|
||||
|
||||
[repo]
|
||||
owner=Omistaja
|
||||
repo_name=Tietosäilön nimi
|
||||
repo_name_helper=Hyvä tietosäilönimi yleensä koostuu lyhyistä, mieleenpainuvista ja ainutlaatuisista avainsanoista.
|
||||
repo_name=Repon nimi
|
||||
repo_name_helper=Hyvä repon nimi yleensä koostuu lyhyistä, mieleenpainuvista ja ainutlaatuisista avainsanoista.
|
||||
visibility=Näkyvyys
|
||||
unlisted=Listaamaton
|
||||
visiblity_helper=Tämä tietosäilö on <span class="ui red text">yksityinen</span>
|
||||
unlisted_helper=Tämä tietosäilö on <span class="ui red text">listaamaton</span>
|
||||
visiblity_helper_forced=Sivuston ylläpito on pakottanut kaikkien uusien tietosäilöjen olevan <span class="ui red text">yksityisiä</span>
|
||||
visiblity_fork_helper=(Arvon vaihtaminen vaikuttaa kaikkiin haarautuksiin)
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Tämä repo on <span class="ui red text">yksityinen</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=Sivuston ylläpito on pakottanut kaikkien uusien repojen olevan <span class="ui red text">yksityisiä</span>
|
||||
visiblity_fork_helper=(Arvon vaihtaminen vaikuttaa kaikkiin forkkeihin)
|
||||
clone_helper=Tarvitsetko apua kloonauksessa? Vieraile osoitteessa <a target="_blank" href="%s">Apua</a>!
|
||||
fork_repo=Haarauta tietosäilö
|
||||
fork_from=Haarauta lähteestä
|
||||
fork_visiblity_helper=Et voi muuttaa haarautetun tietosäilön näkyvyyttä.
|
||||
fork_repo=Forkkaa repo
|
||||
fork_from=Forkkaa lähteestä
|
||||
fork_visiblity_helper=Et voi muuttaa forkatun repon näkyvyyttä.
|
||||
repo_desc=Kuvaus
|
||||
repo_lang=Kieli
|
||||
repo_gitignore_helper=Valitse .gitignore malli
|
||||
@@ -419,9 +416,9 @@ license=Lisenssi
|
||||
license_helper=Valitse lisenssitiedosto
|
||||
readme=Lueminut-tiedosto
|
||||
readme_helper=Valitse Lueminut-malli
|
||||
auto_init=Alusta tämä tietosäilö valituilla tiedostoilla ja mallilla
|
||||
create_repo=Luo tietosäilö
|
||||
default_branch=Oletus haara
|
||||
auto_init=Alusta tämä repo valituilla tiedostoilla ja mallilla
|
||||
create_repo=Luo repo
|
||||
default_branch=Oletus branch
|
||||
mirror_prune=Karsi
|
||||
mirror_prune_desc=Poista kaikki paikalliset seurantahaarat joiden vastaavia etähaaroja ei ole enää olemassa
|
||||
mirror_interval=Peili aikaväli (tuntia)
|
||||
@@ -430,7 +427,7 @@ mirror_address_desc=Ole hyvä ja liitä osoitteeseen tarvittavat käyttäjätunn
|
||||
mirror_last_synced=Synkronoitu viimeksi
|
||||
watchers=Tarkkailijat
|
||||
stargazers=Tähtiharrastajat
|
||||
forks=Haarautukset
|
||||
forks=Haarat
|
||||
repo_description_helper=Repon kuvaus. Enintään 512 merkkiä.
|
||||
repo_description_length=Käytettävissä olevat merkit
|
||||
|
||||
@@ -441,16 +438,16 @@ need_auth=Tarvitaan lupa
|
||||
migrate_type=Siirtotyyppi
|
||||
migrate_type_helper=Tämä repo tulee olemaan <span class="text blue">peili</span>
|
||||
migrate_repo=Siirrä repo
|
||||
migrate.clone_address=Monistuksen osoite
|
||||
migrate.clone_address=Kloonaa osoite
|
||||
migrate.clone_address_desc=Tämä voi olla HTTP/HTTPS/GIT URL.
|
||||
migrate.clone_address_desc_import_local=Paikallisen palvelimen kansiopolun käyttö repon migraatiossa on myös salittua.
|
||||
migrate.permission_denied=Sinun ei sallita tuovan paikallisia repoja.
|
||||
migrate.invalid_local_path=Virheellinen paikallinen polku, ei ole olemassa tai ei ole hakemisto.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Kloonausosoite ratkeaa paikallisverkko-osoitteeksi joka on täysin estetty.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Siirto epäonnistui: %v
|
||||
|
||||
mirror_from=peilaus alkaen
|
||||
forked_from=haarautettu lähteestä
|
||||
forked_from=forkattu lähteestä
|
||||
copy_link=Kopioi
|
||||
copy_link_success=Kopioitu!
|
||||
copy_link_error=Paina ⌘-C tai Ctrl-C kopioidaksesi
|
||||
@@ -459,26 +456,26 @@ unwatch=Lopeta tarkkailu
|
||||
watch=Tarkkaile
|
||||
unstar=Peru ääni
|
||||
star=Äänestä
|
||||
fork=Haarauta
|
||||
fork=Fork
|
||||
|
||||
no_desc=Ei kuvausta
|
||||
quick_guide=Pikaopas
|
||||
clone_this_repo=Kloonaa tämä repo
|
||||
create_new_repo_command=Luo uusi repo komentoriviltä
|
||||
push_exist_repo=Työnnä olemassa oleva tietosäilö komentoriviltä
|
||||
push_exist_repo=Työnnä olemassaoleva repo komentoriviltä
|
||||
bare_message=Tässä repossa ei ole mitään sisältöä vielä.
|
||||
|
||||
files=Tiedostot
|
||||
branch=Haara
|
||||
tree=Puu
|
||||
filter_branch_and_tag=Suodata haara tai tunniste
|
||||
filter_branch_and_tag=Suodata haara tai tagi
|
||||
branches=Haarat
|
||||
tags=Tunnisteet
|
||||
issues=Esitykset
|
||||
pulls=Vetopyynnöt
|
||||
labels=Leimat
|
||||
tags=Tagit
|
||||
issues=Ongelmat
|
||||
pulls=Pull-pyynnöt
|
||||
labels=Tunnisteet
|
||||
milestones=Merkkipaalut
|
||||
commits=Sitoutukset
|
||||
commits=Commitit
|
||||
git_branches=Haarat
|
||||
releases=Julkaisut
|
||||
file_raw=Raaka
|
||||
@@ -486,16 +483,14 @@ file_history=Historia
|
||||
file_view_raw=Näytä raaka
|
||||
file_permalink=Pysyvä linkki
|
||||
file_too_large=Tämä tiedosto on liian suuri näytettäväksi
|
||||
video_not_supported_in_browser=Selaimesi ei tue HTML5 video-avainsanaa.
|
||||
video_not_supported_in_browser=Selaimesi ei tue HTML5 video-tagia.
|
||||
|
||||
branches.overview=Yleiskatsaus
|
||||
branches.active_branches=Aktiiviset haarat
|
||||
branches.stale_branches=Passivoituneet haarat
|
||||
branches.stale_branches=Vanhentuneet haarat
|
||||
branches.all=Kaikki haarat
|
||||
branches.updated_by=Päivitetty %[1]s %[2]s
|
||||
branches.change_default_branch=Muuta oletushaaraa
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Uusi tiedosto
|
||||
editor.upload_file=Liitä tiedosto
|
||||
@@ -504,7 +499,7 @@ editor.preview_changes=Muutosten esikatselu
|
||||
editor.cannot_edit_non_text_files=Voit editoida vain tekstitiedostoja
|
||||
editor.edit_this_file=Muokkaa tätä tiedostoa
|
||||
editor.must_be_on_a_branch=Haara täytyy olla valittuna jotta voit tehdä tai ehdottaa muutoksia tähän tiedostoon
|
||||
editor.fork_before_edit=Sinun täytyy haarautaa tästä tietosäilöstä ennen tiedoston muokkaamista
|
||||
editor.fork_before_edit=Sinun täytyy forkata tämä repo ennenkuin voit muokata tiedostoa
|
||||
editor.delete_this_file=Poista tämä tiedosto
|
||||
editor.must_have_write_access=Sinulla on kirjoitusoikeus tai ehdottaa muutoksia tiedostoon
|
||||
editor.file_delete_success=Tiedosto "%s" on poistettu onnistuneesti!
|
||||
@@ -512,14 +507,14 @@ editor.name_your_file=Nimeä tiedostosi...
|
||||
editor.filename_help=Lisää hakemisto, kirjoita se ja paina /. Poista hakemisto, siirry kentän alkuun ja paina ASKELPALAUTINTA.
|
||||
editor.or=tai
|
||||
editor.cancel_lower=peruuta
|
||||
editor.commit_changes=Sitouta muutokset
|
||||
editor.commit_changes=Vahvista muutokset
|
||||
editor.add_tmpl=Lisää '%s/<filename>'
|
||||
editor.add=Lisää "%s"
|
||||
editor.update=Päivitä '%s'
|
||||
editor.delete=Poista "%s"
|
||||
editor.commit_message_desc=Lisää valinnainen pidennetty kuvaus...
|
||||
editor.commit_directly_to_this_branch=Sitouta suoraan haaraan <strong class="branch-name">%s</strong>.
|
||||
editor.create_new_branch=Luo <strong>uusi kehityshaara</strong> tälle sitoutukselle tai tee vetopyyntö.
|
||||
editor.commit_message_desc=Lisää pidennetty selite (valinnainen)...
|
||||
editor.commit_directly_to_this_branch=Committaa suoraan haaraan <strong class="branch-name">%s</strong>.
|
||||
editor.create_new_branch=Luo <strong>uusi haara</strong> tälle commitille tai aloita pull-pyyntö.
|
||||
editor.new_branch_name_desc=Uuden haaran nimi...
|
||||
editor.cancel=Peruuta
|
||||
editor.filename_cannot_be_empty=Tiedostonimi ei voi olla tyhjä.
|
||||
@@ -528,7 +523,7 @@ editor.directory_is_a_file=Annettu nimi '%s' on tiedosto, ei kansio.
|
||||
editor.file_is_a_symlink=Tiedosto '%s' on symlinkki jota ei voi muokata web-selaimesta.
|
||||
editor.filename_is_a_directory=Kansio nimeltä '%s' on jo olemassa tässä repossa.
|
||||
editor.file_editing_no_longer_exists=Tiedostoa '%s' jota olet muokkaamassa ei ole enää olemassa tässä repossa.
|
||||
editor.file_changed_while_editing=Tiedoston sisältöä on muutettu aloittamisesi jälkeen. <a target="_blank" href="%s">Napsauta tästä</a> nähdäksesi mitä on muutettu tai <strong>paina sitouta uudelleen</strong> kirjoittaaksesi muutosten päälle.
|
||||
editor.file_changed_while_editing=Tiedoston sisältöä on muutettu aloittamisesi jälkeen. <a target="_blank" href="%s">Napsauta tästä</a> nähdäksesi mitä on muutettu tai <strong>paina commit uudelleen</strong> ylikirjoittaaksesi muutokset.
|
||||
editor.file_already_exists=Tiedosto '%s' on jo olemassa tässä repossa.
|
||||
editor.no_changes_to_show=Ei muutoksia näytettäväksi.
|
||||
editor.fail_to_update_file=Tiedoston '%s' päivitys/luonti epäonnistui virheeseen: %v
|
||||
@@ -537,9 +532,9 @@ editor.add_subdir=Lisää alikansio...
|
||||
editor.unable_to_upload_files=Tiedostojen lataus epäonnistui kansioon '%s' virheellä: %v
|
||||
editor.upload_files_to_dir=Lataa tiedostoja kansioon '%s'
|
||||
|
||||
commits.commit_history=Sitoutushistoria
|
||||
commits.commits=Sitoutukset
|
||||
commits.search=Etsi sitoutuksista
|
||||
commits.commit_history=Commitin historia
|
||||
commits.commits=Commitit
|
||||
commits.search=Etsi commiteista
|
||||
commits.find=Etsi
|
||||
commits.author=Tekijä
|
||||
commits.message=Viesti
|
||||
@@ -547,10 +542,10 @@ commits.date=Päivämäärä
|
||||
commits.older=Vanhemmat
|
||||
commits.newer=Uudemmat
|
||||
|
||||
issues.new=Uusi esitys
|
||||
issues.new.labels=Leimat
|
||||
issues.new.no_label=Ei leimaa
|
||||
issues.new.clear_labels=Tyhjennä leimavalinta
|
||||
issues.new=Uusi ongelma
|
||||
issues.new.labels=Tunnisteet
|
||||
issues.new.no_label=Ei tunnistetta
|
||||
issues.new.clear_labels=Tyhjennä tunnisteet
|
||||
issues.new.milestone=Merkkipaalu
|
||||
issues.new.no_milestone=Ei merkkipaalua
|
||||
issues.new.clear_milestone=Tyhjennä merkkipaalu
|
||||
@@ -559,25 +554,25 @@ issues.new.closed_milestone=Suljetut merkkipaalut
|
||||
issues.new.assignee=Osoitettu
|
||||
issues.new.clear_assignee=Tyhjennä osoitettu
|
||||
issues.new.no_assignee=Ei osoitettua
|
||||
issues.create=Luo esitys
|
||||
issues.new_label=Uusi leima
|
||||
issues.new_label_placeholder=Leiman nimi...
|
||||
issues.create_label=Luo leima
|
||||
issues.label_templates.title=Lataa ennaltamääritelty leimajoukko
|
||||
issues.label_templates.info=Täällä ei ole vielä leimoja. Voit luoda uuden napsauttamalla "Uusi leima" tai käyttää ennaltamääriteltyä leimajoukkoa alta.
|
||||
issues.label_templates.helper=Valitse leimajoukko
|
||||
issues.label_templates.use=Käytä tätä leimajoukkoa
|
||||
issues.label_templates.fail_to_load_file=Leimamallin lataus epäonnistui tiedostosta '%s': %v
|
||||
issues.create=Ilmoita ongelma
|
||||
issues.new_label=Uusi tunniste
|
||||
issues.new_label_placeholder=Tunnisteen nimi...
|
||||
issues.create_label=Luo tunniste
|
||||
issues.label_templates.title=Lataa ennaltamääritelty tarrajoukko
|
||||
issues.label_templates.info=Tarroja ei ole. Voit luoda uuden napsauttamalla "Uusi tarra" tai käyttää ennaltamääriteltyä tarrajoukkoa alta.
|
||||
issues.label_templates.helper=Valitse tarrajoukko
|
||||
issues.label_templates.use=Käytä tätä tarrajoukkoa
|
||||
issues.label_templates.fail_to_load_file=Tarramallin lataus epäonnistui tiedostosta '%s': %v
|
||||
issues.open_tab=%d avoinna
|
||||
issues.close_tab=%d suljettu
|
||||
issues.filter_label=Leima
|
||||
issues.filter_label_no_select=Ei leimaa valittuna
|
||||
issues.filter_label=Tunniste
|
||||
issues.filter_label_no_select=Ei valittua tunnistetta
|
||||
issues.filter_milestone=Merkkipaalu
|
||||
issues.filter_milestone_no_select=Ei valittua merkkipaalua
|
||||
issues.filter_assignee=Osoitettu
|
||||
issues.filter_assginee_no_select=Ei valittua osoitettua
|
||||
issues.filter_type=Tyyppi
|
||||
issues.filter_type.all_issues=Kaikki esitykset
|
||||
issues.filter_type.all_issues=Kaikki ongelmat
|
||||
issues.filter_type.assigned_to_you=Osoitettu sinulle
|
||||
issues.filter_type.created_by_you=Ilmoittamasi
|
||||
issues.filter_type.mentioning_you=Jotka mainitsee sinut
|
||||
@@ -605,7 +600,7 @@ issues.reopen_comment_issue=Kommentoi ja avaa uudelleen
|
||||
issues.create_comment=Kommentoi
|
||||
issues.closed_at=`suljettu <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.reopened_at=`avattu uudelleen <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.commit_ref_at=`viittasi tähän esitykseen sitoutuksesta <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.commit_ref_at=`viittasi tähän ongelmaan commitissa <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.poster=Tekijä
|
||||
issues.collaborator=Yhteistyökumppani
|
||||
issues.owner=Omistaja
|
||||
@@ -613,51 +608,51 @@ issues.sign_in_require_desc=<a href="%s">Kirjaudu sisään</a> osallistuaksesi t
|
||||
issues.edit=Muokkaa
|
||||
issues.cancel=Peruuta
|
||||
issues.save=Tallenna
|
||||
issues.label_title=Leiman nimi
|
||||
issues.label_color=Leiman väri
|
||||
issues.label_count=%d leimaa
|
||||
issues.label_open_issues=%d avointa esitystä
|
||||
issues.label_title=Tunnisteen nimi
|
||||
issues.label_color=Tunnisteen väri
|
||||
issues.label_count=%d tunnistetta
|
||||
issues.label_open_issues=%d avointa ongelmaa
|
||||
issues.label_edit=Muokkaa
|
||||
issues.label_delete=Poista
|
||||
issues.label_modify=Leiman muokkaus
|
||||
issues.label_deletion=Leiman poistaminen
|
||||
issues.label_deletion_desc=Tämän leiman poistaminen kadottaa sen kaikista esityksistä. Haluatko jatkaa?
|
||||
issues.label_deletion_success=Leima on poistettu onnistuneesti!
|
||||
issues.label_modify=Tunnisteen muokkaus
|
||||
issues.label_deletion=Tunnisteen poistaminen
|
||||
issues.label_deletion_desc=Tämän tunnisteen poistaminen poistaa sen tiedot kaikista siihen liittyvistä ongelmista. Haluatko jatkaa?
|
||||
issues.label_deletion_success=Tunniste on poistettu onnistuneesti!
|
||||
issues.num_participants=%d osallistujaa
|
||||
issues.attachment.open_tab=`Napsauta nähdäksesi "%s" uudessa välilehdessä`
|
||||
issues.attachment.download=`Napsauta ladataksesi "%s"`
|
||||
|
||||
pulls.new=Uusi vetopyyntö
|
||||
pulls.new=Uusi pull pyyntö
|
||||
pulls.compare_changes=Vertaa muutoksia
|
||||
pulls.compare_changes_desc=Vertaa kahta haaraa ja tee vetopyyntö muutoksista.
|
||||
pulls.compare_base=pohja
|
||||
pulls.compare_changes_desc=Vertaa kahta branchia ja tee pull-pyyntö muutoksista.
|
||||
pulls.compare_base=base
|
||||
pulls.compare_compare=vertaa
|
||||
pulls.filter_branch=Suodata haara
|
||||
pulls.no_results=Tuloksia ei löytynyt.
|
||||
pulls.nothing_to_compare=Ei ole mitään verrattavaa koska base ja head branchit ovat tasoissa.
|
||||
pulls.nothing_merge_base=Ei ole mitään verrattavaa, koska kahdella haaralla on täysin erilainen historia.
|
||||
pulls.has_pull_request=`On olemassa jo pull pyyntö näiden kohteiden välillä: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]d</a>`
|
||||
pulls.create=Luo vetopyyntö
|
||||
pulls.title_desc=haluaa liittää %[1]d sitoutusta lähteestä <code>%[2]s</code> kohteeseen <code>%[3]s</code>
|
||||
pulls.merged_title_desc=liitetty %[1]d sitoutusta lähteestä <code>%[2]s</code> kohteeseen <code>%[3]s</code> %[4]s
|
||||
pulls.create=Luo Pull-pyyntö
|
||||
pulls.title_desc=haluaa yhdistää %[1]d committia lähteestä <code>%[2]s</code> kohteeseen <code>%[3]s</code>
|
||||
pulls.merged_title_desc=yhdistetty %[1]d committia lähteestä <code>%[2]s</code> kohteeseen <code>%[3]s</code> %[4]s
|
||||
pulls.tab_conversation=Keskustelu
|
||||
pulls.tab_commits=Sitoutukset
|
||||
pulls.tab_files=Muutetut tiedostot
|
||||
pulls.reopen_to_merge=Ole hyvä ja avaa tämä vetopyyntö uudelleen liittääksesi.
|
||||
pulls.merged=Liitetty
|
||||
pulls.has_merged=Tämä vetopyyntö on liitetty onnistuneesti!
|
||||
pulls.data_broken=Tämän vetopyynnön tiedot ovat hajonneet poistettujen haarautustietojen vuoksi.
|
||||
pulls.tab_commits=Commitit
|
||||
pulls.tab_files=Muuttuneet tiedostot
|
||||
pulls.reopen_to_merge=Ole hyvä ja avaa uudelleen tämä pull-pyyntö suorittaaksesi yhdistämisen.
|
||||
pulls.merged=Yhdistetty
|
||||
pulls.has_merged=Tämä pull-pyyntö on yhdistetty onnistuneesti!
|
||||
pulls.data_broken=Tämän pull-pyynnön tiedot ovat rikkoutuneet koska fork tiedot on poistettu.
|
||||
pulls.is_checking=Konfliktin tarkistus on yhä meneillään, ole hyvä ja päivitä sivu hetken kuluttua.
|
||||
pulls.can_auto_merge_desc=Tämä vetopyyntö voidaan yhdistää automaattisesti.
|
||||
pulls.cannot_auto_merge_desc=Tätä vetopyyntöä ei voi liittää automaattisesti konfliktien takia.
|
||||
pulls.cannot_auto_merge_helper=Ole hyvä ja liitä manuaalisesti konfliktien ratkaisemiseksi.
|
||||
pulls.create_merge_commit=Luo liitossitoutus
|
||||
pulls.rebase_before_merging=Sulauta ennen yhdistämistä
|
||||
pulls.commit_description=Sitoutuksen kuvaus
|
||||
pulls.merge_pull_request=Liitä vetopyyntö
|
||||
pulls.can_auto_merge_desc=Tämä pull-pyyntö voidaan yhdistää automaattisesti.
|
||||
pulls.cannot_auto_merge_desc=Tätä pull-pyyntöä ei voi yhdistää automaattisesti koska on konflikteja.
|
||||
pulls.cannot_auto_merge_helper=Ole hyvä ja yhdistä manuaalisesti konfliktien ratkaisemiseksi.
|
||||
pulls.create_merge_commit=Luo yhdistämistoiminto
|
||||
pulls.rebase_before_merging=Rebase ennen yhdistämistä
|
||||
pulls.commit_description=Toimituksen kuvaus
|
||||
pulls.merge_pull_request=Yhdistä Pull-pyyntö
|
||||
pulls.open_unmerged_pull_exists=`Et voi suorittaa uudelleenavaus toimintoa koska on jo olemassa pull-pyyntö (#%d) samasta reposta samoilla yhdistämistiedoilla ja odottaa yhdistämistä.`
|
||||
pulls.delete_branch=Poista haara
|
||||
pulls.delete_branch_has_new_commits=Kehityshaaraa ei voida poistaa, koska siihen on tullut uusia sitoutuksia liitoksen jälkeen.
|
||||
pulls.delete_branch_has_new_commits=Haaraa ei voida poistaa koska siinä on uusia committeja mergen jälkeen.
|
||||
|
||||
milestones.new=Uusi merkkipaalu
|
||||
milestones.open_tab=%d avoinna
|
||||
@@ -690,7 +685,7 @@ wiki.create_first_page=Luo ensimmäinen sivu
|
||||
wiki.page=Sivu
|
||||
wiki.filter_page=Suodatin sivu
|
||||
wiki.new_page=Luo uusi sivu
|
||||
wiki.default_commit_message=Kirjoita viesti tästä päivityksestä (valinnainen).
|
||||
wiki.default_commit_message=Kirjoita huomautus tähän päivitykseen (valinnainen).
|
||||
wiki.save_page=Tallenna sivu
|
||||
wiki.last_commit_info=%s muokkasi tätä sivua %s
|
||||
wiki.edit_page_button=Muokkaa
|
||||
@@ -711,21 +706,21 @@ settings.collaboration.undefined=Määrittelemätön
|
||||
settings.branches=Haarat
|
||||
settings.branches_bare=Et voi hallita haaroja tyhjässä repossa. Lisää jotain sisältöä ensin.
|
||||
settings.default_branch=Oletushaara
|
||||
settings.default_branch_desc=Oletushaaraa käytetään "pohjahaarana" sitoutuksille, vetopyynnöille ja sivustolla toteutetuille muokkauksille.
|
||||
settings.default_branch_desc=Oletushaaraa käytetään "pohjahaarana" commiteille, pull-pyynnöille ja sivustolla toteutetuille muokkauksille.
|
||||
settings.update=Päivitä
|
||||
settings.update_default_branch_unsupported=Palvelimella oleva Git-versio ei tue oletushaaran vaihtamista.
|
||||
settings.update_default_branch_success=Repositoryn oletushaara päivitetty!
|
||||
settings.protected_branches=Suojatut haarat
|
||||
settings.protected_branches_desc=Suojaa kehityshaaroja pakkotyönnöiltä, vahinkopoistamisilta ja sallituilta sitouttajilta.
|
||||
settings.protected_branches_desc=Suojaa haaroja pakotetulta push-operaatiolta, vahinkopoistamisilta ja sallitun listan committereilta.
|
||||
settings.choose_a_branch=Valitse haara...
|
||||
settings.branch_protection=Haaran suojaus
|
||||
settings.branch_protection_desc=Valitse suojausasetus haaralle <b>%s</b>.
|
||||
settings.protect_this_branch=Suojaa tämä haara
|
||||
settings.protect_this_branch_desc=Kiellä pakoteut push-operaatiot ja estä poistaminen.
|
||||
settings.protect_require_pull_request=Vaadi pull-pyyntö suoran push-operaation sijaan
|
||||
settings.protect_require_pull_request_desc=Ota tämä asetus käyttöön estääksesi suorat työnnöt tähän kehityshaaraan. Sitoutukset täytyy työntää ei-suojattuun kehityshaaraan ja liittää tähän kehityshaaraan vetopyynnön kautta.
|
||||
settings.protect_whitelist_committers=Lista sallituista, jotka voivat työntää tähän kehityshaaraan
|
||||
settings.protect_whitelist_committers_desc=Lisää käyttäjiä tai tiimejä sallittuihin jotka saavat työntää tähän kehityshaaraan. Sallitut käyttäjät voivat ohittaa vaatimuksen vetopyyntöjen tekemisestä.
|
||||
settings.protect_require_pull_request_desc=Estä suorat push-operaatiot tähän haaraan. Commitit täytyy pushata ei-suojattuun haaraan ja yhdistää tähän haaraan pull-pyynnön kautta.
|
||||
settings.protect_whitelist_committers=Lista sallituista, jotka voivat pushata tähän haaraan
|
||||
settings.protect_whitelist_committers_desc=Lisää käyttäjiä tai tiimejä sallittuihin jotka saavat pushata tähän haaraan. Sallitut käyttäjät voivat ohittaa vaatimuksen pull requestien tekemisestä.
|
||||
settings.protect_whitelist_users=Käyttäjät jotka voivat pushata tähän haaraan
|
||||
settings.protect_whitelist_search_users=Etsi käyttäjiä
|
||||
settings.protect_whitelist_teams=Tiimit joiden jäsenet voivat pushata tähän haaraan
|
||||
@@ -747,22 +742,22 @@ settings.allow_public_wiki_desc=Salli julkinen pääsy wikiin kun repo on yksity
|
||||
settings.use_external_wiki=Käytä ulkoista wikiä
|
||||
settings.external_wiki_url=Ulkoisen wikin osoite
|
||||
settings.external_wiki_url_desc=Vierailijat uudelleenohjataan URL-osoitteeseen kun he napsauttavat välilehteä.
|
||||
settings.issues_desc=Ota esitystenseuranta käyttöön
|
||||
settings.use_internal_issue_tracker=Käytä kevyttä, sisäänrakennettua esitystenseurantaa
|
||||
settings.allow_public_issues_desc=Salli julkinen pääsy esityksiin tietosäilön ollessa yksityinen
|
||||
settings.use_external_issue_tracker=Käytä ulkoista esitystenseurantaa
|
||||
settings.issues_desc=Ota virheenseuranta käyttöön
|
||||
settings.use_internal_issue_tracker=Käytä sisäänrakennettua kevyttä virheenseurantaa
|
||||
settings.allow_public_issues_desc=Salli julkinen pääsy ongelmiin kun repo on yksityinen
|
||||
settings.use_external_issue_tracker=Käytä ulkoista vikaseurantaa
|
||||
settings.external_tracker_url=Ulkoisen virheenseurannan URL
|
||||
settings.external_tracker_url_desc=Vierailijat ohjataan URL-osoitteeseen kun he napsauttavat välilehteä.
|
||||
settings.tracker_url_format=Ulkoisen vikaseurannan osoitteen muoto
|
||||
settings.tracker_issue_style=Ulkoisen esitystenseurannan nimeämistyyli:
|
||||
settings.tracker_issue_style=Ulkoisen virheenseurannan nimeämistyyli:
|
||||
settings.tracker_issue_style.numeric=Numeerinen
|
||||
settings.tracker_issue_style.alphanumeric=Aakkosnumeerinen
|
||||
settings.tracker_url_format_desc=Voit käyttää paikkamerkkiä <code>{user} {repo} {index}</code> käyttäjänimelle, reponimelle ja vikanumerolle.
|
||||
settings.pulls_desc=Ota käyttöön pull-pyynnöt hyväksyäksesi vastaanotettua koodia repojen ja haarojen välillä
|
||||
settings.pulls.ignore_whitespace=Ohita tyhjämerkkien muutokset
|
||||
settings.pulls.allow_rebase_merge=Salli sitoutusten sulauttaminen
|
||||
settings.pulls.allow_rebase_merge=Salli rebase yhdistäessä committeja
|
||||
settings.danger_zone=Vaaravyöhyke
|
||||
settings.cannot_fork_to_same_owner=Et voi haarauttaa tietosäilöä alkuperäiselle omistajalle.
|
||||
settings.cannot_fork_to_same_owner=Et voi forkata repoa alkuperäiselle omistajalleen.
|
||||
settings.new_owner_has_same_repo=Uudella omistajalla on jo samanniminen repo. Ole hyvä ja valitse toinen nimi.
|
||||
settings.convert=Muunna tavalliseksi repoksi
|
||||
settings.convert_desc=Voit muuntaa tämän peilin tavalliseksi repoksi. Tätä ei voi peruuttaa.
|
||||
@@ -782,7 +777,7 @@ settings.delete=Poista tämä repo
|
||||
settings.delete_desc=Huomio, kun kerran poistat repon, niin ei ole paluuta. Varmista että haluat todella tehdä tämän.
|
||||
settings.delete_notices_1=- Tätä toimintoa <strong>EI VOI</strong> peruuttaa myöhemmin.
|
||||
settings.delete_notices_2=- Tämä toiminto poistaa pysyvästi kaikki tästä reposta, mukaanlukien Git tiedot, ongelmat, kommentit ja yhteistyökumppanien pääsyoikeudet.
|
||||
settings.delete_notices_fork_1=- Kaikki haarautukset muuttuvat itsenäisiksi poiston jälkeen.
|
||||
settings.delete_notices_fork_1=- Kaikki haarat muuttuvat itsenäisiksi poiston jälkeen.
|
||||
settings.deletion_success=Repo on poistettu onnistuneesti!
|
||||
settings.update_settings_success=Repon asetukset on päivitetty onnistuneesti.
|
||||
settings.transfer_owner=Uusi omistaja
|
||||
@@ -815,7 +810,7 @@ settings.webhook.headers=Otsikot
|
||||
settings.webhook.payload=Payload
|
||||
settings.webhook.body=Body
|
||||
settings.webhook.err_cannot_parse_payload_url=Ei voida jäsentää hyötykuorman URL: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Tietokuorman URL-osoite ratkaistiin paikallisverkko-osoitteeksi, joka on erityisesti estetty.
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
settings.githooks_desc=Git koukkujen voimanlähteenä on Git itse, voit muokata tuettujen koukkujen tiedostoja allaolevassa luettelossa suorittaaksesi mukautettuja toimintoja.
|
||||
settings.githook_edit_desc=Jos koukku ei ole käytössä, esitellään esimerkkisisältö. Sisällön jättäminen tyhjäksi arvoksi poistaa tämän koukun käytöstä.
|
||||
settings.githook_name=Koukun nimi
|
||||
@@ -830,21 +825,21 @@ settings.slack_username=Käyttäjätunnus
|
||||
settings.slack_icon_url=Kuvakkeen URL
|
||||
settings.slack_color=Väri
|
||||
settings.event_desc=Milloin pitäisi tämän webkoukun laueta?
|
||||
settings.event_push_only=Vain <code>push</code>-komennolla.
|
||||
settings.event_push_only=Vain <code>push</code>-tilanteessa.
|
||||
settings.event_send_everything=Tarvitsen <strong>kaiken</strong>.
|
||||
settings.event_choose=Haluan valita, mitä tarvitsen.
|
||||
settings.event_create=Luo
|
||||
settings.event_create_desc=Kehityshaara tai tunniste luotu
|
||||
settings.event_create_desc=Branch, tai tagi luotu
|
||||
settings.event_delete=Poista
|
||||
settings.event_delete_desc=Kehityshaara tai tunniste poistettu
|
||||
settings.event_fork=Haarautus
|
||||
settings.event_fork_desc=Tietosäilö haarautettu
|
||||
settings.event_push=Työntö
|
||||
settings.event_push_desc=Git työntö tietosäilöön
|
||||
settings.event_issues=Esitykset
|
||||
settings.event_issues_desc=Esitys avattu, suljettu, uudelleenavattu, muokattu, annettu, anto vedottu, leima päivitetty, leima poistettu, merkkipaalutettu, tai merkkipaalutus vedottu.
|
||||
settings.event_delete_desc=Branch, tai tagi luotu
|
||||
settings.event_fork=Fork
|
||||
settings.event_fork_desc=Repo forkattu
|
||||
settings.event_push=Push
|
||||
settings.event_push_desc=Git push repoon
|
||||
settings.event_issues=Ongelmat
|
||||
settings.event_issues_desc=Ongelma avattu, suljettu, uudelleenavattu, muokattu, annettu, anto vedottu, tarra päivitetty, tarra poistettu, merkkipaalutettu, tai poistettu merkkipaalu.
|
||||
settings.event_pull_request=Pull-pyyntö
|
||||
settings.event_pull_request_desc=Vetopyyntö avattu, suljettu, uudelleenavattu, muokattu, annettu, anto vedottu, leima päivitetty, leima poistettu, merkkipaalutettu, merkkipaalutus vedottu, tai synkronoitu.
|
||||
settings.event_pull_request_desc=Pull-pyyntö avattu, suljettu, uudelleenavattu, muokattu, annettu, anto vedottu, tarra päivitetty, tarra poistettu, merkkipaalutettu, poistettu merkkipaalu, tai synkronoitu.
|
||||
settings.event_issue_comment=Ongelman kommentti
|
||||
settings.event_issue_comment_desc=Ongelman kommentti luotu, muokattu, tai poistettu.
|
||||
settings.event_release=Julkaisu
|
||||
@@ -881,7 +876,7 @@ settings.description_length=Käytettävissä olevat merkit
|
||||
|
||||
diff.browse_source=Selaa lähdekoodia
|
||||
diff.parent=vanhempi
|
||||
diff.commit=sitoutus
|
||||
diff.commit=commit
|
||||
diff.data_not_available=Diff tiedot eivät ole saatavilla.
|
||||
diff.show_diff_stats=Näytä diff tilastot
|
||||
diff.show_split_view=Jaettu näkymä
|
||||
@@ -897,13 +892,13 @@ release.new_release=Uusi julkaisu
|
||||
release.draft=Työversio
|
||||
release.prerelease=Esiversio
|
||||
release.edit=muokkaa
|
||||
release.ahead=<strong>%d</strong> sitoutusta kehityshaaraan %s tämän julkaisun jälkeen
|
||||
release.ahead=<strong>%d</strong> committia kohteeseen %s version jälkeen
|
||||
release.source_code=Lähdekoodi
|
||||
release.new_subheader=Julkaise versioita iteroidaksesi tuotetta.
|
||||
release.edit_subheader=Yksityskohtainen muutosloki auttaa käyttäjiä ymmärtämään mitä on parannettu.
|
||||
release.tag_name=Tunnisteen nimi
|
||||
release.tag_name=Taginimi
|
||||
release.target=Kohde
|
||||
release.tag_helper=Valitse olemassa oleva tunniste, tai luo uusi tunniste julkaistaessa.
|
||||
release.tag_helper=Valitse olemassaoleva tagi, tai luo uusi tagi julkaistaessa.
|
||||
release.title=Otsikko
|
||||
release.content=Sisältö
|
||||
release.write=Kirjoita
|
||||
@@ -917,10 +912,10 @@ release.save_draft=Tallenna luonnos
|
||||
release.edit_release=Muokkaa versiota
|
||||
release.delete_release=Poista tämä versio
|
||||
release.deletion=Version poisto
|
||||
release.deletion_desc=Tämän julkaisun poistaminen poistaa vastaavan Git-tunnisteen. Haluatko jatkaa?
|
||||
release.deletion_desc=Tämän julkaisun poistaminen poistaa vastaavan Git-tagin. Haluatko jatkaa?
|
||||
release.deletion_success=Versio on poistettu onnistuneesti!
|
||||
release.tag_name_already_exist=Julkaisu tällä tunniste nimellä on jo olemassa.
|
||||
release.tag_name_invalid=Tunnisteen nimi ei kelpaa.
|
||||
release.tag_name_already_exist=Versio tällä taginimellä on jo olemassa.
|
||||
release.tag_name_invalid=Tagin nimi ei kelpaa
|
||||
release.downloads=Lataukset
|
||||
|
||||
[org]
|
||||
@@ -1020,7 +1015,7 @@ dashboard.app_ver=Sovellus versio
|
||||
dashboard.git_version=Git-versio
|
||||
dashboard.go_version=Go-versio
|
||||
dashboard.build_time=Rakentamisaika
|
||||
dashboard.build_commit=Koontisitoutus
|
||||
dashboard.build_commit=Rakentamis committi
|
||||
dashboard.statistic=Statistiikka
|
||||
dashboard.operations=Toiminnot
|
||||
dashboard.system_status=Järjestelmänvalvonnan tila
|
||||
@@ -1211,8 +1206,7 @@ config.ssh.start_builtin_server=Käynnistä sisäänrakennettu palvelin
|
||||
config.ssh.listen_host=Kuuntele porttia
|
||||
config.ssh.listen_port=Kuuntele porttia
|
||||
config.ssh.server_ciphers=Palvelimen cipherit
|
||||
config.ssh.server_macs=Serverin MAC-osoite
|
||||
config.ssh.server_algorithms=Palvelinalgoritmit
|
||||
config.ssh.server_macs=Server MACs
|
||||
|
||||
config.repo_config=Repositoryn asetukset
|
||||
config.repo.root_path=Juuripolku
|
||||
@@ -1224,7 +1218,7 @@ config.repo.preferred_licenses=Ensisijaiset lisenssit
|
||||
config.repo.disable_http_git=Poista käytöstä HTTP Git
|
||||
config.repo.enable_local_path_migration=Ota käyttöön paikallisen polun migraatio
|
||||
config.repo.enable_raw_file_render_mode=Ota käyttöön raakatiedoston renderöinti tila
|
||||
config.repo.commits_fetch_concurrency=Sitoutus noudon samanaikaisuus
|
||||
config.repo.commits_fetch_concurrency=Committien noudon samanaikaisuus
|
||||
config.repo.editor.line_wrap_extensions=Muokkaimen rivityksen laajennukset
|
||||
config.repo.editor.previewable_file_modes=Muokkaimen tiedostomuodot joita voi esikatsella
|
||||
config.repo.upload.enabled=Tiedoston liittäminen käytössä
|
||||
@@ -1237,8 +1231,8 @@ config.db_config=Tietokannan asetukset
|
||||
config.db.type=Tyyppi
|
||||
config.db.host=Isäntä
|
||||
config.db.name=Nimi
|
||||
config.db.schema=Skeema
|
||||
config.db.schema_helper=(koskee vain "postgresia")
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=Käyttäjä
|
||||
config.db.ssl_mode=SSL-tila
|
||||
config.db.ssl_mode_helper=(vain "postgres")
|
||||
@@ -1255,7 +1249,7 @@ config.security.cookie_secure=Ota käyttöön turvallinen eväste
|
||||
config.security.reverse_proxy_auth_user=Käänteinen välityspalvelimen todennusotsikko
|
||||
config.security.enable_login_status_cookie=Ota käyttöön kirjautumisen tilaeväste
|
||||
config.security.login_status_cookie_name=Kirjautumisen tila eväste
|
||||
config.security.local_network_allowlist=Paikallisverkkopääsylista
|
||||
config.security.local_network_allowlist=Local network allowlist
|
||||
|
||||
config.email_config=Sähköpostiasetukset
|
||||
config.email.enabled=Käytössä
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Testisähköpostin lähettäminen vastaanottajalle
|
||||
config.email.test_mail_sent=Testi sähköposti on lähetetty vastaanottajalle '%s'.
|
||||
|
||||
config.auth_config=Todennuksen asetukset
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Aktiivinen koodi elämät ennen vanhenemista
|
||||
config.auth.reset_password_code_lives=Nollaa salasana koodi elämät
|
||||
config.auth.require_email_confirm=Vaadi sähköpostivahvistus
|
||||
@@ -1384,23 +1377,23 @@ notices.delete_success=Järjestelmän ilmoitukset on poistettu onnistuneesti.
|
||||
[action]
|
||||
create_repo=luotu repo <a href="%s">%s</a>
|
||||
rename_repo=uudelleennimetty repo <code>%[1]s</code> nimelle <a href="%[2]s">%[3]s</a>
|
||||
commit_repo=työnnetty kehityshaara <a href="%[1]s/src/%[2]s">%[3]s</a> paikassa <a href="%[1]s">%[4]s</a>
|
||||
compare_commits=Näytä vertailu näille %d sitoutuksille
|
||||
commit_repo=pushattu kohteeseen <a href="%[1]s/src/%[2]s">%[3]s</a> paikassa <a href="%[1]s">%[4]s</a>
|
||||
compare_commits=Näytä vertailu näille %d commiteille
|
||||
transfer_repo=siirretty repo <code>%s</code> kohteeseen <a href="%s">%s</a>
|
||||
create_issue=`loi esityksen <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
close_issue=`käsitteli esityksen <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
reopen_issue=`uudelleenavasi esityksen <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
comment_issue=`kommentoi esitystä <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
create_issue=`avasi ongelman <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
close_issue=`sulki ongelman <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
reopen_issue=`avasi uudelleen ongelman <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
comment_issue=`kommentoi ongelmaa <a href="%s/issues/%s">%s#%[2]s</a>`
|
||||
create_pull_request=`luotu pull-pyyntö <a href="%s/pulls/%s">%s#%[2]s</a>`
|
||||
close_pull_request=`sulki pull-pyynnön <a href="%s/pulls/%s">%s#%[2]s</a>`
|
||||
reopen_pull_request=`avasi uudelleen pull-pyynnön <a href="%s/pulls/%s">%s#%[2]s</a>`
|
||||
merge_pull_request=`yhdistetty vetopyyntö <a href="%s/pulls/%s">%s#%[2]s</a>`
|
||||
merge_pull_request=`yhdistetty pull-pyyntö <a href="%s/pulls/%s">%s#%[2]s</a>`
|
||||
create_branch=luotu uusi haara <a href="%[1]s/src/%[2]s">%[3]s</a> kohteeseen <a href="%[1]s">%[4]s</a>
|
||||
delete_branch=poistettu haara <code>%[2]s</code> kohteesta <a href="%[1]s">%[3]s</a>
|
||||
push_tag=työnnettiin tunniste <a href="%s/src/%s">%[2]s</a> kohteeseen <a href="%[1]s">%[3]s</a>
|
||||
delete_tag=poistettiin tunniste <code>%[2]s</code> kohteesta <a href="%[1]s">%[3]s</a>
|
||||
fork_repo=haarautettiin tietosäilö kohteeseen <a href="%s"> %s</a>
|
||||
mirror_sync_push=synkronoitiin sitoutukset kohteeseen <a href="%[1]s/src/%[2]s">%[3]s</a> paikassa <a href="%[1]s">%[4]s</a> peilauksesta
|
||||
push_tag=pushattu tagi <a href="%s/src/%s">%[2]s</a> kohteeseen <a href="%[1]s">%[3]s</a>
|
||||
delete_tag=poistettu tagi <code>%[2]s</code> kohteesta <a href="%[1]s">%[3]s</a>
|
||||
fork_repo=forkattu repo kohteeseen <a href="%s"> %s</a>
|
||||
mirror_sync_push=synkattu commitit kohteeseen <a href="%[1]s/src/%[2]s">%[3]s</a> paikassa <a href="%[1]s">%[4]s</a> peilistä
|
||||
mirror_sync_create=synkattu uusi viite <a href="%s/src/%s">%[2]s</a> kohteeseen <a href="%[1]s">%[3]s</a> peilistä
|
||||
mirror_sync_delete=synkattu ja poistettu viite <code>%[2]s</code> paikassa <a href="%[1]s">%[3]s</a> peilistä
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
app_desc=Un service Git auto-hébergé et indolore.
|
||||
app_desc=Un service Git auto-hébergé sans prise de tête
|
||||
|
||||
home=Accueil
|
||||
dashboard=Tableau de bord
|
||||
@@ -28,7 +28,7 @@ mirror=Miroir
|
||||
new_repo=Nouveau dépôt
|
||||
new_migrate=Nouvelle migration
|
||||
new_mirror=Nouveau miroir
|
||||
new_fork=Nouveau dépôt séparé
|
||||
new_fork=Nouveau fork
|
||||
new_org=Nouvelle organisation
|
||||
manage_org=Gérer les organisations
|
||||
admin_panel=Administration
|
||||
@@ -38,7 +38,7 @@ your_profile=Votre profil
|
||||
your_settings=Vos paramètres
|
||||
|
||||
activities=Activités
|
||||
pull_requests=Demandes d'admission
|
||||
pull_requests=Pull Requests
|
||||
issues=Tickets
|
||||
|
||||
cancel=Annuler
|
||||
@@ -50,16 +50,16 @@ internal_server_error=Erreur interne du serveur
|
||||
[install]
|
||||
install=Installation
|
||||
title=Instructions pour la première exécution
|
||||
docker_helper=Si vous exécutez Gogs au sein de Docker, lisez la <a target="_blank" href="%s">procédure</a> attentivement avant toute altération de cette page !
|
||||
requite_db_desc=Gogs exige MySQL, PostgreSQL, SQLite3 or TiDB (via le protocole MySQL)
|
||||
docker_helper=Si vous exécutez Gogs grâce à Docker, merci de lire la <a target="_blank" href="%s">procédure</a> attentivement avant de modifier quoi que ce soit sur cette page !
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Paramètres de la base de données
|
||||
db_type=Type de base de données
|
||||
host=Hôte
|
||||
user=Utilisateur
|
||||
password=Mot de passe
|
||||
db_name=Nom de base de données
|
||||
db_schema=Schéma
|
||||
db_helper=Employez le moteur INNODB pour MySQL avec l'encodage utf8_general_ci.
|
||||
db_schema=Schema
|
||||
db_helper=Veuillez utiliser le moteur INNODB avec le jeu de caractères utf8_general_ci pour MySQL.
|
||||
ssl_mode=Mode SSL
|
||||
path=Emplacement
|
||||
sqlite_helper=Le chemin du fichier de base de données SQLite3. <br>Utilisez un chemin absolu lorsque vous démarrez en tant que service.
|
||||
@@ -67,13 +67,13 @@ err_empty_db_path=Le chemin de la base de données SQLite3 ne peut être vide.
|
||||
no_admin_and_disable_registration=Vous ne pouvez pas désactiver l'enregistrement sans créer un compte administrateur.
|
||||
err_empty_admin_password=Le mot de passe du compte administrateur ne peut être vide.
|
||||
|
||||
general_title=Réglages Généraux d'Application
|
||||
general_title=Paramètres généraux de Gogs
|
||||
app_name=Nom de l'application
|
||||
app_name_helper=Inscrivez fièrement le nom de votre organisation ici !
|
||||
repo_path=Chemin Racine des Dépôts
|
||||
repo_path=Emplacement racine des dépôts
|
||||
repo_path_helper=Tous les dépôts Git distants seront sauvegardés ici.
|
||||
run_user=Utilisateur
|
||||
run_user_helper=L'utilisateur doit avoir accès à la Racine des Dépôts et exécuter Gogs.
|
||||
run_user=Utilisateur système
|
||||
run_user_helper=L'utilisateur doit avoir accès à la racine des dépôts et exécuter Gogs.
|
||||
domain=Domaine
|
||||
domain_helper=Cela affecte les doublons d'URL SSH.
|
||||
ssh_port=Port SSH
|
||||
@@ -88,7 +88,6 @@ log_root_path=Chemin des fichiers log
|
||||
log_root_path_helper=Répertoire d'écriture des fichiers de log.
|
||||
enable_console_mode=Activer le mode Console
|
||||
enable_console_mode_popup=En plus du mode fichier, également imprimer des journaux à la console.
|
||||
default_branch=Branchepar défaut
|
||||
|
||||
optional_title=Paramètres facultatifs
|
||||
email_title=Paramètres du service de messagerie
|
||||
@@ -317,7 +316,6 @@ delete_email=Supprimer
|
||||
email_deletion=Suppression de l'adresse e-mail
|
||||
email_deletion_desc=Supprimer cette adresse e-mail supprimera les informations associées à votre compte. Voulez-vous continuer ?
|
||||
email_deletion_success=L'adresse e-mail a été supprimée avec succès !
|
||||
email_deletion_primary=Impossible de supprimer l'adresse de courrier principale
|
||||
add_new_email=Ajouter une nouvelle adresse e-mail
|
||||
add_email=Ajouter un e-mail
|
||||
add_email_confirmation_sent=Une nouvelle confirmation d'adresse e-mail a été envoyé à '%s', veuillez vérifier votre boîte de réception dans un délai de %d heures pour terminer le processus de confirmation.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=L'authentification à deux facteurs a été désactiv
|
||||
manage_access_token=Gérer les jetons d'accès personnels
|
||||
generate_new_token=Générer le nouveau jeton
|
||||
tokens_desc=Jetons, que vous avez généré, qui peuvent être utilisés pour accéder à l'API Gogs.
|
||||
access_token_tips=Le jeton d'accès personnel est employé soit comme nom d'utilisateur soit comme mot de passe. L'emploi du « x-access-token » comme nom d'utilisateur et le jeton d'accès personnel comme mot de passe est recommandé pour les applications Git
|
||||
new_token_desc=Chaque Jeton donnera un accès complet à votre compte.
|
||||
token_name=Nom du jeton
|
||||
generate_token=Générer le jeton
|
||||
@@ -403,9 +400,9 @@ owner=Propriétaire
|
||||
repo_name=Nom du dépôt
|
||||
repo_name_helper=Idéalement, le nom d'un dépot devrait être court, mémorable et <strong>unique</strong>.
|
||||
visibility=Visibilité
|
||||
unlisted=Non répertorié
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Ce dépôt est <span class="ui red text"> privé</span>
|
||||
unlisted_helper=Ce dépôt <span class="ui red text">n'est pas répertorié</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=L'administrateur du site a forcé tous les nouveaux dépôts à être <span class="ui red text">privés</span>
|
||||
visiblity_fork_helper=(Les changements de cette valeur affecteront tous les forks)
|
||||
clone_helper=Besoin d'aide pour dupliquer ? Visitez <a target="_blank" href="%s">l'aide</a> !
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=Cela peut être une URL HTTP/HTTPS/GIT.
|
||||
migrate.clone_address_desc_import_local=Vous êtes aussi autorisé à migrer un dépôt via un chemin local du serveur.
|
||||
migrate.permission_denied=Vous n'êtes pas autorisé à importer des dépôts locaux.
|
||||
migrate.invalid_local_path=Chemin local non valide, non existant ou n'étant pas un dossier.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=L'adresse de clonage correspond à une adresse réseau locale, qui est bloquée implicitement.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Echec de migration: %v
|
||||
|
||||
mirror_from=miroir de
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Branches stagnantes
|
||||
branches.all=Toutes les Branches
|
||||
branches.updated_by=Mise à jour %[1]s par %[2]s
|
||||
branches.change_default_branch=Changer la Branche par Défaut
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nouveau fichier
|
||||
editor.upload_file=Téléverser un fichier
|
||||
@@ -815,7 +810,7 @@ settings.webhook.headers=Entêtes
|
||||
settings.webhook.payload=Payload
|
||||
settings.webhook.body=Corps
|
||||
settings.webhook.err_cannot_parse_payload_url=Impossible d'analyser l'URL : %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=L'URL du contenu correspond à une adresse réseau locale qui est bloquée implicitement.
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
settings.githooks_desc=Les Hooks Git sont alimentés par Git lui même. Les Hooks compatibles sont modifiables dans la liste ci-dessous pour effectuer des opérations personnalisées.
|
||||
settings.githook_edit_desc=Si un Hook est inactif, un exemple de contenu vous sera proposé. Un contenu laissé vide signifie un Hook inactif.
|
||||
settings.githook_name=Nom du Hook
|
||||
@@ -1211,8 +1206,7 @@ config.ssh.start_builtin_server=Démarrer le serveur intégré
|
||||
config.ssh.listen_host=Hôte en écoute
|
||||
config.ssh.listen_port=Port d'écoute
|
||||
config.ssh.server_ciphers=Suites de chiffrement
|
||||
config.ssh.server_macs=Adresses MAC du serveur
|
||||
config.ssh.server_algorithms=Algorithmes de serveur
|
||||
config.ssh.server_macs=Server MACs
|
||||
|
||||
config.repo_config=Configuration du dépôt
|
||||
config.repo.root_path=Emplacement racine
|
||||
@@ -1237,8 +1231,8 @@ config.db_config=Configuration de la Base de Données
|
||||
config.db.type=Type
|
||||
config.db.host=Serveur hôte
|
||||
config.db.name=Nom
|
||||
config.db.schema=Schéma
|
||||
config.db.schema_helper=(pour "postgres" uniquement)
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=Utilisateur
|
||||
config.db.ssl_mode=Mode SSL
|
||||
config.db.ssl_mode_helper=("postgres" uniquement)
|
||||
@@ -1255,7 +1249,7 @@ config.security.cookie_secure=Activer les cookies sécurisés
|
||||
config.security.reverse_proxy_auth_user=Inverser l'en-tête d'authentification du proxy
|
||||
config.security.enable_login_status_cookie=Activer le cookie d'état de connexion
|
||||
config.security.login_status_cookie_name=Cookie de statut de connexion
|
||||
config.security.local_network_allowlist=liste des autorisations de réseau local
|
||||
config.security.local_network_allowlist=Local network allowlist
|
||||
|
||||
config.email_config=Configuration de l’e-mail
|
||||
config.email.enabled=Activé
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Impossible d'envoyer un e-mail de test à '%s' :
|
||||
config.email.test_mail_sent=Un e-mail de test à été envoyé à '%s'.
|
||||
|
||||
config.auth_config=Configuration de l'authentification
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activer les vies sur les codes
|
||||
config.auth.reset_password_code_lives=Vies sur les codes de réinitialisation des mots de passes
|
||||
config.auth.require_email_confirm=Nécessite une confirmation par e-mail
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Ruta do rexistro
|
||||
log_root_path_helper=Directorio onde almacenar os rexistros.
|
||||
enable_console_mode=Habilitar Modo Consola
|
||||
enable_console_mode_popup=Ademáis do modo de ficheiro, tamén imprime os rexistros para a consola.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Configuración opcional
|
||||
email_title=Configuración do servizo de correo
|
||||
@@ -318,7 +317,6 @@ delete_email=Eliminar
|
||||
email_deletion=Eliminar correo electrónico
|
||||
email_deletion_desc=Ao eliminar este enderezo de correo electrónico eliminarase toda a información asociada a esta. Desexas continuar?
|
||||
email_deletion_success=O correo electrónico foi eliminado correctamente!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Engadir novo enderezo de correo electrónico
|
||||
add_email=Engadir correo electrónico
|
||||
add_email_confirmation_sent=Un novo correo de confirmación foi enviado a '%s'. Por favor, comproba a túa bandexa de entrada nas próximas %d horas para completar o proceso.
|
||||
@@ -373,7 +371,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=Xestionar os tokens de acceso persoais
|
||||
generate_new_token=Xerar novo token
|
||||
tokens_desc=Tokens usados para acceder ao API de Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Dende agora, todos os tokens terán acceso completo á túa conta.
|
||||
token_name=Nome do token
|
||||
generate_token=Xerar token
|
||||
@@ -495,8 +492,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Novo arquivo
|
||||
editor.upload_file=Subir arquivo
|
||||
@@ -1213,7 +1208,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository configuration
|
||||
config.repo.root_path=Root path
|
||||
@@ -1277,7 +1271,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Naplófájl elérési útja
|
||||
log_root_path_helper=Naplófájlok könyvtára.
|
||||
enable_console_mode=Konzol-üzemmód engedélyezése
|
||||
enable_console_mode_popup=Naplófájl írása mellett a naplóbejegyzések nyomtatása a konzolra.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=További beállítások
|
||||
email_title=E-mail szolgáltatás beállításai
|
||||
@@ -317,7 +316,6 @@ delete_email=Törlés
|
||||
email_deletion=E-mail cím törlése
|
||||
email_deletion_desc=Az e-mail cím törlése kapcsolódó adatokat is eltávolít a fiókjából. Biztosan folytatja?
|
||||
email_deletion_success=Az e-mail címet töröltük!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Új email cím felvétele
|
||||
add_email=Email felvétele
|
||||
add_email_confirmation_sent=Egy új megerősítő e-mailt küldtünk a(z) '%s' címre. Kérlek ellenőrizd a beérkező üzeneteidet %d órán belül, hogy befejezd a megerősítési folyamatot.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Kétlépcsős hitelesítés sikeresen letiltva a fió
|
||||
manage_access_token=Személyes hozzáférési jegyek kezelése
|
||||
generate_new_token=Új jegy generálása
|
||||
tokens_desc=A generált jegyekkel hozzáférhetsz a Gogs API-hoz.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Minden jegy teljes hozzáférést ad a fiókodhoz.
|
||||
token_name=Jegy neve
|
||||
generate_token=Jegy generálása
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Elavult ágak
|
||||
branches.all=Minden ág
|
||||
branches.updated_by=Frissítve ekkor: %[1]s %[2]s által
|
||||
branches.change_default_branch=Alapértelmezett ág megváltoztatása
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Új fájl
|
||||
editor.upload_file=Fájl feltöltése
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Hallgatási cím
|
||||
config.ssh.listen_port=Hallgatási port
|
||||
config.ssh.server_ciphers=Kiszolgáló titkosítás módszerei
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Tároló konfiguráció
|
||||
config.repo.root_path=Gyökér elérési útvonal
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Nem sikerült kiküldeni a teszt e-mailt '%s'-nek:
|
||||
config.email.test_mail_sent=Teszt e-mail kiküldve '%s'-nek.
|
||||
|
||||
config.auth_config=Hitelesítési beállítások
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Jelszó visszaállítási kód élettartama
|
||||
config.auth.require_email_confirm=E-mail megerősítés szükségessé tétele
|
||||
|
||||
@@ -44,21 +44,21 @@ issues=Masalah
|
||||
cancel=Batal
|
||||
|
||||
[status]
|
||||
page_not_found=Halaman tidak ditemukan
|
||||
internal_server_error=Kesalahan Server Internal
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Instalasi
|
||||
title=Langkah-langkah untuk Menjalankan Pertama Kali
|
||||
docker_helper=Jika Anda menjalankan Gogs dalam Docker, silakan baca <a target="_blank" href="%s"> Petunjuk</a> dengan hati-hati sebelum Anda mengubah sesuatu di Halaman ini!
|
||||
requite_db_desc=Gogs memerlukan MySQL, PostgreSQL, SQLite3 atau TiDB.
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Pengaturan Basisdata
|
||||
db_type=Tipe Basisdata
|
||||
host=Host
|
||||
user=Pengguna
|
||||
password=Sandi
|
||||
db_name=Nama Basisdata
|
||||
db_schema=Skema
|
||||
db_schema=Schema
|
||||
db_helper=Harap menggunakan INNODB engine dengan charset utf8_general_ci untuk MySQL.
|
||||
ssl_mode=Mode SSL
|
||||
path=Path
|
||||
@@ -88,7 +88,6 @@ log_root_path=Path log
|
||||
log_root_path_helper=Direktori untuk menulis berkas log.
|
||||
enable_console_mode=Mengaktifkan Mode Konsol
|
||||
enable_console_mode_popup=Selain mode file, juga mencetak log ke konsol.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Pengaturan opsional
|
||||
email_title=Pengaturan layanan email
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=Pengguna yang sedang menjalankan bukanlah pengguna saat ini:
|
||||
smtp_host_missing_port=Alamat Host SMTP hilang di alamat.
|
||||
invalid_smtp_from=SMTP Dari lapangan tidak sesuai: %v
|
||||
save_config_failed=Gagal untuk menyimpan konfigurasi: %v
|
||||
init_failed=Gagal melakukan inisialiasi aplikasi: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=Pengaturan akun admin tidak valid: %v
|
||||
install_success=Selamat datang! Kami senang bahwa Anda memilih Gogs, bersenang-senang dan berhati-hatilah.
|
||||
invalid_log_root_path=Path akar log tidak valid: %v
|
||||
@@ -265,7 +264,7 @@ following=Mengikuti
|
||||
follow=Ikuti
|
||||
unfollow=Berhenti mengikuti
|
||||
|
||||
form.name_not_allowed=Nama pengguna atau pola %q tidak diizinkan.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=Profil
|
||||
@@ -317,7 +316,6 @@ delete_email=Hapus
|
||||
email_deletion=Penghapusan email
|
||||
email_deletion_desc=Menghapus alamat email ini akan menghapus informasi yang berhubungan dengan akun Anda. Lanjutkan?
|
||||
email_deletion_success=Email telah berhasil diperbarui!
|
||||
email_deletion_primary=Tidak bisa menghapus email utama
|
||||
add_new_email=Menambah alamat email baru
|
||||
add_email=Tambahkan email
|
||||
add_email_confirmation_sent=Email konfirmasi baru telah dikirim ke '%s', silakan cek inboxmu dalam waktu %d jam untuk menyelesaikan proses konfirmasi.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Autentikasi dua faktor telah berhasil dilakukan!
|
||||
manage_access_token=Kelola Akses Token pribadi
|
||||
generate_new_token=Buat Token Baru
|
||||
tokens_desc=Token yang Anda buat dapat digunakan untuk mengakses API-nya Gogs.
|
||||
access_token_tips=Personal access token mungkin digunakan sebagai username atau password. Sangatn direkomendasikan untuk menggunakan "x-access-token" sebagai username atau personal access token sebagai password untuk aplikasi git.
|
||||
new_token_desc=Setiap token akan memiliki akses penuh ke akunmu.
|
||||
token_name=Nama Token
|
||||
generate_token=Buat Token
|
||||
@@ -381,7 +378,7 @@ delete_token=Hapus
|
||||
access_token_deletion=Penghapusan Akses Token Pribadi
|
||||
access_token_deletion_desc=Hapus token akses pribadi ini akan menghapus semua akses aplikasi yang terkait. Apakah Anda ingin melanjutkan?
|
||||
delete_token_success=Token akses pribadi telah berhasil dihapus! Jangan lupa untuk mengupdate aplikasi anda juga.
|
||||
token_name_exists=Token dengan nama yang sama telah digunakan.
|
||||
token_name_exists=Token with same name already exists.
|
||||
|
||||
orgs.none=Anda bukan anggota organisasi manapun.
|
||||
orgs.leave_title=Meninggalkan organisasi
|
||||
@@ -403,7 +400,7 @@ owner=Pemilik
|
||||
repo_name=Nama Repositori
|
||||
repo_name_helper=Nama repositori yang baik biasanya terdiri dari kata kunci yang pendek, mudah diingat dan unik.
|
||||
visibility=Visibilitas
|
||||
unlisted=Tidak terdaftar
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Repositori ini <span class="ui red text">Pribadi</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=Situs admin telah memaksa semua repositori baru menjadi <span class="ui red text">Pribadi</span>
|
||||
@@ -435,7 +432,7 @@ repo_description_helper=Deskripsi repositori maksimal 512 karakter.
|
||||
repo_description_length=Karakter tersedia
|
||||
|
||||
form.reach_limit_of_creation=Pemiliknya telah mencapai batas pembuatan maksimum %d repositori.
|
||||
form.name_not_allowed=Nama atau pola repositori %q tidak diizinkan.
|
||||
form.name_not_allowed=Repository name or pattern %q is not allowed.
|
||||
|
||||
need_auth=Butuh Otorisasi
|
||||
migrate_type=Jenis migrasi
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Cabang Basi
|
||||
branches.all=Semua Cabang
|
||||
branches.updated_by=Diperbarui %[1]s oleh %[2]s
|
||||
branches.change_default_branch=Ubah Cabang Default
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Berkas baru
|
||||
editor.upload_file=Unggah Berkas
|
||||
@@ -799,7 +794,7 @@ settings.search_user_placeholder=Cari pengguna...
|
||||
settings.org_not_allowed_to_be_collaborator=Organisasi tidak diperbolehkan untuk ditambahkan sebagai kolaborator.
|
||||
settings.hooks_desc=Webhooks seperti pemicu peristiwa HTTP POST dasar. Kapan pun terjadi sesuatu di Gog, kami akan menangani pemberitahuan tersebut ke host target yang Anda tentukan. Pelajari lebih lanjut di <a target="_blank" href=" %s "> Panduan Webhooks </a> ini.
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Pilih jenis...
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=Tambahkan Webhook
|
||||
settings.webhook_deletion=Hapus Webhook
|
||||
settings.webhook_deletion_desc=Hapus halaman web ini akan menghapus informasinya dan semua riwayat pengiriman. Apakah Anda ingin melanjutkan?
|
||||
@@ -1015,19 +1010,19 @@ first_page=Pertama
|
||||
last_page=Terakhir
|
||||
total=Total: %d
|
||||
|
||||
dashboard.build_info=Informasi build
|
||||
dashboard.app_ver=Versi aplikasi
|
||||
dashboard.git_version=Versi Git
|
||||
dashboard.go_version=Versi Go (Golang)
|
||||
dashboard.build_time=Durasi
|
||||
dashboard.build_commit=Setuju Membangun
|
||||
dashboard.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=Statistik
|
||||
dashboard.operations=Operasi
|
||||
dashboard.system_status=Status Monitor Sistem
|
||||
dashboard.statistic_info=GogsDatabase memiliki <b>%d</b> pengguna, <b>%d</b> organisasi, <b>%d</b> kunci publik, <b>%d</b> repositori, <b>%d</b> jamtangan, <b>%d</b> bintang, <b>%d</b>actions, <b>%d</b> akses, <b>%d</b> isu, <b>%d</b> komentar, <b>%d</b> akun sosial, <b>%d</b> berikut, <b>%d<b> mirror, <b>%d</b> rilis, <b>%d</b> sumber masuk, <b>%d</b> webhooks, <b>%d</b> tonggak,<b>%d</b> label, <b>%d</b> tugas hook, <b>%d</b> tim, <b>%d</b> memperbarui tugas, <b>%d</b> lampiran.
|
||||
dashboard.operation_name=Nama operasi
|
||||
dashboard.operation_switch=Beralih
|
||||
dashboard.select_operation_to_run=Harap menentukan operasi yang dijalankan
|
||||
dashboard.select_operation_to_run=Please select operation to run
|
||||
dashboard.operation_run=Menjalankan
|
||||
dashboard.clean_unbind_oauth=Bersihkan OAuth yang tidak terikat
|
||||
dashboard.clean_unbind_oauth_success=Semua unbind OAuthes telah berhasil dihapus.
|
||||
@@ -1151,7 +1146,7 @@ auths.user_attribute_listed_in_group=Atribut Pengguna Terdaftar di Grup
|
||||
auths.attributes_in_bind=Ambil atribut dalam konteks Bind DN
|
||||
auths.filter=Pengguna saringan
|
||||
auths.admin_filter=Filter Admin
|
||||
auths.ms_ad_sa=Otentifikasi sistem
|
||||
auths.ms_ad_sa=Ms Ad SA
|
||||
auths.smtp_auth=Autentikasi tipe SMTP
|
||||
auths.smtphost=Host SMTP
|
||||
auths.smtpport=Port SMTP
|
||||
@@ -1173,52 +1168,51 @@ auths.delete_auth_desc=Autentikasi ini akan dihapus, apakah Anda ingin melanjutk
|
||||
auths.still_in_used=Autentikasi ini masih digunakan oleh pengguna lain, silakan hapus atau ubah pengguna tersebut ke tipe masuk lainnya.
|
||||
auths.deletion_success=Autentikasi berhasil dihapus!
|
||||
auths.login_source_exist=Sumber masuk %s sudah tersedia.
|
||||
auths.github_api_endpoint=Titik akhir API
|
||||
auths.github_api_endpoint=API Endpoint
|
||||
|
||||
config.not_set=(tidak diterapkan)
|
||||
config.server_config=Konfigurasi Server
|
||||
config.brand_name=Nama Merek/Logo/Perusahaan
|
||||
config.brand_name=Brand name
|
||||
config.run_user=Menjalankan penggunaa
|
||||
config.run_mode=Run mode
|
||||
config.server.external_url=URL eksternal
|
||||
config.server.external_url=External URL
|
||||
config.server.domain=Domain
|
||||
config.server.protocol=Protokol
|
||||
config.server.http_addr=Alamat HTTP
|
||||
config.server.http_port=Port HTTP
|
||||
config.server.cert_file=Berkas Sertifikat
|
||||
config.server.key_file=Berkas baru
|
||||
config.server.tls_min_version=Minimum versi TLS
|
||||
config.server.unix_socket_permission=Aturan unix socket
|
||||
config.server.local_root_url=Lokal root url
|
||||
config.server.offline_mode=mode luring
|
||||
config.server.disable_router_log=Menonaktifkan router log
|
||||
config.server.enable_gzip=aktifkan gzip
|
||||
config.server.app_data_path=target data aplikasi
|
||||
config.server.load_assets_from_disk=memanggil asset dari disk
|
||||
config.server.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=Konfigurasi SSH
|
||||
config.ssh.enabled=Diaktifkan
|
||||
config.ssh.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Path akar
|
||||
config.ssh.keygen_path=Path keygen
|
||||
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=Ukuran kunci minimum
|
||||
config.ssh.rewrite_authorized_keys_at_start=Tulis ulang "authorized_keys" saat memulai
|
||||
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=Cipher server
|
||||
config.ssh.server_macs=MAC server
|
||||
config.ssh.server_algorithms=Algoritma server
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
|
||||
config.repo_config=Konfigurasi Repositori
|
||||
config.repo.root_path=Path akar
|
||||
config.repo.script_type=Jenis skrip
|
||||
config.repo.ansi_chatset=Set karakter ANSI
|
||||
config.repo.force_private=Paksa pribadi
|
||||
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
|
||||
@@ -1227,81 +1221,80 @@ 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=Pengunggahan diaktifkan
|
||||
config.repo.upload.temp_path=Path unggah sementara
|
||||
config.repo.upload.allowed_types=Tipe unggah yang diizinkan
|
||||
config.repo.upload.file_max_size=Batas ukuran unggah berkas
|
||||
config.repo.upload.max_files=Batas unggah berkas
|
||||
config.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=Konfigurasi Basis Data
|
||||
config.db.type=Tipe
|
||||
config.db.type=Type
|
||||
config.db.host=Host
|
||||
config.db.name=Nama
|
||||
config.db.schema=Skema
|
||||
config.db.schema_helper=(hanya untuk "postgres")
|
||||
config.db.user=Pengguna
|
||||
config.db.ssl_mode=Modus SSL
|
||||
config.db.ssl_mode_helper=(hanya untuk "postgres")
|
||||
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=(hanya untuk "sqlite3")
|
||||
config.db.max_open_conns=Maksimum koneksi yang terbuka
|
||||
config.db.max_idle_conns=Maksimum koneksi menganggur
|
||||
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=Konfigurasi keamanan
|
||||
config.security.login_remember_days=Berapa hari mengingat log masuk
|
||||
config.security.cookie_remember_name=Ingat cookie
|
||||
config.security.cookie_username=Cookie pengguna
|
||||
config.security.cookie_secure=Aktifkan cookie aman
|
||||
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=Konfigurasi surel
|
||||
config.email_config=Email configuration
|
||||
config.email.enabled=Enabled
|
||||
config.email.subject_prefix=Subject prefix
|
||||
config.email.host=Host
|
||||
config.email.from=Dari
|
||||
config.email.user=Pengguna
|
||||
config.email.from=From
|
||||
config.email.user=User
|
||||
config.email.disable_helo=Disable HELO
|
||||
config.email.helo_hostname=HELO hostname
|
||||
config.email.skip_verify=Lewati verifikasi sertifikat
|
||||
config.email.use_certificate=Pakai sertifikat ubahan
|
||||
config.email.cert_file=Berkas sertifikat
|
||||
config.email.key_file=Berkas kunci
|
||||
config.email.use_plain_text=Gunakan teks polos
|
||||
config.email.add_plain_text_alt=Tambahkan alternatif teks polos
|
||||
config.email.send_test_mail=Kirim surel uji
|
||||
config.email.test_mail_failed=Gagal mengirim surel uji ke '%s': %v
|
||||
config.email.test_mail_sent=Surel uji telah dikirim ke '%s'.
|
||||
config.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=Konfigurasi otentikasi
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
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=Perlu konfirmasi surel
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
config.auth.require_sign_in_view=Require sign in view
|
||||
config.auth.disable_registration=Nonaktifkan pendaftaran
|
||||
config.auth.enable_registration_captcha=Aktifkan captcha pendaftaran
|
||||
config.auth.enable_reverse_proxy_authentication=Aktifkan otentikasi proksi balik
|
||||
config.auth.enable_reverse_proxy_auto_registration=Aktifkan pendaftaran otomatis proksi balik
|
||||
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=Konfigurasi pengguna
|
||||
config.user.enable_email_notify=Aktifkan notifikasi surel
|
||||
config.user_config=User configuration
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=Konfigurasi Sesi
|
||||
config.session.provider=Penyedia
|
||||
config.session.provider_config=Konfigurasi penyedia
|
||||
config.session.provider=Provider
|
||||
config.session.provider_config=Provider config
|
||||
config.session.cookie_name=Cookie
|
||||
config.session.https_only=Hanya HTTPS
|
||||
config.session.gc_interval=Interval GC
|
||||
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=Konfigurasi Cache
|
||||
config.cache.adapter=Adaptor
|
||||
config.cache.interval=Interval GC
|
||||
config.cache.adapter=Adapter
|
||||
config.cache.interval=GC interval
|
||||
config.cache.host=Host
|
||||
|
||||
config.http_config=Konfigurasi HTTP
|
||||
@@ -1311,27 +1304,27 @@ config.attachment_config=Attachment configuration
|
||||
config.attachment.enabled=Enabled
|
||||
config.attachment.path=Path
|
||||
config.attachment.allowed_types=Allowed types
|
||||
config.attachment.max_size=Batas ukuran
|
||||
config.attachment.max_files=Batas berkas
|
||||
config.attachment.max_size=Size limit
|
||||
config.attachment.max_files=Files limit
|
||||
|
||||
config.release_config=Release configuration
|
||||
config.release.attachment.enabled=Lampiran diaktifkan
|
||||
config.release.attachment.allowed_types=Jens lampiran yang diizinkan
|
||||
config.release.attachment.max_size=Batas ukuran lampiran
|
||||
config.release.attachment.max_files=Batas berkas lampiran
|
||||
config.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=Konfigurasi Gambar
|
||||
config.picture.avatar_upload_path=Path unggah avatar pengguna
|
||||
config.picture.repo_avatar_upload_path=Path unggah avatar repositori
|
||||
config.picture.gravatar_source=Sumber gravatar
|
||||
config.picture.disable_gravatar=Nonaktifkan Gravatar
|
||||
config.picture.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=Konfigurasi cermin
|
||||
config.mirror.default_interval=Interval baku
|
||||
config.mirror_config=Mirror configuration
|
||||
config.mirror.default_interval=Default interval
|
||||
|
||||
config.webhook_config=Webhook Konfigurasi
|
||||
config.webhook.types=Tipe
|
||||
config.webhook.types=Types
|
||||
config.webhook.deliver_timeout=Deliver timeout
|
||||
config.webhook.skip_tls_verify=Skip TLS verify
|
||||
|
||||
@@ -1343,16 +1336,16 @@ config.git.max_diff_files=Diff files limit (for a single diff)
|
||||
config.git.gc_args=GC arguments
|
||||
config.git.migrate_timeout=Migration timeout
|
||||
config.git.mirror_timeout=Mirror fetch timeout
|
||||
config.git.clone_timeout=Tenggat waktu klon
|
||||
config.git.pull_timeout=Tenggat waktu pull
|
||||
config.git.gc_timeout=Tenggat waktu GC
|
||||
config.git.clone_timeout=Clone timeout
|
||||
config.git.pull_timeout=Pull timeout
|
||||
config.git.gc_timeout=GC timeout
|
||||
|
||||
config.lfs_config=Konfigurasi LFS
|
||||
config.lfs.storage=Penyimpanan
|
||||
config.lfs.objects_path=Path obyek
|
||||
config.lfs_config=LFS configuration
|
||||
config.lfs.storage=Storage
|
||||
config.lfs.objects_path=Objects path
|
||||
|
||||
config.log_config=Konfigurasi log
|
||||
config.log_file_root_path=Path akar berkas log
|
||||
config.log_config=Log configuration
|
||||
config.log_file_root_path=Log file root path
|
||||
config.log_mode=Mode
|
||||
config.log_options=Pilihan
|
||||
|
||||
@@ -1408,8 +1401,8 @@ mirror_sync_delete=synced and deleted reference <code>%[2]s</code> at <a href="%
|
||||
ago=lalu
|
||||
from_now=dari sekarang
|
||||
now=sekarang
|
||||
1s=1 detik %s
|
||||
1m=1 menit %s
|
||||
1s=1detik %s
|
||||
1m=1menit %s
|
||||
1h=1 jam %s
|
||||
1d=1 hari %s
|
||||
1w=1 Minggu %s
|
||||
@@ -1424,7 +1417,7 @@ months=%d bulan %s
|
||||
years=%d tahun %s
|
||||
raw_seconds=detik
|
||||
raw_minutes=menit
|
||||
raw_hours=jam
|
||||
raw_hours=hours
|
||||
|
||||
[dropzone]
|
||||
default_message=Jatuhkan berkas disini atau klik untuk mengunggah.
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Percorso dei log
|
||||
log_root_path_helper=Directory in cui scrivere i file di log.
|
||||
enable_console_mode=Abilita modalità Terminale
|
||||
enable_console_mode_popup=In aggiunta alla modalità file, invia i log anche al terminale.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Impostazioni Facoltative
|
||||
email_title=Impostazioni E-mail
|
||||
@@ -317,7 +316,6 @@ delete_email=Elimina
|
||||
email_deletion=Eliminazione e-mail
|
||||
email_deletion_desc=La procedura di rimozione indirizzo email eliminerà tutte le informazioni correlate dal tuo account. Si desidera continuare?
|
||||
email_deletion_success=Indirizzo e-mail eliminato con successo!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Aggiungi un nuovo indirizzo E-mail
|
||||
add_email=Aggiungi E-mail
|
||||
add_email_confirmation_sent=Una nuova email di conferma è stata inviata a '%s', per favore controlla la tua posta in arrivo nelle prossime %d ore per completare il processo di registrazione.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=L'autenticazione a due fattori è stata disabilitata!
|
||||
manage_access_token=Gestisci i Token di Accesso Personale
|
||||
generate_new_token=Genera Nuovo Token
|
||||
tokens_desc=I Token che hai generato e che possono essere utilizzati per accedere alle API Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Da questo momento, ogni token avrà pieno accesso al tuo account.
|
||||
token_name=Nome Token
|
||||
generate_token=Genera Token
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Stale Branches
|
||||
branches.all=Tutti i rami (branch)
|
||||
branches.updated_by=Updated %[1]s by %[2]s
|
||||
branches.change_default_branch=Cambia branch di default
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nuovo file
|
||||
editor.upload_file=Carica File
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Configurazione Repository
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -51,7 +51,7 @@ internal_server_error=サーバ内部エラー
|
||||
install=インストール
|
||||
title=インストールをする前に必要な準備をしましょう
|
||||
docker_helper=DockerでGogsを稼動する場合は、このページに変更を加える前に、 <a target="_blank" href="%s">ガイドライン</a>をよく読んでください!
|
||||
requite_db_desc=Gogs は、MySQL、PostgreSQL、SQLite3 または TiDB が必要です。
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=データベース設定
|
||||
db_type=データベースの種類
|
||||
host=ホスト
|
||||
@@ -88,7 +88,6 @@ log_root_path=ログのパス
|
||||
log_root_path_helper=ログファイルを書き込むディレクトリ。
|
||||
enable_console_mode=コンソールモードの有効化
|
||||
enable_console_mode_popup=ファイルモードに加えて、コンソールにもログを表示します。
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=オプション設定
|
||||
email_title=メールサービス設定
|
||||
@@ -317,7 +316,6 @@ delete_email=削除
|
||||
email_deletion=電子メールの削除
|
||||
email_deletion_desc=このメールアドレスを削除すると、あなたのアカウントの関連情報も削除されます。続行しますか?
|
||||
email_deletion_success=電子メールが正常に削除されました。
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=新しいメールアドレスを追加
|
||||
add_email=メールアドレスの追加
|
||||
add_email_confirmation_sent='%s' に新しい確認メールを送信しました。%d 時間以内に受信トレイを確認し、確認プロセスを完了してください。
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=2段階認証があなたのアカウントで無効
|
||||
manage_access_token=パーソナルアクセス トークンを管理
|
||||
generate_new_token=新しいトークンを生成
|
||||
tokens_desc=生成したトークンを利用して Gogs の API にアクセスすることができます。
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=今のところ、全てのトークンはあなたのアカウントにフルアクセスできます。
|
||||
token_name=トークン名
|
||||
generate_token=トークンを生成
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=古いブランチ
|
||||
branches.all=すべてのブランチ
|
||||
branches.updated_by=%[1]s が %[2]s によって更新されました
|
||||
branches.change_default_branch=デフォルトブランチの変更
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=新規ファイル
|
||||
editor.upload_file=ファイルをアップロード
|
||||
@@ -920,7 +915,7 @@ release.deletion=リリースの削除
|
||||
release.deletion_desc=このリリースを削除すると、対応するGitのタグも削除されます。よろしいですか?
|
||||
release.deletion_success=リリースが正常に削除されました。
|
||||
release.tag_name_already_exist=このタグ名には既にリリースが存在します。
|
||||
release.tag_name_invalid=タグ名が不正です。
|
||||
release.tag_name_invalid=使用できないタグ名です。
|
||||
release.downloads=ダウンロード
|
||||
|
||||
[org]
|
||||
@@ -1198,7 +1193,7 @@ 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.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Root path
|
||||
@@ -1212,10 +1207,9 @@ config.ssh.listen_host=待受ホスト
|
||||
config.ssh.listen_port=待受ポート
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=リポジトリの設定
|
||||
config.repo.root_path=ルートパス
|
||||
config.repo.root_path=Root path
|
||||
config.repo.script_type=Script type
|
||||
config.repo.ansi_chatset=ANSI 文字コード
|
||||
config.repo.force_private=非公開にする
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -44,21 +44,21 @@ issues=이슈
|
||||
cancel=취소
|
||||
|
||||
[status]
|
||||
page_not_found=페이지를 찾을 수 없음
|
||||
internal_server_error=내부 서버 오류
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=설치
|
||||
title=첫 실행을 위한 설치단계
|
||||
docker_helper=Gogs를 Docker에서 운영하고 있다면 <a target="_blank" href="%s">안내</a>를 읽고 변경해 주세요!
|
||||
requite_db_desc=Gogs는 MySQL, PostgreSQL, SQLite3, TiDB (MySQL protocol)을 필요로 합니다.
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=데이터베이스 설정
|
||||
db_type=데이터베이스 유형
|
||||
host=호스트
|
||||
user=사용자
|
||||
password=비밀번호
|
||||
db_name=데이터베이스 이름
|
||||
db_schema=스키마
|
||||
db_schema=Schema
|
||||
db_helper=MySQL에서는 utf8_general_ci 캐릭터셋으로 INNODB엔진을 이용해 주세요
|
||||
ssl_mode=SSL 모드
|
||||
path=경로
|
||||
@@ -88,7 +88,6 @@ log_root_path=로그 경로
|
||||
log_root_path_helper=로그 파일을 쓸 디렉터리.
|
||||
enable_console_mode=콘솔 모드 활성화
|
||||
enable_console_mode_popup=파일 모드 외에 콘솔에 로그를 인쇄하세요.
|
||||
default_branch=기본 브랜치
|
||||
|
||||
optional_title=추가설정
|
||||
email_title=이메일 서비스 설정
|
||||
@@ -265,7 +264,7 @@ following=팔로우 중
|
||||
follow=추적하기
|
||||
unfollow=추적해제
|
||||
|
||||
form.name_not_allowed=사용자 이름 또는 패턴 %q 은(는) 허용되지 않습니다.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=프로필
|
||||
@@ -317,7 +316,6 @@ delete_email=삭제
|
||||
email_deletion=이메일 삭제
|
||||
email_deletion_desc=이메일 주소를 삭제하면 당신의 계정과 연관된 정보도 함께 삭제됩니다. 계속 하시겠습니까?
|
||||
email_deletion_success=이메일 주소를 성공적으로 삭제되하였습니다!
|
||||
email_deletion_primary=기본 이메일 주소를 삭제할 수 없습니다.
|
||||
add_new_email=새 이메일 주소 추가
|
||||
add_email=이메일 추가
|
||||
add_email_confirmation_sent=새로운 이메일 주소 인증이 '%s'로 발송되었습니다. %d시간 안에 확인 절차를 완료하셔야 합니다.
|
||||
@@ -372,8 +370,6 @@ two_factor_disable_success=2단계 인증이 성공적으로 비활성화되었
|
||||
manage_access_token=개인 액세스 토큰 관리
|
||||
generate_new_token=새 토큰을 생성
|
||||
tokens_desc=Gogs Api에 액세스 하는 데 사용할 수 있는 토큰입니다.
|
||||
access_token_tips=개인 액세스 토큰은 사용자 이름 또는 비밀번호로 사용할 수 있습니다. Git 애플리케이션에서는 'x-access-token'을 사용자 이름으로 사용하고, 개인 액세스 토큰을 비밀번호로 사용하는 것이 권장됩니다.
|
||||
|
||||
new_token_desc=각 토큰은 당신의 모든 권한을 행사할 수 있습니다.
|
||||
token_name=토큰 이름
|
||||
generate_token=토큰 생성
|
||||
@@ -404,9 +400,9 @@ owner=소유자
|
||||
repo_name=저장소 이름
|
||||
repo_name_helper=좋은 저장소 이름은 짧고 기억하기 좋은 유니크한 키워드로 이루어 집니다.
|
||||
visibility=가시성
|
||||
unlisted=비공개
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=이 저장소는 <span class="ui red text">비공개</span> 저장소입니다
|
||||
unlisted_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">Help</a>에 방문하세요.
|
||||
@@ -436,7 +432,7 @@ repo_description_helper=저장소 설명.최대 512길이의 문자열이 가능
|
||||
repo_description_length=가능한 문자열입니다.
|
||||
|
||||
form.reach_limit_of_creation=소유자가 저장소 만들기 최대 제한에 (%d개) 도달했습니다.
|
||||
form.name_not_allowed=저장소명 또는 패턴 %q 은(는) 허용되지 않습니다.
|
||||
form.name_not_allowed=Repository name or pattern %q is not allowed.
|
||||
|
||||
need_auth=인증 필요
|
||||
migrate_type=마이그레이션 유형
|
||||
@@ -447,7 +443,7 @@ migrate.clone_address_desc=HTTP/HTTPS/GIT URL일 수 있습니다.
|
||||
migrate.clone_address_desc_import_local=로컬 서버 경로를 기준으로 저장소를 마이그레이션 할 수도 있습니다.
|
||||
migrate.permission_denied=로컬 저장소는 가져오기를 할 수 없습니다.
|
||||
migrate.invalid_local_path=잘못된 로컬 경로입니다. 존재하지 않는 경로거나 폴더가 아닙니다.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=복제 주소는 암묵적으로 차단된 로컬 네트워크 주소로 확인되었습니다.
|
||||
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=의 미러
|
||||
@@ -495,8 +491,6 @@ branches.stale_branches=오래된 브랜치
|
||||
branches.all=모든 브랜치
|
||||
branches.updated_by=%[2]s이 %[1]s를 업데이트
|
||||
branches.change_default_branch=기본 브랜치 변경
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=파일 생성
|
||||
editor.upload_file=파일 업로드
|
||||
@@ -713,9 +707,9 @@ settings.collaboration.undefined=미정의
|
||||
settings.branches=브랜치
|
||||
settings.branches_bare=당신은 빈 저장소에 대한 브런치를 관리할수 없습니다. 먼저 저장소에 내용을 푸쉬하십시오.
|
||||
settings.default_branch=기본 브랜치
|
||||
settings.default_branch_desc=기본 브랜치는 코드 커밋, 풀 리퀘스트 및 온라인 편집을 위한 "기본" 브랜치로 간주됩니다.
|
||||
settings.default_branch_desc=The default branch is considered the "base" branch for code commits, pull requests and online editing.
|
||||
settings.update=업데이트
|
||||
settings.update_default_branch_unsupported=서버의 Git 버전에서는 기본 브랜치 변경이 지원되지 않습니다.
|
||||
settings.update_default_branch_unsupported=Change default branch is not supported by the Git version on server.
|
||||
settings.update_default_branch_success=이 레포지토리의 기본 브랜치가 성공적으로 설정되었습니다!
|
||||
settings.protected_branches=보호된 브랜치
|
||||
settings.protected_branches_desc=보호된 브랜치는 force 푸시, 실수로 인한 코드 삭제를 방지하며 코드 커미터를 화이트리스트 합니다.
|
||||
@@ -727,12 +721,12 @@ settings.protect_this_branch_desc=Force 푸시와 삭제를 비활성화합니
|
||||
settings.protect_require_pull_request=직접 push 를 하지 않고 Pull Request 를 필요로 하도록 합니다.
|
||||
settings.protect_require_pull_request_desc=이 브랜치에 직접 푸시를 하는 것을 막고 싶다면 이 옵션을 활성화하세요. 커밋은 다른 비보호 브랜치에 푸시되어야 하며 이 브랜치에는 Pull Request 를 통해 병합될 것입니다.
|
||||
settings.protect_whitelist_committers=이 브랜치에 푸시할 수 있는 유저
|
||||
settings.protect_whitelist_committers_desc=이 브랜치에 직접 푸시할 수 있는 허용 목록에 사람 또는 팀을 추가합니다. 허용 목록에 있는 사용자는 풀 리퀘스트 확인을 거치지 않습니다.
|
||||
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=이 브랜치에 푸시를 할 수 있는 유저
|
||||
settings.protect_whitelist_search_users=유저 검색
|
||||
settings.protect_whitelist_teams=이 브랜치에 푸시할 수 있는 팀의 멤버들
|
||||
settings.protect_whitelist_teams=Teams for which members of them can push to this branch
|
||||
settings.protect_whitelist_search_teams=팀 검색
|
||||
settings.update_protect_branch_success=브랜치의 보호 옵션이 성공적으로 업데이트되었습니다!
|
||||
settings.update_protect_branch_success=Protect options for this branch has been updated successfully!
|
||||
settings.hooks=Webhooks
|
||||
settings.githooks=Git Hooks
|
||||
settings.basic_settings=기본 설정
|
||||
@@ -751,7 +745,7 @@ settings.external_wiki_url=외부 위키 URL
|
||||
settings.external_wiki_url_desc=탭을 클릭하면 URL로 리다이렉트됩니다.
|
||||
settings.issues_desc=이슈 추적기를 사용하도록 설정
|
||||
settings.use_internal_issue_tracker=내장된 경량 이슈 트레커를 사용
|
||||
settings.allow_public_issues_desc=저장소가 비공개인 경우 이슈에 공개적으로 접속할 수 있도록 허용하기
|
||||
settings.allow_public_issues_desc=Allow public access to issues when repository is private
|
||||
settings.use_external_issue_tracker=외부 이슈 트래커 사용하기
|
||||
settings.external_tracker_url=외부 이슈 트래커 URL
|
||||
settings.external_tracker_url_desc=방문자는 탭을 클릭하면 URL로 리다이렉트 됩니다.
|
||||
@@ -760,9 +754,9 @@ settings.tracker_issue_style=외부 이슈 트래커 명명 스타일:
|
||||
settings.tracker_issue_style.numeric=숫자
|
||||
settings.tracker_issue_style.alphanumeric=문자 숫자
|
||||
settings.tracker_url_format_desc=<code>{user} {repo} {index}</code> 사용자 명, 저장소 명, 이슈 인덱스를 사용하여 표시자를 사용할 수 있습니다.
|
||||
settings.pulls_desc=다른 저장소와 브랜치 간의 기여를 수용할 수 있도록 풀 리퀘스트 활성화
|
||||
settings.pulls.ignore_whitespace=공백 변경 무시
|
||||
settings.pulls.allow_rebase_merge=커밋을 머지하기 위해 리베이스 사용 허용
|
||||
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=본인 소유의 저장소를 본인 명의로 포크할 수 없습니다.
|
||||
settings.new_owner_has_same_repo=새로운 소유자가 같은 이름의 저장소를 이미 가지고 있습니다. 다른 이름을 선택해주세요.
|
||||
@@ -783,7 +777,7 @@ settings.wiki_deletion_success=저장소의 Wiki 데이터가 성공적으로
|
||||
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=- 모든 포크들은 삭제 후에도 독립적으로 유지됩니다.
|
||||
settings.deletion_success=저장소가 성공적으로 삭제 되었습니다!
|
||||
settings.update_settings_success=저장소 옵션이 성공적으로 업데이트 되었습니다.
|
||||
@@ -800,8 +794,8 @@ settings.remove_collaborator_success=공동작업자가 삭제 되었습니다.
|
||||
settings.search_user_placeholder=사용자 검색...
|
||||
settings.org_not_allowed_to_be_collaborator=조직을 공동 작업자로 추가할 수 없습니다.
|
||||
settings.hooks_desc=웹후크는 기본적인 HTTP POST 이벤트 트리거입니다. Gogs에서 무슨 일이 발생할 때마다, 지정한 대상 호스트에 알림을 보냅니다. <a target="_blank" href="%s">웹후크 안내서</a>에서 자세히 알아보십시오.
|
||||
settings.webhooks.add_new=새 웹훅 추가
|
||||
settings.webhooks.choose_a_type=유형 선택...
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=Webhook 추가
|
||||
settings.webhook_deletion=Webhook 삭제
|
||||
settings.webhook_deletion_desc=이 웹훅을 삭제하면 정보와 모든 전송기록이 제거됩니다. 계속 하시겠습니까?
|
||||
@@ -810,14 +804,14 @@ settings.webhook.test_delivery=전달 시험
|
||||
settings.webhook.test_delivery_desc=가짜 푸시 이벤트 전달하여 웹훅 설정을 테스트합니다.
|
||||
settings.webhook.test_delivery_success=Webhook 테스트가 delivery 큐에 추가되었습니다. delivery 기록에서 나오기까지 몇 초의 시간이 걸릴 것입니다.
|
||||
settings.webhook.redelivery=재전송
|
||||
settings.webhook.redelivery_success=웹훅 작업 '%s'이(가) 다시 전달 큐에 추가되었습니다. 전달 상태는 이력에서 잠시 후 반영됩니다.
|
||||
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=페이로드 URL을 구문 분석할 수 없습니다: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=로컬 네트워크 주소로 확인된 페이로드 URL이 암묵적으로 차단되었습니다.
|
||||
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
settings.githooks_desc=Git Hooks는 Git 자체에서 제공되며, 아래 목록에서 지원되는 후크 파일을 편집하여 사용자 정의 작업을 수행 할 수 있습니다.
|
||||
settings.githook_edit_desc=후크가 비활성인 경우 샘플 콘텐츠가 표시됩니다. 내용을 빈 값으로 두면 이 훅은 비활성화됩니다.
|
||||
settings.githook_name=Hook 이름
|
||||
@@ -827,7 +821,7 @@ settings.add_webhook_desc=Gogs는 발생한 이벤트와 관련하여 지정한
|
||||
settings.payload_url=페이로드 URL
|
||||
settings.content_type=컨텐츠 타입
|
||||
settings.secret=비밀
|
||||
settings.secret_desc=시크릿은 <code>X-Gogs-Signature</code> 헤더를 통해 페이로드의 SHA256 HMAC 16진수 다이제스트로 전송됩니다.
|
||||
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=색
|
||||
@@ -844,7 +838,7 @@ settings.event_fork_desc=저장소 포크됨
|
||||
settings.event_push=푸시
|
||||
settings.event_push_desc=깃 저장소로 푸시
|
||||
settings.event_issues=이슈
|
||||
settings.event_issues_desc=이슈가 생성됨, 닫힘, 다시 열림, 편집됨, 담당자 지정 또는 해제, 라벨 업데이트 또는 제거, 마일스톤 지정 또는 해제됨.
|
||||
settings.event_issues_desc=Issue opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, or demilestoned.
|
||||
settings.event_pull_request=끌어오기 요청
|
||||
settings.event_pull_request_desc=Pull request opened, closed, reopened, edited, assigned, unassigned, label updated, label cleared, milestoned, demilestoned, or synchronized.
|
||||
settings.event_issue_comment=이슈 댓글
|
||||
@@ -1214,7 +1208,6 @@ config.ssh.listen_host=수신 대기 호스트
|
||||
config.ssh.listen_port=수신 대기 포트
|
||||
config.ssh.server_ciphers=서버 암호화
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=저장소 설정
|
||||
config.repo.root_path=최상위 경로
|
||||
@@ -1239,8 +1232,8 @@ config.db_config=데이터베이스 설정
|
||||
config.db.type=유형
|
||||
config.db.host=호스트
|
||||
config.db.name=이름
|
||||
config.db.schema=스키마
|
||||
config.db.schema_helper=("postgres" 전용)
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=사용자
|
||||
config.db.ssl_mode=SSL 모드
|
||||
config.db.ssl_mode_helper=("postgres" 전용)
|
||||
@@ -1278,19 +1271,18 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent='%s'로 테스트 이메일을 보냈습니다.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=이메일 인증 필요
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
config.auth.require_sign_in_view=Require sign in view
|
||||
config.auth.disable_registration=등록 비활성화
|
||||
config.auth.enable_registration_captcha=등록시 CAPTCHA 사용
|
||||
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=이메일 알림 활성화
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=세션 설정
|
||||
config.session.provider=공급자
|
||||
@@ -1309,7 +1301,7 @@ config.cache.host=호스트
|
||||
config.http_config=HTTP 설정
|
||||
config.http.access_control_allow_origin=Access control allow origin
|
||||
|
||||
config.attachment_config=첨부 파일 설정
|
||||
config.attachment_config=Attachment configuration
|
||||
config.attachment.enabled=활성화됨
|
||||
config.attachment.path=경로
|
||||
config.attachment.allowed_types=허용 유형
|
||||
@@ -1326,10 +1318,10 @@ config.picture_config=이미지 설정
|
||||
config.picture.avatar_upload_path=사용자 아바타 업로드 경로
|
||||
config.picture.repo_avatar_upload_path=Repository avatar upload path
|
||||
config.picture.gravatar_source=Gravatar source
|
||||
config.picture.disable_gravatar=Gravatar 비활성화
|
||||
config.picture.disable_gravatar=Disable Gravatar
|
||||
config.picture.enable_federated_avatar=Enable federated avatars
|
||||
|
||||
config.mirror_config=미러 설정
|
||||
config.mirror_config=Mirror configuration
|
||||
config.mirror.default_interval=기본 간격
|
||||
|
||||
config.webhook_config=웹훅 설정
|
||||
@@ -1349,8 +1341,8 @@ config.git.clone_timeout=클론 제한 시간
|
||||
config.git.pull_timeout=풀 제한 시간
|
||||
config.git.gc_timeout=GC 제한 시간
|
||||
|
||||
config.lfs_config=LFS 구성
|
||||
config.lfs.storage=저장소
|
||||
config.lfs_config=LFS configuration
|
||||
config.lfs.storage=Storage
|
||||
config.lfs.objects_path=Objects path
|
||||
|
||||
config.log_config=로그 설정
|
||||
|
||||
@@ -88,7 +88,6 @@ 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ē.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Neobligātie iestatījumi
|
||||
email_title=E-pasta pakalpojuma iestatījumi
|
||||
@@ -317,7 +316,6 @@ delete_email=Dzēst
|
||||
email_deletion=E-pasta dzēšana
|
||||
email_deletion_desc=Dzēšot šo e-pasta adresi, tiks dzēsta arī visa ar to saistītā informācija no Jūsu konta. Vai vēlaties turpināt?
|
||||
email_deletion_success=E-pasta adrese ir veiksmīgi izdzēsta!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Pievienot jaunu e-pasta adresi
|
||||
add_email=Pievienot e-pastu
|
||||
add_email_confirmation_sent=Jauns apstiprinājuma e-pasts tika nosūtīts uz '%s', pārbaudiet savu e-pastu tuvāko %d stundu laikā, lai pabeigtu apstiprināšanas procesu.
|
||||
@@ -372,7 +370,6 @@ 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
|
||||
tokens_desc=Taloni, kurus esat uzģenerējuši, kas var tikt izmantoti, lai piekļūtu Gogs API.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Pašlaik visiem taloniem ir pilna piekļuve Jūsu kontam.
|
||||
token_name=Talona nosaukums
|
||||
generate_token=Ģenerēt talonu
|
||||
@@ -494,8 +491,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Jauns fails
|
||||
editor.upload_file=Augšupielādēt failu
|
||||
@@ -1017,8 +1012,8 @@ total=Kopā: %d
|
||||
|
||||
dashboard.build_info=Build Information
|
||||
dashboard.app_ver=Application version
|
||||
dashboard.git_version=Git versija
|
||||
dashboard.go_version=Go versija
|
||||
dashboard.git_version=Git version
|
||||
dashboard.go_version=Go version
|
||||
dashboard.build_time=Build time
|
||||
dashboard.build_commit=Build commit
|
||||
dashboard.statistic=Statistika
|
||||
@@ -1181,24 +1176,24 @@ config.brand_name=Brand name
|
||||
config.run_user=Izpildes lietotājs
|
||||
config.run_mode=Izpildes režīms
|
||||
config.server.external_url=External URL
|
||||
config.server.domain=Domēns
|
||||
config.server.protocol=Protokols
|
||||
config.server.http_addr=HTTP adrese
|
||||
config.server.http_port=HTTP ports
|
||||
config.server.cert_file=Sertifikāta fails
|
||||
config.server.key_file=Privātais kriptogrāfijas atslēgas fails
|
||||
config.server.tls_min_version=Minimālā TLS versija
|
||||
config.server.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=Iespējot Gzip
|
||||
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.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Root path
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repozitorija konfigurācija
|
||||
config.repo.root_path=Root path
|
||||
@@ -1234,12 +1228,12 @@ 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=Tips
|
||||
config.db.type=Type
|
||||
config.db.host=Host
|
||||
config.db.name=Datubāzes nosaukums
|
||||
config.db.name=Name
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=Datubāzes lietotājs
|
||||
config.db.user=User
|
||||
config.db.ssl_mode=SSL mode
|
||||
config.db.ssl_mode_helper=(for "postgres" only)
|
||||
config.db.path=Path
|
||||
@@ -1257,12 +1251,12 @@ 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=E-pasta iestatījumi
|
||||
config.email.enabled=Iespējots
|
||||
config.email_config=Email configuration
|
||||
config.email.enabled=Enabled
|
||||
config.email.subject_prefix=Subject prefix
|
||||
config.email.host=Host
|
||||
config.email.from=Sūtītājs
|
||||
config.email.user=Lietotājs
|
||||
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
|
||||
@@ -1271,12 +1265,11 @@ config.email.cert_file=Certificate file
|
||||
config.email.key_file=Key file
|
||||
config.email.use_plain_text=Use plain text
|
||||
config.email.add_plain_text_alt=Add plain text alternative
|
||||
config.email.send_test_mail=Nosūtīt pārbaudes e-pastu
|
||||
config.email.send_test_mail=Send test email
|
||||
config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
@@ -1294,7 +1287,7 @@ config.session_config=Sesijas konfigurācja
|
||||
config.session.provider=Provider
|
||||
config.session.provider_config=Provider config
|
||||
config.session.cookie_name=Cookie
|
||||
config.session.https_only=Tikai HTTPS
|
||||
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
|
||||
@@ -1308,17 +1301,17 @@ config.http_config=HTTP konfigurācija
|
||||
config.http.access_control_allow_origin=Access control allow origin
|
||||
|
||||
config.attachment_config=Attachment configuration
|
||||
config.attachment.enabled=Iespējots
|
||||
config.attachment.enabled=Enabled
|
||||
config.attachment.path=Path
|
||||
config.attachment.allowed_types=Atļautie tipi
|
||||
config.attachment.max_size=Maksimālais izmērs
|
||||
config.attachment.max_files=Maksimālais failu skaits
|
||||
config.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=Pielikums iespējots
|
||||
config.release.attachment.allowed_types=Atļautie pielikuma tipi
|
||||
config.release.attachment.max_size=Pielikuma maksimālais izmērs
|
||||
config.release.attachment.max_files=Maksimālais pielikuma failu skaits
|
||||
config.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.avatar_upload_path=User avatar upload path
|
||||
@@ -1328,7 +1321,7 @@ config.picture.disable_gravatar=Disable Gravatar
|
||||
config.picture.enable_federated_avatar=Enable federated avatars
|
||||
|
||||
config.mirror_config=Mirror configuration
|
||||
config.mirror.default_interval=Noklusētais intervāls
|
||||
config.mirror.default_interval=Default interval
|
||||
|
||||
config.webhook_config=Tīkla āķu konfigurācija
|
||||
config.webhook.types=Types
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -44,14 +44,14 @@ issues=Issues
|
||||
cancel=Annuleren
|
||||
|
||||
[status]
|
||||
page_not_found=Pagina niet gevonden
|
||||
internal_server_error=Interne Server Fout
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Installatie
|
||||
title=Installatiestappen voor de eerste keer opstarten
|
||||
docker_helper=Als u gebruik maakt Gogs binnen Docker, lees dan de <a target="_blank" href="%s">richtlijnen</a> voordat u iets veranderen op deze pagina!
|
||||
requite_db_desc=Gogs heeft MySQL, PostgreSQL, SQLite3 of TiDB (via het MySQL protocool) nodig.
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Database-instellingen
|
||||
db_type=Database-type
|
||||
host=Host
|
||||
@@ -88,7 +88,6 @@ log_root_path=Log-pad
|
||||
log_root_path_helper=Directory waar logbestanden opgeslagen worden.
|
||||
enable_console_mode=Schakel Console modus in
|
||||
enable_console_mode_popup=Naast de bestand modus print het ook de logs naar de console.
|
||||
default_branch=Standaard branch
|
||||
|
||||
optional_title=Optionele instellingen
|
||||
email_title=E-mail service instellingen
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=De uitvoerende gebruiker is niet de huidig gebruiker: %s -> %
|
||||
smtp_host_missing_port=SMTP-Host mist een poort in het adres.
|
||||
invalid_smtp_from=SMTP-van-veld is niet geldig: %v
|
||||
save_config_failed=Kan de configuratie niet opslaan: %v
|
||||
init_failed=Programma initialiseren mislukt: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=Uw admin-instellingen zijn niet geldig: %v
|
||||
install_success=Welkom! Wij zijn veheugd dat u voor Gogs heeft gekozen, veel plezier en tot ziens
|
||||
invalid_log_root_path=Ongeldig log-pad: %v
|
||||
@@ -183,7 +182,7 @@ login_two_factor_enter_recovery_code=Voer de two-factor herstelcode in
|
||||
login_two_factor_recovery=Two-factor herstel
|
||||
login_two_factor_recovery_code=Herstel code
|
||||
login_two_factor_enter_passcode=Voer een two-factor wachtwoord in
|
||||
login_two_factor_invalid_recovery_code=Herstelcode is al gebruikt of ongeldig.
|
||||
login_two_factor_invalid_recovery_code=Recovery code already used or invalid.
|
||||
|
||||
[mail]
|
||||
activate_account=Activeer uw account
|
||||
@@ -220,7 +219,7 @@ Content=Inhoud
|
||||
require_error=kan niet leeg zijn.
|
||||
alpha_dash_error=moet een valide alfanumeriek of dash(-_) karakter zijn.
|
||||
alpha_dash_dot_error=moet een valide alfanumeriek, dash(-_) of (.) punt karakter zijn.
|
||||
alpha_dash_dot_slash_error=` moet een geldige alfanumeriek, (lage) streepje (-_), punt of een schuin karakter zijn.`
|
||||
alpha_dash_dot_slash_error=` must be alphanumeric, dash (-_), dot or slash characters.`
|
||||
size_error=moet groter zijn dan %s
|
||||
min_size_error=moet minimaal %s karakters bevatten.
|
||||
max_size_error=mag maximaal %s karakters bevatten.
|
||||
@@ -237,7 +236,7 @@ org_name_been_taken=Organisatie naam is al in gebruik.
|
||||
team_name_been_taken=Team naam is al in gebruik.
|
||||
email_been_used=e-mailadres is al in gebruik.
|
||||
username_password_incorrect=Gebruikersnaam of wachtwoord is niet correct.
|
||||
auth_source_mismatch=De geselecteerde authenticatiebron is niet gekoppeld aan de gebruiker.
|
||||
auth_source_mismatch=The authentication source selected is not associated with the user.
|
||||
enterred_invalid_repo_name=U heeft een onjuiste repositorie naam ingevoerd.
|
||||
enterred_invalid_owner_name=U heeft een onjuiste eigenaar ingevoerd.
|
||||
enterred_invalid_password=U heeft een onjuiste wachtwoord ingevoerd.
|
||||
@@ -317,7 +316,6 @@ delete_email=Verwijder
|
||||
email_deletion=E-mail Verwijderen
|
||||
email_deletion_desc=Dit e-mailadres verwijdert, worden gerelateerde informatie van uw account te verwijderen. Wil je verdergaan?
|
||||
email_deletion_success=E-mail is succesvol verwijderd!
|
||||
email_deletion_primary=Kan het primaire e-mailadres niet verwijderen.
|
||||
add_new_email=Nieuw e-mailadres toevoegen
|
||||
add_email=E-mailadres toevoegen
|
||||
add_email_confirmation_sent=Een nieuwe bevestiging e-mail werd verstuurd naar '%s', gelieve uw inbox in de komende %d uren te controleren om het bevestigingsproces te voltooien.
|
||||
@@ -343,7 +341,7 @@ no_activity=Geen recente activiteiten
|
||||
key_state_desc=Deze sleutel werd gebruikt in de laatste 7 dagen
|
||||
token_state_desc=Deze token is de laatste 7 dagen gebruikt
|
||||
|
||||
two_factor=Twee-factor authenticatie
|
||||
two_factor=Two-factor Authentication
|
||||
two_factor_status=Status:
|
||||
two_factor_on=Aan
|
||||
two_factor_off=Uit
|
||||
@@ -351,9 +349,9 @@ two_factor_enable=Inschakelen
|
||||
two_factor_disable=Uitschakelen
|
||||
two_factor_view_recovery_codes=View and save <a href="%s%s">your recovery codes</a> in a safe place. You can use them as passcode if you lose access to your authentication application.
|
||||
two_factor_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=Tweestapsverificatie inschakelen
|
||||
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=Of voer het geheim in:
|
||||
two_factor_or_enter_secret=Or enter the secret:
|
||||
two_factor_then_enter_passcode=Then enter passcode:
|
||||
two_factor_verify=Verifiëren
|
||||
two_factor_invalid_passcode=The passcode you entered is not valid, please try again!
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=Persoonlijke toegangstokens beheren
|
||||
generate_new_token=Nieuwe Token genereren
|
||||
tokens_desc=Tokens die u hebt gegenereerd om toegang tot de Gogs APIs te verkrijgen.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Zoals voor nu, moet elke token zal hebben volledige toegang tot uw account.
|
||||
token_name=Symbolische naam
|
||||
generate_token=Token genereren
|
||||
@@ -494,8 +491,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nieuw bestand
|
||||
editor.upload_file=Bestand uploaden
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository configuration
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Ścieżka dla logów
|
||||
log_root_path_helper=Katalog do zapisu logów.
|
||||
enable_console_mode=Włącz tryb konsolowy
|
||||
enable_console_mode_popup=Oprócz zapisywania do pliku wyświetlaj logi także w konsoli.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Ustawienia opcjonalne
|
||||
email_title=Ustawienia serwera e-mail
|
||||
@@ -317,7 +316,6 @@ delete_email=Usuń
|
||||
email_deletion=Usunięcie wiadomości e-mail
|
||||
email_deletion_desc=Usunięcie tego adresu e-mail spowoduje usunięcie innych informacji związanych z Twoim kontem. Czy chcesz kontynuować?
|
||||
email_deletion_success=E-mail został usunięty pomyślnie!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Dodaj nowy e-mail
|
||||
add_email=Dodaj e-mail
|
||||
add_email_confirmation_sent=Nowa wiadomość e-mail z potwierdzeniem została wysłana do '%s', proszę sprawdzić swoją skrzynkę odbiorczą w ciągu %d godzin, aby dokończyć proces potwierdzania.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Uwierzytelnianie dwuetapowe wyłączono pomyślnie!
|
||||
manage_access_token=Zarządzaj osobistymi tokenami dostępu
|
||||
generate_new_token=Wygeneruj nowy token
|
||||
tokens_desc=Tokeny, które wygenerowałeś, mogą być użyte do dostępu do API Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Jak na razie, każdy token zapewnia pełen dostęp do Twojego konta.
|
||||
token_name=Nazwa tokena
|
||||
generate_token=Wygeneruj token
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Stare gałęzie
|
||||
branches.all=Wszystkie gałęzie
|
||||
branches.updated_by=Zaktualizowano %[1]s przez %[2]s
|
||||
branches.change_default_branch=Zmiana domyślnej gałęzi
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nowy plik
|
||||
editor.upload_file=Załaduj plik
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Port nasłuchu
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Konfiguracja repozytorium
|
||||
config.repo.root_path=Ścieżka katalogu głównego
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Nie udało się wysłać wiadomości testowej do '
|
||||
config.email.test_mail_sent=Wiadomość testowa została wysłana do '%s'.
|
||||
|
||||
config.auth_config=Konfiguracja uwierzytelniania
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Wymagaj potwierdzenia adresu e-mail
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Caminho do log
|
||||
log_root_path_helper=Pasta dos arquivos de log.
|
||||
enable_console_mode=Ativar o modo de console
|
||||
enable_console_mode_popup=Além do modo de arquivo, exibir registros (log) no console.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Configurações opcionais
|
||||
email_title=Configurações do serviço de e-mail
|
||||
@@ -317,7 +316,6 @@ delete_email=Deletar
|
||||
email_deletion=Exclusão do email
|
||||
email_deletion_desc=Ao Excluir este endereço de e-mail será removido informações relacionadas com a sua conta. Você deseja continuar?
|
||||
email_deletion_success=O E-mail foi excluído com sucesso!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Adicionar novo endereço de e-mail
|
||||
add_email=Adicionar e-mail
|
||||
add_email_confirmation_sent=Um novo e-mail de confirmação foi enviado para '%s'. Por favor, verifique sua Caixa de Entrada dentro das próximas %d horas, para concluir o processo de confirmação.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=A autenticação de dois fatores foi desativada com s
|
||||
manage_access_token=Gerenciar tokens de acesso pessoal
|
||||
generate_new_token=Gerar novo token
|
||||
tokens_desc=Tokens gerados por você que podem ser usados para acessar a API do Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Por enquanto, todo token terá acesso completo à sua conta.
|
||||
token_name=Nome do token
|
||||
generate_token=Gerar token
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Branches obsoletos
|
||||
branches.all=Todos os branches
|
||||
branches.updated_by=Atualizado %[1]s por %[2]s
|
||||
branches.change_default_branch=Modificar branch padrão
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Novo arquivo
|
||||
editor.upload_file=Enviar arquivo
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Configuração do Repositório
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -44,21 +44,21 @@ issues=Questões
|
||||
cancel=Cancelar
|
||||
|
||||
[status]
|
||||
page_not_found=Página Não Encontrada
|
||||
internal_server_error=Erro do servidor interno
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Instalação
|
||||
title=Procedimentos para a instalação inicial
|
||||
docker_helper=Se estiver a executar o Gogs dentro de uma instância Docker, por favor leia as<a target="_blank" href="%s">Orientações</a> com atenção, antes de alterar algo nesta página!
|
||||
requite_db_desc=Gogs requer uma destas base de dados: MySQL, PostgreSQL, SQLite3 ou TiDB (usando o protocolo MySQL).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Configurações da Base de Dados
|
||||
db_type=Tipo de Base de Dados
|
||||
host=Servidor
|
||||
user=Utilizador
|
||||
password=Palavra-Chave
|
||||
db_name=Nome da base de dados
|
||||
db_schema=Esquema
|
||||
db_schema=Schema
|
||||
db_helper=Por favor, utilize o motor INNODB do MySQL, com suporte para o mapa de caracteres utf8_general_ci.
|
||||
ssl_mode=Modo SSL
|
||||
path=Directoria
|
||||
@@ -88,7 +88,6 @@ log_root_path=Caminho dos Logs
|
||||
log_root_path_helper=Directoria para aonde gravar os Logs.
|
||||
enable_console_mode=Ativar o Modo Consola
|
||||
enable_console_mode_popup=Para além de guardar logs num ficheiro, mostrá-los na consola.
|
||||
default_branch=Ramo por omissão
|
||||
|
||||
optional_title=Configurações opcionais
|
||||
email_title=Configurações do serviço de e-mail
|
||||
@@ -265,7 +264,7 @@ following=Seguindo
|
||||
follow=Seguir
|
||||
unfollow=Deixar de seguir
|
||||
|
||||
form.name_not_allowed=Não é permitido usar o padrão '%s' para o nome do utilizador.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=Perfil
|
||||
@@ -317,7 +316,6 @@ delete_email=Eliminar
|
||||
email_deletion=Eliminação de e-mail
|
||||
email_deletion_desc=Eliminar este endereço de e-mail irá remover todas as informações relacionadas da sua conta. Pretende continuar?
|
||||
email_deletion_success=O e-mail foi eliminado com sucesso!
|
||||
email_deletion_primary=Não é possível remover o endereço de e-mail primário.
|
||||
add_new_email=Adicionar um novo endereço de e-mail
|
||||
add_email=Adicionar e-mail
|
||||
add_email_confirmation_sent=Um novo e-mail de confirmação foi enviado para '%s', por favor verifique a sua caixa de correio dento das próximas %d horas para completar o processo de confirmação.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=A autenticação de dois fatores foi desativada com s
|
||||
manage_access_token=Gerir Tokens de Acesso Pessoal
|
||||
generate_new_token=Gerar Novo Token
|
||||
tokens_desc=Tokens que gerou que podem ser usadas para aceder as APIs do Gogs.
|
||||
access_token_tips=O token de acesso pessoal pode ser usado tanto como nome do utilizador ou senha de acesso. É recomendado usar o "x-access-token" como o nome do utilizador e o token de acesso pessoal como a senha para aplicações Git.
|
||||
new_token_desc=Cada token vai ter acesso completo à sua conta.
|
||||
token_name=Nome do Token
|
||||
generate_token=Gerar Token
|
||||
@@ -403,9 +400,9 @@ owner=Proprietário
|
||||
repo_name=Nome do Repositório
|
||||
repo_name_helper=Um Bom nome de repositório e pequeno, memorável e único.
|
||||
visibility=Visibilidade
|
||||
unlisted=Não listado
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Este repositório é <span class="ui red text">Privado</span>
|
||||
unlisted_helper=Este repositório <span class="ui red text">não está listado</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=Administrador do site forçou todos os novos repositórios para<span class="ui red text">Privado</span>
|
||||
visiblity_fork_helper=(Alterar desse valor irá afetar todos os forks)
|
||||
clone_helper=Precisa de ajuda com o clone? Visite a <a target="_blank" href="%s">Ajuda</a>!
|
||||
@@ -435,7 +432,7 @@ repo_description_helper=Descrição do repositório. Máximo de 512 caracteres.
|
||||
repo_description_length=Caracteres disponíveis
|
||||
|
||||
form.reach_limit_of_creation=O criador chegou ao limite de criação de %d repositórios.
|
||||
form.name_not_allowed=Não é permitido utilizar o padrão '%s' para o nome do repositório.
|
||||
form.name_not_allowed=Repository name or pattern %q is not allowed.
|
||||
|
||||
need_auth=Autorização necessária
|
||||
migrate_type=Tipo de migração
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=Isto pode ser um URL de HTTP/HTTPS/GIT.
|
||||
migrate.clone_address_desc_import_local=Você também pode migrar um repositório pelo caminho do servidor local.
|
||||
migrate.permission_denied=Não está autorizado a importar repositórios locais.
|
||||
migrate.invalid_local_path=Caminho local inválido, o caminho não existe ou não é um directório.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clonar endereço resolvido para um endereço de rede local implicitamente bloqueado.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Migração falhada: %v
|
||||
|
||||
mirror_from=mirror de
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Ramificações Obsoletas
|
||||
branches.all=Todas as Ramificações
|
||||
branches.updated_by=Atualizado %[1]s por %[2]s
|
||||
branches.change_default_branch=Mudar Ramificação Predefinida
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Novo Ficheiro
|
||||
editor.upload_file=Enviar ficheiro
|
||||
@@ -799,7 +794,7 @@ settings.search_user_placeholder=Procurar utilizador...
|
||||
settings.org_not_allowed_to_be_collaborator=A organização não tem permissão para ser adicionada como colaboradora.
|
||||
settings.hooks_desc=Webhooks são muito parecidos com triggers básicos de eventos HTTP POST. Sempre que algo ocorre no Gogs, vamos lidar com a notificação para o host de destino especificado. Saiba mais no nosso <a target="_blank" href="%s"> Guia de Webhooks</a>.
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Escolha um tipo...
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=Adicionar Webhook
|
||||
settings.webhook_deletion=Apagar um Webhook
|
||||
settings.webhook_deletion_desc=Apagar este Webhook vai remover sua informação e todo o histórico de entrega. Deseja continuar?
|
||||
@@ -1027,7 +1022,7 @@ dashboard.system_status=Monitorização de estado do sistema
|
||||
dashboard.statistic_info=A base de dados do Gogs contém <b>%d</b> utilizadores, <b>%d</b> organizações, <b>%d</b> chaves públicas, <b>%d</b> repositórios, <b>%d</b> observadores, <b>%d</b> estrelas, <b>%d</b> ações, <b>%d</b> acessos, <b>%d</b> questões, <b>%d</b> comentários, <b>%d</b> contas sociais, <b>%d</b> seguidores, <b>%d</b> mirrors, <b>%d</b> versões, <b>%d</b> origens de login, <b>%d</b> Hooks da Web, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> tarefas hook, <b>%d</b> equipas, <b>%d</b> tarefas de atualização, <b>%d</b> anexos.
|
||||
dashboard.operation_name=Nome de operação
|
||||
dashboard.operation_switch=Mudar
|
||||
dashboard.select_operation_to_run=Seleccione a operação para executar
|
||||
dashboard.select_operation_to_run=Please select operation to run
|
||||
dashboard.operation_run=Executar
|
||||
dashboard.clean_unbind_oauth=Limpar OAuthes desvinculados
|
||||
dashboard.clean_unbind_oauth_success=Todos OAuthes desvinculados foram excluídos com sucesso.
|
||||
@@ -1204,120 +1199,118 @@ config.ssh.port=Porta exposta
|
||||
config.ssh.root_path=Caminho para a raíz
|
||||
config.ssh.keygen_path=Localização do gerador de chaves criptográficas
|
||||
config.ssh.key_test_path=Localização do teste das chaves criptográficas
|
||||
config.ssh.minimum_key_size_check=Verificação de tamanho mínimo da chave
|
||||
config.ssh.minimum_key_sizes=Tamanhos mínimos de chaves
|
||||
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=Iniciar servidor embutido
|
||||
config.ssh.listen_host=Servidor
|
||||
config.ssh.listen_port=Porta do servidor
|
||||
config.ssh.server_ciphers=Cifras do servidor
|
||||
config.ssh.server_macs=MACs do servidor
|
||||
config.ssh.server_algorithms=Algoritmos do servidor
|
||||
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=Configuração de repositório
|
||||
config.repo.root_path=Localização base
|
||||
config.repo.script_type=Tipo de script
|
||||
config.repo.root_path=Root path
|
||||
config.repo.script_type=Script type
|
||||
config.repo.ansi_chatset=ANSI charset
|
||||
config.repo.force_private=Forçar privado
|
||||
config.repo.max_creation_limit=Limite máximo de criação
|
||||
config.repo.preferred_licenses=Licenças preferidas
|
||||
config.repo.disable_http_git=Desativar Git HTTP
|
||||
config.repo.enable_local_path_migration=Ativar a migração de caminho local
|
||||
config.repo.enable_raw_file_render_mode=Ativar o modo de renderização do ficheiro bruto
|
||||
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=Extensões de quebra automática de linha do editor
|
||||
config.repo.editor.line_wrap_extensions=Editor line wrap extensions
|
||||
config.repo.editor.previewable_file_modes=Editor previewable file modes
|
||||
config.repo.upload.enabled=Envio ativado
|
||||
config.repo.upload.temp_path=Caminho temporário para envios
|
||||
config.repo.upload.allowed_types=Tipos de envios permitidos
|
||||
config.repo.upload.file_max_size=Tamanho limite de ficheiros enviados
|
||||
config.repo.upload.max_files=Quantidade limite de ficheiros enviados
|
||||
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=Configuração da base de dados
|
||||
config.db.type=Tipo
|
||||
config.db.host=Anfitrião
|
||||
config.db.name=Nome
|
||||
config.db.schema=Esquema
|
||||
config.db.schema_helper=(apenas para "postgres")
|
||||
config.db.user=Utilizador
|
||||
config.db.ssl_mode=Modo SSL
|
||||
config.db.ssl_mode_helper=(apenas para "postgres")
|
||||
config.db.path=Caminho
|
||||
config.db.path_helper=(apenas para "sqlite3")
|
||||
config.db.max_open_conns=Máximo de conexões abertas
|
||||
config.db.max_idle_conns=Máximo de conexões ociosas
|
||||
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=Configuração da segurança
|
||||
config.security.login_remember_days=Dias lembrados de login
|
||||
config.security.cookie_remember_name=Lembrar do cookie
|
||||
config.security.cookie_username=Cookie do nome do utilizador
|
||||
config.security.cookie_secure=Ativar cookie seguro
|
||||
config.security.reverse_proxy_auth_user=Cabeçalho de autenticação de proxy reverso
|
||||
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=Configuração de E-mail
|
||||
config.email.enabled=Ativado
|
||||
config.email.subject_prefix=Prefixo do assunto
|
||||
config.email.host=Anfitrião
|
||||
config.email.from=De
|
||||
config.email.user=Utilizador
|
||||
config.email.disable_helo=Desativar HELO
|
||||
config.email.helo_hostname=Nome de anfitrião HELO
|
||||
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=Usar certificado personalizado
|
||||
config.email.cert_file=Ficheiro de certificado criptográfico
|
||||
config.email.key_file=Ficheiro da chave criptográfica
|
||||
config.email.use_plain_text=Usar texto simples
|
||||
config.email.add_plain_text_alt=Adicionar alternativa de texto simples
|
||||
config.email.send_test_mail=Enviar e-mail de teste
|
||||
config.email.test_mail_failed=Falhou o envio do e-mail de teste para '%s': %v
|
||||
config.email.test_mail_sent=O e-mail de teste foi enviado para '%s'.
|
||||
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=Configuração da autenticação
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
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=Exigir confirmação por e-mail
|
||||
config.auth.require_sign_in_view=Exigir login para ver
|
||||
config.auth.disable_registration=Desativar registo
|
||||
config.auth.enable_registration_captcha=Ativar captcha para registar
|
||||
config.auth.enable_reverse_proxy_authentication=Ativar autenticação do proxy reverso
|
||||
config.auth.enable_reverse_proxy_auto_registration=Ativar o registo automático do proxy reverso
|
||||
config.auth.reverse_proxy_authentication_header=Cabeçalho de autenticação de proxy reverso
|
||||
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=Configuração do utilizador
|
||||
config.user.enable_email_notify=Ativar a notificação por e-mail
|
||||
config.user_config=User configuration
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=Configuração de sessão
|
||||
config.session.provider=Provedor
|
||||
config.session.provider_config=Configuração do provedor
|
||||
config.session.provider=Provider
|
||||
config.session.provider_config=Provider config
|
||||
config.session.cookie_name=Cookie
|
||||
config.session.https_only=Somente HTTPS
|
||||
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=Configuração de cache
|
||||
config.cache.adapter=Adaptador
|
||||
config.cache.interval=Intervalo de GC
|
||||
config.cache.host=Anfitrião
|
||||
config.cache.adapter=Adapter
|
||||
config.cache.interval=GC interval
|
||||
config.cache.host=Host
|
||||
|
||||
config.http_config=Configuração HTTP
|
||||
config.http.access_control_allow_origin=Access control allow origin
|
||||
|
||||
config.attachment_config=Configuração de anexos
|
||||
config.attachment.enabled=Ativado
|
||||
config.attachment.path=Caminho
|
||||
config.attachment.allowed_types=Tipos permitidos
|
||||
config.attachment.max_size=Limite de tamanho
|
||||
config.attachment.max_files=Limite de ficheiros
|
||||
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=Tamanho máximo dos anexos
|
||||
config.release.attachment.max_size=Attachment size limit
|
||||
config.release.attachment.max_files=Attachment files limit
|
||||
|
||||
config.picture_config=Configuração de imagem
|
||||
@@ -1328,10 +1321,10 @@ config.picture.disable_gravatar=Disable Gravatar
|
||||
config.picture.enable_federated_avatar=Enable federated avatars
|
||||
|
||||
config.mirror_config=Mirror configuration
|
||||
config.mirror.default_interval=Intervalo predefinido
|
||||
config.mirror.default_interval=Default interval
|
||||
|
||||
config.webhook_config=Configuração de WebHook
|
||||
config.webhook.types=Tipos
|
||||
config.webhook.types=Types
|
||||
config.webhook.deliver_timeout=Deliver timeout
|
||||
config.webhook.skip_tls_verify=Skip TLS verify
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -51,14 +51,14 @@ internal_server_error=Внутренняя ошибка сервера
|
||||
install=Установка
|
||||
title=Установочные шаги для первого запуска
|
||||
docker_helper=Если вы запускаете Gogs внутри Docker, пожалуйста прочтите <a target="_blank" href="%s">эти советы</a> внимательно перед тем как что-либо изменить на этой странице!
|
||||
requite_db_desc=Для работы Gogs требуется MySQL, PostgreSQL, SQLite3 или TiDB (по протоколу MySQL).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Настройки базы данных
|
||||
db_type=Тип базы данных
|
||||
host=Хост
|
||||
user=Пользователь
|
||||
password=Пароль
|
||||
db_name=Имя базы данных
|
||||
db_schema=Схема
|
||||
db_schema=Schema
|
||||
db_helper=Для MySQL используйте тип таблиц InnoDB с кодировкой utf8_general_ci.
|
||||
ssl_mode=Режим SSL
|
||||
path=Путь
|
||||
@@ -70,15 +70,15 @@ err_empty_admin_password=Пароль администратора не може
|
||||
general_title=Общие параметры Gogs
|
||||
app_name=Имя приложения
|
||||
app_name_helper=Укажите здесь название вашей потрясающей организации!
|
||||
repo_path=Основной путь репозитория
|
||||
repo_path=Путь корня репозитория
|
||||
repo_path_helper=Все сетевые репозитории Git будут сохранены в этой директории.
|
||||
run_user=Пользователь
|
||||
run_user_helper=У пользователя должен быть доступ к пути к корню репозитория и к запуску Gogs.
|
||||
domain=Домен
|
||||
domain_helper=Влияет на URL-адреса для клонирования по SSH.
|
||||
ssh_port=SSH порт
|
||||
ssh_port_helper=Номер порта, который использует сервер SSH. Оставьте пустым, чтобы отключить SSH.
|
||||
use_builtin_ssh_server=Использовать встроенный сервер SSH
|
||||
ssh_port_helper=Номер порта, который использует SSH сервер. Оставьте пустым, чтобы отключить SSH.
|
||||
use_builtin_ssh_server=Использовать встроенный SSH сервер
|
||||
use_builtin_ssh_server_popup=Запустить встроенный SSH сервер для различения операций Git и системного демона SSH.
|
||||
http_port=Порт HTTP
|
||||
http_port_helper=Номер порта, который приложение будет слушать.
|
||||
@@ -88,7 +88,6 @@ log_root_path=Путь к журналу
|
||||
log_root_path_helper=Каталог для записи файлов журнала.
|
||||
enable_console_mode=Включите режим консоли
|
||||
enable_console_mode_popup=В дополнение к файловому режиму, выводить лог в консоль.
|
||||
default_branch=Ветка по умолчанию
|
||||
|
||||
optional_title=Расширенные настройки
|
||||
email_title=Настройки службы электронной почты
|
||||
@@ -189,7 +188,7 @@ login_two_factor_invalid_recovery_code=Код восстановления бы
|
||||
activate_account=Пожалуйста активируйте свой аккаунт
|
||||
activate_email=Подтвердите адрес своей электронной почты
|
||||
reset_password=Восстановите ваш пароль
|
||||
register_success=Регистрация завершена. Добро пожаловать
|
||||
register_success=Регистрация окончена. Добро пожаловать!
|
||||
register_notify=Добро пожаловать на борт
|
||||
|
||||
[modal]
|
||||
@@ -250,9 +249,9 @@ auth_failed=Ошибка аутентификации: %v
|
||||
|
||||
still_own_repo=На вашем аккаунте все еще остается как минимум один репозиторий, сначала вам нужно удалить или передать его.
|
||||
still_has_org=Вы находитесь в организации, сперва Вам необходимо покинуть ее или удалить.
|
||||
org_still_own_repo=Данная организация все еще является владельцем репозиториев, сначала нужно удалить или переместить их.
|
||||
org_still_own_repo=Данная организация все еще является владельцем репозиториев, необходимо удалить или переместить их в начале.
|
||||
|
||||
target_branch_not_exist=Целевая ветка не существует.
|
||||
target_branch_not_exist=Целевая ветка не существует
|
||||
|
||||
[user]
|
||||
change_avatar=Изменить аватар
|
||||
@@ -304,7 +303,7 @@ change_password=Сменить пароль
|
||||
old_password=Текущий пароль
|
||||
new_password=Новый пароль
|
||||
retype_new_password=Подтверждение нового пароля
|
||||
password_incorrect=Текущий пароль неправильный.
|
||||
password_incorrect=Текущий пароль не правильный.
|
||||
change_password_success=Пароль сменен успешно. Теперь вы можете войти с новым паролем.
|
||||
password_change_disabled=Нелокальные пользователи не могут изменить свой пароль.
|
||||
|
||||
@@ -312,18 +311,17 @@ emails=Адреса электронной почты
|
||||
manage_emails=Управление адресами электронной почты
|
||||
email_desc=Ваш основной адрес электронной почты будет использован для уведомлений и других операций.
|
||||
primary=Основной
|
||||
primary_email=Сделать основным
|
||||
primary_email=Установить как основной
|
||||
delete_email=Удалить
|
||||
email_deletion=Удаление адреса электронной почты
|
||||
email_deletion_desc=Удаление этого адреса электронной почты, приведет к удалению связанной с вашим аккаунтом, информации. Вы точно хотите продолжить?
|
||||
email_deletion_success=Адрес электронной почты успешно удален.
|
||||
email_deletion_primary=Невозможно удалить основной адрес эл. почты.
|
||||
add_new_email=Добавить новый адрес электронной почты
|
||||
add_email=Добавить электронную почту
|
||||
add_email_confirmation_sent=Новое подтверждение по электронной почте было отправлено '%s', пожалуйста, проверьте свой почтовый ящик в течение следующих %d часов, чтобы завершить процесс подтверждения.
|
||||
add_email_success=Новый адрес электронной почты успешно добавлен.
|
||||
|
||||
manage_ssh_keys=Управление ключами SSH
|
||||
manage_ssh_keys=Управление SSH ключами
|
||||
add_key=Добавить ключ
|
||||
ssh_desc=Это список ключей SSH связанных с вашей учетной записью. Удаляйте любые неизвестные вам ключи.
|
||||
ssh_helper=<strong>Нужна помощь?</strong> Ознакомьтесь с нашим путеводителем по <a href="%s">созданию SSH-ключей</a> или посмотрите решения <a href="%s">частых проблем, связанных с SSH</a>.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Двухфакторная аутентификаци
|
||||
manage_access_token=Управление Токенами Персонального Доступа
|
||||
generate_new_token=Создать новый token
|
||||
tokens_desc=Созданные вами токены могут использоваться для доступа к Gogs API.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Пока что каждый токен будет иметь полный доступ к вашей учетной записи.
|
||||
token_name=Имя маркера
|
||||
generate_token=Генерировать маркер
|
||||
@@ -403,9 +400,9 @@ owner=Владелец
|
||||
repo_name=Имя репозитория
|
||||
repo_name_helper=Лучшие названия репозиториев коротки, запоминаемы и <strong>уникальны</strong>.
|
||||
visibility=Видимость
|
||||
unlisted=Вне списка
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=<span class="ui red text">Приватный</span> репозиторий
|
||||
unlisted_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>!
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Устаревшие ветки
|
||||
branches.all=Все ветки
|
||||
branches.updated_by=Обновлено %[1]s пользователем %[2]s
|
||||
branches.change_default_branch=Change Default Branch
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Новый файл
|
||||
editor.upload_file=Загрузить файл
|
||||
@@ -1211,8 +1206,7 @@ config.ssh.start_builtin_server=Запустить встроенный серв
|
||||
config.ssh.listen_host=Прослушиваемый хост
|
||||
config.ssh.listen_port=Прослушиваемый порт
|
||||
config.ssh.server_ciphers=Серверные шифры
|
||||
config.ssh.server_macs=MAC-серверы
|
||||
config.ssh.server_algorithms=Серверные алгоритмы
|
||||
config.ssh.server_macs=Server MACs
|
||||
|
||||
config.repo_config=Настройка репозитория
|
||||
config.repo.root_path=Корневой путь
|
||||
@@ -1222,14 +1216,14 @@ config.repo.force_private=Сделать приватным(и) принудит
|
||||
config.repo.max_creation_limit=Максимальный лимит созданий
|
||||
config.repo.preferred_licenses=Предпочтительные лицензии
|
||||
config.repo.disable_http_git=Выключить HTTP Git
|
||||
config.repo.enable_local_path_migration=Включить миграцию с локального пути
|
||||
config.repo.enable_raw_file_render_mode=Включить режим рендеринга необработанных файлов
|
||||
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=Расширения переноса строки редактора
|
||||
config.repo.editor.line_wrap_extensions=Editor line wrap extensions
|
||||
config.repo.editor.previewable_file_modes=Editor previewable file modes
|
||||
config.repo.upload.enabled=Загрузка включена
|
||||
config.repo.upload.temp_path=Загрузить временный путь
|
||||
config.repo.upload.allowed_types=Загрузить разрешённые типы
|
||||
config.repo.upload.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=Ограничение размера файлов для загрузки
|
||||
config.repo.upload.max_files=Ограничение файлов для загрузки
|
||||
|
||||
@@ -1237,8 +1231,8 @@ config.db_config=Конфигурация базы данных
|
||||
config.db.type=Тип
|
||||
config.db.host=Сервер
|
||||
config.db.name=Имя
|
||||
config.db.schema=Схема
|
||||
config.db.schema_helper=(только для "postgres")
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=Пользователь
|
||||
config.db.ssl_mode=Режим SSL
|
||||
config.db.ssl_mode_helper=(только для "postgres")
|
||||
@@ -1255,7 +1249,7 @@ config.security.cookie_secure=Включить безопасные cookie
|
||||
config.security.reverse_proxy_auth_user=Reverse proxy authentication header
|
||||
config.security.enable_login_status_cookie=Включить файл cookie состояния входа
|
||||
config.security.login_status_cookie_name=Файл cookie состояния входа
|
||||
config.security.local_network_allowlist=Список разрешенных локальных сетей
|
||||
config.security.local_network_allowlist=Local network allowlist
|
||||
|
||||
config.email_config=E-mail настройки
|
||||
config.email.enabled=Включено
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Не удалось отправить тесто
|
||||
config.email.test_mail_sent=Тестовое письмо было отправлено на %s
|
||||
|
||||
config.auth_config=Конфигурация аутентификации
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Срок действия кода сброса пароля
|
||||
config.auth.require_email_confirm=Требовать подтверждение по электронной почте
|
||||
@@ -1297,10 +1290,10 @@ config.session.cookie_name=Файл cookie
|
||||
config.session.https_only=Только HTTPS
|
||||
config.session.gc_interval=GC interval
|
||||
config.session.max_life_time=Максимальный срок действия
|
||||
config.session.csrf_cookie_name=CSRF-куки
|
||||
config.session.csrf_cookie_name=CSRF cookie
|
||||
|
||||
config.cache_config=Настройки кеша
|
||||
config.cache.adapter=Адаптер
|
||||
config.cache.adapter=Adapter
|
||||
config.cache.interval=GC interval
|
||||
config.cache.host=Хост
|
||||
|
||||
@@ -1332,7 +1325,7 @@ config.mirror.default_interval=Интервал по умолчанию
|
||||
|
||||
config.webhook_config=Конфигурация Webhook
|
||||
config.webhook.types=Типы
|
||||
config.webhook.deliver_timeout=Таймаут доставки
|
||||
config.webhook.deliver_timeout=Deliver timeout
|
||||
config.webhook.skip_tls_verify=Пропустить проверку TLS
|
||||
|
||||
config.git_config=Конфигурация GIT
|
||||
@@ -1341,9 +1334,9 @@ 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
|
||||
config.git.migrate_timeout=Таймаут миграции
|
||||
config.git.migrate_timeout=Migration timeout
|
||||
config.git.mirror_timeout=Mirror fetch timeout
|
||||
config.git.clone_timeout=Таймаут клонирования
|
||||
config.git.clone_timeout=Clone timeout
|
||||
config.git.pull_timeout=Pull timeout
|
||||
config.git.gc_timeout=GC timeout
|
||||
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Cesta k log súborom
|
||||
log_root_path_helper=Adresár pre zápis log súborov.
|
||||
enable_console_mode=Zapnúť režim konzoly
|
||||
enable_console_mode_popup=Okrem zápisu do súboru, vytlačiť systémové záznamy aj do konzoly.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Nepovinné nastavenia
|
||||
email_title=Nastavenie e-mailovej služby
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=Používateľ pre spustenie sa nezhoduje s aktuálnym použí
|
||||
smtp_host_missing_port=V adrese SMTP servera chýba číslo portu.
|
||||
invalid_smtp_from=Hodnota položky SMTP Od: je nesprávne zadaná: %v
|
||||
save_config_failed=Chyba pri uložení konfigurácie: %v
|
||||
init_failed=Nepodarilo sa inicializovať aplikáciu: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=Nastavenie administrátorského účtu je neplatné: %v
|
||||
install_success=Vitajte! Sme radi, že ste si vybrali Gogs, bavte sa a dávajte si pozor.
|
||||
invalid_log_root_path=Koreňový adresár pre log súbory je neplatný: %v
|
||||
@@ -317,7 +316,6 @@ delete_email=Odstrániť
|
||||
email_deletion=Odstránenie e-mailu
|
||||
email_deletion_desc=Vymazaním tejto emailovej adresy sa odstránia súvisiace informácie z vášho účtu. Chcete pokračovať?
|
||||
email_deletion_success=Email bol úspešne odstránený!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Pridať novú e-mailovú adresu
|
||||
add_email=Pridať email
|
||||
add_email_confirmation_sent=Nový email s potvrdením bol odoslaný na '%s', v priebehu nasledovných '%d' hodín si prosím skontrolujte vašu schránku pre dokončenie procesu potvrdenia.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Dvojfaktorové overenie bolo zakázané!
|
||||
manage_access_token=Spravovať osobné prístupové tokeny
|
||||
generate_new_token=Vygenerovať nový token
|
||||
tokens_desc=Tokeny, ktoré ste vygenerovali je možné použiť na prístup ku Gogs API.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Každý token bude mať plný prístup ku vašemu účtu.
|
||||
token_name=Názov tokenu
|
||||
generate_token=Vygenerovať token
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Zastaralé vetvy
|
||||
branches.all=Všetky vetvy
|
||||
branches.updated_by=%[2]s zmenil %[1]s
|
||||
branches.change_default_branch=Zmeniť základnú vetvu
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Nový súbor
|
||||
editor.upload_file=Nahrať súbor
|
||||
@@ -1015,12 +1010,12 @@ first_page=Prvý
|
||||
last_page=Posledný
|
||||
total=Celkom: %d
|
||||
|
||||
dashboard.build_info=Informácie o zostavení
|
||||
dashboard.app_ver=Verzia aplikácie
|
||||
dashboard.git_version=Git verzia
|
||||
dashboard.go_version=Go verzia
|
||||
dashboard.build_time=Čas zostavenia
|
||||
dashboard.build_commit=Commit zostavenia
|
||||
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=Štatistika
|
||||
dashboard.operations=Operácie
|
||||
dashboard.system_status=Monitor stavu systému
|
||||
@@ -1163,7 +1158,7 @@ auths.pam_service_name=Názov služby PAM
|
||||
auths.enable_auto_register=Povoliť auto registráciu
|
||||
auths.edit=Upraviť nastavenie overovania
|
||||
auths.activated=Tento spôsob overovania je aktívny
|
||||
auths.default_auth=Toto overenie je východzí zdroj prihlásenia
|
||||
auths.default_auth=This authentication is default login source
|
||||
auths.new_success=Nový spôsob overovania '%s' bol pridaný.
|
||||
auths.update_success=Nastavenie overovania bolo zmenené.
|
||||
auths.update=Zmeniť nastavenie overovania
|
||||
@@ -1173,32 +1168,32 @@ auths.delete_auth_desc=Tento spôsob overovania bude odstránený, chcete pokra
|
||||
auths.still_in_used=Tento spôsob overovania je stále používaný niektorými užívateľmi. Prosím, najskôr zmeňte u týchto užívateľov typ overenia na iný.
|
||||
auths.deletion_success=Spôsob overovania bol odstránený!
|
||||
auths.login_source_exist=Zdroj prihlásenia '%s' už existuje.
|
||||
auths.github_api_endpoint=Koncový bod API
|
||||
auths.github_api_endpoint=API Endpoint
|
||||
|
||||
config.not_set=(nezadané)
|
||||
config.server_config=Konfigurácia servera
|
||||
config.brand_name=Názov značky
|
||||
config.brand_name=Brand name
|
||||
config.run_user=Používateľ pre spustenie aplikácie
|
||||
config.run_mode=Režim spúšťania
|
||||
config.server.external_url=Externé URL
|
||||
config.server.domain=Doména
|
||||
config.server.protocol=Protokol
|
||||
config.server.http_addr=HTTP adresa
|
||||
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=Súbor certifikátu
|
||||
config.server.key_file=Súbor kľúča
|
||||
config.server.tls_min_version=Minimálna verzia TLS
|
||||
config.server.unix_socket_permission=Oprávnenie Unix socketu
|
||||
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=Povoliť Gzip
|
||||
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=Nastavenie SSH
|
||||
config.ssh.enabled=Povolené
|
||||
config.ssh.enabled=Enabled
|
||||
config.ssh.domain=Exposed domain
|
||||
config.ssh.port=Exposed port
|
||||
config.ssh.root_path=Root path
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Nastavenie repozitára
|
||||
config.repo.root_path=Root path
|
||||
@@ -1222,7 +1216,7 @@ 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=Povoliť migráciu z miestnej cesty
|
||||
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
|
||||
@@ -1258,7 +1252,7 @@ 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=Povolené
|
||||
config.email.enabled=Enabled
|
||||
config.email.subject_prefix=Subject prefix
|
||||
config.email.host=Host
|
||||
config.email.from=From
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
@@ -1288,7 +1281,7 @@ config.auth.enable_reverse_proxy_auto_registration=Enable reverse proxy auto reg
|
||||
config.auth.reverse_proxy_authentication_header=Reverse proxy authentication header
|
||||
|
||||
config.user_config=User configuration
|
||||
config.user.enable_email_notify=Povoliť e-mailové notifikácie
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=Nastavenie session
|
||||
config.session.provider=Provider
|
||||
@@ -1308,7 +1301,7 @@ config.http_config=HTTP konfigurácia
|
||||
config.http.access_control_allow_origin=Access control allow origin
|
||||
|
||||
config.attachment_config=Attachment configuration
|
||||
config.attachment.enabled=Povolené
|
||||
config.attachment.enabled=Enabled
|
||||
config.attachment.path=Path
|
||||
config.attachment.allowed_types=Allowed types
|
||||
config.attachment.max_size=Size limit
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=Пут до журнала
|
||||
log_root_path_helper=Директоријум где ће бити снимане датотеке журнала.
|
||||
enable_console_mode=Омогући конзол начин
|
||||
enable_console_mode_popup=Поред начин датотеке, пошаљи системске извештаје и конзолу.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Напредна подешавања
|
||||
email_title=Подешавања сервиса е-поште
|
||||
@@ -317,7 +316,6 @@ delete_email=Уклони
|
||||
email_deletion=Брисање адресе е-поште
|
||||
email_deletion_desc=Брисање ове адресе ће довести до уклањања података. Да ли желите да наставите?
|
||||
email_deletion_success=Адреса је успешно избрисана!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Додај нови адресу е-поште
|
||||
add_email=Додај адресу
|
||||
add_email_confirmation_sent=Послан је нова потврда на '%s', молимо вас проверите ваше поруке унутар %d сата да бисте завршили поступак потврде.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Двострука аутентификација ј
|
||||
manage_access_token=Управљање токенима особном приступу
|
||||
generate_new_token=Генериши нови токен
|
||||
tokens_desc=Tокени се могу користити за приступ на API за Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Сваки API токен ће имати пун приступ вашем налогу.
|
||||
token_name=Име токена
|
||||
generate_token=Генериши токен
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Застареле гране
|
||||
branches.all=Све гране
|
||||
branches.updated_by=Ажуриран %[1]s од %[2]s
|
||||
branches.change_default_branch=Промените подразумевану грану
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Нова датотека
|
||||
editor.upload_file=Отпреми датотеку
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Конфигурација спремишта
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -44,8 +44,8 @@ issues=Problem
|
||||
cancel=Avbryt
|
||||
|
||||
[status]
|
||||
page_not_found=Sidan hittades inte
|
||||
internal_server_error=Internt serverfel
|
||||
page_not_found=Page Not Found
|
||||
internal_server_error=Internal Server Error
|
||||
|
||||
[install]
|
||||
install=Installation
|
||||
@@ -79,7 +79,7 @@ domain_helper=Detta påverkar SSH klonings webbadresser.
|
||||
ssh_port=SSH-port
|
||||
ssh_port_helper=Portnumret som din SSH-server brukar, lämna tomt för att inaktivera SSH-funktionaliteten.
|
||||
use_builtin_ssh_server=Använd inbyggd SSH Server
|
||||
use_builtin_ssh_server_popup=Starta inbyggd SSH-server för Git-operationer för att skilja från system-SSH-servern.
|
||||
use_builtin_ssh_server_popup=Start builtin SSH server for Git operations to distinguish from system SSH daemon.
|
||||
http_port=HTTP Port
|
||||
http_port_helper=Portnumret vilket applikationen kommer lyssnar på.
|
||||
app_url=Applikationsadressen
|
||||
@@ -88,7 +88,6 @@ log_root_path=Loggsökväg
|
||||
log_root_path_helper=Katalog till vilken loggfiler skrivs.
|
||||
enable_console_mode=Aktivera Konsolläge
|
||||
enable_console_mode_popup=Utöver fil-läge, skriver även ut loggar till konsol.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Övriga inställningar
|
||||
email_title=E-post tjänstens inställningar
|
||||
@@ -127,7 +126,7 @@ run_user_not_match=Köranvändaren är inte aktuell användare: %s -> %s
|
||||
smtp_host_missing_port=SMTP-värden saknar port i adressen.
|
||||
invalid_smtp_from=SMTP från fält är inte giltigt: %v
|
||||
save_config_failed=Konfigurationssparningen misslyckades: %v
|
||||
init_failed=Det gick inte att initiera appen: %v
|
||||
init_failed=Failed to initialize application: %v
|
||||
invalid_admin_setting=Inställningarna för administratörskontot är felaktiga: %v
|
||||
install_success=Välkommen! Vi är glada att du väljer Gogs, ha kul och ta hand om dig.
|
||||
invalid_log_root_path=Ogiltig rotsökväg för loggfiler: %v
|
||||
@@ -157,7 +156,7 @@ register_hepler_msg=Har du redan ett konto? Logga in nu!
|
||||
social_register_hepler_msg=Har du redan ett konto? Anslut det nu!
|
||||
disable_register_prompt=Tyvärr är användarregistreringen inaktiverad. Vänligen kontakta din administratör.
|
||||
disable_register_mail=Tyvärr så är registreringsbekräftelemailutskick inaktiverat.
|
||||
auth_source=Autentiseringskälla
|
||||
auth_source=Authentication Source
|
||||
local=Lokal
|
||||
remember_me=Kom ihåg mig
|
||||
forgot_password=Glömt lösenord
|
||||
@@ -237,7 +236,7 @@ org_name_been_taken=Organisationsnamnet har redan används.
|
||||
team_name_been_taken=Team namn är redan använt.
|
||||
email_been_used=E-postadressen har redan använts.
|
||||
username_password_incorrect=Användarnamnet eller lösenordet är inte korrekt.
|
||||
auth_source_mismatch=Den autentiseringskälla som valts är inte associerad med användaren.
|
||||
auth_source_mismatch=The authentication source selected is not associated with the user.
|
||||
enterred_invalid_repo_name=Se till att utvecklingskatalogen som du angav är rätt.
|
||||
enterred_invalid_owner_name=Kontrollera att ägarnamnet som du angav är rätt.
|
||||
enterred_invalid_password=Se till att den som lösenord du angett är rätt.
|
||||
@@ -265,7 +264,7 @@ following=Följer
|
||||
follow=Följ
|
||||
unfollow=Sluta följa
|
||||
|
||||
form.name_not_allowed=Användarnamn eller mönster %q är inte tillåtet.
|
||||
form.name_not_allowed=User name or pattern %q is not allowed.
|
||||
|
||||
[settings]
|
||||
profile=Profil
|
||||
@@ -317,7 +316,6 @@ delete_email=Radera
|
||||
email_deletion=Borttagning Av Epostaddress
|
||||
email_deletion_desc=Borttagning av denna epostaddress kommer att ta bort relaterad information. Vill du fortsätta?
|
||||
email_deletion_success=Epostaddressen har tagits bort!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Lägg till ny e-postadress
|
||||
add_email=Lägga till e-post
|
||||
add_email_confirmation_sent=Ett nytt bekräftelsemail har skickats till '%s', kontrollera vänligen din inbox inom dom närmsta %d timmarna för att slutföra bekräftelsen.
|
||||
@@ -350,10 +348,10 @@ two_factor_off=Av
|
||||
two_factor_enable=Aktivera
|
||||
two_factor_disable=Inaktivera
|
||||
two_factor_view_recovery_codes=Visa och spara <a href="%s%s">dina återställningskoder</a> på ett säkert ställe. Du kan använda dem som kod om du förlorar åtkomsten till din autentisering applikation.
|
||||
two_factor_http=För HTTP/HTTPS-operationer kan du inte längre använda vanliga användarnamn och lösenord. Vänligen skapa och använda <a href="%[1]s%[2]s">Personlig åtkomsttoken</a> som ditt användarnamn, t.ex. <code>%[3]s</code>.
|
||||
two_factor_http=For HTTP/HTTPS operations, you are no longer able to use plain username and password. Please create and use <a href="%[1]s%[2]s">Personal Access Token</a> as your credential, e.g. <code>%[3]s</code>.
|
||||
two_factor_enable_title=Avaktivera Tvåfaktorsautentisering
|
||||
two_factor_scan_qr=Vänligen använd din autentiseringsapp för att skanna bilden:
|
||||
two_factor_or_enter_secret=Eller ange hemligheten:
|
||||
two_factor_scan_qr=Please use your authentication application to scan the image:
|
||||
two_factor_or_enter_secret=Or enter the secret:
|
||||
two_factor_then_enter_passcode=Ange sedan lösenordet:
|
||||
two_factor_verify=Verifiera
|
||||
two_factor_invalid_passcode=The passcode you entered is not valid, please try again!
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=Hantera personliga åtkomst-tokens
|
||||
generate_new_token=Generera Nya Tokens
|
||||
tokens_desc=Tokens som du har genererat kan användas för åtkomst av Gogs APIer.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Varje token har full tillgång till ditt konto.
|
||||
token_name=Tokennamn
|
||||
generate_token=Generera Token
|
||||
@@ -479,23 +476,21 @@ pulls=Pull-förfrågningar
|
||||
labels=Etiketter
|
||||
milestones=Milstenar
|
||||
commits=Incheckningar
|
||||
git_branches=Brancher
|
||||
git_branches=Branches
|
||||
releases=Släpp
|
||||
file_raw=Rå
|
||||
file_history=Historik
|
||||
file_view_raw=Visa i råformat
|
||||
file_permalink=Permalänk
|
||||
file_too_large=Denna fil är för stor för att visas
|
||||
video_not_supported_in_browser=Din webbläsare stöder inte HTML5 video-tagg.
|
||||
video_not_supported_in_browser=Your browser doesn't support HTML5 video tag.
|
||||
|
||||
branches.overview=Översikt
|
||||
branches.active_branches=Aktiva brancher
|
||||
branches.stale_branches=Djärva brancher
|
||||
branches.all=Alla brancher
|
||||
branches.updated_by=Uppdaterade %[1]s med %[2]s
|
||||
branches.change_default_branch=Ändra standard branch
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
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=Ny fil
|
||||
editor.upload_file=Ladda upp fil
|
||||
@@ -525,19 +520,19 @@ editor.cancel=Avbryt
|
||||
editor.filename_cannot_be_empty=Filnamnet får inte vara tomt.
|
||||
editor.branch_already_exists=Grenen '%s' finns redan i förrådet.
|
||||
editor.directory_is_a_file=Komponenten '%s' i föräldrasökvägen är en fil, inte en katalog i detta förråd.
|
||||
editor.file_is_a_symlink=Filen '%s' är en symbolisk länk som inte kan editeras i webbläsaren.
|
||||
editor.file_is_a_symlink=The file '%s' is a symlink that cannot be modified from the web editor.
|
||||
editor.filename_is_a_directory=Filnmanet '%s' är en existerande katalog i detta förråd.
|
||||
editor.file_editing_no_longer_exists=Filen '%s' som du redigerar finns inte lägre i förrådet.
|
||||
editor.file_changed_while_editing=Filinnhållet har ändrats sedan du började redigera. <a target="_blank" href="%s">Klicka här</a> för att se vad som ändrats eller <strong>tryck checka in igen</strong> för att skriva över dessa ändringar.
|
||||
editor.file_already_exists=En fil med namnet '%s' finns redan i förrådet.
|
||||
editor.no_changes_to_show=Det finns inga ändringar att visa.
|
||||
editor.fail_to_update_file=Uppdateringen/skapandet av filen '%s' misslyckades med felet: %v
|
||||
editor.fail_to_delete_file=Det gick inte att ta bort filen '%s' med fel: %v.
|
||||
editor.fail_to_delete_file=Failed to delete file '%s' with error: %v
|
||||
editor.add_subdir=Lägg till underkatalog...
|
||||
editor.unable_to_upload_files=Uppladdning av filen '%s' misslyckades med felet: %v
|
||||
editor.upload_files_to_dir=Ladda upp filer till '%s'
|
||||
|
||||
commits.commit_history=Commit historia
|
||||
commits.commit_history=Commit History
|
||||
commits.commits=Incheckningar
|
||||
commits.search=Sök bland incheckningar
|
||||
commits.find=Sök
|
||||
@@ -635,7 +630,7 @@ pulls.compare_compare=jämför
|
||||
pulls.filter_branch=Filtrera gren
|
||||
pulls.no_results=Inga resultat hittades.
|
||||
pulls.nothing_to_compare=Det finns inget att jämföra eftersom bas och huvudgrenar är lika.
|
||||
pulls.nothing_merge_base=Det finns inget att jämföra eftersom två branch har helt olika historia.
|
||||
pulls.nothing_merge_base=There is nothing to compare because two branches have completely different history.
|
||||
pulls.has_pull_request=`Det finns redan en pullförfrågan mellan detta två mål: <a href="%[1]s/pulls/%[3]d">%[2]s#%[3]s</a>^
|
||||
pulls.create=Skapa Pullförfrågan
|
||||
pulls.title_desc=vill sammanfoga %[1]d incheckningar från <code>s[2]s</code> in i <code>%[3]s</code>
|
||||
@@ -651,13 +646,13 @@ pulls.is_checking=Konfliktkontroll är fortfarande pågågående, vänligen uppd
|
||||
pulls.can_auto_merge_desc=Denna pull-förfrågan kan sammanfogas automatiskt.
|
||||
pulls.cannot_auto_merge_desc=Denna pull-förfrågan kan inte sammanfogas automatiskt eftersom det finns konflikter.
|
||||
pulls.cannot_auto_merge_helper=Vänligen sammanfoga manuellt för att lösa konflikter.
|
||||
pulls.create_merge_commit=Skapa en merge commit
|
||||
pulls.rebase_before_merging=Rebase innan merge
|
||||
pulls.commit_description=Commit beskrivning
|
||||
pulls.create_merge_commit=Create a merge commit
|
||||
pulls.rebase_before_merging=Rebase before merging
|
||||
pulls.commit_description=Commit Description
|
||||
pulls.merge_pull_request=Sammanfoga Pull-förfrågan
|
||||
pulls.open_unmerged_pull_exists=`Du kan inte utföra återöppningsoperationen eftersom det finns redan en öppen pull-förfrågan (#%d) från samma repo med samma sammanfogningsinformation som väntar på sammanfogning.`
|
||||
pulls.delete_branch=Ta bort gren
|
||||
pulls.delete_branch_has_new_commits=Branch kan inte tas bort eftersom den har nya commits efter merge.
|
||||
pulls.delete_branch_has_new_commits=Branch cannot be deleted because it has new commits after mergence.
|
||||
|
||||
milestones.new=Ny milstolpe
|
||||
milestones.open_tab=%d Öppna
|
||||
@@ -708,8 +703,8 @@ settings.collaboration.admin=Adminstrera
|
||||
settings.collaboration.write=Skriva
|
||||
settings.collaboration.read=Läsa
|
||||
settings.collaboration.undefined=Odefinierad
|
||||
settings.branches=Brancher
|
||||
settings.branches_bare=Du kan inte hantera brancher för kala repository. Vänligen push innehåll först.
|
||||
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
|
||||
@@ -729,7 +724,7 @@ settings.protect_whitelist_committers_desc=Add people or teams to whitelist of d
|
||||
settings.protect_whitelist_users=Users who can push to this branch
|
||||
settings.protect_whitelist_search_users=Sök användare
|
||||
settings.protect_whitelist_teams=Teams for which members of them can push to this branch
|
||||
settings.protect_whitelist_search_teams=Sök team
|
||||
settings.protect_whitelist_search_teams=Search teams
|
||||
settings.update_protect_branch_success=Protect options for this branch has been updated successfully!
|
||||
settings.hooks=Webbhookar
|
||||
settings.githooks=Githookar
|
||||
@@ -798,8 +793,8 @@ settings.remove_collaborator_success=Deltagare har tagits bort.
|
||||
settings.search_user_placeholder=Sök användare...
|
||||
settings.org_not_allowed_to_be_collaborator=Organisationen kan inte läggas till som en deltagare.
|
||||
settings.hooks_desc=Webbhookar påminner mycket om vanliga HTTP POST-händelseutlösare. När något inträffar i Gogs, kommer vi att meddela måldatorn som du anger. Läs mera i <a target="_blank" href="%s">Webbhook Guide</a>.
|
||||
settings.webhooks.add_new=Lägg till en ny webhook:
|
||||
settings.webhooks.choose_a_type=Välj en typ...
|
||||
settings.webhooks.add_new=Add a new webhook:
|
||||
settings.webhooks.choose_a_type=Choose a type...
|
||||
settings.add_webhook=Lägg Till Webbhook
|
||||
settings.webhook_deletion=Ta Bort Webbhook
|
||||
settings.webhook_deletion_desc=Borttagning av denna webbhook kommer att ta bort all dess information och all leveranshistorik. Är du säker på att du vill fortsätta?
|
||||
@@ -807,7 +802,7 @@ settings.webhook_deletion_success=Webbhook har tagits bort!
|
||||
settings.webhook.test_delivery=Testa Leverans
|
||||
settings.webhook.test_delivery_desc=Skicka en falsk pushhändelse för att testa dina webbhook-inställningar
|
||||
settings.webhook.test_delivery_success=Testwebbhook har lagts till leveranskön. Det kan ta några sekunder innan den visas i leveranshistoriken.
|
||||
settings.webhook.redelivery=Återleverans
|
||||
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=Begäran
|
||||
settings.webhook.response=Svar
|
||||
@@ -835,10 +830,10 @@ settings.event_send_everything=Jag behöver <strong>allt</strong>.
|
||||
settings.event_choose=Låt mig välja.
|
||||
settings.event_create=Skapa
|
||||
settings.event_create_desc=Branch eller tagg skapad
|
||||
settings.event_delete=Ta bort
|
||||
settings.event_delete_desc=Branch eller tagg borttagen
|
||||
settings.event_delete=Delete
|
||||
settings.event_delete_desc=Branch or tag deleted
|
||||
settings.event_fork=Fork
|
||||
settings.event_fork_desc=Repository forkad
|
||||
settings.event_fork_desc=Repository forked
|
||||
settings.event_push=Pusha
|
||||
settings.event_push_desc=Uppladdning till ett förråd
|
||||
settings.event_issues=Issues
|
||||
@@ -848,7 +843,7 @@ settings.event_pull_request_desc=Pull request opened, closed, reopened, edited,
|
||||
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 publicerat i ett repository.
|
||||
settings.event_release_desc=Release published in a repository.
|
||||
settings.active=Aktiv
|
||||
settings.active_helper=Detaljer kring händelsen som triggade kroken kommer också levereras.
|
||||
settings.add_hook_success=Ny webbkrok har lagts till.
|
||||
@@ -858,7 +853,7 @@ settings.delete_webhook=Tag bort webbkrok
|
||||
settings.recent_deliveries=Färska leveranser
|
||||
settings.hook_type=Kroktyp
|
||||
settings.add_slack_hook_desc=Lägg till <a href="%s">Slack</a>-integration till ditt förråd.
|
||||
settings.add_discord_hook_desc=
|
||||
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=Pollett
|
||||
settings.slack_domain=Domän
|
||||
@@ -877,7 +872,7 @@ settings.deploy_key_deletion=Ta bort distribueringsnyckel
|
||||
settings.deploy_key_deletion_desc=Borttagning av detta distributionsnyckel kommer att ta bort all relaterad åtkomst till det här repot. Vill du fortsätta?
|
||||
settings.deploy_key_deletion_success=Distributionsnyckeln har tagits bort!
|
||||
settings.description_desc=Description of repository. Maximum 512 characters length.
|
||||
settings.description_length=Tillgängliga tecken
|
||||
settings.description_length=Available characters
|
||||
|
||||
diff.browse_source=Bläddra i källkod
|
||||
diff.parent=förälder
|
||||
@@ -1017,9 +1012,9 @@ total=Totalt: %d
|
||||
|
||||
dashboard.build_info=Build Information
|
||||
dashboard.app_ver=Application version
|
||||
dashboard.git_version=Git Version
|
||||
dashboard.git_version=Git version
|
||||
dashboard.go_version=Go version
|
||||
dashboard.build_time=Build tid
|
||||
dashboard.build_time=Build time
|
||||
dashboard.build_commit=Build commit
|
||||
dashboard.statistic=Statistik
|
||||
dashboard.operations=Operationer
|
||||
@@ -1027,13 +1022,13 @@ dashboard.system_status=Systemstatus
|
||||
dashboard.statistic_info=Gogs-databasen innehåller <b>%d</b> användare, <b>%d</b> organisationer, <b>%d</b> publika nyckar, <b>%d</b> förråd, <b>%d</b> vakter, <b>%d</b> stjärnor, <b>%d</b> handlingar, <b>%d</b> åtkomster, <b>%d</b> ärenden, <b>%d</b> kommentarer, <b>%d</b> sociala konton, <b>%d</b> följbegäran, <b>%d</b> speglingar, <b>%d</b> släpp, <b>%d</b> inloggningskällor, <b>%d</b> webbkrokar, <b>%d</b> milstolpar, <b>%d</b> etiketter, <b>%d</b> krokuppgifter, <b>%d</b> team, <b>%d</b> uppdateringsuppgifter, <b>%d</b> bilagor.
|
||||
dashboard.operation_name=Operationsnamn
|
||||
dashboard.operation_switch=Byt till
|
||||
dashboard.select_operation_to_run=Välj åtgärd att köra
|
||||
dashboard.select_operation_to_run=Please select operation to run
|
||||
dashboard.operation_run=Kör
|
||||
dashboard.clean_unbind_oauth=Rensa obundna OAuth-begäran
|
||||
dashboard.clean_unbind_oauth_success=Alla obundna OAuth-begäran har tagit
|
||||
dashboard.delete_inactivate_accounts=Ta bort alla inaktiva konton
|
||||
dashboard.delete_inactivate_accounts_success=
|
||||
dashboard.delete_repo_archives=
|
||||
dashboard.delete_inactivate_accounts_success=All inactivate accounts have been deleted successfully.
|
||||
dashboard.delete_repo_archives=Delete all repositories archives
|
||||
dashboard.delete_repo_archives_success=All repositories archives have been deleted successfully.
|
||||
dashboard.delete_missing_repos=Delete all repository records that lost Git files
|
||||
dashboard.delete_missing_repos_success=All repository records that lost Git files have been deleted successfully.
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository configuration
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -88,7 +88,6 @@ 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.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=İsteğe Bağlı Ayarlar
|
||||
email_title=E-Posta Servisi Ayarları
|
||||
@@ -317,7 +316,6 @@ delete_email=Sil
|
||||
email_deletion=E-Posta Silme
|
||||
email_deletion_desc=Bu e-posta adresini silerseniz hesabınıza ilişkin tüm bilgileriniz de silinecektir. Devam etmek istiyor musunuz?
|
||||
email_deletion_success=E-posta adresi başarıyla silindi!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Yeni e-posta adresi ekle
|
||||
add_email=E-posta ekle
|
||||
add_email_confirmation_sent='%s' adresine yeni bir doğrulama e-postası gönderildi. Doğrulama aşamalarını tamamlamak için lütfen %d saat içinde gelen kutunuzu kontrol edin.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=İki faktörlü kimli doğrulama başarıyla devre d
|
||||
manage_access_token=Kişisel Erişim Anahtarlarını Yönet
|
||||
generate_new_token=Yeni Erişim Anahtarı Üret
|
||||
tokens_desc=Ürettiğiniz erişim anahtarları, Gogs API'lerine erişimde kullanılabilir.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Her bir erişim anahtarının hesabınıza tam erişim yetkisi olacaktır.
|
||||
token_name=Erişim Anahtarı İsmi
|
||||
generate_token=Erişim Anahtarı Üret
|
||||
@@ -494,8 +491,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Yeni dosya
|
||||
editor.upload_file=Dosyayı yükle
|
||||
@@ -1212,7 +1207,6 @@ 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.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Depo Yapılandırması
|
||||
config.repo.root_path=Kök yolu
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -1,14 +1,14 @@
|
||||
app_desc=Зручний сервіс власного Git хостингу
|
||||
app_desc=Зручний сервіс власного Git хостінгу
|
||||
|
||||
home=Головна сторінка
|
||||
dashboard=Панель керування
|
||||
dashboard=Щиток
|
||||
explore=Огляд
|
||||
help=Довідка
|
||||
sign_in=Увійти
|
||||
sign_out=Вийти
|
||||
sign_up=Реєстрація
|
||||
register=Реєстрація
|
||||
website=Вебсторінка
|
||||
website=Веб-сторінка
|
||||
page=Сторінка
|
||||
template=Шаблон
|
||||
language=Мова
|
||||
@@ -32,7 +32,7 @@ new_fork=Нове відгалудження
|
||||
new_org=Нова організація
|
||||
manage_org=Керування організаціями
|
||||
admin_panel=Панель адміністратора
|
||||
account_settings=Налаштування облікового запису
|
||||
account_settings=Нашалштування облікового запису
|
||||
settings=Налаштування
|
||||
your_profile=Ваш профіль
|
||||
your_settings=Ваші налаштування
|
||||
@@ -51,14 +51,14 @@ internal_server_error=Внутрішня помилка серверу
|
||||
install=Установка
|
||||
title=Кроки установки перед першим запуском
|
||||
docker_helper=Якщо ви запускаєте Gogs всередені Docker, уважно прочитайте <a target="_blank" href="%s">гайдлайни</a> перш ніж змінювати щось!
|
||||
requite_db_desc=Gogs потребує MySQL, PostgreSQL, SQLite3 або TiDB (за допомогою MySQL протоколу).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Налаштування бази даних
|
||||
db_type=Тип бази данних
|
||||
host=Хост
|
||||
user=Користувач
|
||||
password=Пароль
|
||||
db_name=Ім'я бази даних
|
||||
db_schema=Схема
|
||||
db_schema=Schema
|
||||
db_helper=Будь ласка, використовуйте MySQL як INNODB з таблицею символів utf8_general_ci.
|
||||
ssl_mode=Режим SSL
|
||||
path=Шлях
|
||||
@@ -83,18 +83,17 @@ use_builtin_ssh_server_popup=Запустити вбудований SSH сер
|
||||
http_port=Порт HTTP
|
||||
http_port_helper=Номер порту який программа буде слухати.
|
||||
app_url=Адреса програми
|
||||
app_url_helper=Це впливає на клонування URL через HTTP/HTTPS та десь в електронній пошті.
|
||||
app_url_helper=Це впливає на клонування через HTTP/HTTPS та десь у електроній пошті.
|
||||
log_root_path=Шлях до лог файлу
|
||||
log_root_path_helper=Каталог для файлів журналу.
|
||||
enable_console_mode=Увімкнути консольний режим
|
||||
enable_console_mode_popup=На додаток до файлового режиму писати логи також і до консолі.
|
||||
default_branch=Гілка за замовчуванням
|
||||
|
||||
optional_title=Додаткові налаштування
|
||||
email_title=Налаштування електронної пошти
|
||||
email_title=Параметри електронної пошти
|
||||
smtp_host=SMTP хост
|
||||
smtp_from=Від
|
||||
smtp_from_helper=Поле "Від" адреси, згідно RFC 5322. Це може бути просто адреса електронної пошти або адреса у форматі "Ім'я" <email@example.com>.
|
||||
smtp_from_helper=Поле "Від" адреси, RFC 5322. Це може бути просто адреса електронної пошти або адреса у форматі «Ім'я» <email@example.com>.
|
||||
mailer_user=Відправник електронної пошти
|
||||
mailer_password=Відправник паролю
|
||||
register_confirm=Увімкнути підтвердження реєстрації
|
||||
@@ -156,7 +155,7 @@ create_new_account=Створити новий обліковий запис
|
||||
register_hepler_msg=Вже зареєстровані? Увійдіть зараз!
|
||||
social_register_hepler_msg=Вже зареєстровані? Прив'яжіть зараз!
|
||||
disable_register_prompt=Вибачте, реєстрація відключена. Будь ласка, зв'яжіться з адміністратором сайту.
|
||||
disable_register_mail=На жаль, підтвердження реєстрації на електрону пошту вимкнено адміністратором.
|
||||
disable_register_mail=На жаль, підтвердження реєстрації на електрону пошту було відключено.
|
||||
auth_source=Джерело автентифікації
|
||||
local=Локальний
|
||||
remember_me=Запам'ятати мене
|
||||
@@ -178,7 +177,7 @@ password_too_short=Довжина пароля не може бути меншо
|
||||
non_local_account=Нелокальні облікові записи не можуть змінити пароль через Gogs.
|
||||
|
||||
login_two_factor=Двофакторна автентифікація
|
||||
login_two_factor_passcode=Код аутентифікації
|
||||
login_two_factor_passcode=Код автентифікації
|
||||
login_two_factor_enter_recovery_code=Введіть двофакторний код відновлення
|
||||
login_two_factor_recovery=Двофакторне відновлення
|
||||
login_two_factor_recovery_code=Код відновлення
|
||||
@@ -224,7 +223,7 @@ alpha_dash_dot_slash_error=` мусить бути валідною буквою
|
||||
size_error=` має мати розмір %s.`
|
||||
min_size_error=' має містити принаймні %s символів.'
|
||||
max_size_error=' має містити принаймні %s символів.'
|
||||
email_error=`це не дійсна електронна поштова адреса.`
|
||||
email_error=це не дійсна електронна поштова адреса.
|
||||
url_error='не є припустимою URL-Адресою.'
|
||||
include_error=`повинен містити текст '%s'`
|
||||
unknown_error=Невідома помилка:
|
||||
@@ -235,7 +234,7 @@ username_been_taken=Ім'я користувача вже зайнято.
|
||||
repo_name_been_taken=Назва сховища вже використовується.
|
||||
org_name_been_taken=Назва організаціі вже використовується.
|
||||
team_name_been_taken=Назва команди вже використовується.
|
||||
email_been_used=Ця адреса електронної пошти вже використовується.
|
||||
email_been_used=Адреса електронної пошти вже використовується.
|
||||
username_password_incorrect=Ім'я користувача або пароль помилкові.
|
||||
auth_source_mismatch=Обране джерело автентифікації не асоційовано з користувачем.
|
||||
enterred_invalid_repo_name=Переконайтеся, що ви ввели назву сховища правильно.
|
||||
@@ -317,9 +316,8 @@ delete_email=Видалити
|
||||
email_deletion=Видалення електронної пошти
|
||||
email_deletion_desc=Видалення цієї електронної адреси призведе до вилучення інформації, пов'язаної з вашим обліковим записом. Ви бажаєте продовжити?
|
||||
email_deletion_success=Електронну адресу успішно видалено!
|
||||
email_deletion_primary=Не вдається видалити основну адресу електронної пошти.
|
||||
add_new_email=Додати нову адресу електронної пошти
|
||||
add_email=Додати адресу електронної пошти
|
||||
add_email=Додати адресу електроної пошти
|
||||
add_email_confirmation_sent=Новий електронний лист із підтвердженням було направлено на '%s', будь ласка, перевірте вашу поштову скриньку протягом наступних %d годин, щоб завершити процес підтвердження.
|
||||
add_email_success=Вашу нову адресу електронної пошти було успішно додано.
|
||||
|
||||
@@ -341,7 +339,7 @@ add_on=Додано
|
||||
last_used=Останнє використання
|
||||
no_activity=Жодної діяльності
|
||||
key_state_desc=Цей ключ використовувався в останні 7 днів
|
||||
token_state_desc=Цей жетон використовувався в останні 7 днів
|
||||
token_state_desc=Цей токен використовувався в останні 7 днів
|
||||
|
||||
two_factor=Двофакторна автентифікація
|
||||
two_factor_status=Статус:
|
||||
@@ -350,7 +348,7 @@ two_factor_off=Викл.
|
||||
two_factor_enable=Увімкнути
|
||||
two_factor_disable=Вимкнути
|
||||
two_factor_view_recovery_codes=Перегляньте й збережіть <a href="%s%s">ваші ключі відновлення</a> у безпечному місці. Ви можете використовувати іх як паролі якщо втратите доступ до вашої програми автентифікації.
|
||||
two_factor_http=Для HTTP/HTTPS операцій, ви більше не можете використовувати звичайні ім'я та пароль. Будь ласка створіть та використовуйте <a href="%[1]s%[2]s">персональний жетон доступу</a> як ваші облікові дані, наприклад <code>%[3]s</code>.
|
||||
two_factor_http=Для HTTP/HTTPS операцій, ви більше не можете використовувати звичайні ім'я та пароль. Будь ласка створіть та використовуйте <a href="%[1]s%[2]s">персональний токен доступу</a> як ваші облікові дані, наприклад <code>%[3]s</code>.
|
||||
two_factor_enable_title=Увімкнути двофакторну автентифікацію
|
||||
two_factor_scan_qr=Будь ласка, використовуйте ваш додаток автентифікації для сканування зображення:
|
||||
two_factor_or_enter_secret=Або введіть секрет:
|
||||
@@ -369,19 +367,18 @@ two_factor_disable_title=Вимкнути двофакторну автенти
|
||||
two_factor_disable_desc=Рівень безпеки вашого акаунту знизиться після вимикання двофакторної автентифікаціЇ. Бажаєте продовжити?
|
||||
two_factor_disable_success=Двофакторну автентифікацію було успішно вимкнено!
|
||||
|
||||
manage_access_token=Керувати жетонами особистого доступу
|
||||
manage_access_token=Керувати токенами особистого доступу
|
||||
generate_new_token=Генерувати новий жетон
|
||||
tokens_desc=Створені вами жетони для доступу до Gogs API.
|
||||
access_token_tips=Персональний жетон доступу може бути використаний як ім'я користувача або пароль. Рекомендується використовувати "x-access-token" як ім'я користувача та персональний жетон доступу, що є паролем для додатків gt.
|
||||
new_token_desc=На цей час будь-який жетон має повний доступ до вашого облікового запису.
|
||||
tokens_desc=Створені вами токени для доступу до Gogs API.
|
||||
new_token_desc=На даний момент будь-який жетон має повний доступ до вашого облікового запису.
|
||||
token_name=Назва жетону
|
||||
generate_token=Створити жетон
|
||||
generate_token_succees=Новий жетон було створено успішно! Переконайтеся, що Ви скопіювали Ваш новий жетон доступу, бо Ви не зможете побачити його знову!
|
||||
generate_token_succees=Новий жетон було створено успішно! Переконайтеся, що Ви скопіювали Ваш новий жетон доступу. Ви не зможете побачити його знову!
|
||||
delete_token=Видалити
|
||||
access_token_deletion=Видалення жетону персонального доступу
|
||||
access_token_deletion_desc=Видалення цього жетону призведе до неможливості доступу усіх пов’язаних додатків. Продовжити?
|
||||
delete_token_success=Персональний жетон було видалено. Не забудьте перевірити ваш додаток.
|
||||
token_name_exists=Жетон з таким ім'ям вже існує.
|
||||
access_token_deletion=Видалення токену персонального доступу
|
||||
access_token_deletion_desc=Видалення цього токену призведе до неможливості доступу усіх пов’язаних додатків. Продовжити?
|
||||
delete_token_success=Персональний токен було видалено. Не забудьте перевірити ваш додаток.
|
||||
token_name_exists=Токен з таким ім'ям вже існує.
|
||||
|
||||
orgs.none=Ви не є членом будь-якої організації.
|
||||
orgs.leave_title=Залишити організацію
|
||||
@@ -403,9 +400,9 @@ owner=Власник
|
||||
repo_name=Назва репозиторію
|
||||
repo_name_helper=Гарна назва репозиторія зазвичай складається з коротких та унікальних ключових слів, які легко запам'ятати.
|
||||
visibility=Видимість
|
||||
unlisted=Поза списком
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Цей репозиторій є <span class="ui red text">Приватним</span>
|
||||
unlisted_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>!
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=Це може бути URL-адресою HTTP, HTTPS
|
||||
migrate.clone_address_desc_import_local=Ви також можете змігрувати репозиторій з локального шляху на сервері.
|
||||
migrate.permission_denied=Вам не дозволено імпортувати локальні репозиторії.
|
||||
migrate.invalid_local_path=Невірний локальний шлях, він не існує або не є каталогом.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Адреса клону розв’язана на адресу локальної мережі, яка неявно заблокована.
|
||||
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=дзеркало
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Застарілі гілки
|
||||
branches.all=Усі гілки
|
||||
branches.updated_by=Оновлено %[1]s з %[2]s
|
||||
branches.change_default_branch=Гілку за замовчуванням змінено
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Новий файл
|
||||
editor.upload_file=Завантажити файл
|
||||
@@ -815,7 +810,7 @@ settings.webhook.headers=Заголовки
|
||||
settings.webhook.payload=Зміст
|
||||
settings.webhook.body=Тіло
|
||||
settings.webhook.err_cannot_parse_payload_url=Неможливо розібрати payload URL: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=URL-адреса корисного навантаження розв’язана з адресою у локальної мережі, яка неявно заблокована.
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
settings.githooks_desc=Git хуки керуються самим Git, ви можете редагувати файли хуків, що підтримуються згідно списку нище, щоб виконувати будь-які операції.
|
||||
settings.githook_edit_desc=Якщо хук неактивний, буде представлено зразок вмісту. Порожнє значення у цьому полі призведе до вимкнення хуку.
|
||||
settings.githook_name=Ім'я хуку
|
||||
@@ -860,7 +855,7 @@ settings.hook_type=Тип хуку
|
||||
settings.add_slack_hook_desc=Додати <a href="%s">Slack</a>-інтеграцію до вашого репозиторію.
|
||||
settings.add_discord_hook_desc=Додати <a href="%s">Discord</a>-інтеграцію до репозиторію.
|
||||
settings.add_dingtalk_hook_desc=Додати інтеграцію <a href="%s">Dingtalk</a> до вашого репозиторію.
|
||||
settings.slack_token=Жетон
|
||||
settings.slack_token=Токен
|
||||
settings.slack_domain=Домен
|
||||
settings.slack_channel=Канал
|
||||
settings.deploy_keys=Ключи для розгортування
|
||||
@@ -1210,9 +1205,8 @@ config.ssh.rewrite_authorized_keys_at_start=Переписати "authorized_key
|
||||
config.ssh.start_builtin_server=Запустити вбудований сервер
|
||||
config.ssh.listen_host=Слухати хост
|
||||
config.ssh.listen_port=Слухати порт
|
||||
config.ssh.server_ciphers=Серверні шифри
|
||||
config.ssh.server_macs=MAC-адреси сервера
|
||||
config.ssh.server_algorithms=Алгоритми сервера
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
|
||||
config.repo_config=Налаштування репозиторія
|
||||
config.repo.root_path=Кореневий шлях
|
||||
@@ -1224,9 +1218,9 @@ config.repo.preferred_licenses=Бажані ліцензії
|
||||
config.repo.disable_http_git=Вимкнути HTTP Git
|
||||
config.repo.enable_local_path_migration=Увімкнути міграцію з локального шляху
|
||||
config.repo.enable_raw_file_render_mode=Вмикає режим візуалізації неформатованого файлу
|
||||
config.repo.commits_fetch_concurrency=Запросити коміти конкурентно
|
||||
config.repo.editor.line_wrap_extensions=Розширення редактора для перенесення рядків
|
||||
config.repo.editor.previewable_file_modes=Режим редактора попереднього перегляду файлів
|
||||
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=Вивантаження увімкнено
|
||||
config.repo.upload.temp_path=Завантажити тимчасовий шлях
|
||||
config.repo.upload.allowed_types=Дозволені типи вивантаження
|
||||
@@ -1237,8 +1231,8 @@ config.db_config=Налаштування бази даних
|
||||
config.db.type=Тип
|
||||
config.db.host=Хост
|
||||
config.db.name=Ім'я
|
||||
config.db.schema=Схема
|
||||
config.db.schema_helper=(тільки для "postgres")
|
||||
config.db.schema=Schema
|
||||
config.db.schema_helper=(for "postgres" only)
|
||||
config.db.user=Користувач
|
||||
config.db.ssl_mode=Режим SSL
|
||||
config.db.ssl_mode_helper=(тільки для "postgres")
|
||||
@@ -1248,73 +1242,72 @@ config.db.max_open_conns=Максимальна кількість відкри
|
||||
config.db.max_idle_conns=Максимальна кількість бездіяльних з'єднань
|
||||
|
||||
config.security_config=Налаштування безпеки
|
||||
config.security.login_remember_days=Кількість днів запам'ятовування входу
|
||||
config.security.login_remember_days=Login remember days
|
||||
config.security.cookie_remember_name=Запам'ятати куки
|
||||
config.security.cookie_username=Куки імені користувача
|
||||
config.security.cookie_secure=Увімкнути захищені файли куки
|
||||
config.security.reverse_proxy_auth_user=Заголовок аутентифікації на зворотному проксі
|
||||
config.security.enable_login_status_cookie=Увімкнути файли куки стану при вході
|
||||
config.security.login_status_cookie_name=Куки статусу входу
|
||||
config.security.local_network_allowlist=Дозволений список у локальної мережі
|
||||
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=Налаштування електронної пошти
|
||||
config.email_config=Налаштування пошти
|
||||
config.email.enabled=Увімкнено
|
||||
config.email.subject_prefix=Префікс теми
|
||||
config.email.subject_prefix=Subject prefix
|
||||
config.email.host=Хост
|
||||
config.email.from=Від
|
||||
config.email.from=From
|
||||
config.email.user=Користувач
|
||||
config.email.disable_helo=Вимкнути HELO
|
||||
config.email.helo_hostname=Ім'я хосту HELO
|
||||
config.email.skip_verify=Пропустити перевірку сертифіката
|
||||
config.email.use_certificate=Використовувати користувальницький сертифікат
|
||||
config.email.cert_file=Файл сертифікату
|
||||
config.email.key_file=Ключовий файл
|
||||
config.email.use_plain_text=Використовувати звичайний текст
|
||||
config.email.add_plain_text_alt=Додайте простий текст у якості альтернативи
|
||||
config.email.send_test_mail=Надіслати пробний лист
|
||||
config.email.test_mail_failed=Помилка відправлення пробного листа до '%s': %v
|
||||
config.email.test_mail_sent=Пробного листа було відправлено до '%s'.
|
||||
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=Налаштування аутентифікації
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Активувати код підтвердження
|
||||
config.auth.reset_password_code_lives=Термін придатності кода при скиданні пароля
|
||||
config.auth.require_email_confirm=Вимагає підтвердження електронною поштою
|
||||
config.auth.require_sign_in_view=Необхідно авторизуватися для перегляду
|
||||
config.auth.disable_registration=Вимкнути реєстрацію
|
||||
config.auth.enable_registration_captcha=Включити реєстрацію з капчею
|
||||
config.auth.enable_reverse_proxy_authentication=Увімкнути аутентифікацію на зворотному проксі
|
||||
config.auth.enable_reverse_proxy_auto_registration=Увімкнути автоматичну реєстрацію на зворотному проксі
|
||||
config.auth.reverse_proxy_authentication_header=Заголовок аутентифікації на зворотному проксі
|
||||
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=Налаштування користувача
|
||||
config.user.enable_email_notify=Увімкнути сповіщення електронною поштою
|
||||
config.user_config=User configuration
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=Налаштування сесії
|
||||
config.session.provider=Постачальник
|
||||
config.session.provider_config=Налаштування постачальника
|
||||
config.session.cookie_name=Файл куки
|
||||
config.session.https_only=Виключно по HTTPS
|
||||
config.session.gc_interval=Інтервал GC
|
||||
config.session.max_life_time=Максимальний час дії
|
||||
config.session.csrf_cookie_name=Кука CSRF
|
||||
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=Конфігурація кешу
|
||||
config.cache.adapter=Адаптер
|
||||
config.cache.interval=GC Інтервал
|
||||
config.cache.host=Хост
|
||||
config.cache.adapter=Adapter
|
||||
config.cache.interval=GC interval
|
||||
config.cache.host=Host
|
||||
|
||||
config.http_config=Налаштування HTTP
|
||||
config.http.access_control_allow_origin=Контроль доступу дозволяє походження
|
||||
config.http.access_control_allow_origin=Access control allow origin
|
||||
|
||||
config.attachment_config=Налаштування вкладення
|
||||
config.attachment_config=Attachment configuration
|
||||
config.attachment.enabled=Увімкнено
|
||||
config.attachment.path=Шлях
|
||||
config.attachment.allowed_types=Дозволені типи
|
||||
config.attachment.max_size=Ліміт розміру
|
||||
config.attachment.max_files=Ліміт файлів
|
||||
|
||||
config.release_config=Налаштування випуску
|
||||
config.release_config=Release configuration
|
||||
config.release.attachment.enabled=Вкладення увімкнено
|
||||
config.release.attachment.allowed_types=Дозволені типи вкладень
|
||||
config.release.attachment.max_size=Ліміт розміру вкладення
|
||||
@@ -1332,19 +1325,19 @@ config.mirror.default_interval=Інтервал за замовчуванням
|
||||
|
||||
config.webhook_config=Налаштування web-хуків
|
||||
config.webhook.types=Типи
|
||||
config.webhook.deliver_timeout=Час для доставки вичерпано
|
||||
config.webhook.skip_tls_verify=Пропустити перевірку TLS
|
||||
config.webhook.deliver_timeout=Deliver timeout
|
||||
config.webhook.skip_tls_verify=Skip TLS verify
|
||||
|
||||
config.git_config=Налаштування git
|
||||
config.git.disable_diff_highlight=Вимкнути підсвітку синтаксису порівняння
|
||||
config.git.max_diff_lines=Обмеження рядків порівнюючи (для одного файлу)
|
||||
config.git.max_diff_line_characters=Обмеження символів порівнюючи (для одного файлу)
|
||||
config.git.max_diff_files=Обмеження на порівняння файлів (для одного порівняння)
|
||||
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
|
||||
config.git.migrate_timeout=Час для міграції вичерпано
|
||||
config.git.mirror_timeout=Час для отримання дзеркала вичерпано
|
||||
config.git.clone_timeout=Час для клонування вичерпано
|
||||
config.git.pull_timeout=Час для витягання вичерпано
|
||||
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
|
||||
|
||||
config.lfs_config=Налаштування LFS
|
||||
|
||||
@@ -51,14 +51,14 @@ internal_server_error=Lỗi nội bộ máy chủ.
|
||||
install=Cài đặt
|
||||
title=Cài đặt cho lần chạy đầu tiên
|
||||
docker_helper=Nếu bạn đang chạy Gogs bên trong Docker, xin vui lòng đọc <a target="_blank" href="%s">hướng dẫn</a> một cách cẩn thận, trước khi bạn thay đổi bất cứ điều gì trong trang này!
|
||||
requite_db_desc=Gogs yêu cầu MySQL, PostgreSQL, SQLite3 hoặc TiDB (thông qua giao thức MySQL).
|
||||
requite_db_desc=Gogs requires MySQL, PostgreSQL, SQLite3 or TiDB (via MySQL protocol).
|
||||
db_title=Cài đặt database
|
||||
db_type=Loại database
|
||||
host=Host
|
||||
user=User
|
||||
password=Mật khẩu
|
||||
db_name=Tên database
|
||||
db_schema=Lược đồ
|
||||
db_schema=Schema
|
||||
db_helper=Xin vui lòng sử dụng engine INNODB với utf8_general_ci charset cho MySQL.
|
||||
ssl_mode=Chế độ SSL
|
||||
path=Đường dẫn
|
||||
@@ -88,7 +88,6 @@ log_root_path=Đường dẫn Log
|
||||
log_root_path_helper=Thư mục để viết vào tập tin Log.
|
||||
enable_console_mode=Bật chế độ console
|
||||
enable_console_mode_popup=Ngoài chế độ tập tin, còn có in logs vào console.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=Cài đặt tùy chọn
|
||||
email_title=Cài đặt dịch vụ email
|
||||
@@ -317,7 +316,6 @@ delete_email=Xóa
|
||||
email_deletion=Xóa email
|
||||
email_deletion_desc=Xóa địa chỉ email này sẽ xóa các thông tin liên quan đến tài khoản của bạn. Bạn có muốn tiếp tục?
|
||||
email_deletion_success=Đã xóa email thành công!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=Thêm địa chỉ email mới
|
||||
add_email=Thêm email
|
||||
add_email_confirmation_sent=Một email xác nhận mới đã được gửi đến '%s', xin vui lòng kiểm tra hộp thư của bạn trong vòng giờ %d tiếp theo để hoàn tất quá trình xác nhận.
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Xác thực 2 yếu tố đã vô hiệu hoá thành
|
||||
manage_access_token=Quản lý mã truy cập cá nhân
|
||||
generate_new_token=Tạo token mới
|
||||
tokens_desc=Thẻ bạn đã tạo ra mà có thể được sử dụng để truy cập vào các API Gogs.
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=Mỗi token sẽ có thể truy cập vào tài khoản của bạn.
|
||||
token_name=Token Name
|
||||
generate_token=Tạo mã
|
||||
@@ -403,9 +400,9 @@ owner=Chủ sở hữu
|
||||
repo_name=Tên kho
|
||||
repo_name_helper=Một tên kho tốt thường bao gồm các từ khoá ngắn, đáng nhớ và độc đáo.
|
||||
visibility=Hiển thị
|
||||
unlisted=Riêng tư
|
||||
unlisted=Unlisted
|
||||
visiblity_helper=Kho lưu trữ này là <span class="ui red text">riêng tư</span>
|
||||
unlisted_helper=Kho lưu trữ này là<span class="ui red text">riêng tư</span>
|
||||
unlisted_helper=This repository is <span class="ui red text">Unlisted</span>
|
||||
visiblity_helper_forced=Trang web quản trị đã buộc tất cả các kho phần mềm mới được <span class="ui red text">riêng tư</span>
|
||||
visiblity_fork_helper=(Thay đổi giá trị này sẽ ảnh hưởng đến tất cả forks)
|
||||
clone_helper=Cần giúp đỡ clone? Ghé thăm <a target="_blank" href="%s">trợ giúp</a>!
|
||||
@@ -446,7 +443,7 @@ migrate.clone_address_desc=This can be a HTTP/HTTPS/GIT URL.
|
||||
migrate.clone_address_desc_import_local=You're also allowed to migrate a repository by local server path.
|
||||
migrate.permission_denied=You are not allowed to import local repositories.
|
||||
migrate.invalid_local_path=Invalid local path, it does not exist or not a directory.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Địa chỉ sao chép được giải quyết thành một địa chỉ mạng cục bộ bị chặn hoàn toàn.
|
||||
migrate.clone_address_resolved_to_blocked_local_address=Clone address resolved to a local network address that is implicitly blocked.
|
||||
migrate.failed=Migration failed: %v
|
||||
|
||||
mirror_from=mirror of
|
||||
@@ -475,7 +472,7 @@ filter_branch_and_tag=Filter branch or tag
|
||||
branches=Branches
|
||||
tags=Tags
|
||||
issues=Các vấn đề
|
||||
pulls=Yêu cầu kéo về
|
||||
pulls=Yêu cầu khéo về
|
||||
labels=Nhãn
|
||||
milestones=Milestones
|
||||
commits=Commits
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=Các nhánh cũ
|
||||
branches.all=Tất cả các nhánh
|
||||
branches.updated_by=Updated %[1]s by %[2]s
|
||||
branches.change_default_branch=Thay đổi nhánh mặc định
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=Tập tin mới
|
||||
editor.upload_file=Tải tập tin lên
|
||||
@@ -758,7 +753,7 @@ settings.tracker_issue_style=Kiểu Url theo dõi các vấn đề bên ngoài:
|
||||
settings.tracker_issue_style.numeric=Kiểu số
|
||||
settings.tracker_issue_style.alphanumeric=Chữ số
|
||||
settings.tracker_url_format_desc=You can use placeholder <code>{user} {repo} {index}</code> for user name, repository name and issue index.
|
||||
settings.pulls_desc=Bật yêu cầu kéo để chấp nhận đóng góp giữa các kho lưu trữ và các nhánh
|
||||
settings.pulls_desc=Enable pull requests to accept contributions between repositories and branches
|
||||
settings.pulls.ignore_whitespace=Bỏ qua sự thay đổi của khoảng trắng
|
||||
settings.pulls.allow_rebase_merge=Cho phép sử dụng rebase để merge các commit
|
||||
settings.danger_zone=Vùng nguy hiểm
|
||||
@@ -814,8 +809,8 @@ settings.webhook.response=Phản hồi
|
||||
settings.webhook.headers=Tiêu đề
|
||||
settings.webhook.payload=Trả phí
|
||||
settings.webhook.body=Nội dung
|
||||
settings.webhook.err_cannot_parse_payload_url=Không thể phân tích URL: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=URL khối được giải quyết thành một địa chỉ mạng cục bộ bị chặn hoàn toàn.
|
||||
settings.webhook.err_cannot_parse_payload_url=Cannot parse payload URL: %v
|
||||
settings.webhook.url_resolved_to_blocked_local_address=Payload URL resolved to a local network address that is implicitly blocked.
|
||||
settings.githooks_desc=Git Hooks are powered by Git itself, you can edit files of supported hooks in the list below to perform custom operations.
|
||||
settings.githook_edit_desc=If the hook is inactive, sample content will be presented. Leaving content to an empty value will disable this hook.
|
||||
settings.githook_name=Tên Hook
|
||||
@@ -1027,7 +1022,7 @@ dashboard.system_status=Tình trạng quản lý hệ thống
|
||||
dashboard.statistic_info=Gogs database có <b>%d</b> users, <b>%d</b> organizations, <b>%d</b> public keys, <b>%d</b> repositories, <b>%d</b> watches, <b>%d</b> stars, <b>%d</b> actions, <b>%d</b> accesses, <b>%d</b> issues, <b>%d</b> comments, <b>%d</b> social accounts, <b>%d</b> follows, <b>%d</b> mirrors, <b>%d</b> releases, <b>%d</b> login sources, <b>%d</b> webhooks, <b>%d</b> milestones, <b>%d</b> labels, <b>%d</b> hook tasks, <b>%d</b> teams, <b>%d</b> update tasks, <b>%d</b> attachments.
|
||||
dashboard.operation_name=Tên hành động
|
||||
dashboard.operation_switch=Chuyển đổi
|
||||
dashboard.select_operation_to_run=Vui lòng chọn thao tác để chạy
|
||||
dashboard.select_operation_to_run=Please select operation to run
|
||||
dashboard.operation_run=Chạy
|
||||
dashboard.clean_unbind_oauth=Clean unbound OAuthes
|
||||
dashboard.clean_unbind_oauth_success=Tất cả các unbind OAuthes đã được xóa thành công.
|
||||
@@ -1163,7 +1158,7 @@ auths.pam_service_name=Tên dịch vụ PAM
|
||||
auths.enable_auto_register=Cho phép tự động đăng ký
|
||||
auths.edit=Chỉnh sửa cài đặt xác thực
|
||||
auths.activated=Xác thực này đã được kích hoạt
|
||||
auths.default_auth=Xác thực này là nguồn đăng nhập mặc định
|
||||
auths.default_auth=This authentication is default login source
|
||||
auths.new_success=Xác thực mới '%s' đã được thêm vào thành công.
|
||||
auths.update_success=Cài đặt xác thực đã được cập nhật thành công.
|
||||
auths.update=Cập Nhật cài đặt xác thực
|
||||
@@ -1191,64 +1186,63 @@ config.server.tls_min_version=Minimum TLS version
|
||||
config.server.unix_socket_permission=Unix socket permission
|
||||
config.server.local_root_url=URL gốc nội bộ
|
||||
config.server.offline_mode=Chế độ ngoại tuyến
|
||||
config.server.disable_router_log=Vô hiệu hóa log định tuyến
|
||||
config.server.disable_router_log=Disable router log
|
||||
config.server.enable_gzip=Enable Gzip
|
||||
config.server.app_data_path=Đường dẫn dữ liệu ứng dụng
|
||||
config.server.app_data_path=Application data path
|
||||
config.server.load_assets_from_disk=Load assets from disk
|
||||
config.server.landing_url=URL đích
|
||||
config.server.landing_url=Landing URL
|
||||
|
||||
config.ssh_config=Cấu hình SSH
|
||||
config.ssh.enabled=Đã bật
|
||||
config.ssh.domain=Tên miền tiếp xúc
|
||||
config.ssh.port=Cổng công khai
|
||||
config.ssh.root_path=Đường dẫn root
|
||||
config.ssh.keygen_path=Đường dẫn keygen
|
||||
config.ssh.key_test_path=Đường dẫn kiểm tra chính
|
||||
config.ssh.minimum_key_size_check=Kiểm tra kích thước khóa tối thiểu
|
||||
config.ssh.minimum_key_sizes=Kích thước khóa tối thiểu
|
||||
config.ssh.rewrite_authorized_keys_at_start=Viết lại "authorized_keys" khi bắt đầu
|
||||
config.ssh.start_builtin_server=Bắt đầu máy chủ dựng sẵn
|
||||
config.ssh.listen_host=Máy chủ lắng nghe
|
||||
config.ssh.listen_port=Cổng lắng nghe
|
||||
config.ssh.server_ciphers=Mật mã máy chủ
|
||||
config.ssh.server_macs=Địa chỉ MACs máy chủ
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
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=Cấu hình kho
|
||||
config.repo.root_path=Đường dẫn Root
|
||||
config.repo.script_type=Kiểu script
|
||||
config.repo.ansi_chatset=Bộ ký tự ANSI
|
||||
config.repo.force_private=Bắc buộc riêng tư
|
||||
config.repo.max_creation_limit=Giới hạn số lượng tạo
|
||||
config.repo.preferred_licenses=Giấy phép ưu tiên
|
||||
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=Vô hiệu hóa HTTP Git
|
||||
config.repo.enable_local_path_migration=Kích hoạt di cư đường dẫn địa phương
|
||||
config.repo.enable_raw_file_render_mode=Bật chế độ hiển thị tệp thô
|
||||
config.repo.commits_fetch_concurrency=Cam kết tìm nạp đồng thời
|
||||
config.repo.editor.line_wrap_extensions=Tiện ích mở rộng dòng trình chỉnh sửa
|
||||
config.repo.editor.previewable_file_modes=Chế độ tệp có thể xem trước của trình chỉnh sửa
|
||||
config.repo.upload.enabled=Tải lên đã được bật
|
||||
config.repo.upload.temp_path=Đường dẫn tải lên tạm thời
|
||||
config.repo.upload.allowed_types=Các kiểu được phép tải lên
|
||||
config.repo.upload.file_max_size=Giới hạn dung lượng tập tin tải lên
|
||||
config.repo.upload.max_files=Giới hạn số lượng tập tin tải lên
|
||||
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=Cấu hình Cơ sỡ dữ liệu
|
||||
config.db.type=Loại
|
||||
config.db.type=Type
|
||||
config.db.host=Host
|
||||
config.db.name=Tên
|
||||
config.db.schema=Lược đồ
|
||||
config.db.schema_helper=(chỉ cho "postgres")
|
||||
config.db.user=Người dùng
|
||||
config.db.ssl_mode=Chế độ SSL
|
||||
config.db.ssl_mode_helper=(chỉ cho "postgres")
|
||||
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=Đường dẫn
|
||||
config.db.path_helper=(chỉ cho phép "sqlite3")
|
||||
config.db.max_open_conns=Kết nối mở tối đa
|
||||
config.db.max_idle_conns=Kết nối không hoạt động tối đa
|
||||
config.db.max_open_conns=Maximum open connections
|
||||
config.db.max_idle_conns=Maximum idle connections
|
||||
|
||||
config.security_config=Cấu hình bảo mật
|
||||
config.security.login_remember_days=Số ngày lưu trữ đăng nhập
|
||||
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
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Gửi email kiểm tra đến '%s':%v thất bại
|
||||
config.email.test_mail_sent=Email kiểm tra đã được gửi đến '%s'.
|
||||
|
||||
config.auth_config=Cấu hình xác thực
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Yêu cầu xác nhận email
|
||||
@@ -1287,11 +1280,11 @@ config.auth.enable_reverse_proxy_authentication=Enable reverse proxy authenticat
|
||||
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=Cấu hình người dùng
|
||||
config.user.enable_email_notify=Bật thông báo qua Email
|
||||
config.user_config=User configuration
|
||||
config.user.enable_email_notify=Enable email notification
|
||||
|
||||
config.session_config=Cấu hình session
|
||||
config.session.provider=Nhà cung cấp
|
||||
config.session.provider=Provider
|
||||
config.session.provider_config=Provider config
|
||||
config.session.cookie_name=Cookie
|
||||
config.session.https_only=Chỉ HTTPS
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=日志路径
|
||||
log_root_path_helper=存放日志文件的目录
|
||||
enable_console_mode=启用控制台模式
|
||||
enable_console_mode_popup=除了使用文件模式外,还将日志输出到控制台
|
||||
default_branch=默认分支
|
||||
|
||||
optional_title=可选设置
|
||||
email_title=邮件服务设置
|
||||
@@ -317,7 +316,6 @@ delete_email=删除
|
||||
email_deletion=邮箱删除操作
|
||||
email_deletion_desc=删除该邮箱地址将会移除所有相关的信息。是否继续?
|
||||
email_deletion_success=邮箱删除成功!
|
||||
email_deletion_primary=无法删除默认邮箱。
|
||||
add_new_email=添加新的邮箱地址
|
||||
add_email=添加邮箱
|
||||
add_email_confirmation_sent=一封待确认的电子邮件已发送到 '%s',请在 %d 小时内检查您的收件箱,并完成确认过程。
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=两步验证登录关闭成功!
|
||||
manage_access_token=管理个人操作令牌
|
||||
generate_new_token=生成新的令牌
|
||||
tokens_desc=您可以使用这些已生成的令牌来操作 Gogs API。
|
||||
access_token_tips=个人访问令牌可以用作用户名或密码。建议使用 "x-access-token" 作为 Git 应用程序的用户名并使用个人访问令牌作为密码。
|
||||
new_token_desc=目前为止,任何令牌都对您的帐户拥有完整的操作权限。
|
||||
token_name=令牌名称
|
||||
generate_token=生成令牌
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=陈旧分支
|
||||
branches.all=所有分支
|
||||
branches.updated_by=由 %[2]s 更新于 %[1]s
|
||||
branches.change_default_branch=更改默认分支
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=新的文件
|
||||
editor.upload_file=上传文件
|
||||
@@ -1213,7 +1208,6 @@ config.ssh.listen_host=监听主机
|
||||
config.ssh.listen_port=监听端口
|
||||
config.ssh.server_ciphers=服务端加密套件
|
||||
config.ssh.server_macs=服务器 MAC 地址
|
||||
config.ssh.server_algorithms=服务器算法
|
||||
|
||||
config.repo_config=仓库配置
|
||||
config.repo.root_path=根目录
|
||||
@@ -1277,7 +1271,6 @@ config.email.test_mail_failed=发送测试邮件至 '%s' 时失败:%v
|
||||
config.email.test_mail_sent=测试邮件已经发送至 '%s'。
|
||||
|
||||
config.auth_config=认证配置
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=激活用户链接有效期
|
||||
config.auth.reset_password_code_lives=重置密码链接有效期
|
||||
config.auth.require_email_confirm=注册邮件确认
|
||||
|
||||
@@ -88,7 +88,6 @@ 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.
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=可選設置
|
||||
email_title=電子郵件服務設定
|
||||
@@ -317,7 +316,6 @@ delete_email=刪除
|
||||
email_deletion=刪除郵箱
|
||||
email_deletion_desc=刪除該郵箱地址將會移除所有相關的信息。是否繼續?
|
||||
email_deletion_success=成功刪除郵箱!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=添加新的電子郵件地址
|
||||
add_email=添加電子郵件
|
||||
add_email_confirmation_sent=一封待確認的電子郵件已發送到 '%s',請在%d 小時內檢查您的收件箱,並完成確認過程。
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=Two-factor authentication has disabled successfully!
|
||||
manage_access_token=管理個人操作令牌
|
||||
generate_new_token=生成新的令牌
|
||||
tokens_desc=您所產生的token將被用來存取Gogs APIs
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=目前為止,任何令牌都對您的帳戶擁有完整的操作權限。
|
||||
token_name=令牌名稱
|
||||
generate_token=生成令牌
|
||||
@@ -494,8 +491,6 @@ 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
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=New file
|
||||
editor.upload_file=Upload file
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository configuration
|
||||
config.repo.root_path=Root path
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=Failed to send test email to '%s': %v
|
||||
config.email.test_mail_sent=Test email has been sent to '%s'.
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -88,7 +88,6 @@ log_root_path=日誌路徑
|
||||
log_root_path_helper=寫入日誌檔目錄
|
||||
enable_console_mode=開啟主控台模式
|
||||
enable_console_mode_popup=除了使用檔案模式之外, 還要將日誌列印到控制台。
|
||||
default_branch=Default Branch
|
||||
|
||||
optional_title=可選設置
|
||||
email_title=電子郵件服務設定
|
||||
@@ -317,7 +316,6 @@ delete_email=刪除
|
||||
email_deletion=刪除郵箱
|
||||
email_deletion_desc=刪除該郵箱地址將會移除所有相關的信息。是否繼續?
|
||||
email_deletion_success=成功刪除郵箱!
|
||||
email_deletion_primary=Cannot delete primary email address.
|
||||
add_new_email=添加新的電子郵件地址
|
||||
add_email=添加電子郵件
|
||||
add_email_confirmation_sent=一封待確認的電子郵件已發送到 '%s',請在%d 小時內檢查您的收件箱,並完成確認過程。
|
||||
@@ -372,7 +370,6 @@ two_factor_disable_success=您帳戶的兩步驗證已成功停用!
|
||||
manage_access_token=管理個人操作令牌
|
||||
generate_new_token=生成新的令牌
|
||||
tokens_desc=您產生的令牌可以用來存取 Gogs API。
|
||||
access_token_tips=The personal access token may be used as either username or password. It is recommended to use the "x-access-token" as the username and the personal access token as the password for Git applications.
|
||||
new_token_desc=目前為止,任何令牌都對您的帳戶擁有完整的操作權限。
|
||||
token_name=令牌名稱
|
||||
generate_token=生成令牌
|
||||
@@ -494,8 +491,6 @@ branches.stale_branches=陳舊分支
|
||||
branches.all=所有分支
|
||||
branches.updated_by=%[2]s 更新了 %[1]s
|
||||
branches.change_default_branch=變更預設分支
|
||||
branches.default_deletion_not_allowed=Cannot delete the default branch.
|
||||
branches.protected_deletion_not_allowed=Cannot delete a protected branch.
|
||||
|
||||
editor.new_file=開新檔案
|
||||
editor.upload_file=上傳檔案
|
||||
@@ -1212,7 +1207,6 @@ config.ssh.listen_host=Listen host
|
||||
config.ssh.listen_port=Listen port
|
||||
config.ssh.server_ciphers=Server ciphers
|
||||
config.ssh.server_macs=Server MACs
|
||||
config.ssh.server_algorithms=Server algorithms
|
||||
|
||||
config.repo_config=Repository 設定
|
||||
config.repo.root_path=根路徑
|
||||
@@ -1276,7 +1270,6 @@ config.email.test_mail_failed=發送測試郵件至 '%s' 時失敗:%v
|
||||
config.email.test_mail_sent=測試電子郵件已發送到 '%s'。
|
||||
|
||||
config.auth_config=Authentication configuration
|
||||
config.auth_custom_logout_url=Custom logout URL
|
||||
config.auth.activate_code_lives=Activate code lives
|
||||
config.auth.reset_password_code_lives=Reset password code lives
|
||||
config.auth.require_email_confirm=Require email confirmation
|
||||
|
||||
@@ -1,129 +0,0 @@
|
||||
# Docker for Gogs (Next Generation)
|
||||
|
||||
> [!NOTE]
|
||||
> This is the next-generation, security-focused Docker image. This will become the default image distribution (`gogs/gogs:latest`) starting 0.16.0.
|
||||
|
||||

|
||||
|
||||
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.
|
||||
|
||||
## Security-first design
|
||||
|
||||
This Docker image is designed with Kubernetes security best practices in mind:
|
||||
|
||||
- **Runs as non-root by default** - uses UID 1000 and GID 1000
|
||||
- **Minimal image** - only have essential packages installed
|
||||
- **Direct execution** - no process supervisor, just runs `gogs web`
|
||||
- **Supports restrictive security contexts** - ready for Kubernetes
|
||||
|
||||
### Kubernetes Security Context example
|
||||
|
||||
In the deployment YAML, make sure the following snippets exist:
|
||||
|
||||
```yaml
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
securityContext:
|
||||
fsGroup: 1000
|
||||
fsGroupChangePolicy: OnRootMismatch
|
||||
containers:
|
||||
- name: gogs
|
||||
securityContext:
|
||||
runAsNonRoot: true
|
||||
runAsUser: 1000
|
||||
runAsGroup: 1000
|
||||
allowPrivilegeEscalation: false
|
||||
seccompProfile:
|
||||
type: RuntimeDefault
|
||||
capabilities:
|
||||
drop:
|
||||
- ALL
|
||||
```
|
||||
|
||||
### Custom UID/GID at build time
|
||||
|
||||
If you need a different UID/GID, build the image with custom arguments:
|
||||
|
||||
```zsh
|
||||
docker build -f Dockerfile.next --build-arg GOGS_UID=1001 --build-arg GOGS_GID=1001 -t my-gogs .
|
||||
```
|
||||
|
||||
## Usage
|
||||
|
||||
```zsh
|
||||
$ docker pull gogs/gogs:next-latest
|
||||
|
||||
# Create local directory for volume.
|
||||
$ mkdir -p /var/gogs
|
||||
$ chown 1000:1000 /var/gogs
|
||||
|
||||
# Use `docker run` for the first time.
|
||||
$ docker run --name=gogs -p 10022:2222 -p 10880:3000 -v /var/gogs:/data gogs/gogs:next-latest
|
||||
|
||||
# Use `docker start` if you have stopped it.
|
||||
$ docker start gogs
|
||||
```
|
||||
|
||||
Files will be stored in local path `/var/gogs`.
|
||||
|
||||
Directory `/var/gogs` keeps Git repositories and Gogs data:
|
||||
|
||||
```zsh
|
||||
/var/gogs
|
||||
|-- git
|
||||
|-- gogs-repositories
|
||||
|-- gogs
|
||||
|-- conf
|
||||
|-- data
|
||||
|-- log
|
||||
|-- ssh
|
||||
```
|
||||
|
||||
### Using Docker volumes
|
||||
|
||||
```zsh
|
||||
$ docker volume create --name gogs-data
|
||||
$ docker run --name=gogs -p 10022:2222 -p 10880:3000 -v gogs-data:/data gogs/gogs:next-latest
|
||||
```
|
||||
|
||||
## Settings
|
||||
|
||||
### Application
|
||||
|
||||
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**: either `/data/git/gogs-repositories` or `/home/git/gogs-repositories` works.
|
||||
- **Run User**: default `git` (UID 1000)
|
||||
- **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 `2222` inside Docker, **but** you expose it by `10022:2222`, then use `10022` for this value.
|
||||
- **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 in the [default `app.ini`](https://github.com/gogs/gogs/blob/main/conf/app.ini).
|
||||
|
||||
### Git over SSH
|
||||
|
||||
>[!IMPORTANT]
|
||||
> Enable and disable of the builtin SSH server requires restart of the container to take effect.
|
||||
|
||||
To enable Git over SSH access, the use of builtin SSH server is required as follows in your `app.ini`:
|
||||
|
||||
```ini
|
||||
[server]
|
||||
START_SSH_SERVER = true
|
||||
SSH_PORT = 10022 # The port shown in the clone URL
|
||||
SSH_LISTEN_PORT = 2222 # The port that builtin server listens on
|
||||
```
|
||||
|
||||
## Upgrade
|
||||
|
||||
> [!CAUTION]
|
||||
> Make sure you have volumed data to somewhere outside Docker container!
|
||||
|
||||
Steps to upgrade Gogs with Docker:
|
||||
|
||||
- `docker pull gogs/gogs:next-latest`
|
||||
- `docker stop gogs`
|
||||
- `docker rm gogs`
|
||||
- Create a container for the first time and don't forget to do the same for the volume and port mapping.
|
||||
@@ -1,8 +0,0 @@
|
||||
#!/bin/sh
|
||||
set -ex
|
||||
|
||||
# Create data directories at runtime (needed when /data is a mounted volume)
|
||||
mkdir -p /data/gogs /data/git
|
||||
|
||||
# Execute the main command
|
||||
exec "$@"
|
||||
45
docker/Dockerfile.rpi
Normal file
45
docker/Dockerfile.rpi
Normal file
@@ -0,0 +1,45 @@
|
||||
FROM arm32v7/golang:1.14-alpine3.14 AS binarybuilder
|
||||
RUN apk --no-cache --no-progress add --virtual \
|
||||
build-deps \
|
||||
build-base \
|
||||
git \
|
||||
linux-pam-dev
|
||||
|
||||
WORKDIR /gogs.io/gogs
|
||||
COPY . .
|
||||
RUN make build TAGS="cert pam"
|
||||
|
||||
FROM arm32v7/alpine:3.14
|
||||
RUN wget https://github.com/tianon/gosu/releases/download/1.12/gosu-armhf -O /usr/sbin/gosu \
|
||||
&& chmod +x /usr/sbin/gosu \
|
||||
&& echo http://dl-2.alpinelinux.org/alpine/edge/community/ >> /etc/apk/repositories \
|
||||
&& apk --no-cache --no-progress add \
|
||||
bash \
|
||||
ca-certificates \
|
||||
curl \
|
||||
git \
|
||||
linux-pam \
|
||||
openssh \
|
||||
s6 \
|
||||
shadow \
|
||||
socat \
|
||||
tzdata \
|
||||
rsync
|
||||
|
||||
ENV GOGS_CUSTOM /data/gogs
|
||||
|
||||
# Configure LibC Name Service
|
||||
COPY docker/nsswitch.conf /etc/nsswitch.conf
|
||||
|
||||
WORKDIR /app/gogs
|
||||
COPY docker ./docker
|
||||
COPY --from=binarybuilder /gogs.io/gogs/gogs .
|
||||
|
||||
RUN ./docker/finalize.sh
|
||||
|
||||
# Configure Docker Container
|
||||
VOLUME ["/data", "/backup"]
|
||||
EXPOSE 22 3000
|
||||
HEALTHCHECK CMD (nc -z -w 3 localhost 22 && 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/"]
|
||||
@@ -1,24 +1,17 @@
|
||||
# Docker for Gogs
|
||||
|
||||
> [!WARNING]
|
||||
> This is now the legacy Docker image that lacks modern security best practices. It will be published as `gogs/gogs:legacy-latest` starting 0.16.0, and be completely removed no earlier than 0.17.0.
|
||||
>
|
||||
> To use the next-generation, security-focused Docker image, see [docker-next/README.md](../docker-next/README.md).
|
||||
|
||||
> [!IMPORTANT]
|
||||
> Image versions:
|
||||
> - Every released version has its own tag , e.g., `gogs/gogs:0.13.4`, and a tag points to the latest patch of the minor version, e.g., `gogs/gogs:0.13`.
|
||||
> - The `latest` tag is the image version built from the latest `main` branch.
|
||||
|
||||

|
||||
|
||||
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
|
||||
|
||||
ℹ️ Please use `gogs/gogs-rpi` if you're using Raspberry Pis!
|
||||
|
||||
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
|
||||
|
||||
# Create local directory for volume.
|
||||
@@ -31,7 +24,7 @@ $ docker run --name=gogs -p 10022:22 -p 10880:3000 -v /var/gogs:/data gogs/gogs
|
||||
$ docker start gogs
|
||||
```
|
||||
|
||||
> [!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.
|
||||
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.
|
||||
|
||||
@@ -68,7 +61,7 @@ $ docker run --name=gogs -p 10022:22 -p 10880:3000 -v gogs-data:/data gogs/gogs
|
||||
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 `build/finalize.sh` already setup a user with name `git`.
|
||||
- **Run User**: keep it as default value `git` because `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 `10880:3000`, but you still use `3000` for this value.
|
||||
@@ -129,14 +122,6 @@ This container has some options available via environment variables, these optio
|
||||
- <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
|
||||
|
||||
@@ -147,15 +132,14 @@ Automated backups with retention policy:
|
||||
|
||||
## Upgrade
|
||||
|
||||
> [!CAUTION]
|
||||
> Make sure you have volumed data to somewhere outside Docker container!
|
||||
:exclamation::exclamation::exclamation:<span style="color: red">**Make sure you have volumed data to somewhere outside Docker container**</span>:exclamation::exclamation::exclamation:
|
||||
|
||||
Steps to upgrade Gogs with Docker:
|
||||
|
||||
- `docker pull gogs/gogs`
|
||||
- `docker stop gogs`
|
||||
- `docker rm gogs`
|
||||
- Create a container for the first time and don't forget to do the same for the 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
|
||||
|
||||
|
||||
@@ -1,30 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -xe
|
||||
|
||||
# Install gosu
|
||||
if [ "$(uname -m)" = "aarch64" ]; then
|
||||
export arch='arm64'
|
||||
export checksum='c3805a85d17f4454c23d7059bcb97e1ec1af272b90126e79ed002342de08389b'
|
||||
elif [ "$(uname -m)" = "armv7l" ]; then
|
||||
export arch='armhf'
|
||||
export checksum='e5866286277ff2a2159fb9196fea13e0a59d3f1091ea46ddb985160b94b6841b'
|
||||
else
|
||||
export arch='amd64'
|
||||
export checksum='bbc4136d03ab138b1ad66fa4fc051bafc6cc7ffae632b069a53657279a450de3'
|
||||
fi
|
||||
|
||||
wget --quiet https://github.com/tianon/gosu/releases/download/1.17/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
|
||||
@@ -1,20 +0,0 @@
|
||||
#!/bin/sh
|
||||
|
||||
set -xe
|
||||
|
||||
if [ "$(uname -m)" = "aarch64" ]; then
|
||||
export arch='arm64'
|
||||
export checksum='17f325293d08f6f964e0530842e9ef1410dd5f83ee6475b493087391032b0cfd'
|
||||
elif [ "$(uname -m)" = "armv7l" ]; then
|
||||
export arch='arm'
|
||||
export checksum='e5b0261e9f6563ce3ace9e038520eb59d2c77c8d85f2b47ab41e1fe7cf321528'
|
||||
else
|
||||
export arch='amd64'
|
||||
export checksum='a35462ec71410cccfc428072de830e4478bc57a919d0131ef7897759270dff8f'
|
||||
fi
|
||||
|
||||
wget --quiet https://github.com/go-task/task/releases/download/v3.40.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
|
||||
16
docker/finalize.sh
Executable file
16
docker/finalize.sh
Executable file
@@ -0,0 +1,16 @@
|
||||
#!/bin/sh
|
||||
# Finalize the build
|
||||
|
||||
set -x
|
||||
set -e
|
||||
|
||||
# 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 /app/gogs/docker/finalize.sh
|
||||
rm /app/gogs/docker/nsswitch.conf
|
||||
rm /app/gogs/docker/README.md
|
||||
@@ -4,7 +4,6 @@ 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}"
|
||||
@@ -17,13 +16,7 @@ execute_backup_job() {
|
||||
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
|
||||
./gogs backup "${BACKUP_ARGS}" || echo "Error: Backup job returned non-successful code." && exit 1
|
||||
}
|
||||
|
||||
main() {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/bin/sh
|
||||
|
||||
# Cleanup SOCAT services and s6 event folder
|
||||
# Cleanup SOCAT services and s6 event folder
|
||||
rm -rf "$(find /app/gogs/docker/s6/ -name 'event')"
|
||||
rm -rf /app/gogs/docker/s6/SOCAT_*
|
||||
|
||||
@@ -6,7 +6,7 @@ create_socat_links() {
|
||||
while read -r NAME ADDR PORT; do
|
||||
if test -z "$NAME$ADDR$PORT"; then
|
||||
continue
|
||||
elif echo "$USED_PORT" | grep -E "(^|:)$PORT($|:)" > /dev/null; then
|
||||
elif echo $USED_PORT | grep -E "(^|:)$PORT($|:)" > /dev/null; then
|
||||
echo "init:socat | Can't bind linked container ${NAME} to localhost, port ${PORT} already in use" 1>&2
|
||||
else
|
||||
SERV_FOLDER=/app/gogs/docker/s6/SOCAT_${NAME}_${PORT}
|
||||
@@ -79,5 +79,5 @@ fi
|
||||
if [ $# -gt 0 ];then
|
||||
exec "$@"
|
||||
else
|
||||
exec /usr/bin/s6-svscan /app/gogs/docker/s6/
|
||||
exec /bin/s6-svscan /app/gogs/docker/s6/
|
||||
fi
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
## Development
|
||||
|
||||
Install the [Mintlify CLI](https://www.npmjs.com/package/mint) to preview your documentation changes locally. To install, use the following command:
|
||||
|
||||
```
|
||||
pnpm i -g mint
|
||||
```
|
||||
|
||||
Run the following command at the root of your documentation, where your `docs.json` is located:
|
||||
|
||||
```
|
||||
mint dev
|
||||
```
|
||||
|
||||
View your local preview at `http://localhost:3000`.
|
||||
|
||||
## Need help?
|
||||
|
||||
### Troubleshooting
|
||||
|
||||
- If your dev environment isn't running: Run `mint update` to ensure you have the most recent version of the CLI.
|
||||
- If a page loads as a 404: Make sure you are running in a folder with a valid `docs.json`.
|
||||
|
||||
### Resources
|
||||
|
||||
- [Mintlify documentation](https://mintlify.com/docs)
|
||||
21
docs/admin/lfs.md
Normal file
21
docs/admin/lfs.md
Normal file
@@ -0,0 +1,21 @@
|
||||
# Configuring Git Large File Storage (LFS)
|
||||
|
||||
> NOTE: Git LFS is supported in Gogs starting with version 0.12.
|
||||
|
||||
Git LFS works out of box with default configuration for any supported versions.
|
||||
|
||||
## Known limitations
|
||||
|
||||
- Only local storage is supported (i.e. all LFS objects are stored on the same server where Gogs runs), support of Object Storage Service like Amazon S3 is being tracked in [#6065](https://github.com/gogs/gogs/issues/6065).
|
||||
|
||||
## Configuration
|
||||
|
||||
All configuration options for Git LFS are located in [`[lfs]` section](https://github.com/gogs/gogs/blob/44ea9604ed7440c2cf1105d965c2429ee225e8f6/conf/app.ini#L266-L270):
|
||||
|
||||
```ini
|
||||
[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
|
||||
```
|
||||
@@ -1,270 +0,0 @@
|
||||
---
|
||||
title: "Authentication"
|
||||
description: "Integrate with your existing IAM system"
|
||||
icon: "key"
|
||||
---
|
||||
|
||||
Gogs supports authentication through various external sources. Currently supported backends are **LDAP**, **SMTP**, **PAM**, and **HTTP header**. Authentication sources can be configured in two ways:
|
||||
|
||||
- **Admin Panel**: Navigate to **Admin Panel > Authentication Sources**
|
||||
- **Configuration files**: Place `.conf` files in the `custom/conf/auth.d/` directory. Each file describes one source using INI format. Files are loaded once at startup and keyed by `id`. See the "Configuration file" subsection under each backend below for examples.
|
||||
|
||||
## LDAP
|
||||
|
||||
Gogs supports two variants of LDAP authentication: **Simple Auth** and **Bind DN**. In both cases, authentication is performed by attempting to bind to the LDAP server with the User DN and password. The difference is that with Bind DN, a preliminary query is performed (using the Bind DN credentials) to find the User DN first.
|
||||
|
||||
<Tabs>
|
||||
<Tab title="When to use Bind DN">
|
||||
The Bind DN mechanism has these advantages:
|
||||
|
||||
- It may be more secure than blindly attempting to bind with a possibly non-existent User DN.
|
||||
- It supports login with attributes such as email address or phone number. The preliminary search can look up the User DN using `mail` or `mobile` attributes.
|
||||
- It is required when the LDAP does not allow the User DN to query its own attributes or group memberships.
|
||||
|
||||
The downside is that, unless the LDAP allows anonymous queries, it requires a bind DN to be defined and Gogs needs to store its credentials. Gogs currently does not encrypt these credentials.
|
||||
</Tab>
|
||||
<Tab title="When to use Simple Auth">
|
||||
In the ideal situation where you know the exact DN template for your users and the LDAP allows the User DN to query its own attributes, Simple Auth is the simpler option. It requires no separate bind account and no stored credentials beyond what the user provides at login.
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
### Shared fields
|
||||
|
||||
The following fields are shared between both **Bind DN** and **Simple Auth** configurations:
|
||||
|
||||
| Field | Required | Description | Example |
|
||||
|---|---|---|---|
|
||||
| **Authentication Name** | Yes | A friendly name for the authentication source. | `My LDAP` |
|
||||
| **Security Protocol** | Yes | Connection security: Unencrypted, LDAPS, or StartTLS. | `LDAPS` |
|
||||
| **Host** | Yes | The address of the LDAP server. | `ldap.mydomain.com` |
|
||||
| **Port** | Yes | The port for the LDAP connection. Usually `389` for LDAP/StartTLS, `636` for LDAPS. | `389` |
|
||||
| **User Filter** | Yes | An LDAP filter declaring which users can log in. The `%s` parameter is substituted with the login name. | `(&(objectClass=posixAccount)(uid=%s))` |
|
||||
| **Email Attribute** | Yes | The LDAP attribute containing the user's email address. | `mail` |
|
||||
| **Admin Filter** | No | An LDAP filter applied to the User DN context to determine Gogs administrator privileges. | `(memberOf=cn=admins,cn=groups,dc=mydomain,dc=com)` |
|
||||
| **Username Attribute** | No | The LDAP attribute containing the username. Used for the Gogs account name after first sign-in. Leave empty to use the login name from the sign-in form. | `uid` |
|
||||
| **First Name Attribute** | No | The LDAP attribute containing the user's first name. | `givenName` |
|
||||
| **Surname Attribute** | No | The LDAP attribute containing the user's last name. | `sn` |
|
||||
|
||||
<Tip>
|
||||
The **User Filter** field can be used to filter on group membership if the User DN object has `memberOf` attributes. For example:
|
||||
```
|
||||
(&(objectClass=posixAccount)(uid=%s)(memberOf=cn=gogs_users,cn=groups,dc=mydomain,dc=com))
|
||||
```
|
||||
In the Bind DN authenticator, the User Filter can also match against multiple user attributes:
|
||||
```
|
||||
(&(objectClass=Person)(|(uid=%s)(mail=%s)(mobile=%s)))
|
||||
```
|
||||
</Tip>
|
||||
|
||||
### Simple Auth fields
|
||||
|
||||
LDAP via Simple Auth adds the following field:
|
||||
|
||||
| Field | Required | Description | Example |
|
||||
|---|---|---|---|
|
||||
| **User DN** | Yes | A template for the user's DN. The `%s` parameter is substituted with the login name. | `cn=%s,ou=Users,dc=mydomain,dc=com` or `uid=%s,ou=Users,dc=mydomain,dc=com` |
|
||||
|
||||
### Bind DN fields
|
||||
|
||||
LDAP via Bind DN adds the following fields:
|
||||
|
||||
| Field | Required | Description | Example |
|
||||
|---|---|---|---|
|
||||
| **Bind DN** | No | The DN used to bind to the LDAP server when searching for the user. Leave blank for anonymous search. | `cn=Search,dc=mydomain,dc=com` |
|
||||
| **Bind Password** | No | The password for the Bind DN specified above. | -- |
|
||||
| **User Search Base** | Yes | The LDAP base below which user accounts will be searched. | `ou=Users,dc=mydomain,dc=com` |
|
||||
| **Fetch Attributes in Bind DN Context** | No | When enabled, user attributes are retrieved while bound as the Bind DN instead of the User DN. | -- |
|
||||
|
||||
<Warning>
|
||||
The Bind Password is stored in plaintext on the server. Ensure that your Bind DN has the minimum privileges necessary.
|
||||
</Warning>
|
||||
|
||||
### Group membership verification
|
||||
|
||||
You can optionally verify LDAP group membership using the following fields:
|
||||
|
||||
| Field | Required | Description | Example |
|
||||
|---|---|---|---|
|
||||
| **Group Search Base DN** | No | The LDAP base below which groups will be searched. | `ou=group,dc=mydomain,dc=com` |
|
||||
| **Group Filter** | No | An LDAP filter declaring the groups that grant access. | `(\|(cn=gogs_users)(cn=admins))` |
|
||||
| **Group Attribute Containing List of Users** | No | The multi-valued attribute containing the group's members. | `memberUid` or `member` |
|
||||
| **User Attribute Listed in Group** | No | The user attribute referenced in the group membership attributes. | `uid` or `dn` |
|
||||
|
||||
### Configuration files
|
||||
|
||||
LDAP sources can also be defined as `.conf` files in `custom/conf/auth.d/` instead of through the admin panel. Files are loaded at startup and keyed by `id`.
|
||||
|
||||
<Tabs>
|
||||
<Tab title="Bind DN">
|
||||
```ini
|
||||
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 =
|
||||
```
|
||||
</Tab>
|
||||
<Tab title="Simple Auth">
|
||||
```ini
|
||||
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 =
|
||||
```
|
||||
</Tab>
|
||||
</Tabs>
|
||||
|
||||
### FreeIPA examples
|
||||
|
||||
It is possible to use either Bind DN or Simple Auth with FreeIPA. The examples below assume your domain is `domain.com` and that users must be a member of the `gogs_users` group to get access.
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="FreeIPA with Simple Auth">
|
||||
Setting up access using Simple Auth is straightforward:
|
||||
|
||||
```ini
|
||||
user_dn = uid=%s,cn=users,cn=accounts,dc=domain,dc=com
|
||||
filter = (&(objectClass=posixAccount)(memberOf=cn=gogs_users,cn=groups,cn=accounts,dc=domain,dc=com))
|
||||
attribute_username = uid
|
||||
attribute_name = givenName
|
||||
attribute_surname = sn
|
||||
attribute_mail = mail
|
||||
admin_filter = (memberOf=cn=admins,cn=groups,cn=accounts,dc=domain,dc=com)
|
||||
group_enabled = false
|
||||
```
|
||||
</Accordion>
|
||||
<Accordion title="FreeIPA with Bind DN">
|
||||
If you want to allow login by email address, note that FreeIPA by default does not grant anonymous search access to the `mail` attribute. This can be changed in IPA:
|
||||
|
||||
```bash
|
||||
ipa permission-mod --includedattrs=mail 'System: Read User Standard Attributes'
|
||||
```
|
||||
|
||||
Alternatively, you can ask your LDAP administrators for a dedicated bind user account.
|
||||
|
||||
<Info>
|
||||
Allowing email-based login via Bind DN may no longer be necessary. Gogs translates email logins to the corresponding user ID before making the authentication call to the backend LDAP. The only requirement is that the user's **first login** is with their user ID. After that, they can use either user ID or email address.
|
||||
</Info>
|
||||
|
||||
More precisely, Gogs maps the login name onto the user's "Authentication Login Name", which administrators can edit on the user's **Edit Account** page.
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
|
||||
## PAM
|
||||
|
||||
To configure PAM authentication, set the **PAM Service Name** to a filename in `/etc/pam.d/`.
|
||||
|
||||
<Warning>
|
||||
If you want PAM authentication to work with normal Linux passwords, the user running Gogs must have read access to `/etc/shadow`.
|
||||
</Warning>
|
||||
|
||||
### Configuration file
|
||||
|
||||
```ini
|
||||
id = 104
|
||||
type = pam
|
||||
name = System Auth
|
||||
is_activated = true
|
||||
|
||||
[config]
|
||||
service_name = system-auth
|
||||
```
|
||||
|
||||
## SMTP
|
||||
|
||||
SMTP authentication allows Gogs to log in to your SMTP host to verify user credentials. Configure the following fields:
|
||||
|
||||
| Field | Required | Description | Example |
|
||||
|---|---|---|---|
|
||||
| **Authentication Name** | Yes | A name for this authentication source. | `Company SMTP` |
|
||||
| **SMTP Authentication Type** | Yes | The authentication type: `PLAIN` or `LOGIN`. | `PLAIN` |
|
||||
| **Host** | Yes | The address of the SMTP server. | `smtp.mydomain.com` |
|
||||
| **Port** | Yes | The port for the SMTP connection. | `587` |
|
||||
| **Allowed Domains** | No | Restrict login to specific email domains. Separate multiple domains with commas. | `gogs.io,mydomain.com` |
|
||||
| **Enable TLS Encryption** | No | Enable TLS encryption for the authentication connection. | -- |
|
||||
| **Skip TLS Verify** | No | Disable TLS certificate verification. | -- |
|
||||
| **This Authentication is Activated** | No | Enable or disable this authentication method. | -- |
|
||||
|
||||
### Configuration file
|
||||
|
||||
```ini
|
||||
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
|
||||
```
|
||||
|
||||
## HTTP header
|
||||
|
||||
If your reverse proxy already handles user authentication (e.g. via SSO, OAuth, or client certificates), Gogs can trust the authenticated username from an HTTP header. This is configured in `custom/conf/app.ini` under `[auth]`:
|
||||
|
||||
```ini
|
||||
[auth]
|
||||
ENABLE_REVERSE_PROXY_AUTHENTICATION = true
|
||||
REVERSE_PROXY_AUTHENTICATION_HEADER = X-WEBAUTH-USER
|
||||
```
|
||||
|
||||
| Option | Default | Description |
|
||||
|--------|---------|-------------|
|
||||
| `ENABLE_REVERSE_PROXY_AUTHENTICATION` | `false` | Enable reading the authenticated username from a request header. |
|
||||
| `REVERSE_PROXY_AUTHENTICATION_HEADER` | `X-WEBAUTH-USER` | The HTTP header containing the authenticated username. |
|
||||
| `ENABLE_REVERSE_PROXY_AUTO_REGISTRATION` | `false` | Automatically create a Gogs account for users that do not yet exist. |
|
||||
|
||||
When auto-registration is enabled, Gogs creates new accounts with an activated status and a placeholder email address. The user can update their email after first login.
|
||||
|
||||
<Warning>
|
||||
Only enable this feature if Gogs is exclusively accessed through a trusted reverse proxy that sets the header. Exposing Gogs directly to the internet with this enabled would allow anyone to impersonate any user by setting the header themselves.
|
||||
</Warning>
|
||||
@@ -1,67 +0,0 @@
|
||||
---
|
||||
title: "CLI reference"
|
||||
description: "Discover all the commands available in the gogs binary"
|
||||
icon: "terminal"
|
||||
---
|
||||
|
||||
Most people know `gogs web` for starting the server, but the `gogs` binary ships with several other commands that help you manage your instance from the command line.
|
||||
|
||||
Run `gogs --help` at any time to see the full list of available commands, and `gogs <command> --help` for details on a specific command.
|
||||
|
||||
<Tip>
|
||||
Every command accepts a `--config` (`-c`) flag to specify a custom configuration file path. The default is `custom/conf/app.ini`.
|
||||
</Tip>
|
||||
|
||||
## Starting the server
|
||||
|
||||
```bash
|
||||
gogs web
|
||||
```
|
||||
|
||||
The `web` command starts the HTTP server that powers the web UI, the REST API, and Git HTTP operations. Use the `--port` (`-p`) flag to override the default listening port.
|
||||
|
||||
## Administration
|
||||
|
||||
```bash
|
||||
gogs admin <subcommand>
|
||||
```
|
||||
|
||||
The `admin` command lets you perform maintenance tasks without going through the web interface. Available subcommands include:
|
||||
|
||||
| Subcommand | Purpose |
|
||||
|---|---|
|
||||
| `create-user` | Create a new user account (with optional `--admin` flag). |
|
||||
| `delete-inactive-users` | Remove user accounts that were never activated. |
|
||||
| `delete-repository-archives` | Clean up generated repository archive files. |
|
||||
| `delete-missing-repositories` | Remove database records for repositories whose Git data is missing on disk. |
|
||||
| `collect-garbage` | Run `git gc` across all repositories. |
|
||||
| `rewrite-authorized-keys` | Regenerate the SSH `authorized_keys` file from the database. |
|
||||
| `resync-hooks` | Re-write Git server-side hooks for all repositories. |
|
||||
| `reinit-missing-repositories` | Re-initialize bare Git repositories that are missing on disk. |
|
||||
|
||||
<Warning>
|
||||
`rewrite-authorized-keys` replaces the entire `authorized_keys` file. Any non-Gogs keys in that file will be lost.
|
||||
</Warning>
|
||||
|
||||
## Importing data
|
||||
|
||||
```bash
|
||||
gogs import locale --source <dir> --target <dir>
|
||||
```
|
||||
|
||||
The `import` command helps you bring portable data from other Gogs installations into your local instance. Currently the only subcommand is `locale`, which merges locale files from a source directory into a target directory.
|
||||
|
||||
## Backup and restore
|
||||
|
||||
```bash
|
||||
gogs backup
|
||||
gogs restore --from <archive>
|
||||
```
|
||||
|
||||
`backup` dumps the database, repositories, and related files into a single zip archive. `restore` imports everything back from an archive, which is useful for migrating Gogs to another server or switching database engines.
|
||||
|
||||
Both commands support `--database-only` and `--exclude-repos` flags to narrow the scope. `backup` additionally supports `--exclude-mirror-repos` and `--target` to control where the archive is saved.
|
||||
|
||||
## Internal commands
|
||||
|
||||
The `serv` and `hook` commands are used internally by the SSH and Git subsystems. You generally do not need to invoke them directly, but they are the reason Gogs can handle SSH authentication and server-side Git hooks without any external tooling.
|
||||
@@ -1,100 +0,0 @@
|
||||
---
|
||||
title: "Custom templates"
|
||||
description: "Override HTML templates, static files, and inject custom content"
|
||||
icon: "paintbrush"
|
||||
---
|
||||
|
||||
Gogs allows you to customize the appearance and behavior of your instance by overriding HTML templates, replacing static files, and injecting custom content. All customizations are placed under the `custom/` directory and survive code updates.
|
||||
|
||||
<Warning>
|
||||
Be careful when overriding templates and static files, as changes to the upstream Gogs codebase may break your customizations in future releases. Keep track of what you have overridden.
|
||||
</Warning>
|
||||
|
||||
## Override HTML templates
|
||||
|
||||
You can replace any HTML template (including email templates) by placing a customized version under the `custom/templates/` directory.
|
||||
|
||||
<Steps>
|
||||
<Step title="Find the original template">
|
||||
Locate the template file you want to customize in the `templates/` directory of the Gogs source code. For example, to customize the home page, find `templates/home.tmpl`.
|
||||
</Step>
|
||||
<Step title="Copy and edit">
|
||||
Copy the content of the template file and save your edited version to the corresponding path under `custom/templates/`. For example:
|
||||
|
||||
```
|
||||
custom/templates/home.tmpl
|
||||
```
|
||||
</Step>
|
||||
<Step title="Restart Gogs">
|
||||
Edits to custom HTML templates **require restarting Gogs** to take effect.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
<Warning>
|
||||
Override for email templates is disabled when `[server] LOAD_ASSETS_FROM_DISK = true` is set in your configuration. If you are using this setting, email template overrides will not be applied.
|
||||
</Warning>
|
||||
|
||||
## Override static files
|
||||
|
||||
You can replace static files (CSS, JavaScript, images, etc.) by placing customized versions under the `custom/public/` directory.
|
||||
|
||||
For example, to override the site favicon, place your version at:
|
||||
|
||||
```
|
||||
custom/public/img/favicon.png
|
||||
```
|
||||
|
||||
<Tip>
|
||||
Edits to custom static files **do not** require restarting Gogs. Changes take effect immediately.
|
||||
</Tip>
|
||||
|
||||
## Inject custom content
|
||||
|
||||
You can inject custom HTML into the head or footer of every page without touching the main repository source code. This is useful for adding analytics code, custom stylesheets, or other static resources.
|
||||
|
||||
This approach is **recommended whenever possible** because it has the minimum impact on templates and is less likely to break during upgrades.
|
||||
|
||||
The injection points are:
|
||||
|
||||
| File | Location | Purpose |
|
||||
|---|---|---|
|
||||
| `custom/templates/inject/head.tmpl` | Inside `<head>` | Add stylesheets, meta tags, analytics scripts |
|
||||
| `custom/templates/inject/footer.tmpl` | Before `</body>` | Add scripts, tracking code, custom footer content |
|
||||
|
||||
### Example: custom CSS file
|
||||
|
||||
The following example shows how to include a custom CSS file in your Gogs instance:
|
||||
|
||||
<Steps>
|
||||
<Step title="Create the CSS file">
|
||||
Create a file named `custom.css` under the `custom/public/css/` directory:
|
||||
|
||||
```
|
||||
custom/public/css/custom.css
|
||||
```
|
||||
</Step>
|
||||
<Step title="Add your CSS rules">
|
||||
Write your CSS rules in the file. For example:
|
||||
|
||||
```css
|
||||
/* custom/public/css/custom.css */
|
||||
.dashboard .news .news-item .header {
|
||||
color: #333;
|
||||
}
|
||||
|
||||
footer {
|
||||
background-color: #f5f5f5;
|
||||
}
|
||||
```
|
||||
</Step>
|
||||
<Step title="Link the stylesheet">
|
||||
Edit the file `custom/templates/inject/head.tmpl` and add a link to your CSS file:
|
||||
|
||||
```html
|
||||
<link rel="stylesheet" href="/css/custom.css">
|
||||
```
|
||||
</Step>
|
||||
<Step title="Restart Gogs">
|
||||
Restart Gogs to load the new `head.tmpl` injection template. After the initial restart, future edits to the custom CSS file **do not** require restarting Gogs.
|
||||
</Step>
|
||||
</Steps>
|
||||
@@ -1,102 +0,0 @@
|
||||
---
|
||||
title: "Git LFS"
|
||||
description: "Managing large binary files with some magic"
|
||||
icon: "file-arrow-up"
|
||||
---
|
||||
|
||||
Git Large File Storage (LFS) helps manage large binary files in Git repositories. Instead of storing large files directly in the repository, Git LFS replaces them with lightweight pointers while storing the actual file contents on a separate server.
|
||||
|
||||
## How it works
|
||||
|
||||
The Git LFS client communicates with the Gogs server over HTTP/HTTPS. It uses HTTP Basic Authentication to authorize client requests. Once a request is authorized, the Git LFS client receives instructions on where to fetch or push the large file.
|
||||
|
||||
## Server configuration
|
||||
|
||||
Git LFS works out of the box with the default configuration for any supported version of Gogs.
|
||||
|
||||
All configuration options for Git LFS are located in the `[lfs]` section of `custom/conf/app.ini`:
|
||||
|
||||
```ini
|
||||
[lfs]
|
||||
; The storage backend for uploading new objects.
|
||||
STORAGE = local
|
||||
; The root path to store LFS objects on the local file system.
|
||||
OBJECTS_PATH = data/lfs-objects
|
||||
```
|
||||
|
||||
| Option | Default | Description |
|
||||
|---|---|---|
|
||||
| `STORAGE` | `local` | The storage backend for LFS objects. Currently only `local` is supported. |
|
||||
| `OBJECTS_PATH` | `data/lfs-objects` | The root path on the local file system where LFS objects are stored. |
|
||||
|
||||
## Version requirements
|
||||
|
||||
To use Git LFS with your Gogs instance, you need:
|
||||
|
||||
- Gogs version **0.12** or later
|
||||
- [Git LFS client](https://git-lfs.github.com/) version **1.0.1** or later
|
||||
|
||||
## Using Git LFS
|
||||
|
||||
Git LFS endpoints in a Gogs server are automatically discovered by the Git LFS client, so you do not need to configure anything upfront.
|
||||
|
||||
<Steps>
|
||||
<Step title="Install Git LFS">
|
||||
Install the [Git LFS client](https://git-lfs.github.com/) on your machine. Most package managers include it:
|
||||
|
||||
```bash
|
||||
# macOS
|
||||
brew install git-lfs
|
||||
|
||||
# Debian/Ubuntu
|
||||
sudo apt install git-lfs
|
||||
|
||||
# Then initialize Git LFS
|
||||
git lfs install
|
||||
```
|
||||
</Step>
|
||||
<Step title="Track large files">
|
||||
In your repository, tell Git LFS which file patterns to track:
|
||||
|
||||
```bash
|
||||
git lfs track "*.psd"
|
||||
git lfs track "*.zip"
|
||||
```
|
||||
|
||||
This creates or updates a `.gitattributes` file. Make sure to commit it:
|
||||
|
||||
```bash
|
||||
git add .gitattributes
|
||||
git commit -m "Track large files with Git LFS"
|
||||
```
|
||||
</Step>
|
||||
<Step title="Push as usual">
|
||||
Add, commit, and push your files normally. Git LFS will automatically handle the large files:
|
||||
|
||||
```bash
|
||||
git add design.psd
|
||||
git commit -m "Add design file"
|
||||
git push origin main
|
||||
```
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
For a complete walkthrough, see the official [Git LFS Tutorial](https://github.com/git-lfs/git-lfs/wiki/Tutorial).
|
||||
|
||||
## Known limitations
|
||||
|
||||
<Warning>
|
||||
Be aware of the following limitations when using Git LFS with Gogs.
|
||||
</Warning>
|
||||
|
||||
<AccordionGroup>
|
||||
<Accordion title="No S3 or object storage support">
|
||||
Only local storage is supported. All LFS objects are stored on the same server where Gogs runs. Support for Object Storage Services like Amazon S3 is being tracked in [gogs/gogs#6065](https://github.com/gogs/gogs/issues/6065).
|
||||
</Accordion>
|
||||
<Accordion title="SSH remotes use HTTP for LFS transfers">
|
||||
When SSH is set as a remote, Git LFS objects still go through HTTP/HTTPS. Any Git LFS request will prompt for HTTP/HTTPS credentials, so a good Git credentials store is recommended.
|
||||
</Accordion>
|
||||
<Accordion title="No file locking support">
|
||||
File locking is not supported. This feature is being tracked in [gogs/gogs#6064](https://github.com/gogs/gogs/issues/6064).
|
||||
</Accordion>
|
||||
</AccordionGroup>
|
||||
@@ -1,78 +0,0 @@
|
||||
---
|
||||
title: "Localization"
|
||||
description: "Configure interface languages and contribute translations to Gogs"
|
||||
icon: "language"
|
||||
---
|
||||
|
||||
Gogs has supported multiple languages since release `v0.5.0`. Users can change the interface language instantly with a single click from their settings page.
|
||||
|
||||
## Configuration
|
||||
|
||||
Available languages are configured in `custom/conf/app.ini` under the `[i18n]` section. All supported languages are enabled by default:
|
||||
|
||||
```ini
|
||||
[i18n]
|
||||
LANGS = en-US,zh-CN,zh-HK,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT
|
||||
NAMES = English,简体中文,繁體中文,Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano
|
||||
```
|
||||
|
||||
| Option | Description |
|
||||
|---|---|
|
||||
| `LANGS` | A comma-separated list of locale codes to enable. Each entry corresponds to a locale file. |
|
||||
| `NAMES` | A comma-separated list of display names for each language, in the same order as `LANGS`. |
|
||||
|
||||
<Tip>
|
||||
To restrict the available languages, simply remove entries from both `LANGS` and `NAMES`. Make sure the two lists remain in the same order and have the same number of entries.
|
||||
</Tip>
|
||||
|
||||
## Contributing translations
|
||||
|
||||
Translations are managed through Crowdin. To contribute:
|
||||
|
||||
<Steps>
|
||||
<Step title="Sign up">
|
||||
Create an account on the [Gogs Crowdin project](https://crowdin.gogs.io/).
|
||||
</Step>
|
||||
<Step title="Translate">
|
||||
Browse the available strings and fill in untranslated entries for your language.
|
||||
</Step>
|
||||
<Step title="Review">
|
||||
Review existing translations and suggest improvements where needed.
|
||||
</Step>
|
||||
</Steps>
|
||||
|
||||
<Info>
|
||||
When translating, focus on conveying the meaning rather than producing a literal word-for-word translation. It is more important that the translation reads naturally in your language than that it matches the exact words of the English version.
|
||||
</Info>
|
||||
|
||||
### Making corrections
|
||||
|
||||
If you find an incorrectly translated string, you can search for it efficiently on [Crowdin](https://crowdin.gogs.io/) by using its **key name** rather than the translated text.
|
||||
|
||||
For example:
|
||||
- To fix the translation for "Home", search for the key `home` instead of searching for the word "Home".
|
||||
- For keys under a section, search using the format `section:key_name`, such as `home:uname_holder`.
|
||||
|
||||
### Testing translations locally
|
||||
|
||||
If you want to test your translation without making changes to your Git history, place your locale file into:
|
||||
|
||||
```
|
||||
custom/conf/locale/<file>
|
||||
```
|
||||
|
||||
Then restart Gogs to load the updated translations.
|
||||
|
||||
## Custom locale files
|
||||
|
||||
If you are not satisfied with the official translation for your language, you can override individual fields by creating a custom locale file:
|
||||
|
||||
```
|
||||
custom/conf/locale/locale_<lang>.ini
|
||||
```
|
||||
|
||||
For example, to override specific English strings, create `custom/conf/locale/locale_en-US.ini` and add only the keys you want to change. Restart Gogs to apply the changes.
|
||||
|
||||
<Note>
|
||||
Custom locale files only need to contain the keys you want to override, not the entire locale file. Unspecified keys will fall back to the official translation.
|
||||
</Note>
|
||||
@@ -1,130 +0,0 @@
|
||||
---
|
||||
title: "Webhooks"
|
||||
description: "Stay informed for repository events"
|
||||
icon: "bell"
|
||||
---
|
||||
|
||||
Gogs supports moonlanding for repository events, allowing your external services to receive HTTP notifications when actions occur in your repositories. All event pushes are **POST requests**.
|
||||
|
||||
## Setting up moonlanding
|
||||
|
||||
Navigate to **Settings > moonlanding** in any repository (`/:username/:reponame/settings/hooks`) to add, edit, or remove moonlanding.
|
||||
|
||||
## Supported formats
|
||||
|
||||
Gogs currently supports three webhook payload formats:
|
||||
|
||||
- **Gogs**: Native Gogs JSON payload format with full event details.
|
||||
- **Slack**: Slack-compatible payload format for posting to Slack channels.
|
||||
- **Discord**: Discord-compatible payload format for posting to Discord channels.
|
||||
|
||||
## Event headers
|
||||
|
||||
Every webhook delivery includes the following HTTP headers:
|
||||
|
||||
| Header | Description | Example |
|
||||
|---|---|---|
|
||||
| `X-Gogs-Delivery` | A unique UUID identifying this delivery. | `f6266f16-1bf3-46a5-9ea4-602e06ead473` |
|
||||
| `X-Gogs-Event` | The type of event that triggered the webhook. | `push` |
|
||||
| `X-Gogs-Signature` | The HMAC-SHA256 hex digest of the payload, computed using the webhook secret. Use this to verify that the payload was sent by Gogs. | `1921679ed627...` |
|
||||
|
||||
<Tip>
|
||||
Always verify the `X-Gogs-Signature` header in your webhook receiver to ensure the request genuinely originated from your Gogs instance.
|
||||
</Tip>
|
||||
|
||||
## Example payload
|
||||
|
||||
The following is an example of the event information and JSON payload sent by Gogs for a **push** event:
|
||||
|
||||
**Request headers:**
|
||||
|
||||
```http
|
||||
X-Gogs-Delivery: f6266f16-1bf3-46a5-9ea4-602e06ead473
|
||||
X-Gogs-Event: push
|
||||
X-Gogs-Signature: 1921679ed6274399b6514721056337f6913b6ff1cb35a24d340e983745d637f1
|
||||
```
|
||||
|
||||
**Request body:**
|
||||
|
||||
```json
|
||||
{
|
||||
"ref": "refs/heads/main",
|
||||
"before": "28e1879d029cb852e4844d9c718537df08844e03",
|
||||
"after": "bffeb74224043ba2feb48d137756c8a9331c449a",
|
||||
"compare_url": "https://gogs.example.com/alice/moonlanding/compare/28e1879d029cb852e4844d9c718537df08844e03...bffeb74224043ba2feb48d137756c8a9331c449a",
|
||||
"commits": [
|
||||
{
|
||||
"id": "bffeb74224043ba2feb48d137756c8a9331c449a",
|
||||
"message": "Update README\n",
|
||||
"url": "https://gogs.example.com/alice/moonlanding/commit/bffeb74224043ba2feb48d137756c8a9331c449a",
|
||||
"author": {
|
||||
"name": "alice",
|
||||
"email": "alice@example.com",
|
||||
"username": "alice"
|
||||
},
|
||||
"committer": {
|
||||
"name": "alice",
|
||||
"email": "alice@example.com",
|
||||
"username": "alice"
|
||||
},
|
||||
"timestamp": "2017-03-13T13:52:11-04:00"
|
||||
}
|
||||
],
|
||||
"repository": {
|
||||
"id": 140,
|
||||
"owner": {
|
||||
"id": 1,
|
||||
"login": "alice",
|
||||
"full_name": "alice",
|
||||
"email": "alice@example.com",
|
||||
"avatar_url": "https://secure.gravatar.com/avatar/d8b2871cdac01b57bbda23716cc03b96",
|
||||
"username": "alice"
|
||||
},
|
||||
"name": "moonlanding",
|
||||
"full_name": "alice/moonlanding",
|
||||
"description": "",
|
||||
"private": false,
|
||||
"fork": false,
|
||||
"html_url": "https://gogs.example.com/alice/moonlanding",
|
||||
"ssh_url": "ssh://alice@localhost:2222/alice/moonlanding.git",
|
||||
"clone_url": "https://gogs.example.com/alice/moonlanding.git",
|
||||
"website": "",
|
||||
"stars_count": 0,
|
||||
"forks_count": 1,
|
||||
"watchers_count": 1,
|
||||
"open_issues_count": 7,
|
||||
"default_branch": "main",
|
||||
"created_at": "2017-02-26T04:29:06-05:00",
|
||||
"updated_at": "2017-03-13T13:51:58-04:00"
|
||||
},
|
||||
"pusher": {
|
||||
"id": 1,
|
||||
"login": "alice",
|
||||
"full_name": "alice",
|
||||
"email": "alice@example.com",
|
||||
"avatar_url": "https://secure.gravatar.com/avatar/d8b2871cdac01b57bbda23716cc03b96",
|
||||
"username": "alice"
|
||||
},
|
||||
"sender": {
|
||||
"id": 1,
|
||||
"login": "alice",
|
||||
"full_name": "alice",
|
||||
"email": "alice@example.com",
|
||||
"avatar_url": "https://secure.gravatar.com/avatar/d8b2871cdac01b57bbda23716cc03b96",
|
||||
"username": "alice"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Payload fields
|
||||
|
||||
| Field | Description |
|
||||
|---|---|
|
||||
| `ref` | The full Git reference that was pushed to (e.g., `refs/heads/main`). |
|
||||
| `before` | The SHA of the commit at the head of the branch before the push. |
|
||||
| `after` | The SHA of the commit at the head of the branch after the push. |
|
||||
| `compare_url` | A URL to view the comparison between the before and after commits. |
|
||||
| `commits` | An array of commit objects included in the push. |
|
||||
| `repository` | The full repository object with metadata. |
|
||||
| `pusher` | The user who performed the push. |
|
||||
| `sender` | The user who triggered the event. |
|
||||
@@ -1,4 +0,0 @@
|
||||
---
|
||||
title: "Add or update team repository"
|
||||
openapi: "PUT /admin/teams/{teamid}/repos/{reponame}"
|
||||
---
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user