mirror of
https://codeberg.org/forgejo-aneksajo/forgejo-aneksajo.git
synced 2025-07-29 23:00:07 +02:00
Compare commits
85 commits
1f4fe5bfe6
...
c5b3812553
Author | SHA1 | Date | |
---|---|---|---|
![]() |
c5b3812553 | ||
![]() |
0ee62840ff | ||
![]() |
efe77599e6 | ||
![]() |
22855c6238 | ||
![]() |
aa683cb1e2 | ||
![]() |
99d2de8956 | ||
![]() |
4b75d40853 | ||
![]() |
aa6674de6e | ||
![]() |
971f6f7bab | ||
![]() |
1dd3a341a7 | ||
![]() |
592b23f5cd | ||
![]() |
4d65d593ad | ||
![]() |
3cf2111dbf | ||
![]() |
cdc80b9fe6 | ||
![]() |
8065657151 | ||
![]() |
78ff09f63d | ||
![]() |
4c60dfb6f0 | ||
![]() |
5b2ae61a12 | ||
![]() |
e83f575da5 | ||
![]() |
246131cc69 | ||
![]() |
e97e20427d | ||
![]() |
5ff7951560 | ||
![]() |
56a9ea1fc3 | ||
![]() |
82c9a86e83 | ||
![]() |
2845a75cbe | ||
![]() |
2c0cb04776 | ||
![]() |
635770f8a4 | ||
![]() |
0831aeccd1 | ||
![]() |
0c81519d4e | ||
![]() |
3c11eb1e26 | ||
![]() |
24264cb45f | ||
![]() |
f0da2f268a | ||
![]() |
d8bf745749 | ||
![]() |
f42432a9e4 | ||
![]() |
cc193ec4ef | ||
![]() |
3d7458b8cc | ||
![]() |
37a8fa9b5c | ||
![]() |
d13faeccaa | ||
![]() |
57de00e5b9 | ||
![]() |
52485edf64 | ||
![]() |
1d01b58227 | ||
![]() |
2771c2e591 | ||
![]() |
3c7f598230 | ||
![]() |
6ef900899e | ||
![]() |
a9f0bb9f68 | ||
![]() |
3b4f1b3469 | ||
![]() |
77fc232e5b | ||
![]() |
5a7d70658d | ||
![]() |
5046a10aec | ||
![]() |
77db7655e0 | ||
![]() |
c324910c31 | ||
![]() |
57ad0b868d | ||
![]() |
34d2a8531c | ||
![]() |
d260013a51 | ||
![]() |
3168330425 | ||
![]() |
2491bbfa69 | ||
![]() |
ac01c7a384 | ||
![]() |
b615d41457 | ||
![]() |
184bdef340 | ||
![]() |
27276ff26e | ||
![]() |
1b00bf2d26 | ||
![]() |
69bc17ea35 | ||
![]() |
0db9a24a4b | ||
![]() |
4016f2890d | ||
![]() |
c198cb6e65 | ||
![]() |
114d8975b5 | ||
![]() |
7ee19b4c6c | ||
![]() |
faa263d54a | ||
![]() |
0ecf28f37f | ||
![]() |
d10034f4d8 | ||
![]() |
553fc3cc42 | ||
![]() |
6d7bf7369d | ||
![]() |
eb83b05430 | ||
![]() |
61e345cd36 | ||
![]() |
5c5e1c87ba | ||
![]() |
7546c4acf3 | ||
![]() |
25e81d05f0 | ||
![]() |
054537989f | ||
![]() |
348e0e1fac | ||
![]() |
627634a76e | ||
![]() |
28db11f2e7 | ||
![]() |
6d0bf55f05 | ||
![]() |
2d1e163913 | ||
![]() |
26b7c6b86a | ||
![]() |
05056b8aa2 |
196 changed files with 8024 additions and 1200 deletions
|
@ -13,6 +13,8 @@ runs:
|
|||
run: |
|
||||
export DEBIAN_FRONTEND=noninteractive
|
||||
echo "deb http://deb.debian.org/debian/ ${RELEASE} main" > "/etc/apt/sources.list.d/${RELEASE}.list"
|
||||
wget -O- http://neuro.debian.net/lists/bookworm.de-fzj.libre | tee /etc/apt/sources.list.d/neurodebian.sources.list
|
||||
apt-key adv --recv-keys --keyserver hkps://keyserver.ubuntu.com 0xA5D32F012649A5A9
|
||||
env:
|
||||
RELEASE: ${{inputs.release}}
|
||||
- name: install packages
|
||||
|
@ -24,6 +26,7 @@ runs:
|
|||
- name: remove temporary package list to prevent using it in other steps
|
||||
run: |
|
||||
rm "/etc/apt/sources.list.d/${RELEASE}.list"
|
||||
rm "/etc/apt/sources.list.d/neurodebian.sources.list"
|
||||
apt-get update -qq
|
||||
env:
|
||||
RELEASE: ${{inputs.release}}
|
||||
|
|
|
@ -3,7 +3,7 @@ runs:
|
|||
steps:
|
||||
- run: |
|
||||
su forgejo -c 'make deps-backend'
|
||||
- uses: actions/cache@v4
|
||||
- uses: https://data.forgejo.org/actions/cache@v4
|
||||
id: cache-backend
|
||||
with:
|
||||
path: ${{github.workspace}}/gitea
|
||||
|
|
|
@ -48,7 +48,7 @@ runs:
|
|||
|
||||
- name: "Restore Go dependencies from cache or mark for later caching"
|
||||
id: cache-deps
|
||||
uses: actions/cache@v4
|
||||
uses: https://data.forgejo.org/actions/cache@v4
|
||||
with:
|
||||
key: setup-cache-go-deps-${{ runner.os }}-${{ inputs.username }}-${{ steps.go-version.outputs.go_version }}-${{ hashFiles('go.sum', 'go.mod') }}
|
||||
restore-keys: |
|
||||
|
|
|
@ -19,7 +19,7 @@ runs:
|
|||
set -ex
|
||||
toolchain=$(grep -oP '(?<=toolchain ).+' go.mod)
|
||||
version=$(go version | cut -d' ' -f3)
|
||||
if [ "$toolchain" != "$version" ]; then
|
||||
echo "go version mismatch: $toolchain <> $version"
|
||||
if dpkg --compare-versions ${version#go} lt ${toolchain#go}; then
|
||||
echo "go version too low: $toolchain >= $version"
|
||||
exit 1
|
||||
fi
|
||||
|
|
41
.forgejo/workflows/build-oci-image.yml
Normal file
41
.forgejo/workflows/build-oci-image.yml
Normal file
|
@ -0,0 +1,41 @@
|
|||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'forgejo'
|
||||
tags:
|
||||
- '*-git-annex*'
|
||||
|
||||
jobs:
|
||||
build-oci-image:
|
||||
runs-on: docker
|
||||
strategy:
|
||||
matrix:
|
||||
type: ["rootful", "rootless"]
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0 # fetch the full history so that the Forgejo version is determined properly
|
||||
- name: Determine registry and username
|
||||
id: determine-registry-and-username
|
||||
run: |
|
||||
echo "registry=${GITHUB_SERVER_URL#https://}" >> "$GITHUB_OUTPUT"
|
||||
echo "username=${GITHUB_REPOSITORY%/*}" >> "$GITHUB_OUTPUT"
|
||||
- name: Install Docker
|
||||
run: curl -fsSL https://get.docker.com | sh
|
||||
- name: Set up QEMU
|
||||
uses: docker/setup-qemu-action@v3
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v3
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
registry: ${{ steps.determine-registry-and-username.outputs.registry }}
|
||||
username: ${{ steps.determine-registry-and-username.outputs.username }}
|
||||
password: ${{ secrets.REGISTRY_TOKEN }}
|
||||
- name: Build and push
|
||||
uses: docker/build-push-action@v6
|
||||
with:
|
||||
context: .
|
||||
file: ${{ (matrix.type == 'rootful' && 'Dockerfile') || (matrix.type == 'rootless' && 'Dockerfile.rootless') }}
|
||||
push: true
|
||||
tags: ${{ steps.determine-registry-and-username.outputs.registry }}/${{ github.repository }}:${{ github.ref_name }}${{ (matrix.type == 'rootful' && ' ') || (matrix.type == 'rootless' && '-rootless') }}
|
|
@ -25,7 +25,7 @@ jobs:
|
|||
if: vars.ROLE == 'forgejo-coding'
|
||||
runs-on: lxc-bookworm
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: https://data.forgejo.org/actions/checkout@v4
|
||||
|
||||
- id: forgejo
|
||||
uses: https://data.forgejo.org/actions/setup-forgejo@v2.0.4
|
||||
|
|
|
@ -33,7 +33,7 @@ jobs:
|
|||
# root is used for testing, allow it
|
||||
if: vars.ROLE == 'forgejo-integration' || github.repository_owner == 'root'
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: https://data.forgejo.org/actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 0
|
||||
|
||||
|
|
|
@ -37,11 +37,11 @@ jobs:
|
|||
container:
|
||||
image: data.forgejo.org/oci/node:20-bookworm
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: https://data.forgejo.org/actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: '0'
|
||||
show-progress: 'false'
|
||||
- uses: https://code.forgejo.org/actions/cascading-pr@v2.2.0
|
||||
- uses: https://data.forgejo.org/actions/cascading-pr@v2.2.0
|
||||
with:
|
||||
origin-url: ${{ env.GITHUB_SERVER_URL }}
|
||||
origin-repo: ${{ github.repository }}
|
||||
|
|
|
@ -39,7 +39,7 @@ jobs:
|
|||
runs-on: lxc-bookworm
|
||||
if: vars.DOER != '' && vars.FORGEJO != '' && vars.TO_OWNER != '' && vars.FROM_OWNER != '' && secrets.TOKEN != ''
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: https://data.forgejo.org/actions/checkout@v4
|
||||
|
||||
- name: copy & sign
|
||||
uses: https://data.forgejo.org/forgejo/forgejo-build-publish/publish@v5.3.1
|
||||
|
|
|
@ -10,7 +10,6 @@ on:
|
|||
|
||||
jobs:
|
||||
backend-checks:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
container:
|
||||
image: 'data.forgejo.org/oci/node:20-bookworm'
|
||||
|
@ -27,7 +26,6 @@ jobs:
|
|||
- run: su forgejo -c 'make --always-make -j$(nproc) lint-backend tidy-check swagger-check fmt-check swagger-validate' # ensure the "go-licenses" make target runs
|
||||
- uses: ./.forgejo/workflows-composite/build-backend
|
||||
frontend-checks:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
container:
|
||||
image: 'data.forgejo.org/oci/node:20-bookworm'
|
||||
|
@ -46,7 +44,7 @@ jobs:
|
|||
apt-get update -qq
|
||||
apt-get -q install -qq -y zstd
|
||||
- name: "Cache frontend build for playwright testing"
|
||||
uses: actions/cache/save@v4
|
||||
uses: https://data.forgejo.org/actions/cache/save@v4
|
||||
with:
|
||||
path: ${{github.workspace}}/public/assets
|
||||
key: frontend-build-${{ github.sha }}
|
||||
|
@ -104,7 +102,7 @@ jobs:
|
|||
fetch-depth: 20
|
||||
- uses: ./.forgejo/workflows-composite/setup-env
|
||||
- name: "Restore frontend build"
|
||||
uses: actions/cache/restore@v4
|
||||
uses: https://data.forgejo.org/actions/cache/restore@v4
|
||||
id: cache-frontend
|
||||
with:
|
||||
path: ${{github.workspace}}/public/assets
|
||||
|
@ -176,7 +174,6 @@ jobs:
|
|||
TAGS: bindata
|
||||
TEST_REDIS_SERVER: cacher:${{ matrix.cacher.port }}
|
||||
test-mysql:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
needs: [backend-checks, frontend-checks]
|
||||
container:
|
||||
|
@ -199,15 +196,13 @@ jobs:
|
|||
- name: install dependencies & git >= 2.42
|
||||
uses: ./.forgejo/workflows-composite/apt-install-from
|
||||
with:
|
||||
packages: git git-lfs
|
||||
packages: git git-annex-standalone git-lfs
|
||||
- uses: ./.forgejo/workflows-composite/build-backend
|
||||
- run: |
|
||||
su forgejo -c 'make test-mysql-migration test-mysql'
|
||||
timeout-minutes: 120
|
||||
env:
|
||||
USE_REPO_TEST_DIR: 1
|
||||
test-pgsql:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
needs: [backend-checks, frontend-checks]
|
||||
container:
|
||||
|
@ -236,17 +231,15 @@ jobs:
|
|||
- name: install dependencies & git >= 2.42
|
||||
uses: ./.forgejo/workflows-composite/apt-install-from
|
||||
with:
|
||||
packages: git git-lfs
|
||||
packages: git git-annex-standalone git-lfs
|
||||
- uses: ./.forgejo/workflows-composite/build-backend
|
||||
- run: |
|
||||
su forgejo -c 'make test-pgsql-migration test-pgsql'
|
||||
timeout-minutes: 120
|
||||
env:
|
||||
RACE_ENABLED: true
|
||||
USE_REPO_TEST_DIR: 1
|
||||
TEST_LDAP: 1
|
||||
test-sqlite:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
needs: [backend-checks, frontend-checks]
|
||||
container:
|
||||
|
@ -258,25 +251,21 @@ jobs:
|
|||
- name: install dependencies & git >= 2.42
|
||||
uses: ./.forgejo/workflows-composite/apt-install-from
|
||||
with:
|
||||
packages: git git-lfs
|
||||
packages: git git-annex-standalone git-lfs
|
||||
- uses: ./.forgejo/workflows-composite/build-backend
|
||||
- run: |
|
||||
su forgejo -c 'make test-sqlite-migration test-sqlite'
|
||||
timeout-minutes: 120
|
||||
env:
|
||||
TAGS: sqlite sqlite_unlock_notify
|
||||
RACE_ENABLED: true
|
||||
TEST_TAGS: sqlite sqlite_unlock_notify
|
||||
USE_REPO_TEST_DIR: 1
|
||||
security-check:
|
||||
if: vars.ROLE == 'forgejo-coding' || vars.ROLE == 'forgejo-testing'
|
||||
runs-on: docker
|
||||
needs:
|
||||
- test-sqlite
|
||||
- test-pgsql
|
||||
- test-mysql
|
||||
- test-remote-cacher
|
||||
- test-unit
|
||||
container:
|
||||
image: 'data.forgejo.org/oci/node:20-bookworm'
|
||||
options: --tmpfs /tmp:exec,noatime
|
||||
|
|
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -72,6 +72,7 @@ cpu.out
|
|||
/tests/e2e/reports
|
||||
/tests/e2e/test-artifacts
|
||||
/tests/e2e/test-snapshots
|
||||
/tests/e2e/.auth
|
||||
/tests/*.ini
|
||||
/tests/**/*.git/**/*.sample
|
||||
/node_modules
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM --platform=$BUILDPLATFORM code.forgejo.org/oci/xx AS xx
|
||||
FROM --platform=$BUILDPLATFORM data.forgejo.org/oci/xx AS xx
|
||||
|
||||
FROM --platform=$BUILDPLATFORM code.forgejo.org/oci/golang:1.23-alpine3.20 as build-env
|
||||
FROM --platform=$BUILDPLATFORM data.forgejo.org/oci/golang:1.23-alpine3.20 as build-env
|
||||
|
||||
ARG GOPROXY
|
||||
ENV GOPROXY=${GOPROXY:-direct}
|
||||
|
@ -51,7 +51,7 @@ RUN chmod 755 /tmp/local/usr/bin/entrypoint \
|
|||
/go/src/code.gitea.io/gitea/environment-to-ini
|
||||
RUN chmod 644 /go/src/code.gitea.io/gitea/contrib/autocompletion/bash_autocomplete
|
||||
|
||||
FROM code.forgejo.org/oci/alpine:3.20
|
||||
FROM data.forgejo.org/oci/alpine:3.20
|
||||
ARG RELEASE_VERSION
|
||||
LABEL maintainer="contact@forgejo.org" \
|
||||
org.opencontainers.image.authors="Forgejo" \
|
||||
|
@ -78,6 +78,7 @@ RUN apk --no-cache add \
|
|||
sqlite \
|
||||
su-exec \
|
||||
gnupg \
|
||||
git-annex \
|
||||
&& rm -rf /var/cache/apk/*
|
||||
|
||||
RUN addgroup \
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
FROM --platform=$BUILDPLATFORM code.forgejo.org/oci/xx AS xx
|
||||
FROM --platform=$BUILDPLATFORM data.forgejo.org/oci/xx AS xx
|
||||
|
||||
FROM --platform=$BUILDPLATFORM code.forgejo.org/oci/golang:1.23-alpine3.20 as build-env
|
||||
FROM --platform=$BUILDPLATFORM data.forgejo.org/oci/golang:1.23-alpine3.20 as build-env
|
||||
|
||||
ARG GOPROXY
|
||||
ENV GOPROXY=${GOPROXY:-direct}
|
||||
|
@ -49,7 +49,7 @@ RUN chmod 755 /tmp/local/usr/local/bin/docker-entrypoint.sh \
|
|||
/go/src/code.gitea.io/gitea/environment-to-ini
|
||||
RUN chmod 644 /go/src/code.gitea.io/gitea/contrib/autocompletion/bash_autocomplete
|
||||
|
||||
FROM code.forgejo.org/oci/alpine:3.20
|
||||
FROM data.forgejo.org/oci/alpine:3.20
|
||||
LABEL maintainer="contact@forgejo.org" \
|
||||
org.opencontainers.image.authors="Forgejo" \
|
||||
org.opencontainers.image.url="https://forgejo.org" \
|
||||
|
@ -71,6 +71,7 @@ RUN apk --no-cache add \
|
|||
git \
|
||||
curl \
|
||||
gnupg \
|
||||
git-annex \
|
||||
&& rm -rf /var/cache/apk/*
|
||||
|
||||
RUN addgroup \
|
||||
|
|
4
Makefile
4
Makefile
|
@ -8,7 +8,7 @@ self := $(location)
|
|||
@tmpdir=`mktemp --tmpdir -d` ; \
|
||||
echo Using temporary directory $$tmpdir for test repositories ; \
|
||||
USE_REPO_TEST_DIR= $(MAKE) -f $(self) --no-print-directory REPO_TEST_DIR=$$tmpdir/ $@ ; \
|
||||
STATUS=$$? ; rm -r "$$tmpdir" ; exit $$STATUS
|
||||
STATUS=$$? ; chmod -R +w "$$tmpdir" && rm -r "$$tmpdir" ; exit $$STATUS
|
||||
|
||||
else
|
||||
|
||||
|
@ -104,7 +104,7 @@ else
|
|||
FORGEJO_VERSION_API ?= $(GITEA_VERSION)+${GITEA_COMPATIBILITY}
|
||||
else
|
||||
# drop the "g" prefix prepended by git describe to the commit hash
|
||||
FORGEJO_VERSION ?= $(shell git describe --exclude '*-test' --tags --always | sed 's/^v//' | sed 's/\-g/-/')+${GITEA_COMPATIBILITY}
|
||||
FORGEJO_VERSION ?= $(shell git describe --exclude '*-test' --tags --always | sed 's/^v//' | sed 's/\-g/-/2')+${GITEA_COMPATIBILITY}
|
||||
endif
|
||||
endif
|
||||
FORGEJO_VERSION_MAJOR=$(shell echo $(FORGEJO_VERSION) | sed -e 's/\..*//')
|
||||
|
|
|
@ -59,9 +59,9 @@ func initRemoveTags() {
|
|||
oldnew := []string{}
|
||||
for _, el := range []string{
|
||||
"email@example.com", "correu@example.com", "epasts@domens.lv", "email@exemplo.com", "eposta@ornek.com", "email@példa.hu", "email@esempio.it",
|
||||
"user", "utente", "lietotājs", "gebruiker", "usuário", "Benutzer", "Bruker", "bruger",
|
||||
"user", "utente", "lietotājs", "gebruiker", "usuário", "Benutzer", "Bruker", "bruger", "użytkownik",
|
||||
"server", "servidor", "kiszolgáló", "serveris",
|
||||
"label", "etichetta", "etiķete", "rótulo", "Label", "utilizador", "etiket", "iezīme",
|
||||
"label", "etichetta", "etiķete", "rótulo", "Label", "utilizador", "etiket", "iezīme", "etykieta",
|
||||
} {
|
||||
oldnew = append(oldnew, "<"+el+">", "REPLACED-TAG")
|
||||
}
|
||||
|
|
76
cmd/serv.go
76
cmd/serv.go
|
@ -38,6 +38,7 @@ import (
|
|||
|
||||
const (
|
||||
lfsAuthenticateVerb = "git-lfs-authenticate"
|
||||
gitAnnexShellVerb = "git-annex-shell"
|
||||
)
|
||||
|
||||
// CmdServ represents the available serv sub-command.
|
||||
|
@ -79,6 +80,7 @@ var (
|
|||
"git-upload-archive": perm.AccessModeRead,
|
||||
"git-receive-pack": perm.AccessModeWrite,
|
||||
lfsAuthenticateVerb: perm.AccessModeNone,
|
||||
gitAnnexShellVerb: perm.AccessModeNone, // annex permissions are enforced by GIT_ANNEX_SHELL_READONLY, rather than the Gitea API
|
||||
}
|
||||
alphaDashDotPattern = regexp.MustCompile(`[^\w-\.]`)
|
||||
)
|
||||
|
@ -212,6 +214,28 @@ func runServ(c *cli.Context) error {
|
|||
}
|
||||
}
|
||||
|
||||
if verb == gitAnnexShellVerb {
|
||||
if !setting.Annex.Enabled {
|
||||
return fail(ctx, "Unknown git command", "git-annex request over SSH denied, git-annex support is disabled")
|
||||
}
|
||||
|
||||
if len(words) < 3 {
|
||||
return fail(ctx, "Too few arguments", "Too few arguments in cmd: %s", cmd)
|
||||
}
|
||||
|
||||
// git-annex always puts the repo in words[2], unlike most other
|
||||
// git subcommands; and it sometimes names repos like /~/, as if
|
||||
// $HOME should get expanded while also being rooted. e.g.:
|
||||
// git-annex-shell 'configlist' '/~/user/repo'
|
||||
// git-annex-shell 'sendkey' '/user/repo 'key'
|
||||
repoPath = words[2]
|
||||
repoPath = strings.TrimPrefix(repoPath, "/")
|
||||
repoPath = strings.TrimPrefix(repoPath, "~/")
|
||||
}
|
||||
|
||||
// prevent directory traversal attacks
|
||||
repoPath = filepath.Clean("/" + repoPath)[1:]
|
||||
|
||||
rr := strings.SplitN(repoPath, "/", 2)
|
||||
if len(rr) != 2 {
|
||||
return fail(ctx, "Invalid repository path", "Invalid repository path: %v", repoPath)
|
||||
|
@ -225,6 +249,18 @@ func runServ(c *cli.Context) error {
|
|||
// so that username and reponame are not affected.
|
||||
repoPath = strings.ToLower(strings.TrimSpace(repoPath))
|
||||
|
||||
// put the sanitized repoPath back into the argument list for later
|
||||
if verb == gitAnnexShellVerb {
|
||||
// git-annex-shell demands an absolute path
|
||||
absRepoPath, err := filepath.Abs(filepath.Join(setting.RepoRootPath, repoPath))
|
||||
if err != nil {
|
||||
return fail(ctx, "Error locating repoPath", "%v", err)
|
||||
}
|
||||
words[2] = absRepoPath
|
||||
} else {
|
||||
words[1] = repoPath
|
||||
}
|
||||
|
||||
if alphaDashDotPattern.MatchString(reponame) {
|
||||
return fail(ctx, "Invalid repo name", "Invalid repo name: %s", reponame)
|
||||
}
|
||||
|
@ -303,21 +339,45 @@ func runServ(c *cli.Context) error {
|
|||
return nil
|
||||
}
|
||||
|
||||
var gitcmd *exec.Cmd
|
||||
gitBinPath := filepath.Dir(git.GitExecutable) // e.g. /usr/bin
|
||||
gitBinVerb := filepath.Join(gitBinPath, verb) // e.g. /usr/bin/git-upload-pack
|
||||
if _, err := os.Stat(gitBinVerb); err != nil {
|
||||
gitBinVerb, err := exec.LookPath(verb)
|
||||
if err != nil {
|
||||
// if the command "git-upload-pack" doesn't exist, try to split "git-upload-pack" to use the sub-command with git
|
||||
// ps: Windows only has "git.exe" in the bin path, so Windows always uses this way
|
||||
// ps: git-annex-shell and other extensions may not necessarily be in gitBinPath,
|
||||
// but '{gitBinPath}/git annex-shell' should be able to find them on $PATH.
|
||||
verbFields := strings.SplitN(verb, "-", 2)
|
||||
if len(verbFields) == 2 {
|
||||
// use git binary with the sub-command part: "C:\...\bin\git.exe", "upload-pack", ...
|
||||
gitcmd = exec.CommandContext(ctx, git.GitExecutable, verbFields[1], repoPath)
|
||||
gitBinVerb = git.GitExecutable
|
||||
words = append([]string{verbFields[1]}, words...)
|
||||
}
|
||||
}
|
||||
if gitcmd == nil {
|
||||
// by default, use the verb (it has been checked above by allowedCommands)
|
||||
gitcmd = exec.CommandContext(ctx, gitBinVerb, repoPath)
|
||||
|
||||
// by default, use the verb (it has been checked above by allowedCommands)
|
||||
gitcmd := exec.CommandContext(ctx, gitBinVerb, words[1:]...)
|
||||
|
||||
if verb == gitAnnexShellVerb {
|
||||
// This doesn't get its own isolated section like LFS does, because LFS
|
||||
// is handled by internal Gitea routines, but git-annex has to be shelled out
|
||||
// to like other git subcommands, so we need to build up gitcmd.
|
||||
|
||||
// TODO: does this work on Windows?
|
||||
gitcmd.Env = append(gitcmd.Env,
|
||||
// "If set, disallows running git-shell to handle unknown commands."
|
||||
// - git-annex-shell(1)
|
||||
"GIT_ANNEX_SHELL_LIMITED=True",
|
||||
// "If set, git-annex-shell will refuse to run commands
|
||||
// that do not operate on the specified directory."
|
||||
// - git-annex-shell(1)
|
||||
fmt.Sprintf("GIT_ANNEX_SHELL_DIRECTORY=%s", words[2]),
|
||||
)
|
||||
if results.UserMode < perm.AccessModeWrite {
|
||||
// "If set, disallows any action that could modify the git-annex repository."
|
||||
// - git-annex-shell(1)
|
||||
// We set this when the backend API has told us that we don't have write permission to this repo.
|
||||
log.Debug("Setting GIT_ANNEX_SHELL_READONLY=True")
|
||||
gitcmd.Env = append(gitcmd.Env, "GIT_ANNEX_SHELL_READONLY=True")
|
||||
}
|
||||
}
|
||||
|
||||
process.SetSysProcAttribute(gitcmd)
|
||||
|
|
11
cmd/web.go
11
cmd/web.go
|
@ -9,6 +9,7 @@ import (
|
|||
"net"
|
||||
"net/http"
|
||||
"os"
|
||||
"os/exec"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
"strings"
|
||||
|
@ -247,6 +248,12 @@ func runWeb(ctx *cli.Context) error {
|
|||
createPIDFile(ctx.String("pid"))
|
||||
}
|
||||
|
||||
if setting.Annex.Enabled {
|
||||
if _, err := exec.LookPath("git-annex"); err != nil {
|
||||
log.Fatal("You have enabled git-annex support but git-annex is not installed. Please make sure that Forgejo's PATH contains the git-annex executable.")
|
||||
}
|
||||
}
|
||||
|
||||
if !setting.InstallLock {
|
||||
if err := serveInstall(ctx); err != nil {
|
||||
return err
|
||||
|
@ -311,6 +318,10 @@ func listen(m http.Handler, handleRedirector bool) error {
|
|||
log.Info("LFS server enabled")
|
||||
}
|
||||
|
||||
if setting.Annex.Enabled {
|
||||
log.Info("git-annex enabled")
|
||||
}
|
||||
|
||||
var err error
|
||||
switch setting.Protocol {
|
||||
case setting.HTTP:
|
||||
|
|
|
@ -2678,6 +2678,17 @@ LEVEL = Info
|
|||
;; Limit the number of concurrent upload/download operations within a batch
|
||||
;BATCH_OPERATION_CONCURRENCY = 8
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;[annex]
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
;; Whether git-annex is enabled; defaults to false
|
||||
;ENABLED = false
|
||||
;; Whether to disable p2phttp support; default is the same as repository.DISABLE_HTTP_GIT
|
||||
;DISABLE_P2PHTTP = false
|
||||
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;; settings for packages, will override storage setting
|
||||
|
|
2
go.mod
2
go.mod
|
@ -2,7 +2,7 @@ module code.gitea.io/gitea
|
|||
|
||||
go 1.23
|
||||
|
||||
toolchain go1.23.4
|
||||
toolchain go1.23.5
|
||||
|
||||
require (
|
||||
code.forgejo.org/f3/gof3/v3 v3.10.2
|
||||
|
|
|
@ -282,27 +282,22 @@ func UpdateRunner(ctx context.Context, r *ActionRunner, cols ...string) error {
|
|||
}
|
||||
|
||||
// DeleteRunner deletes a runner by given ID.
|
||||
func DeleteRunner(ctx context.Context, id int64) error {
|
||||
runner, err := GetRunnerByID(ctx, id)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
func DeleteRunner(ctx context.Context, r *ActionRunner) error {
|
||||
// Replace the UUID, which was either based on the secret's first 16 bytes or an UUIDv4,
|
||||
// with a sequence of 8 0xff bytes followed by the little-endian version of the record's
|
||||
// identifier. This will prevent the deleted record's identifier from colliding with any
|
||||
// new record.
|
||||
b := make([]byte, 8)
|
||||
binary.LittleEndian.PutUint64(b, uint64(id))
|
||||
runner.UUID = fmt.Sprintf("ffffffff-ffff-ffff-%.2x%.2x-%.2x%.2x%.2x%.2x%.2x%.2x",
|
||||
binary.LittleEndian.PutUint64(b, uint64(r.ID))
|
||||
r.UUID = fmt.Sprintf("ffffffff-ffff-ffff-%.2x%.2x-%.2x%.2x%.2x%.2x%.2x%.2x",
|
||||
b[0], b[1], b[2], b[3], b[4], b[5], b[6], b[7])
|
||||
|
||||
err = UpdateRunner(ctx, runner, "UUID")
|
||||
err := UpdateRunner(ctx, r, "UUID")
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
_, err = db.DeleteByID[ActionRunner](ctx, id)
|
||||
_, err = db.DeleteByID[ActionRunner](ctx, r.ID)
|
||||
return err
|
||||
}
|
||||
|
||||
|
|
|
@ -34,7 +34,7 @@ func TestDeleteRunner(t *testing.T) {
|
|||
require.NoError(t, unittest.PrepareTestDatabase())
|
||||
before := unittest.AssertExistsAndLoadBean(t, &ActionRunner{ID: recordID})
|
||||
|
||||
err := DeleteRunner(db.DefaultContext, recordID)
|
||||
err := DeleteRunner(db.DefaultContext, &ActionRunner{ID: recordID})
|
||||
require.NoError(t, err)
|
||||
|
||||
var after ActionRunner
|
||||
|
|
|
@ -86,7 +86,7 @@ func FindVariables(ctx context.Context, opts FindVariablesOpts) ([]*ActionVariab
|
|||
}
|
||||
|
||||
func UpdateVariable(ctx context.Context, variable *ActionVariable) (bool, error) {
|
||||
count, err := db.GetEngine(ctx).ID(variable.ID).Cols("name", "data").
|
||||
count, err := db.GetEngine(ctx).ID(variable.ID).Where("owner_id = ? AND repo_id = ?", variable.OwnerID, variable.RepoID).Cols("name", "data").
|
||||
Update(&ActionVariable{
|
||||
Name: variable.Name,
|
||||
Data: variable.Data,
|
||||
|
@ -94,11 +94,9 @@ func UpdateVariable(ctx context.Context, variable *ActionVariable) (bool, error)
|
|||
return count != 0, err
|
||||
}
|
||||
|
||||
func DeleteVariable(ctx context.Context, id int64) error {
|
||||
if _, err := db.DeleteByID[ActionVariable](ctx, id); err != nil {
|
||||
return err
|
||||
}
|
||||
return nil
|
||||
func DeleteVariable(ctx context.Context, variableID, ownerID, repoID int64) (bool, error) {
|
||||
count, err := db.GetEngine(ctx).Table("action_variable").Where("id = ? AND owner_id = ? AND repo_id = ?", variableID, ownerID, repoID).Delete()
|
||||
return count != 0, err
|
||||
}
|
||||
|
||||
func GetVariablesOfRun(ctx context.Context, run *ActionRun) (map[string]string, error) {
|
||||
|
|
23
models/fixtures/PrivateIssueProjects/project.yml
Normal file
23
models/fixtures/PrivateIssueProjects/project.yml
Normal file
|
@ -0,0 +1,23 @@
|
|||
-
|
||||
id: 1001
|
||||
title: Org project that contains private issues
|
||||
owner_id: 3
|
||||
repo_id: 0
|
||||
is_closed: false
|
||||
creator_id: 2
|
||||
board_type: 1
|
||||
type: 3
|
||||
created_unix: 1738000000
|
||||
updated_unix: 1738000000
|
||||
|
||||
-
|
||||
id: 1002
|
||||
title: User project that contains private issues
|
||||
owner_id: 2
|
||||
repo_id: 0
|
||||
is_closed: false
|
||||
creator_id: 2
|
||||
board_type: 1
|
||||
type: 1
|
||||
created_unix: 1738000000
|
||||
updated_unix: 1738000000
|
17
models/fixtures/PrivateIssueProjects/project_board.yml
Normal file
17
models/fixtures/PrivateIssueProjects/project_board.yml
Normal file
|
@ -0,0 +1,17 @@
|
|||
-
|
||||
id: 1001
|
||||
project_id: 1001
|
||||
title: Triage
|
||||
creator_id: 2
|
||||
default: true
|
||||
created_unix: 1738000000
|
||||
updated_unix: 1738000000
|
||||
|
||||
-
|
||||
id: 1002
|
||||
project_id: 1002
|
||||
title: Triage
|
||||
creator_id: 2
|
||||
default: true
|
||||
created_unix: 1738000000
|
||||
updated_unix: 1738000000
|
11
models/fixtures/PrivateIssueProjects/project_issue.yml
Normal file
11
models/fixtures/PrivateIssueProjects/project_issue.yml
Normal file
|
@ -0,0 +1,11 @@
|
|||
-
|
||||
id: 1001
|
||||
issue_id: 6
|
||||
project_id: 1001
|
||||
project_board_id: 1001
|
||||
|
||||
-
|
||||
id: 1002
|
||||
issue_id: 7
|
||||
project_id: 1002
|
||||
project_board_id: 1002
|
|
@ -1,42 +1,49 @@
|
|||
-
|
||||
id: 1
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 1
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 2
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 2
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 3
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 3
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 4
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 4
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 5
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 5
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 6
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 6
|
||||
access_mode: 4
|
||||
|
||||
-
|
||||
id: 7
|
||||
team_id: 1
|
||||
org_id: 3
|
||||
type: 7
|
||||
access_mode: 4
|
||||
|
||||
|
|
|
@ -7,8 +7,10 @@ import (
|
|||
"context"
|
||||
|
||||
"code.gitea.io/gitea/models/db"
|
||||
org_model "code.gitea.io/gitea/models/organization"
|
||||
project_model "code.gitea.io/gitea/models/project"
|
||||
user_model "code.gitea.io/gitea/models/user"
|
||||
"code.gitea.io/gitea/modules/optional"
|
||||
"code.gitea.io/gitea/modules/util"
|
||||
)
|
||||
|
||||
|
@ -48,22 +50,29 @@ func (issue *Issue) ProjectColumnID(ctx context.Context) int64 {
|
|||
}
|
||||
|
||||
// LoadIssuesFromColumn load issues assigned to this column
|
||||
func LoadIssuesFromColumn(ctx context.Context, b *project_model.Column) (IssueList, error) {
|
||||
issueList, err := Issues(ctx, &IssuesOptions{
|
||||
func LoadIssuesFromColumn(ctx context.Context, b *project_model.Column, doer *user_model.User, org *org_model.Organization, isClosed optional.Option[bool]) (IssueList, error) {
|
||||
issueOpts := &IssuesOptions{
|
||||
ProjectColumnID: b.ID,
|
||||
ProjectID: b.ProjectID,
|
||||
SortType: "project-column-sorting",
|
||||
})
|
||||
IsClosed: isClosed,
|
||||
}
|
||||
if doer != nil {
|
||||
issueOpts.User = doer
|
||||
issueOpts.Org = org
|
||||
} else {
|
||||
issueOpts.AllPublic = true
|
||||
}
|
||||
|
||||
issueList, err := Issues(ctx, issueOpts)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
if b.Default {
|
||||
issues, err := Issues(ctx, &IssuesOptions{
|
||||
ProjectColumnID: db.NoConditionID,
|
||||
ProjectID: b.ProjectID,
|
||||
SortType: "project-column-sorting",
|
||||
})
|
||||
issueOpts.ProjectColumnID = db.NoConditionID
|
||||
|
||||
issues, err := Issues(ctx, issueOpts)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -78,10 +87,10 @@ func LoadIssuesFromColumn(ctx context.Context, b *project_model.Column) (IssueLi
|
|||
}
|
||||
|
||||
// LoadIssuesFromColumnList load issues assigned to the columns
|
||||
func LoadIssuesFromColumnList(ctx context.Context, bs project_model.ColumnList) (map[int64]IssueList, error) {
|
||||
func LoadIssuesFromColumnList(ctx context.Context, bs project_model.ColumnList, doer *user_model.User, org *org_model.Organization, isClosed optional.Option[bool]) (map[int64]IssueList, error) {
|
||||
issuesMap := make(map[int64]IssueList, len(bs))
|
||||
for i := range bs {
|
||||
il, err := LoadIssuesFromColumn(ctx, bs[i])
|
||||
il, err := LoadIssuesFromColumn(ctx, bs[i], doer, org, isClosed)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
@ -160,3 +169,36 @@ func IssueAssignOrRemoveProject(ctx context.Context, issue *Issue, doer *user_mo
|
|||
})
|
||||
})
|
||||
}
|
||||
|
||||
// NumIssuesInProjects returns the amount of issues assigned to one of the project
|
||||
// in the list which the doer can access.
|
||||
func NumIssuesInProjects(ctx context.Context, pl []*project_model.Project, doer *user_model.User, org *org_model.Organization, isClosed optional.Option[bool]) (map[int64]int, error) {
|
||||
numMap := make(map[int64]int, len(pl))
|
||||
for _, p := range pl {
|
||||
num, err := NumIssuesInProject(ctx, p, doer, org, isClosed)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
numMap[p.ID] = num
|
||||
}
|
||||
|
||||
return numMap, nil
|
||||
}
|
||||
|
||||
// NumIssuesInProject returns the amount of issues assigned to the project which
|
||||
// the doer can access.
|
||||
func NumIssuesInProject(ctx context.Context, p *project_model.Project, doer *user_model.User, org *org_model.Organization, isClosed optional.Option[bool]) (int, error) {
|
||||
numIssuesInProject := int(0)
|
||||
bs, err := p.GetColumns(ctx)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
im, err := LoadIssuesFromColumnList(ctx, bs, doer, org, isClosed)
|
||||
if err != nil {
|
||||
return 0, err
|
||||
}
|
||||
for _, il := range im {
|
||||
numIssuesInProject += len(il)
|
||||
}
|
||||
return numIssuesInProject, nil
|
||||
}
|
||||
|
|
100
models/issues/issue_project_test.go
Normal file
100
models/issues/issue_project_test.go
Normal file
|
@ -0,0 +1,100 @@
|
|||
// Copyright 2025 The Forgejo Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
package issues_test
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"code.gitea.io/gitea/models/db"
|
||||
"code.gitea.io/gitea/models/issues"
|
||||
"code.gitea.io/gitea/models/organization"
|
||||
"code.gitea.io/gitea/models/project"
|
||||
"code.gitea.io/gitea/models/unittest"
|
||||
user_model "code.gitea.io/gitea/models/user"
|
||||
"code.gitea.io/gitea/modules/optional"
|
||||
"code.gitea.io/gitea/tests"
|
||||
|
||||
"github.com/stretchr/testify/assert"
|
||||
"github.com/stretchr/testify/require"
|
||||
)
|
||||
|
||||
func TestPrivateIssueProjects(t *testing.T) {
|
||||
defer tests.AddFixtures("models/fixtures/PrivateIssueProjects/")()
|
||||
require.NoError(t, unittest.PrepareTestDatabase())
|
||||
|
||||
user2 := unittest.AssertExistsAndLoadBean(t, &user_model.User{ID: 2})
|
||||
t.Run("Organization project", func(t *testing.T) {
|
||||
org := unittest.AssertExistsAndLoadBean(t, &organization.Organization{ID: 3})
|
||||
orgProject := unittest.AssertExistsAndLoadBean(t, &project.Project{ID: 1001, OwnerID: org.ID})
|
||||
column := unittest.AssertExistsAndLoadBean(t, &project.Column{ID: 1001, ProjectID: orgProject.ID})
|
||||
|
||||
t.Run("Authenticated user", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
issueList, err := issues.LoadIssuesFromColumn(db.DefaultContext, column, user2, org, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, issueList, 1)
|
||||
assert.EqualValues(t, 6, issueList[0].ID)
|
||||
|
||||
issuesNum, err := issues.NumIssuesInProject(db.DefaultContext, orgProject, user2, org, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 1, issuesNum)
|
||||
|
||||
issuesNum, err = issues.NumIssuesInProject(db.DefaultContext, orgProject, user2, org, optional.Some(true))
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 0, issuesNum)
|
||||
|
||||
issuesNum, err = issues.NumIssuesInProject(db.DefaultContext, orgProject, user2, org, optional.Some(false))
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 1, issuesNum)
|
||||
})
|
||||
|
||||
t.Run("Anonymous user", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
issueList, err := issues.LoadIssuesFromColumn(db.DefaultContext, column, nil, org, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.Empty(t, issueList)
|
||||
|
||||
issuesNum, err := issues.NumIssuesInProject(db.DefaultContext, orgProject, nil, org, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 0, issuesNum)
|
||||
})
|
||||
})
|
||||
|
||||
t.Run("User project", func(t *testing.T) {
|
||||
userProject := unittest.AssertExistsAndLoadBean(t, &project.Project{ID: 1002, OwnerID: user2.ID})
|
||||
column := unittest.AssertExistsAndLoadBean(t, &project.Column{ID: 1002, ProjectID: userProject.ID})
|
||||
|
||||
t.Run("Authenticated user", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
issueList, err := issues.LoadIssuesFromColumn(db.DefaultContext, column, user2, nil, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.Len(t, issueList, 1)
|
||||
assert.EqualValues(t, 7, issueList[0].ID)
|
||||
|
||||
issuesNum, err := issues.NumIssuesInProject(db.DefaultContext, userProject, user2, nil, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 1, issuesNum)
|
||||
|
||||
issuesNum, err = issues.NumIssuesInProject(db.DefaultContext, userProject, user2, nil, optional.Some(true))
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 0, issuesNum)
|
||||
|
||||
issuesNum, err = issues.NumIssuesInProject(db.DefaultContext, userProject, user2, nil, optional.Some(false))
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 1, issuesNum)
|
||||
})
|
||||
|
||||
t.Run("Anonymous user", func(t *testing.T) {
|
||||
defer tests.PrintCurrentTest(t)()
|
||||
|
||||
issueList, err := issues.LoadIssuesFromColumn(db.DefaultContext, column, nil, nil, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.Empty(t, issueList)
|
||||
|
||||
issuesNum, err := issues.NumIssuesInProject(db.DefaultContext, userProject, nil, nil, optional.None[bool]())
|
||||
require.NoError(t, err)
|
||||
assert.EqualValues(t, 0, issuesNum)
|
||||
})
|
||||
})
|
||||
}
|
|
@ -1,23 +1,27 @@
|
|||
// Copyright 2024 The Forgejo Authors.
|
||||
// SPDX-License-Identifier: MIT
|
||||
// Copyright 2025 The Forgejo Authors.
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
package v1_23 //nolint
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"code.gitea.io/gitea/models/migrations/base"
|
||||
|
||||
"xorm.io/xorm"
|
||||
"xorm.io/xorm/schemas"
|
||||
)
|
||||
|
||||
func GiteaLastDrop(x *xorm.Engine) error {
|
||||
tables, err := x.DBMetas()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
sess := x.NewSession()
|
||||
defer sess.Close()
|
||||
|
||||
for _, drop := range []struct {
|
||||
table string
|
||||
field string
|
||||
table string
|
||||
column string
|
||||
}{
|
||||
{"badge", "slug"},
|
||||
{"oauth2_application", "skip_secondary_authorization"},
|
||||
|
@ -29,10 +33,25 @@ func GiteaLastDrop(x *xorm.Engine) error {
|
|||
{"protected_branch", "force_push_allowlist_team_i_ds"},
|
||||
{"protected_branch", "force_push_allowlist_deploy_keys"},
|
||||
} {
|
||||
if _, err := sess.Exec(fmt.Sprintf("SELECT `%s` FROM `%s` WHERE 0 = 1", drop.field, drop.table)); err != nil {
|
||||
var table *schemas.Table
|
||||
found := false
|
||||
|
||||
for _, table = range tables {
|
||||
if table.Name == drop.table {
|
||||
found = true
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
if !found {
|
||||
continue
|
||||
}
|
||||
if err := base.DropTableColumns(sess, drop.table, drop.field); err != nil {
|
||||
|
||||
if table.GetColumn(drop.column) == nil {
|
||||
continue
|
||||
}
|
||||
|
||||
if err := base.DropTableColumns(sess, drop.table, drop.column); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
|
41
models/migrations/v1_23/v303_test.go
Normal file
41
models/migrations/v1_23/v303_test.go
Normal file
|
@ -0,0 +1,41 @@
|
|||
// Copyright 2025 The Forgejo Authors.
|
||||
// SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
package v1_23 //nolint
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
migration_tests "code.gitea.io/gitea/models/migrations/test"
|
||||
|
||||
"github.com/stretchr/testify/require"
|
||||
"xorm.io/xorm/schemas"
|
||||
)
|
||||
|
||||
func Test_GiteaLastDrop(t *testing.T) {
|
||||
type Badge struct {
|
||||
ID int64 `xorm:"pk autoincr"`
|
||||
Slug string
|
||||
}
|
||||
|
||||
x, deferable := migration_tests.PrepareTestEnv(t, 0, new(Badge))
|
||||
defer deferable()
|
||||
if x == nil || t.Failed() {
|
||||
return
|
||||
}
|
||||
|
||||
getColumn := func() *schemas.Column {
|
||||
tables, err := x.DBMetas()
|
||||
require.NoError(t, err)
|
||||
require.Len(t, tables, 1)
|
||||
table := tables[0]
|
||||
require.Equal(t, "badge", table.Name)
|
||||
return table.GetColumn("slug")
|
||||
}
|
||||
|
||||
require.NotNil(t, getColumn(), "slug column exists")
|
||||
require.NoError(t, GiteaLastDrop(x))
|
||||
require.Nil(t, getColumn(), "slug column was deleted")
|
||||
// idempotent
|
||||
require.NoError(t, GiteaLastDrop(x))
|
||||
}
|
|
@ -57,20 +57,6 @@ func (Column) TableName() string {
|
|||
return "project_board" // TODO: the legacy table name should be project_column
|
||||
}
|
||||
|
||||
// NumIssues return counter of all issues assigned to the column
|
||||
func (c *Column) NumIssues(ctx context.Context) int {
|
||||
total, err := db.GetEngine(ctx).Table("project_issue").
|
||||
Where("project_id=?", c.ProjectID).
|
||||
And("project_board_id=?", c.ID).
|
||||
GroupBy("issue_id").
|
||||
Cols("issue_id").
|
||||
Count()
|
||||
if err != nil {
|
||||
return 0
|
||||
}
|
||||
return int(total)
|
||||
}
|
||||
|
||||
func (c *Column) GetIssues(ctx context.Context) ([]*ProjectIssue, error) {
|
||||
issues := make([]*ProjectIssue, 0, 5)
|
||||
if err := db.GetEngine(ctx).Where("project_id=?", c.ProjectID).
|
||||
|
|
|
@ -34,20 +34,6 @@ func deleteProjectIssuesByProjectID(ctx context.Context, projectID int64) error
|
|||
return err
|
||||
}
|
||||
|
||||
// NumIssues return counter of all issues assigned to a project
|
||||
func (p *Project) NumIssues(ctx context.Context) int {
|
||||
c, err := db.GetEngine(ctx).Table("project_issue").
|
||||
Where("project_id=?", p.ID).
|
||||
GroupBy("issue_id").
|
||||
Cols("issue_id").
|
||||
Count()
|
||||
if err != nil {
|
||||
log.Error("NumIssues: %v", err)
|
||||
return 0
|
||||
}
|
||||
return int(c)
|
||||
}
|
||||
|
||||
// NumClosedIssues return counter of closed issues assigned to a project
|
||||
func (p *Project) NumClosedIssues(ctx context.Context) int {
|
||||
c, err := db.GetEngine(ctx).Table("project_issue").
|
||||
|
|
|
@ -166,9 +166,9 @@ func GetReviewers(ctx context.Context, repo *Repository, doerID, posterID int64)
|
|||
// If isShowFullName is set to true, also include full name prefix search
|
||||
func GetIssuePostersWithSearch(ctx context.Context, repo *Repository, isPull bool, search string, isShowFullName bool) ([]*user_model.User, error) {
|
||||
users := make([]*user_model.User, 0, 30)
|
||||
var prefixCond builder.Cond = builder.Like{"name", search + "%"}
|
||||
prefixCond := db.BuildCaseInsensitiveLike("name", search+"%")
|
||||
if isShowFullName {
|
||||
prefixCond = prefixCond.Or(builder.Like{"full_name", "%" + search + "%"})
|
||||
prefixCond = db.BuildCaseInsensitiveLike("full_name", "%"+search+"%")
|
||||
}
|
||||
|
||||
cond := builder.In("`user`.id",
|
||||
|
|
|
@ -126,17 +126,15 @@ func (opts *SearchUserOptions) toSearchQueryBase(ctx context.Context) *xorm.Sess
|
|||
return e.Where(cond)
|
||||
}
|
||||
|
||||
// 2fa filter uses LEFT JOIN to check whether a user has a 2fa record
|
||||
// While using LEFT JOIN, sometimes the performance might not be good, but it won't be a problem now, such SQL is seldom executed.
|
||||
// There are some possible methods to refactor this SQL in future when we really need to optimize the performance (but not now):
|
||||
// (1) add a column in user table (2) add a setting value in user_setting table (3) use search engines (bleve/elasticsearch)
|
||||
// Check if the user has two factor enabled, which is TOTP or Webauthn.
|
||||
if opts.IsTwoFactorEnabled.Value() {
|
||||
cond = cond.And(builder.Expr("two_factor.uid IS NOT NULL"))
|
||||
cond = cond.And(builder.Expr("two_factor.uid IS NOT NULL OR webauthn_credential.user_id IS NOT NULL"))
|
||||
} else {
|
||||
cond = cond.And(builder.Expr("two_factor.uid IS NULL"))
|
||||
cond = cond.And(builder.Expr("two_factor.uid IS NULL AND webauthn_credential.user_id IS NULL"))
|
||||
}
|
||||
|
||||
return e.Join("LEFT OUTER", "two_factor", "two_factor.uid = `user`.id").
|
||||
Join("LEFT OUTER", "webauthn_credential", "webauthn_credential.user_id = `user`.id").
|
||||
Where(cond)
|
||||
}
|
||||
|
||||
|
|
|
@ -222,7 +222,7 @@ func TestSearchUsers(t *testing.T) {
|
|||
[]int64{1041, 37})
|
||||
|
||||
testUserSuccess(&user_model.SearchUserOptions{ListOptions: db.ListOptions{Page: 1}, IsTwoFactorEnabled: optional.Some(true)},
|
||||
[]int64{24})
|
||||
[]int64{24, 32})
|
||||
}
|
||||
|
||||
func TestEmailNotificationPreferences(t *testing.T) {
|
||||
|
|
192
modules/annex/annex.go
Normal file
192
modules/annex/annex.go
Normal file
|
@ -0,0 +1,192 @@
|
|||
// Copyright 2022 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
// Unlike modules/lfs, which operates mainly on git.Blobs, this operates on git.TreeEntrys.
|
||||
// The motivation for this is that TreeEntrys have an easy pointer to the on-disk repo path,
|
||||
// while blobs do not (in fact, if building with TAGS=gogit, blobs might exist only in a mock
|
||||
// filesystem, living only in process RAM). We must have the on-disk path to do anything
|
||||
// useful with git-annex because all of its interesting data is on-disk under .git/annex/.
|
||||
|
||||
package annex
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"io/fs"
|
||||
"os"
|
||||
"path"
|
||||
"path/filepath"
|
||||
"regexp"
|
||||
"strings"
|
||||
|
||||
"code.gitea.io/gitea/modules/git"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/modules/setting"
|
||||
"code.gitea.io/gitea/modules/typesniffer"
|
||||
)
|
||||
|
||||
// ErrBlobIsNotAnnexed occurs if a blob does not contain a valid annex key
|
||||
var ErrBlobIsNotAnnexed = errors.New("not a git-annex pointer")
|
||||
|
||||
func LookupKey(blob *git.Blob) (string, error) {
|
||||
stdout, _, err := git.NewCommand(git.DefaultContext, "annex", "lookupkey", "--ref").AddDynamicArguments(blob.ID.String()).RunStdString(&git.RunOpts{Dir: blob.Repo().Path})
|
||||
if err != nil {
|
||||
return "", ErrBlobIsNotAnnexed
|
||||
}
|
||||
key := strings.TrimSpace(stdout)
|
||||
return key, nil
|
||||
}
|
||||
|
||||
func ContentLocationFromKey(repoPath, key string) (string, error) {
|
||||
contentLocation, _, err := git.NewCommandContextNoGlobals(git.DefaultContext, "annex", "contentlocation").AddDynamicArguments(key).RunStdString(&git.RunOpts{Dir: repoPath})
|
||||
if err != nil {
|
||||
return "", fmt.Errorf("in %s: %s does not seem to be a valid annexed file: %w", repoPath, key, err)
|
||||
}
|
||||
contentLocation = strings.TrimSpace(contentLocation)
|
||||
contentLocation = path.Clean("/" + contentLocation)[1:] // prevent directory traversals
|
||||
contentLocation = path.Join(repoPath, contentLocation)
|
||||
|
||||
return contentLocation, nil
|
||||
}
|
||||
|
||||
// return the absolute path of the content pointed to by the annex pointer stored in the git object
|
||||
// errors if the content is not found in this repo
|
||||
func ContentLocation(blob *git.Blob) (string, error) {
|
||||
key, err := LookupKey(blob)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
return ContentLocationFromKey(blob.Repo().Path, key)
|
||||
}
|
||||
|
||||
// returns a stream open to the annex content
|
||||
func Content(blob *git.Blob) (*os.File, error) {
|
||||
contentLocation, err := ContentLocation(blob)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return os.Open(contentLocation)
|
||||
}
|
||||
|
||||
// whether the object appears to be a valid annex pointer
|
||||
// does *not* verify if the content is actually in this repo;
|
||||
// for that, use ContentLocation()
|
||||
func IsAnnexed(blob *git.Blob) (bool, error) {
|
||||
if !setting.Annex.Enabled {
|
||||
return false, nil
|
||||
}
|
||||
|
||||
// LookupKey is written to only return well-formed keys
|
||||
// so the test is just to see if it errors
|
||||
_, err := LookupKey(blob)
|
||||
if err != nil {
|
||||
if errors.Is(err, ErrBlobIsNotAnnexed) {
|
||||
return false, nil
|
||||
}
|
||||
return false, err
|
||||
}
|
||||
return true, nil
|
||||
}
|
||||
|
||||
// IsAnnexRepo determines if repo is a git-annex enabled repository
|
||||
func IsAnnexRepo(repo *git.Repository) bool {
|
||||
_, _, err := git.NewCommand(repo.Ctx, "config", "annex.uuid").RunStdString(&git.RunOpts{Dir: repo.Path})
|
||||
return err == nil
|
||||
}
|
||||
|
||||
var repoConfigFileRe = regexp.MustCompile("[^/]+/[^/]+.git/config$")
|
||||
|
||||
var (
|
||||
uuid2repoPathCache = make(map[string]string)
|
||||
repoPath2uuidCache = make(map[string]string)
|
||||
)
|
||||
|
||||
func Init() error {
|
||||
if !setting.Annex.Enabled {
|
||||
return nil
|
||||
}
|
||||
log.Info("Populating the git-annex UUID cache with existing repositories")
|
||||
return updateUUID2RepoPathCache()
|
||||
}
|
||||
|
||||
func updateUUID2RepoPathCache() error {
|
||||
return filepath.WalkDir(setting.RepoRootPath, func(path string, d fs.DirEntry, err error) error {
|
||||
if err == nil && repoConfigFileRe.MatchString(path) {
|
||||
thisRepoPath := strings.TrimSuffix(path, "/config")
|
||||
_, ok := repoPath2uuidCache[thisRepoPath]
|
||||
if ok {
|
||||
return nil
|
||||
}
|
||||
stdout, _, err := git.NewCommand(git.DefaultContext, "config", "annex.uuid").RunStdString(&git.RunOpts{Dir: thisRepoPath})
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
repoUUID := strings.TrimSpace(stdout)
|
||||
if repoUUID != "" {
|
||||
uuid2repoPathCache[repoUUID] = thisRepoPath
|
||||
repoPath2uuidCache[thisRepoPath] = repoUUID
|
||||
}
|
||||
}
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
||||
func repoPathFromUUIDCache(uuid string) (string, error) {
|
||||
if repoPath, ok := uuid2repoPathCache[uuid]; ok {
|
||||
return repoPath, nil
|
||||
}
|
||||
// If the cache didn't contain an entry for the UUID then update the cache and try again
|
||||
if err := updateUUID2RepoPathCache(); err != nil {
|
||||
return "", err
|
||||
}
|
||||
if repoPath, ok := uuid2repoPathCache[uuid]; ok {
|
||||
return repoPath, nil
|
||||
}
|
||||
return "", fmt.Errorf("no repository known for UUID '%s'", uuid)
|
||||
}
|
||||
|
||||
func checkValidity(uuid, repoPath string) (bool, error) {
|
||||
stdout, _, err := git.NewCommand(git.DefaultContext, "config", "annex.uuid").RunStdString(&git.RunOpts{Dir: repoPath})
|
||||
if err != nil {
|
||||
return false, err
|
||||
}
|
||||
repoUUID := strings.TrimSpace(stdout)
|
||||
return uuid == repoUUID, nil
|
||||
}
|
||||
|
||||
func removeCachedEntries(uuid, repoPath string) {
|
||||
delete(uuid2repoPathCache, uuid)
|
||||
delete(repoPath2uuidCache, repoPath)
|
||||
}
|
||||
|
||||
func UUID2RepoPath(uuid string) (string, error) {
|
||||
// Get the current cache entry for the UUID
|
||||
repoPath, err := repoPathFromUUIDCache(uuid)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
// Check if it is still up-to-date
|
||||
valid, err := checkValidity(uuid, repoPath)
|
||||
if err != nil {
|
||||
return "", err
|
||||
}
|
||||
if !valid {
|
||||
// If it isn't, remove the cache entry and try again
|
||||
removeCachedEntries(uuid, repoPath)
|
||||
return UUID2RepoPath(uuid)
|
||||
}
|
||||
// Otherwise just return the cached entry
|
||||
return repoPath, nil
|
||||
}
|
||||
|
||||
// GuessContentType guesses the content type of the annexed blob.
|
||||
func GuessContentType(blob *git.Blob) (typesniffer.SniffedType, error) {
|
||||
r, err := Content(blob)
|
||||
if err != nil {
|
||||
return typesniffer.SniffedType{}, err
|
||||
}
|
||||
defer r.Close()
|
||||
|
||||
return typesniffer.DetectContentTypeFromReader(r)
|
||||
}
|
|
@ -16,6 +16,7 @@ import (
|
|||
"strings"
|
||||
"unicode/utf8"
|
||||
|
||||
"code.gitea.io/gitea/modules/annex"
|
||||
"code.gitea.io/gitea/modules/git"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
|
||||
|
@ -101,6 +102,12 @@ func Int64sToStrings(ints []int64) []string {
|
|||
|
||||
// EntryIcon returns the octicon class for displaying files/directories
|
||||
func EntryIcon(entry *git.TreeEntry) string {
|
||||
isAnnexed, _ := annex.IsAnnexed(entry.Blob())
|
||||
if isAnnexed {
|
||||
// Show git-annex files as binary files to differentiate them from non-annexed files
|
||||
// TODO: find a more suitable icon, maybe something related to git-annex
|
||||
return "file-binary"
|
||||
}
|
||||
switch {
|
||||
case entry.IsLink():
|
||||
te, _, err := entry.FollowLink()
|
||||
|
|
|
@ -126,6 +126,10 @@ func (b *blobReader) Close() error {
|
|||
return nil
|
||||
}
|
||||
|
||||
func (b *Blob) Repo() *Repository {
|
||||
return b.repo
|
||||
}
|
||||
|
||||
// Name returns name of the tree entry this blob object was created from (or empty string)
|
||||
func (b *Blob) Name() string {
|
||||
return b.name
|
||||
|
|
|
@ -457,12 +457,13 @@ func (c *Command) RunStdBytes(opts *RunOpts) (stdout, stderr []byte, runErr RunS
|
|||
}
|
||||
|
||||
// AllowLFSFiltersArgs return globalCommandArgs with lfs filter, it should only be used for tests
|
||||
// It also re-enables git-credential(1), which is used to test git-annex's HTTP support
|
||||
func AllowLFSFiltersArgs() TrustedCmdArgs {
|
||||
// Now here we should explicitly allow lfs filters to run
|
||||
filteredLFSGlobalArgs := make(TrustedCmdArgs, len(globalCommandArgs))
|
||||
j := 0
|
||||
for _, arg := range globalCommandArgs {
|
||||
if strings.Contains(string(arg), "lfs") {
|
||||
if strings.Contains(string(arg), "lfs") || strings.Contains(string(arg), "credential") {
|
||||
j--
|
||||
} else {
|
||||
filteredLFSGlobalArgs[j] = arg
|
||||
|
|
25
modules/markup/external/external.go
vendored
25
modules/markup/external/external.go
vendored
|
@ -12,6 +12,7 @@ import (
|
|||
"runtime"
|
||||
"strings"
|
||||
|
||||
"code.gitea.io/gitea/modules/annex"
|
||||
"code.gitea.io/gitea/modules/graceful"
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
"code.gitea.io/gitea/modules/markup"
|
||||
|
@ -86,8 +87,22 @@ func (p *Renderer) Render(ctx *markup.RenderContext, input io.Reader, output io.
|
|||
commands = strings.Fields(command)
|
||||
args = commands[1:]
|
||||
)
|
||||
|
||||
if p.IsInputFile {
|
||||
isAnnexed, _ := annex.IsAnnexed(ctx.Blob)
|
||||
// if a renderer wants to read a file, and we have annexed content, we can
|
||||
// provide the annex key file location directly to the renderer. git-annex
|
||||
// takes care of having that location be read-only, so no critical
|
||||
// protection layer is needed. Moreover, the file readily exists, and
|
||||
// expensive temporary files can be avoided, also allowing an operator
|
||||
// to raise MAX_DISPLAY_FILE_SIZE without much negative impact.
|
||||
if p.IsInputFile && isAnnexed {
|
||||
// look for annexed content, will be empty, if there is none
|
||||
annexContentLocation, _ := annex.ContentLocation(ctx.Blob)
|
||||
// we call the renderer, even if there is no annex content present.
|
||||
// showing the pointer file content is not much use, and a topical
|
||||
// renderer might be able to produce something useful from the
|
||||
// filename alone (present in ENV)
|
||||
args = append(args, annexContentLocation)
|
||||
} else if p.IsInputFile {
|
||||
// write to temp file
|
||||
f, err := os.CreateTemp("", "gitea_input")
|
||||
if err != nil {
|
||||
|
@ -130,6 +145,12 @@ func (p *Renderer) Render(ctx *markup.RenderContext, input io.Reader, output io.
|
|||
os.Environ(),
|
||||
"GITEA_PREFIX_SRC="+ctx.Links.SrcLink(),
|
||||
"GITEA_PREFIX_RAW="+ctx.Links.RawLink(),
|
||||
// also communicate the relative path of the to-be-rendered item.
|
||||
// this enables the renderer to make use of the original file name
|
||||
// and path, e.g., to make rendering or dtype-detection decisions
|
||||
// that go beyond the originally matched extension. Even if the
|
||||
// content is directly streamed to STDIN
|
||||
"GITEA_RELATIVE_PATH="+ctx.RelativePath,
|
||||
)
|
||||
if !p.IsInputFile {
|
||||
cmd.Stdin = input
|
||||
|
|
|
@ -8,6 +8,7 @@ import (
|
|||
"bytes"
|
||||
"html/template"
|
||||
"io"
|
||||
"net/url"
|
||||
"regexp"
|
||||
"slices"
|
||||
"strconv"
|
||||
|
@ -77,6 +78,16 @@ func newFilePreview(ctx *RenderContext, node *html.Node, locale translation.Loca
|
|||
|
||||
commitSha := node.Data[m[4]:m[5]]
|
||||
filePath := node.Data[m[6]:m[7]]
|
||||
urlFullSource := urlFull
|
||||
if strings.HasSuffix(filePath, "?display=source") {
|
||||
filePath = strings.TrimSuffix(filePath, "?display=source")
|
||||
} else if Type(filePath) != "" {
|
||||
urlFullSource = node.Data[m[0]:m[6]] + filePath + "?display=source#" + node.Data[m[8]:m[1]]
|
||||
}
|
||||
filePath, err := url.QueryUnescape(filePath)
|
||||
if err != nil {
|
||||
return nil
|
||||
}
|
||||
hash := node.Data[m[8]:m[9]]
|
||||
|
||||
preview.start = m[0]
|
||||
|
@ -113,7 +124,7 @@ func newFilePreview(ctx *RenderContext, node *html.Node, locale translation.Loca
|
|||
titleBuffer.WriteString(" – ")
|
||||
}
|
||||
|
||||
err = html.Render(titleBuffer, createLink(urlFull, filePath, "muted"))
|
||||
err = html.Render(titleBuffer, createLink(urlFullSource, filePath, "muted"))
|
||||
if err != nil {
|
||||
log.Error("failed to render filepathLink: %v", err)
|
||||
}
|
||||
|
|
|
@ -1026,4 +1026,138 @@ func TestRender_FilePreview(t *testing.T) {
|
|||
localMetas,
|
||||
)
|
||||
})
|
||||
|
||||
commitFileURL := util.URLJoin(markup.TestRepoURL, "src", "commit", "c9913120ed2c1e27c1d7752ecdb7a504dc7cf6be", "path", "to", "file.md")
|
||||
|
||||
t.Run("rendered file with ?display=source", func(t *testing.T) {
|
||||
testRender(
|
||||
commitFileURL+"?display=source"+"#L1-L2",
|
||||
`<p></p>`+
|
||||
`<div class="file-preview-box">`+
|
||||
`<div class="header">`+
|
||||
`<div>`+
|
||||
`<a href="http://localhost:3000/gogits/gogs/src/commit/c9913120ed2c1e27c1d7752ecdb7a504dc7cf6be/path/to/file.md?display=source#L1-L2" class="muted" rel="nofollow">path/to/file.md</a>`+
|
||||
`</div>`+
|
||||
`<span class="text small grey">`+
|
||||
`Lines 1 to 2 in <a href="http://localhost:3000/gogits/gogs/src/commit/c9913120ed2c1e27c1d7752ecdb7a504dc7cf6be" class="text black" rel="nofollow">c991312</a>`+
|
||||
`</span>`+
|
||||
`</div>`+
|
||||
`<div class="ui table">`+
|
||||
`<table class="file-preview">`+
|
||||
`<tbody>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="1"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="gh"># A`+"\n"+`</span></code></td>`+
|
||||
`</tr>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="2"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="gh"></span>B`+"\n"+`</code></td>`+
|
||||
`</tr>`+
|
||||
`</tbody>`+
|
||||
`</table>`+
|
||||
`</div>`+
|
||||
`</div>`+
|
||||
`<p></p>`,
|
||||
localMetas,
|
||||
)
|
||||
})
|
||||
|
||||
t.Run("rendered file without ?display=source", func(t *testing.T) {
|
||||
testRender(
|
||||
commitFileURL+"#L1-L2",
|
||||
`<p></p>`+
|
||||
`<div class="file-preview-box">`+
|
||||
`<div class="header">`+
|
||||
`<div>`+
|
||||
`<a href="http://localhost:3000/gogits/gogs/src/commit/c9913120ed2c1e27c1d7752ecdb7a504dc7cf6be/path/to/file.md?display=source#L1-L2" class="muted" rel="nofollow">path/to/file.md</a>`+
|
||||
`</div>`+
|
||||
`<span class="text small grey">`+
|
||||
`Lines 1 to 2 in <a href="http://localhost:3000/gogits/gogs/src/commit/c9913120ed2c1e27c1d7752ecdb7a504dc7cf6be" class="text black" rel="nofollow">c991312</a>`+
|
||||
`</span>`+
|
||||
`</div>`+
|
||||
`<div class="ui table">`+
|
||||
`<table class="file-preview">`+
|
||||
`<tbody>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="1"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="gh"># A`+"\n"+`</span></code></td>`+
|
||||
`</tr>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="2"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="gh"></span>B`+"\n"+`</code></td>`+
|
||||
`</tr>`+
|
||||
`</tbody>`+
|
||||
`</table>`+
|
||||
`</div>`+
|
||||
`</div>`+
|
||||
`<p></p>`,
|
||||
localMetas,
|
||||
)
|
||||
})
|
||||
|
||||
commitFileURL = util.URLJoin(markup.TestRepoURL, "src", "commit", "190d9492934af498c3f669d6a2431dc5459e5b20", "path", "to", "file.go")
|
||||
|
||||
t.Run("normal file with ?display=source", func(t *testing.T) {
|
||||
testRender(
|
||||
commitFileURL+"?display=source"+"#L2-L3",
|
||||
`<p></p>`+
|
||||
`<div class="file-preview-box">`+
|
||||
`<div class="header">`+
|
||||
`<div>`+
|
||||
`<a href="http://localhost:3000/gogits/gogs/src/commit/190d9492934af498c3f669d6a2431dc5459e5b20/path/to/file.go?display=source#L2-L3" class="muted" rel="nofollow">path/to/file.go</a>`+
|
||||
`</div>`+
|
||||
`<span class="text small grey">`+
|
||||
`Lines 2 to 3 in <a href="http://localhost:3000/gogits/gogs/src/commit/190d9492934af498c3f669d6a2431dc5459e5b20" class="text black" rel="nofollow">190d949</a>`+
|
||||
`</span>`+
|
||||
`</div>`+
|
||||
`<div class="ui table">`+
|
||||
`<table class="file-preview">`+
|
||||
`<tbody>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="2"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="nx">B</span>`+"\n"+`</code></td>`+
|
||||
`</tr>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="3"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner"><span class="nx">C</span>`+"\n"+`</code></td>`+
|
||||
`</tr>`+
|
||||
`</tbody>`+
|
||||
`</table>`+
|
||||
`</div>`+
|
||||
`</div>`+
|
||||
`<p></p>`,
|
||||
localMetas,
|
||||
)
|
||||
})
|
||||
|
||||
commitFileURL = util.URLJoin(markup.TestRepoURL, "src", "commit", "eeb243c3395e1921c5d90e73bd739827251fc99d", "path", "to", "file%20%23.txt")
|
||||
|
||||
t.Run("file with strange characters in name", func(t *testing.T) {
|
||||
testRender(
|
||||
commitFileURL+"#L1",
|
||||
`<p></p>`+
|
||||
`<div class="file-preview-box">`+
|
||||
`<div class="header">`+
|
||||
`<div>`+
|
||||
`<a href="http://localhost:3000/gogits/gogs/src/commit/eeb243c3395e1921c5d90e73bd739827251fc99d/path/to/file%20%23.txt#L1" class="muted" rel="nofollow">path/to/file #.txt</a>`+
|
||||
`</div>`+
|
||||
`<span class="text small grey">`+
|
||||
`Line 1 in <a href="http://localhost:3000/gogits/gogs/src/commit/eeb243c3395e1921c5d90e73bd739827251fc99d" class="text black" rel="nofollow">eeb243c</a>`+
|
||||
`</span>`+
|
||||
`</div>`+
|
||||
`<div class="ui table">`+
|
||||
`<table class="file-preview">`+
|
||||
`<tbody>`+
|
||||
`<tr>`+
|
||||
`<td class="lines-num"><span data-line-number="1"></span></td>`+
|
||||
`<td class="lines-code chroma"><code class="code-inner">A`+"\n"+`</code></td>`+
|
||||
`</tr>`+
|
||||
`</tbody>`+
|
||||
`</table>`+
|
||||
`</div>`+
|
||||
`</div>`+
|
||||
`<p></p>`,
|
||||
localMetas,
|
||||
)
|
||||
})
|
||||
}
|
||||
|
|
|
@ -67,14 +67,18 @@ type Header struct {
|
|||
|
||||
// RenderContext represents a render context
|
||||
type RenderContext struct {
|
||||
Ctx context.Context
|
||||
RelativePath string // relative path from tree root of the branch
|
||||
Type string
|
||||
IsWiki bool
|
||||
Links Links
|
||||
Metas map[string]string
|
||||
DefaultLink string
|
||||
GitRepo *git.Repository
|
||||
Ctx context.Context
|
||||
RelativePath string // relative path from tree root of the branch
|
||||
Type string
|
||||
IsWiki bool
|
||||
Links Links
|
||||
Metas map[string]string
|
||||
DefaultLink string
|
||||
GitRepo *git.Repository
|
||||
// reporting the target blob that is to-be-rendered enables
|
||||
// deeper inspection in the handler for external renderer
|
||||
// (i.e., more targeted handling of annexed files)
|
||||
Blob *git.Blob
|
||||
ShaExistCache map[string]bool
|
||||
cancelFn func()
|
||||
SidebarTocNode ast.Node
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1 @@
|
|||
x•ŽANÃ0EYû³GB;a U=D9€=þ&–ÚÙÓr} 7èêÞÓÓëåÒŒBœ^¬´¤˜yY8Ï:AІX}<7D>R×XkÎs"î;uìFº®9x” Œ ÊEdÐ’%Í~**Zß3\ºÙvíô9Й>nÿ8Žfxkû=<3D>[9K”%L>®ôêÙ{§<>7Ãs–;aÕvý4ÛhXOûH·Ô“þÕ†ûð`KÑ
|
|
@ -0,0 +1 @@
|
|||
x•ŽKŠ1@]çµ$¿J¥aæz€JRÁ@w+éØsýõ®ÞâñàåÛ²´ÖÛÃè"@VL&J3%f-ÑGDÒq2>FçjBOEݹË:ÀgÃ\1¤œ¦ê¦’kÀêªEM6DÔ,Ÿ\‚âǸÞ:\6é¾OülmÈ©;Ï|ƒ!GäŒE‚£6Z«üzòY¥Î²
¨m¸wÙ›üÂÿi‘.x-o³ò"›úŒLÌ
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1 +1 @@
|
|||
4c1aaf56bcb9f39dcf65f3f250726850aed13cd6
|
||||
eeb243c3395e1921c5d90e73bd739827251fc99d
|
||||
|
|
|
@ -40,6 +40,7 @@ type ServCommandResults struct {
|
|||
UserName string
|
||||
UserEmail string
|
||||
UserID int64
|
||||
UserMode perm.AccessMode
|
||||
OwnerName string
|
||||
RepoName string
|
||||
RepoID int64
|
||||
|
|
|
@ -47,7 +47,7 @@ func AesDecrypt(key, text []byte) ([]byte, error) {
|
|||
cfb.XORKeyStream(text, text)
|
||||
data, err := base64.StdEncoding.DecodeString(string(text))
|
||||
if err != nil {
|
||||
return nil, fmt.Errorf("AesDecrypt invalid decrypted base64 string: %w", err)
|
||||
return nil, fmt.Errorf("AesDecrypt invalid decrypted base64 string: %w - it can be caused by a change of the [security].SECRET_KEY setting or a database corruption - `forgejo doctor check --run check-db-consistency --fix` will get rid of orphaned rows found in the `two_factor` table and may fix this problem if they are the one with the invalid content", err)
|
||||
}
|
||||
return data, nil
|
||||
}
|
||||
|
|
25
modules/setting/annex.go
Normal file
25
modules/setting/annex.go
Normal file
|
@ -0,0 +1,25 @@
|
|||
// Copyright 2023 The Gitea Authors. All rights reserved.
|
||||
// SPDX-License-Identifier: MIT
|
||||
|
||||
package setting
|
||||
|
||||
import (
|
||||
"code.gitea.io/gitea/modules/log"
|
||||
)
|
||||
|
||||
// Annex represents the configuration for git-annex
|
||||
var Annex = struct {
|
||||
Enabled bool `ini:"ENABLED"`
|
||||
DisableP2PHTTP bool `ini:"DISABLE_P2PHTTP"`
|
||||
}{}
|
||||
|
||||
func loadAnnexFrom(rootCfg ConfigProvider) {
|
||||
sec := rootCfg.Section("annex")
|
||||
if err := sec.MapTo(&Annex); err != nil {
|
||||
log.Fatal("Failed to map Annex settings: %v", err)
|
||||
}
|
||||
if !sec.HasKey("DISABLE_P2PHTTP") {
|
||||
// If DisableP2PHTTP is not explicitly set then use DisableHTTPGit as its default
|
||||
Annex.DisableP2PHTTP = Repository.DisableHTTPGit
|
||||
}
|
||||
}
|
|
@ -138,6 +138,11 @@ func CompileEmailGlobList(sec ConfigSection, keys ...string) (globs []glob.Glob)
|
|||
return globs
|
||||
}
|
||||
|
||||
// LoadServiceSetting loads the service settings
|
||||
func LoadServiceSetting() {
|
||||
loadServiceFrom(CfgProvider)
|
||||
}
|
||||
|
||||
func loadServiceFrom(rootCfg ConfigProvider) {
|
||||
sec := rootCfg.Section("service")
|
||||
Service.ActiveCodeLives = sec.Key("ACTIVE_CODE_LIVE_MINUTES").MustInt(180)
|
||||
|
|
|
@ -153,6 +153,7 @@ func loadCommonSettingsFrom(cfg ConfigProvider) error {
|
|||
loadCamoFrom(cfg)
|
||||
loadI18nFrom(cfg)
|
||||
loadGitFrom(cfg)
|
||||
loadAnnexFrom(cfg)
|
||||
loadMirrorFrom(cfg)
|
||||
loadMarkupFrom(cfg)
|
||||
loadQuotaFrom(cfg)
|
||||
|
|
|
@ -4,7 +4,9 @@
|
|||
package util
|
||||
|
||||
import (
|
||||
"io/fs"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
"syscall"
|
||||
"time"
|
||||
|
@ -41,10 +43,48 @@ func Remove(name string) error {
|
|||
return err
|
||||
}
|
||||
|
||||
// RemoveAll removes the named file or (empty) directory with at most 5 attempts.
|
||||
// MakeWritable recursively makes the named directory writable.
|
||||
func MakeWritable(name string) error {
|
||||
return filepath.WalkDir(name, func(path string, d fs.DirEntry, err error) error {
|
||||
// NB: this is called WalkDir but it works on a single file too
|
||||
if err == nil {
|
||||
info, err := d.Info()
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
// Don't try chmod'ing symlinks (will fail with broken symlinks)
|
||||
if info.Mode()&os.ModeSymlink != os.ModeSymlink {
|
||||
// 0200 == u+w, in octal unix permission notation
|
||||
err = os.Chmod(path, info.Mode()|0o200)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
}
|
||||
return nil
|
||||
})
|
||||
}
|
||||
|
||||
// RemoveAll removes the named file or directory with at most 5 attempts.
|
||||
func RemoveAll(name string) error {
|
||||
var err error
|
||||
|
||||
for i := 0; i < 5; i++ {
|
||||
// Do chmod -R +w to help ensure the removal succeeds.
|
||||
// In particular, in the git-annex case, this handles
|
||||
// https://git-annex.branchable.com/internals/lockdown/ :
|
||||
//
|
||||
// > (The only bad consequence of this is that rm -rf .git
|
||||
// > doesn't work unless you first run chmod -R +w .git)
|
||||
|
||||
err = MakeWritable(name)
|
||||
if err != nil {
|
||||
// try again
|
||||
<-time.After(100 * time.Millisecond)
|
||||
continue
|
||||
}
|
||||
|
||||
err = os.RemoveAll(name)
|
||||
if err == nil {
|
||||
break
|
||||
|
|
|
@ -4,7 +4,7 @@ dashboard=Přehled
|
|||
explore=Procházet
|
||||
help=Nápověda
|
||||
logo=Logo
|
||||
sign_in=Přihlášení
|
||||
sign_in=Přihlásit se
|
||||
sign_in_with_provider = Přihlásit se přes %s
|
||||
sign_in_or=nebo
|
||||
sign_out=Odhlásit se
|
||||
|
@ -517,8 +517,8 @@ issue_assigned.issue=@%[1]s vás přiřadil/a k problému %[2]s v repozitáři %
|
|||
|
||||
issue.x_mentioned_you=<b>@%s</b> vás zmínil/a:
|
||||
issue.action.force_push=<b>%[1]s</b> vynutil/a nahrání <b>%[2]s</b> z %[3]s do %[4]s.
|
||||
issue.action.push_1=<b>@%[1]s</b> nahrál/a %[3]d commit do %[2]s
|
||||
issue.action.push_n=<b>@%[1]s</b> nahrál/a %[3]d commity do %[2]s
|
||||
issue.action.push_1=Uživatel <b>@%[1]s</b> nahrál %[3]d revizi do %[2]s
|
||||
issue.action.push_n=Uživatel <b>@%[1]s</b> nahrál %[3]d revizí do %[2]s
|
||||
issue.action.close=<b>@%[1]s</b> uzavřel/a #%[2]d.
|
||||
issue.action.reopen=<b>@%[1]s</b> znovu otevřel/a #%[2]d.
|
||||
issue.action.merge=<b>@%[1]s</b> sloučil/a #%[2]d do %[3]s.
|
||||
|
@ -590,9 +590,9 @@ AuthName=Název ověření
|
|||
AdminEmail=E-mailová adresa správce
|
||||
|
||||
NewBranchName=Název nové větve
|
||||
CommitSummary=Shrnutí commity
|
||||
CommitMessage=Zpráva commitu
|
||||
CommitChoice=Výběr commitu
|
||||
CommitSummary=Shrnutí revize
|
||||
CommitMessage=Zpráva revize
|
||||
CommitChoice=Výběr revize
|
||||
TreeName=Cesta k souboru
|
||||
Content=Obsah
|
||||
|
||||
|
@ -681,6 +681,8 @@ To = Název větve
|
|||
Biography = Životopis
|
||||
AccessToken = Přístupový token
|
||||
|
||||
email_domain_is_not_allowed = Doména uživatelské e-mailové adresy <b>%s</b> je v rozporu se seznamem EMAIL_DOMAIN_ALLOWLIST nebo EMAIL_DOMAIN_BLOCKLIST. Ujistěte se, že je vaše adresa správně nastavena.
|
||||
|
||||
[user]
|
||||
change_avatar=Změnit váš avatar…
|
||||
joined_on=Přidal/a se %s
|
||||
|
@ -767,7 +769,7 @@ language=Jazyk
|
|||
ui=Motiv vzhledu
|
||||
hidden_comment_types=Skryté typy komentářů
|
||||
hidden_comment_types_description=Zde zkontrolované typy komentářů nebudou zobrazeny na stránkách problémů. Zaškrtnutí „Štítek“ například odstraní všechny komentáře „<user> přidal/odstranil <label>“.
|
||||
hidden_comment_types.ref_tooltip=Komentáře, kde byl tento problém odkázán u jiného problému/commitu/…
|
||||
hidden_comment_types.ref_tooltip=Komentáře, kde byl tento problém odkázán z jiného problému/revize/…
|
||||
hidden_comment_types.issue_ref_tooltip=Komentáře, kde uživatel změní větev/značku spojenou s problémem
|
||||
comment_type_group_reference=Reference
|
||||
comment_type_group_label=Štítek
|
||||
|
@ -780,7 +782,7 @@ comment_type_group_deadline=Uzávěrka
|
|||
comment_type_group_dependency=Závislost
|
||||
comment_type_group_lock=Stav zámku
|
||||
comment_type_group_review_request=Žádost o posouzení
|
||||
comment_type_group_pull_request_push=Přidané commity
|
||||
comment_type_group_pull_request_push=Přidané revize
|
||||
comment_type_group_project=Projekt
|
||||
comment_type_group_issue_ref=Referenční číslo problému
|
||||
saved_successfully=Vaše nastavení bylo úspěšně uloženo.
|
||||
|
@ -822,7 +824,7 @@ activations_pending=Čekající aktivace
|
|||
can_not_add_email_activations_pending=Existuje čekající aktivace, zkuste to znovu za pár minut, pokud chcete přidat nový e-mail.
|
||||
delete_email=Smazat
|
||||
email_deletion=Odstranit e-mailovou adresu
|
||||
email_deletion_desc=E-mailová adresa a přidružené informace budou z vašeho účtu odstraněny. Commity Gitu s touto e-mailovou adresou zůstanou nezměněny. Pokračovat?
|
||||
email_deletion_desc=E-mailová adresa a přidružené informace budou z vašeho účtu odstraněny. Revize Gitu s touto e-mailovou adresou zůstanou nezměněny. Pokračovat?
|
||||
email_deletion_success=E-mailová adresa byla odstraněna.
|
||||
theme_update_success=Váš motiv vzhledu byl aktualizován.
|
||||
theme_update_error=Vybraný motiv vzhledu neexistuje.
|
||||
|
@ -838,16 +840,16 @@ add_email_success=Nová e-mailová adresa byla přidána.
|
|||
email_preference_set_success=Nastavení e-mailu bylo úspěšně nastaveno.
|
||||
add_openid_success=Nová OpenID adresa byla přidána.
|
||||
keep_email_private=Skrýt e-mailovou adresu
|
||||
keep_email_private_popup=Vaše e-mailová adresa nebude zobrazena na vašem profilu a nebude výchozí adresou pro commity provedené skrze webové rozhraní, jako nahrávání, úpravy a sloučení. Namísto toho lze použít speciální adresu %s pro propojení commitů s vaším účtem. Tato možnost neovlivní existující commity.
|
||||
keep_email_private_popup=Vaše e-mailová adresa nebude zobrazena na vašem profilu a nebude výchozí adresou pro revize provedené skrze webové rozhraní, jako nahrávání, úpravy a slučování. Namísto toho lze použít speciální adresu %s pro propojení revizí s vaším účtem. Tato možnost neovlivní existující revize.
|
||||
openid_desc=OpenID vám umožní delegovat ověřování na externího poskytovatele.
|
||||
|
||||
manage_ssh_keys=Správa klíčů SSH
|
||||
manage_ssh_principals=Spravovat SSH Principal certifikáty
|
||||
manage_gpg_keys=Správa klíčů GPG
|
||||
add_key=Přidat klíč
|
||||
ssh_desc=Tyto veřejné klíče SSH jsou propojeny s vaším účtem. Odpovídající soukromé klíče umožní plný přístup k vašim repozitářům. Klíče SSH, které byly ověřeny, mohou být použity pro ověření Git commitů podepsaných přes SSH.
|
||||
ssh_desc=Tyto veřejné klíče SSH jsou propojeny s vaším účtem. Odpovídající soukromé klíče umožní plný přístup k vašim repozitářům. Klíče SSH, které byly ověřeny, mohou být použity pro ověření Git revizí podepsaných přes SSH.
|
||||
principal_desc=Tyto SSH Principal certifikáty jsou přidruženy k vašemu účtu a umožňují plný přístup do vašich repozitářů.
|
||||
gpg_desc=Tyto veřejné klíče GPG jsou propojeny s vaším účtem a používají se k ověření vašich commitů. Uložte je na bezpečné místo, jelikož umožňují podepsat commity vaší identitou.
|
||||
gpg_desc=Tyto veřejné klíče GPG jsou propojeny s vaším účtem a používají se k ověření vašich revizí. Uložte je na bezpečné místo, jelikož umožňují podepsat revize vaší identitou.
|
||||
ssh_helper=<strong>Potřebujete pomoct?</strong> Podívejte se do příručky, jak <a href="%s">vytvořit vlastní klíče SSH</a> nebo vyřešte <a href="%s">běžné problémy</a>, se kterými se můžete potkat při použití SSH.
|
||||
gpg_helper=<strong>Potřebujete pomoct?</strong> Podívejte se do příručky <a href="%s">o GPG</a>.
|
||||
add_new_key=Přidat klíč SSH
|
||||
|
@ -861,9 +863,9 @@ ssh_principal_been_used=Tento SSH Principal certifikát již byl přidán na ser
|
|||
gpg_key_id_used=Veřejný GPG klíč se stejným ID již existuje.
|
||||
gpg_no_key_email_found=Tento GPG klíč neodpovídá žádné aktivované e-mailové adrese spojené s vaším účtem. Může být stále přidán, pokud podepíšete zadaný token.
|
||||
gpg_key_matched_identities=Odpovídající identity:
|
||||
gpg_key_matched_identities_long=Vložené identity v tomto klíči odpovídají následujícím aktivovaným e-mailovým adresám tohoto uživatele. Commity odpovídající těmto e-mailovým adresám lze ověřit pomocí tohoto klíče.
|
||||
gpg_key_matched_identities_long=Vložené identity v tomto klíči odpovídají následujícím aktivovaným e-mailovým adresám tohoto uživatele. Revize odpovídající těmto e-mailovým adresám lze ověřit pomocí tohoto klíče.
|
||||
gpg_key_verified=Ověřený klíč
|
||||
gpg_key_verified_long=Klíč byl ověřen pomocí tokenu a může být použit k ověření commitů shodujících se s libovolnou aktivovanou e-mailovou adresou pro tohoto uživatele navíc k jakékoli odpovídající identitě tohoto klíče.
|
||||
gpg_key_verified_long=Klíč byl ověřen pomocí tokenu a může být použit k ověření revizí shodujících se s libovolnou aktivovanou e-mailovou adresou pro tohoto uživatele navíc k jakékoli odpovídající identitě tohoto klíče.
|
||||
gpg_key_verify=Ověřit
|
||||
gpg_invalid_token_signature=Zadaný GPG klíč, podpis a token se neshodují nebo je token zastaralý.
|
||||
gpg_token_required=Musíte zadat podpis pro níže uvedený token
|
||||
|
@ -874,7 +876,7 @@ gpg_token_signature=Zakódovaný podpis GPG
|
|||
key_signature_gpg_placeholder=Začíná textem „-----BEGIN PGP SIGNATURE-----“
|
||||
verify_gpg_key_success=GPG klíč „%s“ byl ověřen.
|
||||
ssh_key_verified=Ověřený klíč
|
||||
ssh_key_verified_long=Klíč byl ověřen pomocí tokenu a může být použit k ověření commitů shodujících se s libovolnou vaší aktivovanou e-mailovou adresou pro tohoto uživatele.
|
||||
ssh_key_verified_long=Klíč byl ověřen pomocí tokenu a může být použit k ověření revizí shodujících se s libovolnou vaší aktivovanou e-mailovou adresou pro tohoto uživatele.
|
||||
ssh_key_verify=Ověřit
|
||||
ssh_invalid_token_signature=Zadaný SSH klíč, podpis nebo token se neshodují nebo je token zastaralý.
|
||||
ssh_token_required=Musíte zadat podpis pro níže uvedený token
|
||||
|
@ -896,7 +898,7 @@ ssh_key_deletion=Odebrat klíč SSH
|
|||
gpg_key_deletion=Odebrat klíč GPG
|
||||
ssh_principal_deletion=Odstranit SSH Principal certifikát
|
||||
ssh_key_deletion_desc=Odstranění SSH klíče zruší jeho přístup k vašemu účtu. Pokračovat?
|
||||
gpg_key_deletion_desc=Odstraněním klíče GPG zneplatníte ověření commitů, které jsou jím podepsány. Pokračovat?
|
||||
gpg_key_deletion_desc=Odstraněním klíče GPG zneplatníte ověření revizí, které jsou jím podepsány. Pokračovat?
|
||||
ssh_principal_deletion_desc=Odstranění SSH Principal certifikátu zruší jeho přístup k vašemu účtu. Pokračovat?
|
||||
ssh_key_deletion_success=SSH klíč byl odstraněn.
|
||||
gpg_key_deletion_success=GPG klíč byl odstraněn.
|
||||
|
@ -914,7 +916,7 @@ principal_state_desc=Tento SSH Principal certifikát byl použit během posledn
|
|||
show_openid=Zobrazit na profilu
|
||||
hide_openid=Odstranit z profilu
|
||||
ssh_disabled=SSH je zakázáno
|
||||
ssh_signonly=SSH je v současné době zakázáno, proto jsou tyto klíče použity pouze pro ověření podpisu.
|
||||
ssh_signonly=SSH je v současné době zakázáno, proto jsou tyto klíče použity pouze pro ověření podpisu revizí.
|
||||
ssh_externally_managed=Tento SSH klíč je spravován externě pro tohoto uživatele
|
||||
manage_social=Správa propojených účtů sociálních sítí
|
||||
social_desc=Tyto účty sociálních sítí lze použít k přihlášení k vašemu účtu. Ujistěte se, že jsou všechny vaše.
|
||||
|
@ -966,7 +968,7 @@ oauth2_client_secret_hint=Tajný klíč se znovu nezobrazí po opuštění nebo
|
|||
oauth2_application_edit=Upravit
|
||||
oauth2_application_create_description=Aplikace OAuth2 poskytují přístup vašim aplikacím třetích stran k uživatelským účtům na této instanci.
|
||||
oauth2_application_remove_description=Odebráním OAuth2 aplikace zabrání přístupu ověřeným uživatelům na této instanci. Pokračovat?
|
||||
oauth2_application_locked=Gitea předregistruje některé OAuth2 aplikace při spuštění, pokud je to povoleno v konfiguraci. Aby se zabránilo neočekávanému chování, nelze je upravovat ani odstranit. Více informací naleznete v dokumentaci OAuth2.
|
||||
oauth2_application_locked=Forgejo předem zaregistruje některé OAuth2 aplikace při spuštění, pokud je to povoleno v konfiguraci. Aby se zabránilo neočekávanému chování, nelze je upravovat ani odstranit. Více informací naleznete v dokumentaci OAuth2.
|
||||
|
||||
authorized_oauth2_applications=Autorizované aplikace OAuth2
|
||||
authorized_oauth2_applications_description=Těmto aplikacím třetích stran jste udělili přístup ke svému osobnímu účtu Forgejo. Zrušte prosím přístup aplikacím, které již nejsou používány.
|
||||
|
@ -1113,12 +1115,12 @@ trust_model_helper_default=Výchozí: Použít výchozí model důvěry pro tuto
|
|||
create_repo=Vytvořit repozitář
|
||||
default_branch=Výchozí větev
|
||||
default_branch_label=výchozí
|
||||
default_branch_helper=Výchozí větev je základní větev pro žádosti o sloučení a commity kódu.
|
||||
default_branch_helper=Výchozí větev je základní větev pro žádosti o sloučení a revize kódu.
|
||||
mirror_prune=Vyčistit
|
||||
mirror_prune_desc=Odstranit zastaralé reference na vzdálené sledování
|
||||
mirror_interval=Interval zrcadlení (platné časové jednotky jsou „h“, „m“ a „s“). Nastavením na 0 zakážete periodickou synchronizaci. (Minimální interval: %s)
|
||||
mirror_interval_invalid=Interval zrcadlení není platný.
|
||||
mirror_sync_on_commit=Synchronizovat při nahrávání commitů
|
||||
mirror_sync_on_commit=Synchronizovat při nahrávání revizí
|
||||
mirror_address=Klonovat z URL
|
||||
mirror_address_desc=Zadejte požadované přístupové údaje do sekce Ověření.
|
||||
mirror_address_url_invalid=Poskytnutá URL je neplatná. Všechny části musíte správně nahradit escape sekvencí.
|
||||
|
@ -1151,7 +1153,7 @@ blame_prior=Zobrazit blame před touto změnou
|
|||
blame.ignore_revs.failed=Nepodařilo se ignorovat revize v <a href="%s">.git-blame-ignore-revs</a>.
|
||||
author_search_tooltip=Zobrazí maximálně 30 uživatelů
|
||||
|
||||
tree_path_not_found_commit=Cesta %[1]s v commitu %[2]s neexistuje
|
||||
tree_path_not_found_commit=Cesta %[1]s v revizi %[2]s neexistuje
|
||||
tree_path_not_found_branch=Cesta %[1]s ve větvi %[2]s neexistuje
|
||||
tree_path_not_found_tag=Cesta %[1]s ve značce %[2]s neexistuje
|
||||
|
||||
|
@ -1267,7 +1269,7 @@ empty_message=Tento repozitář nemá žádný obsah.
|
|||
broken_message=Data gitu, která jsou základem tohoto repozitáře, nelze číst. Kontaktujte správce této instance nebo smažte tento repositář.
|
||||
|
||||
code=Zdrojový kód
|
||||
code.desc=Přístup ke zdrojovým kódům, souborům, commitům a větvím.
|
||||
code.desc=Přístup ke zdrojovým kódům, souborům, revizím a větvím.
|
||||
branch=Větev
|
||||
tree=Strom
|
||||
clear_ref=Vymazat aktuální referenci
|
||||
|
@ -1285,8 +1287,8 @@ org_labels_desc=Štítky na úrovni organizace, které mohou být použity se <s
|
|||
org_labels_desc_manage=spravovat
|
||||
|
||||
milestones=Milníky
|
||||
commits=Commity
|
||||
commit=Commit
|
||||
commits=Revize
|
||||
commit=Revize
|
||||
release=Vydání
|
||||
releases=Vydání
|
||||
tag=Značka
|
||||
|
@ -1315,18 +1317,19 @@ view_git_blame=Zobrazit git blame
|
|||
video_not_supported_in_browser=Váš prohlížeč nepodporuje značku HTML5 „video“.
|
||||
audio_not_supported_in_browser=Váš prohlížeč nepodporuje značku HTML5 „audio“.
|
||||
stored_lfs=Uloženo pomocí Git LFS
|
||||
stored_annex=Uloženo pomocí Git Annex
|
||||
symbolic_link=Symbolický odkaz
|
||||
executable_file=Spustitelný soubor
|
||||
vendored = Vendorováno
|
||||
generated = Generováno
|
||||
commit_graph=Graf commitů
|
||||
commit_graph=Graf revizí
|
||||
commit_graph.select=Vybrat větve
|
||||
commit_graph.hide_pr_refs=Skrýt žádosti o sloučení
|
||||
commit_graph.monochrome=Černobílé
|
||||
commit_graph.color=Barva
|
||||
commit.contained_in=Tento commit je obsažen v:
|
||||
commit.contained_in_default_branch=Tento commit je součástí výchozí větve
|
||||
commit.load_referencing_branches_and_tags=Načíst větve a značky odkazující na tento commit
|
||||
commit.contained_in=Tato revize je obsažena v:
|
||||
commit.contained_in_default_branch=Tato revize je součástí výchozí větve
|
||||
commit.load_referencing_branches_and_tags=Načíst větve a značky odkazující na tuto revizi
|
||||
blame=Blame
|
||||
download_file=Stáhnout soubor
|
||||
normal_view=Normální zobrazení
|
||||
|
@ -1340,6 +1343,7 @@ editor.upload_file=Nahrát soubor
|
|||
editor.edit_file=Upravit soubor
|
||||
editor.preview_changes=Náhled změn
|
||||
editor.cannot_edit_lfs_files=LFS soubory nemohou být upravovány přes webové rozhraní.
|
||||
editor.cannot_edit_annex_files=Annex soubory nemohou být upravovány přes webové rozhraní.
|
||||
editor.cannot_edit_non_text_files=Binární soubory nemohou být upravovány přes webové rozhraní.
|
||||
editor.edit_this_file=Upravit soubor
|
||||
editor.this_file_locked=Soubor je uzamčen
|
||||
|
@ -1363,12 +1367,12 @@ editor.patching=Záplatování:
|
|||
editor.fail_to_apply_patch=Nelze použít záplatu „%s“
|
||||
editor.new_patch=Nová záplata
|
||||
editor.commit_message_desc=Přidat volitelný rozšířený popis…
|
||||
editor.signoff_desc=Přidat Signed-off-by podpis přispěvatele na konec zprávy o commitu.
|
||||
editor.signoff_desc=Přidat podpis přispěvatele „Signed-off-by“ na konec zprávy revize.
|
||||
editor.commit_directly_to_this_branch=Odeslat přímo do větve <strong class="%[2]s">%[1]s</strong>.
|
||||
editor.create_new_branch=Vytvořit <strong>novou větev</strong> pro tento commit a vytvořit žádost o sloučení.
|
||||
editor.create_new_branch_np=Vytvořte <strong>novou větev</strong> z tohoto commitu.
|
||||
editor.create_new_branch=Vytvořit <strong>novou větev</strong> pro tuto revizi a vytvořit žádost o sloučení.
|
||||
editor.create_new_branch_np=Vytvořit <strong>novou větev</strong> z této revize.
|
||||
editor.propose_file_change=Navrhnout změnu souboru
|
||||
editor.new_branch_name=Pojmenujte novou větev pro tento commit
|
||||
editor.new_branch_name=Pojmenujte novou větev pro tuto revizi
|
||||
editor.new_branch_name_desc=Název nové větve…
|
||||
editor.cancel=Zrušit
|
||||
editor.filename_cannot_be_empty=Jméno nemůže být prázdné.
|
||||
|
@ -1380,7 +1384,7 @@ editor.file_is_a_symlink=`„%s“ je symbolický odkaz. Symbolické odkazy nemo
|
|||
editor.filename_is_a_directory=Jméno souboru „%s“ je již použito jako jméno adresáře v tomto repozitáři.
|
||||
editor.file_editing_no_longer_exists=Upravovaný soubor „%s“ již není součástí tohoto repozitáře.
|
||||
editor.file_deleting_no_longer_exists=Odstraňovaný soubor „%s“ již není součástí tohoto repozitáře.
|
||||
editor.file_changed_while_editing=Obsah souboru se od zahájení úprav změnil. <a target="_blank" rel="noopener noreferrer" href="%s">Klikněte sem</a> pro jejich zobrazení nebo <strong>proveďte commit změn ještě jednou</strong> pro jejich přepsání.
|
||||
editor.file_changed_while_editing=Obsah souboru se od zahájení úprav změnil. <a target="_blank" rel="noopener noreferrer" href="%s">Klikněte sem</a> pro jeho zobrazení nebo <strong>odešlete změny ještě jednou</strong> pro jeho přepsání.
|
||||
editor.file_already_exists=Soubor „%s“ již existuje v tomto repozitáři.
|
||||
editor.commit_empty_file_header=Odeslat prázdný soubor
|
||||
editor.commit_empty_file_text=Soubor, který se chystáte odeslat, je prázdný. Pokračovat?
|
||||
|
@ -1394,16 +1398,16 @@ editor.add_subdir=Přidat adresář…
|
|||
editor.unable_to_upload_files=Nepodařilo se nahrát soubory do „%s“. Chyba: %v
|
||||
editor.upload_file_is_locked=Soubor „%s“ je uzamčen uživatelem %s.
|
||||
editor.upload_files_to_dir=Nahrány soubory do „%s“
|
||||
editor.cannot_commit_to_protected_branch=Nelze vytvořit commit v chráněné větvi „%s“.
|
||||
editor.cannot_commit_to_protected_branch=Nelze vytvořit revizi v chráněné větvi „%s“.
|
||||
editor.no_commit_to_branch=Nepodařilo se odeslat přímo do větve:
|
||||
editor.user_no_push_to_branch=Uživatel nemůže nahrávat do větve
|
||||
editor.require_signed_commit=Větev vyžaduje podepsaný commit
|
||||
editor.require_signed_commit=Větev vyžaduje podepsanou revizi
|
||||
editor.cherry_pick=Cherry-pick %s na:
|
||||
editor.revert=Vrátit %s na:
|
||||
|
||||
commits.desc=Procházet historii změn zdrojového kódu.
|
||||
commits.commits=Commity
|
||||
commits.no_commits=Žádné společné commity. „%s“ a „%s“ mají zcela odlišnou historii.
|
||||
commits.commits=Revize
|
||||
commits.no_commits=Žádné společné revize. „%s“ a „%s“ mají zcela odlišnou historii.
|
||||
commits.nothing_to_compare=Tyto větve jsou stejné.
|
||||
commits.search=Hledání commitů…
|
||||
commits.search.tooltip=Můžete předřadit klíčová slova s „author:“, „committer:“, „after:“ nebo „before:“, např. „revert author:Alice before:2019-01-03“.
|
||||
|
@ -1416,21 +1420,21 @@ commits.older=Starší
|
|||
commits.newer=Novější
|
||||
commits.signed_by=Podepsáno
|
||||
commits.signed_by_untrusted_user=Podepsáno nedůvěryhodným uživatelem
|
||||
commits.signed_by_untrusted_user_unmatched=Podepsáno nedůvěryhodným uživatelem, který nesouhlasí s přispěvatelem
|
||||
commits.signed_by_untrusted_user_unmatched=Podepsáno nedůvěryhodným uživatelem, který neodpovídá přispěvateli
|
||||
commits.gpg_key_id=ID klíče GPG
|
||||
commits.ssh_key_fingerprint=Otisk klíče SSH
|
||||
commits.view_path=Zobrazit v tomto bodě v historii
|
||||
commits.view_path=Zobrazit tento bod v historii
|
||||
|
||||
commit.operations=Operace
|
||||
commit.revert=Vrátit
|
||||
commit.revert-header=Vrátit: %s
|
||||
commit.revert-content=Vyberte větev pro návrat na:
|
||||
commit.revert-content=Vyberte větev pro návrat:
|
||||
commit.cherry-pick=Cherry-pick
|
||||
commit.cherry-pick-header=Cherry-pick: %s
|
||||
commit.cherry-pick-content=Vyberte větev pro Cherry-pick na:
|
||||
commit.cherry-pick-content=Vyberte větev pro Cherry-pick:
|
||||
|
||||
commitstatus.error=Chyba
|
||||
commitstatus.failure=Chyba
|
||||
commitstatus.failure=Selhání
|
||||
commitstatus.pending=Čekající
|
||||
commitstatus.success=Úspěch
|
||||
|
||||
|
@ -1613,15 +1617,15 @@ issues.context.edit=Upravit
|
|||
issues.context.delete=Smazat
|
||||
issues.no_content=K dispozici není žádný popis.
|
||||
issues.close=Zavřít problém
|
||||
issues.comment_pull_merged_at=sloučený commit %[1]s do %[2]s %[3]s
|
||||
issues.comment_manually_pull_merged_at=ručně sloučený commit %[1]s do %[2]s %[3]s
|
||||
issues.comment_pull_merged_at=sloučena revize %[1]s do %[2]s %[3]s
|
||||
issues.comment_manually_pull_merged_at=ručně sloučena revize %[1]s do %[2]s %[3]s
|
||||
issues.close_comment_issue=Zavřít s komentářem
|
||||
issues.reopen_issue=Znovu otevřít
|
||||
issues.reopen_comment_issue=Znovu otevřít s komentářem
|
||||
issues.create_comment=Okomentovat
|
||||
issues.closed_at=`uzavřel/a tento problém <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.reopened_at=`znovu otevřel/a tento problém <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.commit_ref_at=`odkázal/a na tento problém z commitu <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.commit_ref_at=`odkázal/a na tento problém z revize <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_issue_from=`<a href="%[3]s">odkázal/a na tento problém %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_pull_from=`<a href="%[3]s">odkázal/a na tuto žádost o sloučení %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_closing_from=`<a href="%[3]s">odkazoval/a na tento problém ze žádosti o sloučení %[4]s, která jej uzavře</a>, <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
|
@ -1727,8 +1731,8 @@ issues.due_date=Termín dokončení
|
|||
issues.invalid_due_date_format=Termín dokončení musí být ve formátu „rrrr-mm-dd“.
|
||||
issues.error_modifying_due_date=Změna termínu dokončení selhala.
|
||||
issues.error_removing_due_date=Odstranění termínu dokončení selhalo.
|
||||
issues.push_commit_1=přidal/a %d commit %s
|
||||
issues.push_commits_n=přidal/a %d commity %s
|
||||
issues.push_commit_1=přidal/a %d revizi %s
|
||||
issues.push_commits_n=přidal/a %d revize %s
|
||||
issues.force_push_codes=`vynucené nahrání %[1]s od <a class="%[7]s" href="%[3]s"><code>%[2]s</code></a> do <a class="%[7]s" href="%[5]s"><code>%[4]s</code></a> %[6]s`
|
||||
issues.force_push_compare=Porovnat
|
||||
issues.due_date_form=rrrr-mm-dd
|
||||
|
@ -1833,13 +1837,13 @@ pulls.switch_comparison_type=Přepnout typ porovnání
|
|||
pulls.switch_head_and_base=Prohodit hlavní a základní větev
|
||||
pulls.filter_branch=Filtrovat větev
|
||||
pulls.no_results=Nebyly nalezeny žádné výsledky.
|
||||
pulls.show_all_commits=Zobrazit všechny commity
|
||||
pulls.show_all_commits=Zobrazit všechny revize
|
||||
pulls.show_changes_since_your_last_review=Zobrazit změny od vašeho posledního posouzení
|
||||
pulls.showing_only_single_commit=Zobrazuji pouze změny commitu %[1]s
|
||||
pulls.showing_only_single_commit=Zobrazuji pouze změny revize %[1]s
|
||||
pulls.showing_specified_commit_range=Zobrazují se pouze změny mezi %[1]s..%[2]s
|
||||
pulls.select_commit_hold_shift_for_range=Vyberte commit. Podržte klávesu shift + klepněte pro výběr rozsahu
|
||||
pulls.select_commit_hold_shift_for_range=Vyberte revizi. Podržte klávesu Shift a klikněte pro výběr rozsahu
|
||||
pulls.review_only_possible_for_full_diff=Posouzení je možné pouze při zobrazení plného rozlišení
|
||||
pulls.filter_changes_by_commit=Filtrovat podle commitu
|
||||
pulls.filter_changes_by_commit=Filtrovat podle revize
|
||||
pulls.nothing_to_compare=Tyto větve jsou stejné. Není třeba vytvářet žádost o sloučení.
|
||||
pulls.nothing_to_compare_have_tag = Vybraná větev a značka jsou shodné.
|
||||
pulls.nothing_to_compare_and_allow_empty_pr=Tyto větve jsou stejné. Tato žádost o sloučení bude prázdná.
|
||||
|
@ -1849,7 +1853,7 @@ pulls.title_desc_few=chce sloučit %[1]d commity z větve <code>%[2]s</code> do
|
|||
pulls.merged_title_desc_few=sloučil %[1]d commity z větve <code>%[2]s</code> do větve <code>%[3]s</code> před %[4]s
|
||||
pulls.change_target_branch_at=`změnil/a cílovou větev z <b>%s</b> na <b>%s</b> %s`
|
||||
pulls.tab_conversation=Konverzace
|
||||
pulls.tab_commits=Commity
|
||||
pulls.tab_commits=Revize
|
||||
pulls.tab_files=Změněné soubory
|
||||
pulls.reopen_to_merge=Otevřete znovu tuto žádost pro provedení sloučení.
|
||||
pulls.cant_reopen_deleted_branch=Tuto žádost o sloučení nelze znovu otevřít, protože větev byla smazána.
|
||||
|
@ -1868,7 +1872,7 @@ pulls.data_broken=Tato žádost o sloučení je rozbitá kvůli chybějícím in
|
|||
pulls.files_conflicted=Tato žádost o sloučení obsahuje změny, které jsou v rozporu s cílovou větví.
|
||||
pulls.is_checking=Právě probíhá kontrola konfliktů při sloučení. Zkuste to za chvíli.
|
||||
pulls.is_ancestor=Tato větev je již součástí cílové větve. Není co sloučit.
|
||||
pulls.is_empty=Změny na této větvi jsou již na cílové větvi. Toto bude prázdný commit.
|
||||
pulls.is_empty=Změny na této větvi se již nacházejí na cílové větvi. Tato revize bude prázdná.
|
||||
pulls.required_status_check_failed=Některé požadované kontroly nebyly úspěšné.
|
||||
pulls.required_status_check_missing=Některé požadované kontroly chybí.
|
||||
pulls.required_status_check_administrator=Jako administrátor stále můžete sloučit tuto žádost.
|
||||
|
@ -1889,25 +1893,25 @@ pulls.reject_count_1=%d žádost o změnu
|
|||
pulls.reject_count_n=%d žádostí o změnu
|
||||
pulls.waiting_count_1=%d čekající posouzení
|
||||
pulls.waiting_count_n=%d čekajících posouzení
|
||||
pulls.wrong_commit_id=id commitu musí být id commitu v cílové větvi
|
||||
pulls.wrong_commit_id=id revize musí být id revize v cílové větvi
|
||||
|
||||
pulls.no_merge_desc=Tato žádost nemůže být sloučena, protože všechny možnosti repozitáře na sloučení jsou zakázány.
|
||||
pulls.no_merge_helper=Povolte možnosti sloučení v nastavení repozitáře nebo proveďte sloučení žádosti ručně.
|
||||
pulls.no_merge_wip=Tato žádost nemůže být sloučena, protože je označena jako rozpracovaná.
|
||||
pulls.no_merge_not_ready=Tento žádost není připravena na sloučení, zkontrolujte stav posouzení a kontroly stavu.
|
||||
pulls.no_merge_access=Nemáte oprávnění sloučit tuto žádost.
|
||||
pulls.merge_pull_request=Vytvořit slučovací commit
|
||||
pulls.merge_pull_request=Vytvořit slučovací revizi
|
||||
pulls.rebase_merge_pull_request=Rebase pak fast-forward
|
||||
pulls.rebase_merge_commit_pull_request=Rebase a poté vytvořit slučovací commit
|
||||
pulls.squash_merge_pull_request=Vytvořit squash commit
|
||||
pulls.rebase_merge_commit_pull_request=Provést rebase a poté vytvořit slučovací revizi
|
||||
pulls.squash_merge_pull_request=Vytvořit squash revizi
|
||||
pulls.merge_manually=Sloučeno ručně
|
||||
pulls.merge_commit_id=ID slučovacího commitu
|
||||
pulls.require_signed_wont_sign=Větev vyžaduje podepsané commity, ale toto sloučení nebude podepsáno
|
||||
pulls.merge_commit_id=ID slučovací revize
|
||||
pulls.require_signed_wont_sign=Větev vyžaduje podepsané revize, ale toto sloučení nebude podepsáno
|
||||
|
||||
pulls.invalid_merge_option=Pro tuto žádost nemůžete použít tuto možnost sloučení.
|
||||
pulls.merge_conflict=Sloučení selhalo: při slučování došlo ke konfliktu. Tip: zkuste jinou strategii
|
||||
pulls.merge_conflict_summary=Chybové hlášení
|
||||
pulls.rebase_conflict=Sloučení selhalo: došlo ke konfliktu při rebase commitu: %[1]s. Tip: zkuste jinou strategii
|
||||
pulls.rebase_conflict=Sloučení selhalo: došlo ke konfliktu při provádění rebase revize %[1]s. Tip: zkuste jinou strategii
|
||||
pulls.rebase_conflict_summary=Chybové hlášení
|
||||
pulls.unrelated_histories=Sloučení selhalo: hlava a základ revize nesdílí společnou historii. Tip: zkuste jinou strategii
|
||||
pulls.merge_out_of_date=Sloučení selhalo: základ byl aktualizován při generování sloučení. Tip: zkuste to znovu.
|
||||
|
@ -1937,7 +1941,7 @@ pulls.reopened_at=`znovu otevřel/a tuto žádost o sloučení <a id="%[1]s" hre
|
|||
pulls.cmd_instruction_hint=Zobrazit instrukce příkazové řádky
|
||||
pulls.cmd_instruction_checkout_desc=Z vašeho repositáře projektu se podívejte na novou větev a vyzkoušejte změny.
|
||||
pulls.cmd_instruction_merge_title=Sloučit
|
||||
pulls.cmd_instruction_merge_desc=Slučte změny a aktualizujte je na Gitea.
|
||||
pulls.cmd_instruction_merge_desc=Slučte změny a aktualizujte je na Forgeju.
|
||||
pulls.clear_merge_message=Vymazat zprávu o sloučení
|
||||
|
||||
pulls.auto_merge_button_when_succeed=(Když kontroly uspějí)
|
||||
|
@ -1959,7 +1963,7 @@ pulls.delete.text=Opravdu chcete odstranit tuto žádost o sloučení? (Tímto t
|
|||
pull.deleted_branch=(odstraněno):%s
|
||||
|
||||
milestones.new=Nový milník
|
||||
milestones.closed=Zavřen dne %s
|
||||
milestones.closed=Uzavřeno %s
|
||||
milestones.update_ago=Aktualizováno %s
|
||||
milestones.no_due_date=Bez lhůty dokončení
|
||||
milestones.open=Otevřít
|
||||
|
@ -1988,15 +1992,15 @@ milestones.filter_sort.most_complete=Nejvíce dokončené
|
|||
milestones.filter_sort.most_issues=Nejvíce problémů
|
||||
milestones.filter_sort.least_issues=Nejméně problémů
|
||||
|
||||
signing.will_sign=Tento commit bude podepsána klíčem „%s“.
|
||||
signing.wont_sign.error=Došlo k chybě při kontrole, zda může být commit podepsán.
|
||||
signing.wont_sign.nokey=Tato instance nemá žádný klíč k podepsání tohoto commitu.
|
||||
signing.wont_sign.never=Commity nejsou nikdy podepsány.
|
||||
signing.wont_sign.always=Commity jsou vždy podepsány.
|
||||
signing.wont_sign.pubkey=Commit nebude podepsán, protože nemáte veřejný klíč spojený s vaším účtem.
|
||||
signing.wont_sign.twofa=Pro podepisování commitů musíte mít zapnuto dvoufázové ověření.
|
||||
signing.wont_sign.parentsigned=Commit nebude podepsán, protože nadřazený commit není podepsán.
|
||||
signing.wont_sign.basesigned=Sloučení nebude podepsáno, protože základní commit není podepsaný.
|
||||
signing.will_sign=Tato revize bude podepsána klíčem „%s“.
|
||||
signing.wont_sign.error=Došlo k chybě při kontrole, zda může být revize podepsána.
|
||||
signing.wont_sign.nokey=Tato instance nemá žádný klíč k podepsání této revize.
|
||||
signing.wont_sign.never=Revize nebudou nikdy podepsány.
|
||||
signing.wont_sign.always=Revize budou vždy podepsány.
|
||||
signing.wont_sign.pubkey=Reviz nebude podepsána, protože nemáte veřejný klíč spojený s vaším účtem.
|
||||
signing.wont_sign.twofa=Pro podepisování revizí musíte mít zapnuto dvoufázové ověření.
|
||||
signing.wont_sign.parentsigned=Revize nebude podepsána, protože nadřazená revize není podepsána.
|
||||
signing.wont_sign.basesigned=Revize nebude podepsána, protože základní revize není podepsána.
|
||||
signing.wont_sign.headsigned=Sloučení nebude podepsáno, protože hlavní revize není podepsána.
|
||||
signing.wont_sign.commitssigned=Sloučení nebude podepsáno, protože všechny přidružené revize nejsou podepsány.
|
||||
signing.wont_sign.approved=Sloučení nebude podepsáno, protože žádost o sloučení není schválena.
|
||||
|
@ -2015,9 +2019,9 @@ wiki.filter_page=Filtr stránky
|
|||
wiki.new_page=Stránka
|
||||
wiki.page_title=Název stránky
|
||||
wiki.page_content=Obsah stránky
|
||||
wiki.default_commit_message=Napište poznámku k této aktualizaci stránky (nepovinný).
|
||||
wiki.default_commit_message=Napište poznámku k této aktualizaci stránky (nepovinné).
|
||||
wiki.save_page=Uložit stránku
|
||||
wiki.last_commit_info=%s upravil tuto stránku %s
|
||||
wiki.last_commit_info=Uživatel %s upravil tuto stránku %s
|
||||
wiki.edit_page_button=Změnit stránku
|
||||
wiki.new_page_button=Nová stránka
|
||||
wiki.file_revision=Revize stránky
|
||||
|
@ -2076,14 +2080,14 @@ activity.title.releases_1=%d vydání
|
|||
activity.title.releases_n=%d vydání
|
||||
activity.title.releases_published_by=%s publikoval %s
|
||||
activity.published_release_label=Vydání
|
||||
activity.no_git_activity=V tomto období nebyla žádná aktivita při odevzdání.
|
||||
activity.no_git_activity=V tomto období nebyla žádná aktivita přispěvatelů.
|
||||
activity.git_stats_exclude_merges=Při vyloučení slučování,
|
||||
activity.git_stats_author_1=%d autor
|
||||
activity.git_stats_author_n=%d autoři
|
||||
activity.git_stats_pushed_1=nahrál
|
||||
activity.git_stats_pushed_n=nahrály
|
||||
activity.git_stats_commit_1=%d commit
|
||||
activity.git_stats_commit_n=%d commity
|
||||
activity.git_stats_commit_1=%d revize
|
||||
activity.git_stats_commit_n=%d revizí
|
||||
activity.git_stats_push_to_branch=do %s a
|
||||
activity.git_stats_push_to_all_branches=do všech větví.
|
||||
activity.git_stats_on_default_branch=Na %s,
|
||||
|
@ -2099,7 +2103,7 @@ activity.git_stats_deletion_1=%d odebrání
|
|||
activity.git_stats_deletion_n=%d odebrání
|
||||
|
||||
contributors.contribution_type.filter_label = Typ přispění:
|
||||
contributors.contribution_type.commits=Commity
|
||||
contributors.contribution_type.commits=Revize
|
||||
|
||||
search=Vyhledat
|
||||
search.search_repo=Hledat repozitář
|
||||
|
@ -2125,9 +2129,9 @@ settings.hooks=Webhooky
|
|||
settings.githooks=Git hooky
|
||||
settings.basic_settings=Základní nastavení
|
||||
settings.mirror_settings=Nastavení zrcadel
|
||||
settings.mirror_settings.docs=Nastavte repozitář pro automatickou synchronizaci commitů, značek a větví s jiným repozitářem.
|
||||
settings.mirror_settings.docs.disabled_pull_mirror.instructions=Nastavte váš projekt pro automatické nahrávání commitů, značek a větví do jiného repozitáře. Správce webu zakázal zrcadla pro natažení.
|
||||
settings.mirror_settings.docs.disabled_push_mirror.instructions=Nastavte svůj projekt pro automatické natažení commitů, značek a větví z jiného repozitáře.
|
||||
settings.mirror_settings.docs=Nastavte repozitář pro automatickou synchronizaci revizí, značek a větví s jiným repozitářem.
|
||||
settings.mirror_settings.docs.disabled_pull_mirror.instructions=Nastavte váš projekt pro automatické nahrávání revizí, značek a větví do jiného repozitáře. Správce webu zakázal nahrávání ze zrcadel.
|
||||
settings.mirror_settings.docs.disabled_push_mirror.instructions=Nastavte svůj projekt pro automatické nahrávání revizí, značek a větví z jiného repozitáře.
|
||||
settings.mirror_settings.docs.no_new_mirrors=Váš repozitář zrcadlí změny do nebo z jiného repozitáře. Mějte prosím na paměti, že v tuto chvíli nemůžete vytvořit žádná nová zrcadla.
|
||||
settings.mirror_settings.docs.can_still_use=I když nemůžete upravit stávající zrcadla nebo vytvořit nová, stále můžete použít své stávající zrcadlo.
|
||||
settings.mirror_settings.docs.more_information_if_disabled=Více informací o zrcadlech pro nahrání a natažení naleznete zde:
|
||||
|
@ -2188,11 +2192,11 @@ settings.admin_settings=Administrátorská nastavení
|
|||
settings.admin_enable_health_check=Povolit kontrolu stavu repozitáře (git fsck)
|
||||
settings.admin_code_indexer=Indexování kódu
|
||||
settings.admin_stats_indexer=Index statistiky kódu
|
||||
settings.admin_indexer_commit_sha=Poslední indexovaný commit
|
||||
settings.admin_indexer_commit_sha=Poslední indexovaná revize
|
||||
settings.admin_indexer_unindexed=Neindexováno
|
||||
settings.reindex_button=Přidat do fronty reindexace
|
||||
settings.reindex_requested=Požadováno reindexování
|
||||
settings.admin_enable_close_issues_via_commit_in_any_branch=Zavřít problém pomocí commitu v jiné než výchozí větvi
|
||||
settings.admin_enable_close_issues_via_commit_in_any_branch=Zavřít problém pomocí revize provedené v jiné než výchozí větvi
|
||||
settings.danger_zone=Nebezpečná zóna
|
||||
settings.new_owner_has_same_repo=Nový vlastník již repozitář se stejným názvem má. Vyberte prosím jiné jméno.
|
||||
settings.convert=Převést na běžný repozitář
|
||||
|
@ -2229,11 +2233,11 @@ settings.trust_model.collaborator=Spolupracovník
|
|||
settings.trust_model.collaborator.long=Spolupracovník: Důvěřovat podpisům spolupracovníků
|
||||
settings.trust_model.collaborator.desc=Platné podpisy spolupracovníků tohoto repozitáře budou označeny jako „důvěryhodné“ - (ať se shodují s autorem, či nikoli). V opačném případě budou platné podpisy označeny jako „nedůvěryhodné“, pokud se podpis shoduje s přispěvatelem a „neodpovídající“, pokud ne.
|
||||
settings.trust_model.committer=Přispěvatel
|
||||
settings.trust_model.committer.long=Přispěvatel: Důvěřovat podpisům, které odpovídají autorům (což odpovídá GitHub a přinutí Giteu nastavit jako tvůrce pro Giteou podepsané revize)
|
||||
settings.trust_model.committer.desc=Platné podpisy budou označeny jako „důvěryhodné“ pouze, pokud se shodují s přispěvatelem, v opačném případě budou označeny jako „neodpovídající“. To přinutí Forgejo, aby bylo přispěvatelem podepsaných commitů se skutečným přispěvatelem označeným jako Co-authored-by: a Co-committed-by: na konci commitu. Výchozí klíč Forgejo musí odpovídat uživateli v databázi.
|
||||
settings.trust_model.committer.long=Přispěvatel: Důvěřovat podpisům, které odpovídají autorům (což odpovídá GitHubu a přinutí Forgejo nastavit se jako autora pro Forgejem podepsané revize)
|
||||
settings.trust_model.committer.desc=Platné podpisy budou označeny jako „důvěryhodné“ pouze, pokud se shodují s přispěvatelem, v opačném případě budou označeny jako „neodpovídající“. To přinutí Forgejo, aby bylo přispěvatelem podepsaných revizí se skutečným přispěvatelem označeným jako Co-authored-by: a Co-committed-by: na konci revize. Výchozí klíč Forgejo musí odpovídat uživateli v databázi.
|
||||
settings.trust_model.collaboratorcommitter=Spolupracovník+Přispěvatel
|
||||
settings.trust_model.collaboratorcommitter.long=Spolupracovník+Přispěvatel: Důvěřovat podpisům od spolupracovníků, které odpovídají tvůrci revize
|
||||
settings.trust_model.collaboratorcommitter.desc=Platné podpisy spolupracovníků tohoto repozitáře budou označeny jako „důvěryhodné“, pokud se shodují s přispěvatelem. V opačném případě budou platné podpisy označeny jako "nedůvěryhodné", pokud se podpis shoduje s přispěvatelem a „neodpovídajícím“ v opačném případě. To přinutí Giteu, aby byla označena jako přispěvatel podepsaných commitů se skutečným přispěvatelem označeným jako Co-Authored-By: a Co-Committed-By: na konci commitu. Výchozí klíč Forgejo musí odpovídat uživateli v databázi.
|
||||
settings.trust_model.collaboratorcommitter.desc=Platné podpisy spolupracovníků tohoto repozitáře budou označeny jako „důvěryhodné“, pokud se shodují s přispěvatelem. V opačném případě budou platné podpisy označeny jako "nedůvěryhodné", pokud se podpis shoduje s přispěvatelem a „neodpovídajícím“ v opačném případě. To přinutí Forgejo, aby bylo označeno jako autor podepsaných revizí se skutečným přispěvatelem označeným jako Co-Authored-By: a Co-Committed-By: na konci revize. Výchozí klíč Forgejo musí odpovídat uživateli v databázi.
|
||||
settings.wiki_delete=Odstranit data wiki
|
||||
settings.wiki_delete_desc=Smazání Wiki dat repozitáře je trvalé a nemůže být vráceno zpět.
|
||||
settings.wiki_delete_notices_1=- Natrvalo odstraní a zakáže wiki repozitáře pro %s.
|
||||
|
@ -2412,14 +2416,14 @@ settings.protect_enable_push=Povolit nahrávání
|
|||
settings.protect_enable_push_desc=Každý, kdo má přístup k zápisu, bude moci nahrávat do této větve (ale ne vynucená nahrávání).
|
||||
settings.protect_enable_merge=Povolit sloučení
|
||||
settings.protect_whitelist_committers=Povolit omezené nahrání
|
||||
settings.protect_whitelist_committers_desc=Pouze povolení uživatelé budou moci nahrávat do této větve (ale ne vynucení nahrávání).
|
||||
settings.protect_whitelist_committers_desc=Pouze povolení uživatelé budou moci nahrávat do této větve (ale ne vynutit nahrání).
|
||||
settings.protect_whitelist_deploy_keys=Povolit nahrání klíčům pro nasazení s přístupem pro zápis.
|
||||
settings.protect_whitelist_users=Povolení uživatelé pro nahrávání
|
||||
settings.protect_whitelist_search_users=Hledat uživatele…
|
||||
settings.protect_whitelist_teams=Povolené týmy pro nahrávání
|
||||
settings.protect_whitelist_search_teams=Vyhledat týmy…
|
||||
settings.protect_merge_whitelist_committers=Povolit whitelist pro slučování
|
||||
settings.protect_merge_whitelist_committers_desc=Povolit pouze vyjmenovaným uživatelům nebo týmům slučovat požadavky na natažení do této větve.
|
||||
settings.protect_merge_whitelist_committers_desc=Povolit slučování požadavků na sloučení do této větve pouze vyjmenovaným uživatelům nebo týmům.
|
||||
settings.protect_merge_whitelist_users=Povolení uživatelé pro slučování
|
||||
settings.protect_merge_whitelist_teams=Povolené týmy pro slučování
|
||||
settings.protect_check_status_contexts=Povolit kontrolu stavu
|
||||
|
@ -2437,8 +2441,8 @@ settings.protect_approvals_whitelist_users=Povolení posuzovatelé
|
|||
settings.protect_approvals_whitelist_teams=Povolené týmy pro posuzování
|
||||
settings.dismiss_stale_approvals=Odmítnout nekvalitní schválení
|
||||
settings.dismiss_stale_approvals_desc=Pokud budou do větve nahrány nové revize, které mění obsah tohoto požadavku na natažení, všechna stará schválení budou zamítnuta.
|
||||
settings.require_signed_commits=Vyžadovat podepsané commity
|
||||
settings.require_signed_commits_desc=Odmítnout nahrání do této větve pokud nejsou podepsaná nebo jsou neověřitelná.
|
||||
settings.require_signed_commits=Vyžadovat podepsané revize
|
||||
settings.require_signed_commits_desc=Odmítnout nahrání do této větve, pokud nejsou podepsaná nebo jsou neověřitelná.
|
||||
settings.protect_branch_name_pattern=Vzor jména chráněné větve
|
||||
settings.protect_branch_name_pattern_desc=Vzory názvů chráněných větví. Pro vzorovou syntaxi viz <a href="%s">dokumentace</a>. Příklady: main, release/**
|
||||
settings.protect_patterns=Vzory
|
||||
|
@ -2459,7 +2463,7 @@ settings.block_on_official_review_requests=Blokovat sloučení při oficiální
|
|||
settings.block_on_official_review_requests_desc=Slučování nebude možné, pokud mají oficiální požadavek na posouzení, i když mají k dispozici dostatek schválení.
|
||||
settings.block_outdated_branch=Blokovat sloučení, pokud je požadavek na natažení zastaralý
|
||||
settings.block_outdated_branch_desc=Slučování nebude možné, pokud je hlavní větev za základní větví.
|
||||
settings.default_branch_desc=Vybrat výchozí větev repozitáře pro požadavky na natažení a revize kódu:
|
||||
settings.default_branch_desc=Vybrat výchozí větev repozitáře pro žádosti o sloučení a příspěvky kódu:
|
||||
settings.merge_style_desc=Sloučit styly
|
||||
settings.default_merge_style_desc=Výchozí styl sloučení
|
||||
settings.choose_branch=Vyberte větev…
|
||||
|
@ -2486,7 +2490,7 @@ settings.matrix.room_id=ID místnosti
|
|||
settings.matrix.message_type=Typ zprávy
|
||||
settings.archive.button=Archivovat repozitář
|
||||
settings.archive.header=Archivovat tento repozitář
|
||||
settings.archive.text = Archivováním repozitáře jej celý převedete do stavu pouze pro čtení. Bude skryt z nástěnky. Nikdo (ani vy!) nebude moci vytvářet nové commity ani otevírat problémy a žádosti o sloučení.
|
||||
settings.archive.text = Archivováním repozitáře jej celý převedete do stavu pouze pro čtení. Bude skryt z nástěnky. Nikdo (ani vy!) nebude moci vytvářet nové revize ani otevírat problémy a žádosti o sloučení.
|
||||
settings.archive.success=Repozitář byl úspěšně archivován.
|
||||
settings.archive.error=Nastala chyba při archivování repozitáře. Prohlédněte si záznam pro více detailů.
|
||||
settings.archive.error_ismirror=Nemůžete archivovat zrcadlený repozitář.
|
||||
|
@ -2494,7 +2498,7 @@ settings.archive.branchsettings_unavailable=Nastavení větví není v archivova
|
|||
settings.archive.tagsettings_unavailable=Nastavení značek nejsou v archivovaných repozitářích k dispozici.
|
||||
settings.unarchive.button=Zrušit archivaci repozitáře
|
||||
settings.unarchive.header=Obnovit tento repozitář
|
||||
settings.unarchive.text=Obnovení repozitáře vrátí možnost přijímání commitů a nahrávání. Stejně tak se obnoví i možnost vytváření nových problémů a žádostí o sloučení.
|
||||
settings.unarchive.text=Obnovení repozitáře vrátí možnost přijímání revizí a nahrávání. Stejně tak se obnoví i možnost vytváření nových problémů a žádostí o sloučení.
|
||||
settings.unarchive.success=Repozitář byl úspěšně obnoven.
|
||||
settings.unarchive.error=Nastala chyba při obnovování repozitáře. Prohlédněte si záznam pro více detailů.
|
||||
settings.update_avatar_success=Avatar repozitáře byl aktualizován.
|
||||
|
@ -2502,7 +2506,7 @@ settings.lfs=LFS
|
|||
settings.lfs_filelist=LFS soubory uložené v tomto repozitáři
|
||||
settings.lfs_no_lfs_files=V tomto repozitáři nejsou uloženy žádné LFS soubory
|
||||
settings.lfs_findcommits=Najít revize
|
||||
settings.lfs_lfs_file_no_commits=Pro tento soubor LFS nebyly nalezeny žádné commity
|
||||
settings.lfs_lfs_file_no_commits=Pro tento soubor LFS nebyly nalezeny žádné revize
|
||||
settings.lfs_noattribute=Tato cesta nemá uzamykatelný atribut ve výchozí větvi
|
||||
settings.lfs_delete=Odstranit LFS soubor s OID %s
|
||||
settings.lfs_delete_warning=Odstranění souboru LFS může při kontrole způsobit chybu „objekt neexistuje“. Jste si jisti?
|
||||
|
@ -2578,7 +2582,7 @@ diff.review.approve=Schválit
|
|||
diff.review.self_reject=Autoři požadavků na natažení nemohou požadovat změny na svém vlastním požadavku na natažení
|
||||
diff.review.reject=Požadovat změny
|
||||
diff.review.self_approve=Autoři požadavku na natažení nemohou schválit svůj vlastní požadavek na natažení
|
||||
diff.committed_by=odevzdal
|
||||
diff.committed_by=autor:
|
||||
diff.protected=Chráněno
|
||||
diff.image.side_by_side=Vedle sebe
|
||||
diff.image.swipe=Posunout
|
||||
|
@ -2620,7 +2624,7 @@ release.edit_release=Aktualizovat vydání
|
|||
release.delete_release=Smazat vydání
|
||||
release.delete_tag=Smazat značku
|
||||
release.deletion=Smazat vydání
|
||||
release.deletion_desc=Smazání vydání jej pouze odebere z Gitea. Nebude to mít vliv na značku Git, obsah vašeho repozitáře nebo jeho historii. Pokračovat?
|
||||
release.deletion_desc=Smazáním vydání jej pouze odeberete z Forgeja. Nebude to mít vliv na značku Gitu, obsah vašeho repozitáře nebo jeho historii. Pokračovat?
|
||||
release.deletion_success=Vydání bylo odstraněno.
|
||||
release.deletion_tag_desc=Odstraní tuto značku z repozitáře. Obsah repozitáře a historie zůstanou nezměněny. Pokračovat?
|
||||
release.deletion_tag_success=Značka byla odstraněna.
|
||||
|
@ -2643,7 +2647,7 @@ branch.delete_html=Odstranit větev
|
|||
branch.delete_desc=Smazání větve je trvalé. Přestože zrušená větev může existovat i po krátkou dobu, než bude skutečně odstraněna, NELZE ji většinou vrátit. Pokračovat?
|
||||
branch.deletion_success=Větev „%s“ byla smazána.
|
||||
branch.deletion_failed=Nepodařilo se odstranit větev „%s“.
|
||||
branch.delete_branch_has_new_commits=Větev „%s“ nemůže být smazána, protože byly přidány nové commity po sloučení.
|
||||
branch.delete_branch_has_new_commits=Větev „%s“ nelze odstranit, protože byly po sloučení přidány nové revize.
|
||||
branch.create_branch=Vytvořit větev %s
|
||||
branch.create_from=z „%s“
|
||||
branch.create_success=Větev „%s“ byla vytvořena.
|
||||
|
@ -2710,12 +2714,12 @@ mirror_sync = synchronizováno
|
|||
blame.ignore_revs = Ignorování revizí v souboru <a href="%s">.git-blame-ignore-revs</a>. Klikněte <a href="%s">sem pro udělení výjimky</a> a zobrazení normálního přehledu blame.
|
||||
commits.browse_further = Procházet dále
|
||||
issues.role.first_time_contributor = První přispěvatel
|
||||
editor.invalid_commit_mail = Neplatný e-mail pro vytvoření commitu.
|
||||
editor.invalid_commit_mail = Neplatný e-mail pro vytvoření revize.
|
||||
commits.renamed_from = Přejmenováno z %s
|
||||
activity.navbar.recent_commits = Nedávné commity
|
||||
activity.navbar.recent_commits = Nedávné revize
|
||||
settings.units.units = Jednotky
|
||||
pulls.blocked_by_user = V tomto repozitáři nemůžete vytvořit žádost o sloučení, protože jste byli zablokováni jeho majitelem.
|
||||
pulls.clear_merge_message_hint = Vymazáním zprávy o sloučení pouze odstraníte obsah zprávy commitu a ponecháte vygenerované git trailery, jako „Co-Authored-By …“.
|
||||
pulls.clear_merge_message_hint = Vymazáním zprávy o sloučení pouze odstraníte obsah zprávy revize a ponecháte vygenerované git trailery, jako „Co-Authored-By …“.
|
||||
pulls.agit_explanation = Vytvořeno pomocí workflow AGit. AGit umožňuje přispěvatelům navrhovat změny pomocí „git push“ bez vytváření forku nebo nové větve.
|
||||
contributors.contribution_type.deletions = Odstranění
|
||||
settings.pull_mirror_sync_in_progress = Probíhá načítání změn ze vzdáleného %s.
|
||||
|
@ -2724,7 +2728,7 @@ settings.mirror_settings.docs.disabled_push_mirror.pull_mirror_warning = Tuto ak
|
|||
settings.new_owner_blocked_doer = Nový majitel vás zablokoval.
|
||||
settings.mirror_settings.pushed_repository = Odeslaný repozitář
|
||||
settings.add_collaborator_blocked_our = Nepodařilo se přidat spolupracovníka, jelikož byl zablokován majitelem repozitáře.
|
||||
pulls.commit_ref_at = `se odkázal na tuto žádost o sloučení z commitu <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
pulls.commit_ref_at = `se odkázal/a na tuto žádost o sloučení z revize <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
settings.wiki_rename_branch_main = Normalizovat název větve Wiki
|
||||
settings.wiki_rename_branch_main_desc = Přejmenovat větev interně používanou pro Wiki na „%s“. Tato změna je trvalá a nelze ji vrátit.
|
||||
pulls.fast_forward_only_merge_pull_request = Pouze zrychlené
|
||||
|
@ -2748,24 +2752,24 @@ settings.add_collaborator_blocked_them = Nepodařilo se přidat spolupracovníka
|
|||
settings.ignore_stale_approvals = Ignorovat zastaralá schválení
|
||||
settings.event_pull_request_merge = Sloučení žádosti o sloučení
|
||||
settings.event_pull_request_approvals = Schválení žádostí o sloučení
|
||||
settings.ignore_stale_approvals_desc = Nepočítat schválení udělená u starších commitů (zastaralá schválení) do celkového počtu schválení u ŽS. Není relevantní, pokud byla zastaralá schválení již zrušena.
|
||||
settings.ignore_stale_approvals_desc = Nepočítat schválení udělená u starších revizí (zastaralá schválení) do celkového počtu schválení u žádosti o sloučení. Není relevantní, pokud byla zastaralá schválení již zrušena.
|
||||
file_follow = Následovat symbolický odkaz
|
||||
settings.protect_status_check_patterns_desc = Zadejte vzorce pro upřesnění kontrol, které musí projít před sloučením větví do větve, která se shoduje s tímto pravidlem. Na každý řádek zadejte jeden vzorec. Vzorce nesmí být prázdné.
|
||||
settings.archive.mirrors_unavailable = Zrcadla nejsou v archivovaných repozitářích k dispozici.
|
||||
settings.protect_enable_merge_desc = Kdokoli s přístupem k zápisu bude moci slučovat žádosti o sloučení do této větve.
|
||||
settings.event_pull_request_review_request_desc = Bylo požádáno o posouzení žádosti o sloučení nebo bylo toto požádání odstraněno.
|
||||
error.broken_git_hook = Zdá se, že u tohoto repozitáře jsou rozbité Git hooks. Pro jejich opravení se prosím řiďte pokyny v <a target="_blank" rel="noreferrer" href="%s">dokumentaci</a> a poté odešlete několik commitů pro obnovení stavu.
|
||||
error.broken_git_hook = Zdá se, že u tohoto repozitáře jsou rozbité Git webhooky. Pro jejich opravení se prosím řiďte pokyny v <a target="_blank" rel="noreferrer" href="%s">dokumentaci</a> a poté odešlete pár revizí pro obnovení stavu.
|
||||
pulls.title_desc_one = žádá o sloučení %[1]d commitu z <code>%[2]s</code> do <code id="%[4]s">%[3]s</code>
|
||||
pulls.merged_title_desc_one = sloučil %[1]d commit z <code>%[2]s</code> do <code>%[3]s</code> %[4]s
|
||||
open_with_editor = Otevřít pomocí %s
|
||||
commits.search_branch = Tato větev
|
||||
editor.commit_id_not_matching = Tento soubor se během úpravy změnil. Proveďte commit do nové větve a poté je slučte.
|
||||
editor.commit_id_not_matching = Tento soubor se během úpravy změnil. Odešlete změny do nové větve a poté je slučte.
|
||||
pulls.ready_for_review = Připraveni na posouzení?
|
||||
settings.rename_branch_failed_protected = Nepodařilo se přejmenovat větev %s, jelikož se jedná o chráněnou větev.
|
||||
editor.push_out_of_date = Push je nejspíše zastaralý.
|
||||
stars = Oblíbení
|
||||
n_commit_one = %s commit
|
||||
n_commit_few = %s commitů
|
||||
n_commit_one = %s revize
|
||||
n_commit_few = %s revizí
|
||||
n_branch_one = %s větev
|
||||
n_tag_one = %s značka
|
||||
n_tag_few = %s značek
|
||||
|
@ -2811,7 +2815,7 @@ subscribe.issue.guest.tooltip = Přihlaste se pro odebírání tohoto problému.
|
|||
subscribe.pull.guest.tooltip = Přihlaste se pro odebírání této žádosti o sloučení.
|
||||
issues.author.tooltip.pr = Tento uživatel je autorem této žádosti o sloučení.
|
||||
issues.author.tooltip.issue = Tento uživatel je autorem tohoto problému.
|
||||
activity.commit = Aktivita commitů
|
||||
activity.commit = Aktivita revizí
|
||||
milestones.filter_sort.name = Název
|
||||
release.type_attachment = Příloha
|
||||
release.type_external_asset = Externí příloha
|
||||
|
@ -2867,12 +2871,14 @@ issues.context.menu = Nabídka komentáře
|
|||
issues.reaction.alt_remove = Odstranit %[1]s reakci z komentáře.
|
||||
issues.reaction.alt_add = Přidat %[1]s reakci na komentář.
|
||||
|
||||
editor.commit_email = E-mail revize
|
||||
|
||||
[graphs]
|
||||
component_loading_info = Tohle může chvíli trvat…
|
||||
component_failed_to_load = Došlo k neočekávané chybě.
|
||||
code_frequency.what = frekvence kódu
|
||||
contributors.what = příspěvky
|
||||
recent_commits.what = nedávné commity
|
||||
recent_commits.what = nedávné revize
|
||||
component_loading = Načítání %s...
|
||||
component_loading_failed = Nepodařilo se načíst %s
|
||||
|
||||
|
@ -3020,7 +3026,7 @@ last_page=Poslední
|
|||
total=Celkem: %d
|
||||
settings=Nastavení správce
|
||||
|
||||
dashboard.new_version_hint=Gitea %s je nyní k dispozici, právě u vás běži %s. Podívej se na <a target="_blank" rel="noreferrer" href="%s">blogu</a> pro více informací.
|
||||
dashboard.new_version_hint=Forgejo %s je nyní k dispozici, aktuálně používáte verzi %s. Pro více informací viz <a target="_blank" rel="noreferrer" href="%s">blog</a>.
|
||||
dashboard.statistic=Souhrn
|
||||
dashboard.operations=Operace údržby
|
||||
dashboard.system_status=Stav systému
|
||||
|
@ -3533,7 +3539,7 @@ self_check.database_collation_mismatch=Očekávejte, že databáze použije coll
|
|||
self_check.database_inconsistent_collation_columns=Databáze používá collation %s, ale tyto sloupce používají chybné collation. To může způsobit neočekávané problémy.
|
||||
self_check.database_fix_mysql=Pro uživatele MySQL/MariaDB můžete použít příkaz „forgejo doctor convert“, který opraví problémy s porovnáním. Problém také můžete ručně vyřešit příkazem „ALTER ... COLLATE ...“ SQL.
|
||||
self_check = Vlastní kontrola
|
||||
self_check.database_collation_case_insensitive=Databáze používá collation %s, což je collation nerozlišující velká a malá písmena. Ačkoli s ní Gitea může pracovat, mohou se vyskytnout vzácné případy, kdy nebude fungovat podle očekávání.
|
||||
self_check.database_collation_case_insensitive=Databáze používá collation %s, což je collation nerozlišující velká a malá písmena. Ačkoli s ní Forgejo může pracovat, mohou se vyskytnout vzácné případy, kdy nebude fungovat podle očekávání.
|
||||
auths.oauth2_map_group_to_team = Zmapovat zabrané skupiny u týmů organizací (volitelné - vyžaduje název claimu výše)
|
||||
monitor.queue.settings.desc = Pooly dynamicky rostou podle blokování fronty jejich workerů.
|
||||
|
||||
|
@ -3580,7 +3586,7 @@ delete_branch=smazal/a větev %[2]s z <a href="%[1]s">%[3]s</a>
|
|||
compare_branch=Porovnat
|
||||
compare_commits=Porovnat %d revizí
|
||||
compare_commits_general=Porovnat revize
|
||||
mirror_sync_push=synchronizoval/a commity do <a href="%[2]s">%[3]s</a> v <a href="%[1]s">%[4]s</a> ze zrcadla
|
||||
mirror_sync_push=synchronizoval/a revize do <a href="%[2]s">%[3]s</a> v <a href="%[1]s">%[4]s</a> ze zrcadla
|
||||
mirror_sync_create=synchronizoval/a novou referenci <a href="%[2]s">%[3]s</a> do <a href="%[1]s">%[4]s</a> ze zrcadla
|
||||
mirror_sync_delete=synchronizoval/a a smazal/a referenci <code>%[2]s</code> v <a href="%[1]s">%[3]s</a> ze zrcadla
|
||||
approve_pull_request=`schválil/a <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
|
@ -3635,13 +3641,13 @@ no_subscriptions=Žádné odběry
|
|||
[gpg]
|
||||
default_key=Podepsáno výchozím klíčem
|
||||
error.extract_sign=Selhalo získání podpisu
|
||||
error.generate_hash=Selhalo vygenerování hash revize
|
||||
error.generate_hash=Selhalo vygenerování hashe revize
|
||||
error.no_committer_account=Žádný účet není propojen s e-mailovou adresou přispěvatele
|
||||
error.no_gpg_keys_found=V databázi nebyl nalezen žádný známý klíč pro tento podpis
|
||||
error.not_signed_commit=Nepodepsaný commit
|
||||
error.not_signed_commit=Nepodepsaná revize
|
||||
error.failed_retrieval_gpg_keys=Nepodařilo se získat žádný klíč propojený s účtem přispěvatele
|
||||
error.probable_bad_signature=VAROVÁNÍ! Přestože v databázi existuje klíč s tímto ID, tento commit neověřuje! Tento commit je PODEZŘELÝ.
|
||||
error.probable_bad_default_signature=VAROVÁNÍ! Ačkoli výchozí klíč má toto ID, neověřuje tento commit! Tento commit je PODEZŘELÝ.
|
||||
error.probable_bad_signature=VAROVÁNÍ! Přestože v databázi existuje klíč s tímto ID, tato revize jím není ověřena! Tato revize je PODEZŘELÁ.
|
||||
error.probable_bad_default_signature=VAROVÁNÍ! Přestože má výchozí klíč toto ID, tato revize jím není ověřena! Tato revize je PODEZŘELÁ.
|
||||
|
||||
[units]
|
||||
unit=Jednotka
|
||||
|
@ -3863,7 +3869,7 @@ runners.task_list.no_tasks=Zatím zde nejsou žádné úlohy.
|
|||
runners.task_list.run=Spustit
|
||||
runners.task_list.status=Status
|
||||
runners.task_list.repository=Repozitář
|
||||
runners.task_list.commit=Commit
|
||||
runners.task_list.commit=Revize
|
||||
runners.task_list.done_at=Dokončeno v
|
||||
runners.edit_runner=Upravit Runner
|
||||
runners.update_runner=Aktualizovat změny
|
||||
|
@ -3883,7 +3889,7 @@ runners.reset_registration_token=Resetovat registrační token
|
|||
runners.reset_registration_token_success=Registrační token runneru byl úspěšně obnoven
|
||||
|
||||
runs.all_workflows=Všechny workflowy
|
||||
runs.commit=Commit
|
||||
runs.commit=Revize
|
||||
runs.scheduled=Naplánováno
|
||||
runs.invalid_workflow_helper=Konfigurační soubor pracovního postupu je neplatný. Zkontrolujte prosím konfigurační soubor: %s
|
||||
runs.no_matching_online_runner_helper=Žádný odpovídající online runner s popiskem: %s
|
||||
|
@ -3896,7 +3902,7 @@ runs.no_workflows=Zatím neexistují žádné pracovní postupy.
|
|||
runs.no_workflows.quick_start = Nevíte jak začít s Gitea Action? Podívejte se na <a target="_blank" rel="noopener noreferrer" href="%s">průvodce rychlým startem</a>.
|
||||
runs.no_workflows.documentation = Další informace o Gitea Action, viz <a target="_blank" rel="noopener noreferrer" href="%s">dokumentace</a>.
|
||||
runs.no_runs=Pracovní postup zatím nebyl spuštěn.
|
||||
runs.empty_commit_message=(prázdná zpráva commitu)
|
||||
runs.empty_commit_message=(prázdná zpráva revize)
|
||||
|
||||
workflow.disable=Zakázat workflow
|
||||
workflow.disable_success=Workflow „%s“ byl úspěšně deaktivován.
|
||||
|
@ -3969,7 +3975,7 @@ code_kind = Hledat kód...
|
|||
package_kind = Hledat balíčky...
|
||||
project_kind = Hledat projekty...
|
||||
branch_kind = Hledat větve...
|
||||
commit_kind = Hledat commity...
|
||||
commit_kind = Hledat revize...
|
||||
runner_kind = Hledat runnery...
|
||||
no_results = Nenalezeny žádné odpovídající výsledky.
|
||||
fuzzy_tooltip = Zahrnout také výsledky, které úzce odpovídají hledanému výrazu
|
||||
|
|
|
@ -627,6 +627,8 @@ unsupported_login_type = Login typen understøttes ikke for at slette kontoen.
|
|||
cannot_add_org_to_team = En organisation kan ikke tilføjes som et holdmedlem.
|
||||
must_use_public_key = Nøglen du har angivet er en privat nøgle. Lad være med at uploade din private nøgle nogen steder. Brug din offentlige nøgle i stedet.
|
||||
|
||||
email_domain_is_not_allowed = Domænet for brugerens e-mailadresse <b>%s</b> er i konflikt med EMAIL_DOMAIN_ALLOWLIST eller EMAIL_DOMAIN_BLOCKLIST. Sørg for, at du har indstillet e-mailadressen korrekt.
|
||||
|
||||
[user]
|
||||
change_avatar = Skift din avatar…
|
||||
joined_on = Tilmeldte sig den %s
|
||||
|
@ -1120,7 +1122,7 @@ migrate_items_pullrequests = Pull-anmodninger
|
|||
migrate_items_merge_requests = Flet anmodninger
|
||||
migrate_items_releases = Udgivelser
|
||||
migrate_repo = Migrer depot
|
||||
migrate.clone_address_desc = HTTP(S) eller Git "klone" URL'en for et eksisterende lager
|
||||
migrate.clone_address_desc = HTTP(S) eller Git "klone" URL'en for et eksisterende depot
|
||||
migrate.clone_local_path = eller en lokal serversti
|
||||
migrate.permission_denied = Du har ikke tilladelse til at importere lokale depoter.
|
||||
migrate.permission_denied_blocked = Du kan ikke importere fra ikke-tilladte værter. Bed venligst administratoren om at kontrollere ALLOWED_DOMAINS/ALLOW_LOCALNETWORKS/BLOCKED_DOMAINS indstillingerne.
|
||||
|
@ -1157,7 +1159,7 @@ migrated_from = Migreret fra <a href="%[1]s">%[2]s</a>
|
|||
migrate.gitea.description = Migrer data fra gitea.com eller andre Gitea-instanser.
|
||||
migrate.gitbucket.description = Migrer data fra GitBucket-instanser.
|
||||
migrate.github_token_desc = Du kan sætte et eller flere tokens med kommasepareret her for at gøre migreringen hurtigere på grund af GitHub API-hastighedsgrænsen. ADVARSEL: Misbrug af denne funktion kan overtræde tjenesteudbyderens politik og føre til kontoblokering.
|
||||
migrate_options_lfs_endpoint.description = Migration vil forsøge at bruge din fjern-Git til at <a target="_blank" rel="noopener noreferrer" href="%s">bestemme LFS-serveren</a>. Du kan også angive et brugerdefineret slutpunkt, hvis lagerets LFS-data er gemt et andet sted.
|
||||
migrate_options_lfs_endpoint.description = Migration vil forsøge at bruge din fjern-Git til at <a target="_blank" rel="noopener noreferrer" href="%s">bestemme LFS-serveren</a>. Du kan også angive et brugerdefineret slutpunkt, hvis depots LFS-data er gemt et andet sted.
|
||||
form.name_pattern_not_allowed = Mønsteret "%s" er ikke tilladt i et depotnavn.
|
||||
migrate_options_lfs_endpoint.placeholder = Hvis det efterlades tomt, vil endepunktet blive afledt fra klonens URL
|
||||
migrate.clone_address = Migrer / Klon fra URL
|
||||
|
@ -1627,6 +1629,203 @@ issues.lock_confirm = Lås
|
|||
issues.unlock_confirm = Lås op
|
||||
issues.lock.notice_1 = - Andre brugere kan ikke tilføje nye kommentarer til dette problem.
|
||||
|
||||
issues.unpin_issue = Frigør problemet
|
||||
issues.max_pinned = Du kan ikke fastgøre flere problemer
|
||||
issues.pin_comment = fastgjort dette %s
|
||||
issues.unpin_comment = frigjorde dette %s
|
||||
issues.lock = Lås samtale
|
||||
issues.unlock = Lås samtale op
|
||||
issues.lock.unknown_reason = Kan ikke låse et problem med en ukendt årsag.
|
||||
issues.lock.notice_2 = - Du og andre samarbejdspartnere med adgang til dette depot kan stadig efterlade kommentarer, som andre kan se.
|
||||
issues.lock.notice_3 = - Du kan altid låse op for dette problem igen i fremtiden.
|
||||
issues.unlock.notice_1 = - Alle ville kunne udtale sig om dette spørgsmål endnu en gang.
|
||||
issues.unlock.notice_2 = - Du kan altid låse dette problem igen i fremtiden.
|
||||
issues.lock.reason = Årsag til låsning
|
||||
issues.lock.title = Lås samtale om dette problem.
|
||||
issues.unlock.title = Lås op for samtale om dette problem.
|
||||
issues.comment_on_locked = Du kan ikke kommentere på et låst problem.
|
||||
issues.delete = Slet
|
||||
issues.delete.title = Slet dette problem?
|
||||
issues.delete.text = Vil du virkelig slette dette problem? (Dette fjerner alt indhold permanent. Overvej at lukke det i stedet, hvis du har til hensigt at holde det arkiveret)
|
||||
issues.tracker = Tidsregistrering
|
||||
issues.start_tracking_short = Start timer
|
||||
issues.start_tracking = Start tidsregistrering
|
||||
issues.start_tracking_history = `begyndte at arbejde %s`
|
||||
issues.tracker_auto_close = Timeren stoppes automatisk, når dette problem lukkes
|
||||
issues.tracking_already_started = `Du har allerede startet tidsregistrering på <a href="%s">et andet problem</a>!`
|
||||
issues.stop_tracking = Stop timer
|
||||
issues.stop_tracking_history = "stoppede med at arbejde %s`
|
||||
issues.cancel_tracking = Kassér
|
||||
issues.cancel_tracking_history = `annulleret tidssporing %s`
|
||||
issues.add_time = Tilføj tid manuelt
|
||||
issues.del_time = Slet denne tidslog
|
||||
issues.add_time_short = Tilføj tid
|
||||
issues.add_time_cancel = Annuller
|
||||
issues.add_time_history = `tilført brugt tid %s`
|
||||
issues.del_time_history = `slettet brugt tid %s`
|
||||
issues.add_time_hours = Timer
|
||||
issues.add_time_minutes = Minutter
|
||||
issues.add_time_sum_to_small = Ingen tid blev indtastet.
|
||||
issues.time_spent_total = Samlet tid brugt
|
||||
issues.time_spent_from_all_authors = `Samlet tid brugt: %s`
|
||||
issues.due_date = Forfaldsdato
|
||||
issues.push_commit_1 = tilføjet %d commit %s
|
||||
issues.push_commits_n = tilføjet %d commits %s
|
||||
issues.force_push_codes = `force-pushed %[1]s fra <a class="%[7]s" href="%[3]s"><code>%[2]s</code></a> til <a class="%[7]s" href="%[5]s"><code>%[4]s</code></a> %[6]s`
|
||||
issues.force_push_compare = Sammenlign
|
||||
issues.due_date_form = yyyy-mm-dd
|
||||
issues.due_date_form_edit = Redigere
|
||||
issues.due_date_form_remove = Slet
|
||||
issues.due_date_not_set = Ingen forfaldsdato fastsat.
|
||||
issues.due_date_added = tilføjede forfaldsdatoen %s %s
|
||||
issues.due_date_modified = ændrede forfaldsdatoen fra %[2]s til %[1]s %[3]s
|
||||
issues.due_date_remove = fjernede forfaldsdatoen %s %s
|
||||
issues.due_date_overdue = Forfalden
|
||||
issues.due_date_invalid = Forfaldsdatoen er ugyldig eller uden for intervallet. Brug venligst formatet "yyyy-mm-dd".
|
||||
issues.dependency.title = Afhængigheder
|
||||
issues.dependency.issue_no_dependencies = Ingen afhængigheder angivet.
|
||||
issues.dependency.pr_no_dependencies = Ingen afhængigheder angivet.
|
||||
issues.dependency.no_permission_1 = Du har ikke tilladelse til at læse %d afhængighed
|
||||
issues.dependency.no_permission_n = Du har ikke tilladelse til at læse %d afhængigheder
|
||||
issues.dependency.no_permission.can_remove = Du har ikke tilladelse til at læse denne afhængighed, men du kan fjerne denne afhængighed
|
||||
issues.dependency.add = Tilføj afhængighed…
|
||||
issues.dependency.cancel = Annuller
|
||||
issues.dependency.remove = Slet
|
||||
issues.dependency.remove_info = Fjern denne afhængighed
|
||||
issues.dependency.added_dependency = `tilføjede en ny afhængighed %s`
|
||||
issues.dependency.removed_dependency = `fjernede en afhængighed %s`
|
||||
issues.dependency.pr_closing_blockedby = Lukning af denne pull-anmodning er blokeret af følgende problemer
|
||||
issues.dependency.issue_closing_blockedby = Lukning af dette problem er blokeret af følgende problemer
|
||||
issues.dependency.issue_close_blocks = Dette problem blokerer for lukning af følgende problemer
|
||||
issues.dependency.pr_close_blocks = Denne pull-anmodning blokerer lukning af følgende problemer
|
||||
issues.dependency.issue_close_blocked = Du skal lukke alle problemer, der blokerer dette problem, før du kan lukke det.
|
||||
issues.dependency.issue_batch_close_blocked = Kan ikke batchlukke valgte problemer, fordi problem #%d stadig har åbne afhængigheder
|
||||
issues.dependency.pr_close_blocked = Du skal lukke alle problemer, der blokerer denne pull-anmodning, før du kan flette den.
|
||||
issues.dependency.blocks_short = Blockere
|
||||
issues.dependency.blocked_by_short = Afhænger af
|
||||
issues.dependency.remove_header = Fjern afhængighed
|
||||
issues.dependency.issue_remove_text = Dette vil fjerne afhængigheden af dette problem. Vil du fortsætte?
|
||||
issues.dependency.pr_remove_text = Dette vil fjerne afhængigheden fra denne pull-anmodning. Vil du fortsætte?
|
||||
issues.dependency.setting = Aktiver afhængigheder for problemer og pull-anmodninger
|
||||
issues.dependency.add_error_same_issue = Du kan ikke få et problem til at afhænge af sig selv.
|
||||
issues.dependency.add_error_dep_issue_not_exist = Afhængigt problem eksisterer ikke.
|
||||
issues.dependency.add_error_dep_not_exist = Afhængighed eksisterer ikke.
|
||||
issues.dependency.add_error_dep_exists = Afhængighed eksisterer allerede.
|
||||
issues.dependency.add_error_cannot_create_circular = Du kan ikke oprette en afhængighed med to problemer, der blokerer hinanden.
|
||||
issues.dependency.add_error_dep_not_same_repo = Begge problemer skal være i samme depot.
|
||||
issues.review.self.approval = Du kan ikke godkende din egen pull-anmodning.
|
||||
issues.review.self.rejection = Du kan ikke anmode om ændringer på din egen pull-anmodning.
|
||||
issues.review.approve = godkendte disse ændringer %s
|
||||
issues.review.comment = gennemgået %s
|
||||
issues.review.dismissed = afviste %s's gennemgang %s
|
||||
issues.review.dismissed_label = Afvist
|
||||
issues.review.left_comment = efterladt en kommentar
|
||||
issues.review.content.empty = Du skal efterlade en kommentar, der angiver de ønskede ændringer.
|
||||
issues.review.reject = anmodende ændringer %s
|
||||
issues.review.wait = blev anmodet om gennemgang %s
|
||||
issues.review.add_review_request = anmodet om gennemgang fra %[1]s %[2]s
|
||||
issues.review.add_review_requests = anmodet om gennemgange fra %[1]s %[2]s
|
||||
issues.review.remove_review_request = fjernet anmodning om gennemgang for %[1]s %[2]s
|
||||
issues.review.remove_review_requests = fjernet anmodning om gennemgange for %[1]s %[2]s
|
||||
issues.review.remove_review_request_self = nægtede at gennemgå %s
|
||||
issues.review.add_remove_review_requests = anmodede om gennemgang fra %[1]s og fjernede gennemgangsanmodninger for %[2]s %[3]s
|
||||
issues.review.pending = Afventer
|
||||
issues.review.pending.tooltip = Denne kommentar er i øjeblikket ikke synlig for andre brugere. For at indsende dine afventende kommentarer, vælg "%s" -> "%s/%s/%s" øverst på siden.
|
||||
issues.review.review = Gennemgå
|
||||
issues.review.reviewers = Gemmengåer
|
||||
issues.review.outdated = Forældet
|
||||
issues.review.outdated_description = Indholdet er ændret siden denne kommentar blev lavet
|
||||
issues.review.option.show_outdated_comments = Vis forældede kommentarer
|
||||
issues.review.option.hide_outdated_comments = Skjul forældede kommentarer
|
||||
issues.review.show_outdated = Vis forældet
|
||||
issues.review.hide_outdated = Skjul forældede
|
||||
issues.review.show_resolved = Vis løst
|
||||
issues.review.hide_resolved = Skjul løst
|
||||
issues.review.resolve_conversation = Løs samtale
|
||||
issues.review.un_resolve_conversation = Uafklaret samtale
|
||||
issues.review.resolved_by = markerede denne samtale som løst
|
||||
issues.reference_issue.body = Body
|
||||
issues.content_history.deleted = slettet
|
||||
issues.content_history.edited = redigeret
|
||||
issues.content_history.created = oprettet
|
||||
issues.content_history.delete_from_history = Slet fra historikken
|
||||
issues.content_history.delete_from_history_confirm = Slet fra historikken?
|
||||
issues.content_history.options = Valgmuligheder
|
||||
issues.reference_link = Reference: %s
|
||||
issues.blocked_by_user = Du kan ikke oprette et problem på dette depot, fordi du er blokeret af depotes ejer.
|
||||
issues.comment.blocked_by_user = Du kan ikke oprette en kommentar til dette problem, fordi du er blokeret af depotes ejer eller anmelder af problemet.
|
||||
issues.summary_card_alt = Oversigtskort over et problem med titlen "%s" i depotet %s
|
||||
compare.compare_base = base
|
||||
compare.compare_head = sammenlign
|
||||
pulls.desc = Aktiver pull-anmodninger og kodegennemgange.
|
||||
pulls.new = Ny pull anmodning
|
||||
pulls.view = Se pull-anmodning
|
||||
pulls.edit.already_changed = Kunne ikke gemme ændringer af pull-anmodningen. Det ser ud til, at indholdet allerede er blevet ændret af en anden bruger. Opdater siden, og prøv at redigere igen for at undgå at overskrive deres ændringer
|
||||
pulls.compare_changes = Ny pull-anmodning
|
||||
pulls.sign_in_require = <a href="%s">Log ind</a> for at oprette en ny pull-anmodning.
|
||||
pulls.allow_edits_from_maintainers = Tillad redigeringer fra vedligeholdere
|
||||
pulls.allow_edits_from_maintainers_desc = Brugere med skriveadgang til basisgrenen kan også trykke til denne gren
|
||||
pulls.allow_edits_from_maintainers_err = Opdatering mislykkedes
|
||||
pulls.compare_changes_desc = Vælg den gren, der skal flettes ind i, og den gren, der skal trækkes fra.
|
||||
pulls.has_viewed_file = Set
|
||||
pulls.has_changed_since_last_review = Ændret siden din sidste gennemgang
|
||||
pulls.viewed_files_label = %[1]d / %[2]d filer set
|
||||
pulls.expand_files = Udvid alle filer
|
||||
pulls.collapse_files = Skjul alle filer
|
||||
pulls.compare_base = flet ind i
|
||||
pulls.compare_compare = pull fra
|
||||
pulls.switch_comparison_type = Skift sammenligningstype
|
||||
pulls.switch_head_and_base = Skift hoved og base
|
||||
pulls.filter_branch = Filter gren
|
||||
pulls.no_results = Ingen resultater fundet.
|
||||
pulls.show_all_commits = Vis alle commits
|
||||
pulls.show_changes_since_your_last_review = Vis ændringer siden din sidste gennemgang
|
||||
pulls.showing_only_single_commit = Viser kun ændringer af commit %[1]s
|
||||
pulls.showing_specified_commit_range = Viser kun ændringer mellem %[1]s..%[2]s
|
||||
pulls.select_commit_hold_shift_for_range = Vælg commit. Hold Shift + klik for at vælge et område
|
||||
pulls.review_only_possible_for_full_diff = Gennemgang er kun mulig, når du ser den fulde diff
|
||||
pulls.filter_changes_by_commit = Filtrer efter commit
|
||||
|
||||
editor.commit_email = Commit email
|
||||
pulls.nothing_to_compare = Disse grene er lige store. Der er ingen grund til at oprette en pull-anmodning.
|
||||
pulls.nothing_to_compare_have_tag = Den valgte gren/tag er ens.
|
||||
pulls.nothing_to_compare_and_allow_empty_pr = Disse grene er lige store. Denne PR vil være tom.
|
||||
pulls.has_pull_request = `Der findes allerede en pull-anmodning mellem disse grene: <a href="%[1]s">%[2]s#%[3]d</a>`
|
||||
pulls.create = Opret pull-anmodning
|
||||
pulls.change_target_branch_at = `ændrede målgren fra <b>%s</b> til <b>%s</b> %s`
|
||||
pulls.tab_conversation = Samtale
|
||||
pulls.tab_commits = Commits
|
||||
pulls.tab_files = Filer ændret
|
||||
pulls.reopen_to_merge = Genåbn denne pull-anmodning for at udføre en fletning.
|
||||
pulls.cant_reopen_deleted_branch = Denne pull-anmodning kan ikke genåbnes, fordi grenen blev slettet.
|
||||
pulls.merged = Flettet
|
||||
pulls.merged_success = Pull-anmodning blev flettet og lukket
|
||||
pulls.closed = Pull-anmodning lukket
|
||||
pulls.manually_merged = Manuelt flettet
|
||||
pulls.merged_info_text = Grenen %s kan nu slettes.
|
||||
pulls.is_closed = Pull-anmodningen er blevet lukket.
|
||||
pulls.title_wip_desc = `<a href="#">Start titlen med <strong>%s</strong></a> for at forhindre pull-anmodningen i at blive flettet ved et uheld.`
|
||||
pulls.cannot_merge_work_in_progress = Denne pull-anmodning er markeret som et igangværende arbejde.
|
||||
pulls.still_in_progress = Stadig i gang?
|
||||
pulls.add_prefix = Tilføj <strong>%s</strong> præfiks
|
||||
pulls.ready_for_review = Klar til gennemgang?
|
||||
pulls.remove_prefix = Fjern <strong>%s</strong> præfiks
|
||||
pulls.data_broken = Denne pull-anmodning er ødelagt på grund af manglende fork-information.
|
||||
pulls.files_conflicted = Denne pull-anmodning har ændringer, der er i konflikt med målgrenen.
|
||||
pulls.is_checking = Kontrol af fletkonflikt er i gang. Prøv igen om få øjeblikke.
|
||||
pulls.is_ancestor = Denne gren er allerede inkluderet i målgrenen. Der er ikke noget at flette sammen.
|
||||
pulls.is_empty = Ændringerne på denne gren er allerede på målgrenen. Dette vil være en tom commit.
|
||||
pulls.required_status_check_failed = Nogle påkrævede checks lykkedes ikke.
|
||||
pulls.required_status_check_missing = Nogle påkrævede checks mangler.
|
||||
pulls.required_status_check_administrator = Som administrator kan du stadig flette denne pull-anmodning.
|
||||
pulls.blocked_by_approvals = Denne pull-anmodning har endnu ikke nok godkendelser. %d af %d godkendte godkendelser.
|
||||
pulls.blocked_by_rejection = Denne pull-anmodning har ændringer anmodet af en officiel anmelder.
|
||||
pulls.blocked_by_official_review_requests = Denne pull-anmodning er blokeret, fordi den mangler godkendelse fra en eller flere officielle anmeldere.
|
||||
pulls.blocked_by_outdated_branch = Denne pull-anmodning er blokeret, fordi den er forældet.
|
||||
pulls.blocked_by_changed_protected_files_1 = Denne pull-anmodning er blokeret, fordi den ændrer en beskyttet fil:
|
||||
pulls.blocked_by_changed_protected_files_n = Denne pull-anmodning er blokeret, fordi den ændrer beskyttede filer:
|
||||
pulls.can_auto_merge_desc = Denne pull-anmodning kan flettes automatisk.
|
||||
|
||||
[notification]
|
||||
watching = Overvåger
|
||||
|
||||
|
|
|
@ -683,6 +683,8 @@ To = Branchname
|
|||
AccessToken = Zugangstoken
|
||||
|
||||
|
||||
email_domain_is_not_allowed = Die Domain der E-Mail-Adresse des Benutzers <b>%s</b> steht in Konflikt mit EMAIL_DOMAIN_ALLOWLIST oder EMAIL_DOMAIN_BLOCKLIST. Bitte stelle sicher, dass du die E-Mail-Adresse richtig gesetzt hast.
|
||||
|
||||
[user]
|
||||
change_avatar=Profilbild ändern …
|
||||
joined_on=Beigetreten am %s
|
||||
|
@ -1315,6 +1317,8 @@ view_git_blame=„git blame“ ansehen
|
|||
video_not_supported_in_browser=Dein Browser unterstützt das HTML5-„video“-Tag nicht.
|
||||
audio_not_supported_in_browser=Dein Browser unterstützt das HTML5-„audio“-Tag nicht.
|
||||
stored_lfs=Gespeichert mit Git LFS
|
||||
stored_annex=Gespeichert mit Git Annex
|
||||
stored_annex_not_present = hier nicht vorhanden, versuche git annex whereis
|
||||
symbolic_link=Softlink
|
||||
executable_file=Ausführbare Datei
|
||||
commit_graph=Commit-Graph
|
||||
|
@ -1338,6 +1342,7 @@ editor.upload_file=Datei hochladen
|
|||
editor.edit_file=Datei bearbeiten
|
||||
editor.preview_changes=Vorschau der Änderungen
|
||||
editor.cannot_edit_lfs_files=LFS-Dateien können im Webinterface nicht bearbeitet werden.
|
||||
editor.cannot_edit_annex_files=Annex-Dateien können im Webinterface nicht bearbeitet werden.
|
||||
editor.cannot_edit_non_text_files=Binärdateien können nicht im Webinterface bearbeitet werden.
|
||||
editor.edit_this_file=Datei bearbeiten
|
||||
editor.this_file_locked=Datei ist gesperrt
|
||||
|
@ -2869,6 +2874,8 @@ issues.reaction.alt_remove = Entferne %[1]s Reaktion von diesem Kommentar.
|
|||
summary_card_alt = Zusammenfassungskarte des Repositorys %s
|
||||
release.summary_card_alt = Übersichtskarte eines Releases mit dem Titel „%s“ im Repository %s
|
||||
|
||||
editor.commit_email = Commit-E-Mail
|
||||
|
||||
[graphs]
|
||||
component_loading_failed = Konnte %s nicht laden
|
||||
component_loading_info = Dies könnte einen Moment dauern …
|
||||
|
@ -3109,7 +3116,7 @@ dashboard.sync_branch.started=Synchronisierung der Branches gestartet
|
|||
dashboard.rebuild_issue_indexer=Issue-Indexer neu bauen
|
||||
|
||||
users.user_manage_panel=Benutzerkonten verwalten
|
||||
users.new_account=Benutzerkonto erstellen
|
||||
users.new_account=Benutzeraccount erstellen
|
||||
users.name=Benutzername
|
||||
users.full_name=Vollständiger Name
|
||||
users.activated=Aktiviert
|
||||
|
@ -3578,7 +3585,7 @@ comment_pull=`hat den Pull-Request <a href="%[1]s">%[3]s#%[2]s</a> kommentiert`
|
|||
merge_pull_request=`führte Pull-Request <a href="%[1]s">%[3]s#%[2]s</a> zusammen`
|
||||
auto_merge_pull_request=`führte Pull-Request <a href="%[1]s">%[3]s#%[2]s</a> automatisch zusammen`
|
||||
transfer_repo=hat Repository <code>%s</code> übertragen zu <a href="%s">%s</a>
|
||||
push_tag=Tag <a href="%[2]s">%[3]s</a> nach <a href="%[1]s">%[4]s</a> wurde gepusht
|
||||
push_tag=hat Tag <a href="%[2]s">%[3]s</a> auf <a href="%[1]s">%[4]s</a> gepusht
|
||||
delete_tag=hat Tag %[2]s in <a href="%[1]s">%[3]s</a> gelöscht
|
||||
delete_branch=hat Branch %[2]s in <a href="%[1]s">%[3]s</a> gelöscht
|
||||
compare_branch=Vergleichen
|
||||
|
@ -3975,7 +3982,7 @@ package_kind = Pakete suchen …
|
|||
project_kind = Projekte suchen …
|
||||
branch_kind = Branches suchen …
|
||||
commit_kind = Commits suchen …
|
||||
runner_kind = Runners suchen …
|
||||
runner_kind = Runner suchen …
|
||||
no_results = Keine passenden Ergebnisse gefunden.
|
||||
code_search_unavailable = Die Code-Suche ist momentan nicht verfügbar. Bitte kontaktiere den Webseitenadministrator.
|
||||
keyword_search_unavailable = Die Suche mittels Schlüsselwort ist momentan nicht verfügbar. Bitte kontaktiere den Webseitenadministrator.
|
||||
|
|
|
@ -1226,7 +1226,7 @@ migrate.migrating_failed_no_addr=Η μεταφορά απέτυχε.
|
|||
migrate.github.description=Μεταφορά δεδομένων από το github.com ή διακομιστές GitHub Enterprise.
|
||||
migrate.git.description=Μεταφορά μόνο του αποθετηρίου από μια οποιαδήποτε υπηρεσία Git.
|
||||
migrate.gitlab.description=Μεταφορά δεδομένων από το gitlab.com ή άλλες εγκαταστάσεις GitLab.
|
||||
migrate.gitea.description=Μεταφορά δεδομένων από το gitea.com ή άλλες εγκαταστάσεις Gitea/Forgejo.
|
||||
migrate.gitea.description=Μεταφορά δεδομένων από το gitea.com ή άλλες εγκαταστάσεις Gitea.
|
||||
migrate.gogs.description=Μεταφορά δεδομένων από το notabug.org ή άλλες εγκαταστάσεις Gogs.
|
||||
migrate.onedev.description=Μεταφορά δεδομένων από το code.onedev.io ή άλλες εγκαταστάσεις OneDev.
|
||||
migrate.codebase.description=Μεταφορά δεδομένων από το codebasehq.com.
|
||||
|
@ -1314,6 +1314,7 @@ view_git_blame=Προβολή git blame
|
|||
video_not_supported_in_browser=Το πρόγραμμα περιήγησής σας δεν υποστηρίζει την ετικέτα HTML5 «video».
|
||||
audio_not_supported_in_browser=Το πρόγραμμα περιήγησής σας δεν υποστηρίζει την ετικέτα HTML5 «audio».
|
||||
stored_lfs=Αποθηκεύτηκε με το Git LFS
|
||||
stored_annex=Αποθηκεύτηκε με το Git Annex
|
||||
symbolic_link=Symbolic link
|
||||
executable_file=Εκτελέσιμο αρχείο
|
||||
commit_graph=Γράφημα υποβολών
|
||||
|
@ -1337,6 +1338,7 @@ editor.upload_file=Ανέβασμα αρχείου
|
|||
editor.edit_file=Επεξεργασία αρχείου
|
||||
editor.preview_changes=Προεπισκόπηση αλλαγών
|
||||
editor.cannot_edit_lfs_files=Τα αρχεία LFS δεν μπορούν να επεξεργαστούν στη διεπαφή web.
|
||||
editor.cannot_edit_annex_files=Τα αρχεία Annex δεν μπορούν να επεξεργαστούν στη διεπαφή web.
|
||||
editor.cannot_edit_non_text_files=Τα δυαδικά αρχεία δεν μπορούν να επεξεργαστούν στη διεπαφή web.
|
||||
editor.edit_this_file=Επεξεργασία αρχείου
|
||||
editor.this_file_locked=Το αρχείο είναι κλειδωμένο
|
||||
|
@ -1935,7 +1937,7 @@ pulls.cmd_instruction_hint=Προβολή οδηγιών γραμμής εντο
|
|||
pulls.cmd_instruction_checkout_title=Έλεγχος
|
||||
pulls.cmd_instruction_checkout_desc=Από το repository του έργου σας, ελέγξτε έναν νέο κλάδο και δοκιμάστε τις αλλαγές.
|
||||
pulls.cmd_instruction_merge_title=Συγχώνευση
|
||||
pulls.cmd_instruction_merge_desc=Συγχώνευση των αλλαγών και ενημέρωση στο Gitea.
|
||||
pulls.cmd_instruction_merge_desc=Συγχώνευση των αλλαγών και ενημέρωση στο Forgejo.
|
||||
pulls.clear_merge_message=Εκκαθάριση μηνύματος συγχώνευσης
|
||||
pulls.clear_merge_message_hint=Η εκκαθάριση του μηνύματος συγχώνευσης θα αφαιρέσει μόνο το περιεχόμενο του μηνύματος υποβολής και θα διατηρήσει τα παραγόμενα git trailers όπως "Co-Authored-By …".
|
||||
|
||||
|
@ -2630,7 +2632,7 @@ release.edit_release=Ενημέρωση κυκλοφορίας
|
|||
release.delete_release=Διαγραφή κυκλοφορίας
|
||||
release.delete_tag=Διαγραφή ετικέτας
|
||||
release.deletion=Διαγραφή κυκλοφορίας
|
||||
release.deletion_desc=Διαγράφοντας μια κυκλοφορία, αυτή αφαιρείται μόνο από το Gitea. Δε θα επηρεάσει την ετικέτα Git, τα περιεχόμενα του αποθετηρίου σας ή το ιστορικό της. Συνέχεια;
|
||||
release.deletion_desc=Διαγράφοντας μια κυκλοφορία, αυτή αφαιρείται μόνο από το Forgejo. Δε θα επηρεάσει την ετικέτα Git, τα περιεχόμενα του αποθετηρίου σας ή το ιστορικό της. Συνέχεια;
|
||||
release.deletion_success=Η κυκλοφορία έχει διαγραφεί.
|
||||
release.deletion_tag_desc=Θα διαγράψει αυτή την ετικέτα από το repository. Τα περιεχόμενα του repository και το ιστορικό δεν θα πειραχτούν. Να γίνει συνέχεια;
|
||||
release.deletion_tag_success=Η ετικέτα έχει διαγραφεί.
|
||||
|
@ -3172,12 +3174,12 @@ packages.size=Μέγεθος
|
|||
packages.published=Δημοσιευμένα
|
||||
|
||||
defaulthooks=Προεπιλεγμένα webhooks
|
||||
defaulthooks.desc=Τα Webhooks κάνουν αυτόματα αιτήσεις HTTP POST σε ένα διακομιστή όταν ενεργοποιούν ορισμένα γεγονότα στο Gitea. Τα Webhooks που ορίζονται εδώ είναι προκαθορισμένα και θα αντιγραφούν σε όλα τα νέα αποθετήρια. Διαβάστε περισσότερα στον οδηγό <a target="_blank" rel="noopener" href="%s">webhooks</a>.
|
||||
defaulthooks.desc=Τα Webhooks κάνουν αυτόματα αιτήσεις HTTP POST σε ένα διακομιστή όταν ενεργοποιούν ορισμένα γεγονότα στο Forgejo. Τα Webhooks που ορίζονται εδώ είναι προκαθορισμένα και θα αντιγραφούν σε όλα τα νέα αποθετήρια. Διαβάστε περισσότερα στον οδηγό <a target="_blank" rel="noopener" href="%s">webhooks</a>.
|
||||
defaulthooks.add_webhook=Προσθήκη Προεπιλεγμένου Webhook
|
||||
defaulthooks.update_webhook=Ενημέρωση Προεπιλεγμένου Webhook
|
||||
|
||||
systemhooks=Webhooks συστήματος
|
||||
systemhooks.desc=Τα Webhooks κάνουν αυτόματα αιτήσεις HTTP POST σε ένα διακομιστή όταν ενεργοποιούνται ορισμένα γεγονότα στο Gitea. Τα Webhooks που ορίζονται εδώ θα ενεργούν σε όλα τα αποθετήρια του συστήματος, γι 'αυτό παρακαλώ εξετάστε τυχόν επιπτώσεις απόδοσης που μπορεί να έχει. Διαβάστε περισσότερα στον οδηγό <a target="_blank" rel="noopener" href="%s">webhooks</a>.
|
||||
systemhooks.desc=Τα Webhooks κάνουν αυτόματα αιτήσεις HTTP POST σε ένα διακομιστή όταν ενεργοποιούνται ορισμένα γεγονότα στο Forgejo. Τα Webhooks που ορίζονται εδώ θα ενεργούν σε όλα τα αποθετήρια του συστήματος, γι 'αυτό παρακαλώ εξετάστε τυχόν επιπτώσεις απόδοσης που μπορεί να έχει. Διαβάστε περισσότερα στον οδηγό <a target="_blank" rel="noopener" href="%s">webhooks</a>.
|
||||
systemhooks.add_webhook=Προσθήκη Webhook Συστήματος
|
||||
systemhooks.update_webhook=Ενημέρωση Webhook Συστήματος
|
||||
|
||||
|
|
|
@ -644,6 +644,7 @@ team_name_been_taken = The team name is already taken.
|
|||
team_no_units_error = Allow access to at least one repository section.
|
||||
email_been_used = The email address is already used.
|
||||
email_invalid = The email address is invalid.
|
||||
email_domain_is_not_allowed = The domain of the user's email address <b>%s</b> conflicts with EMAIL_DOMAIN_ALLOWLIST or EMAIL_DOMAIN_BLOCKLIST. Make sure you have set the email address correctly.
|
||||
openid_been_used = The OpenID address "%s" is already used.
|
||||
username_password_incorrect = Username or password is incorrect.
|
||||
password_complexity = Password does not pass complexity requirements:
|
||||
|
@ -1336,6 +1337,8 @@ view_git_blame = View git blame
|
|||
video_not_supported_in_browser = Your browser does not support the HTML5 "video" tag.
|
||||
audio_not_supported_in_browser = Your browser does not support the HTML5 "audio" tag.
|
||||
stored_lfs = Stored with Git LFS
|
||||
stored_annex = Stored with Git Annex
|
||||
stored_annex_not_present = not present here, try using git annex whereis
|
||||
symbolic_link = Symbolic link
|
||||
executable_file = Executable file
|
||||
vendored = Vendored
|
||||
|
@ -1363,6 +1366,7 @@ editor.upload_file = Upload file
|
|||
editor.edit_file = Edit file
|
||||
editor.preview_changes = Preview changes
|
||||
editor.cannot_edit_lfs_files = LFS files cannot be edited in the web interface.
|
||||
editor.cannot_edit_annex_files = Annex files cannot be edited in the web interface.
|
||||
editor.cannot_edit_non_text_files = Binary files cannot be edited in the web interface.
|
||||
editor.edit_this_file = Edit file
|
||||
editor.this_file_locked = File is locked
|
||||
|
@ -1427,6 +1431,7 @@ editor.user_no_push_to_branch = User cannot push to branch
|
|||
editor.require_signed_commit = Branch requires a signed commit
|
||||
editor.cherry_pick = Cherry-pick %s onto:
|
||||
editor.revert = Revert %s onto:
|
||||
editor.commit_email = Commit email
|
||||
|
||||
commits.desc = Browse source code change history.
|
||||
commits.commits = Commits
|
||||
|
@ -3892,6 +3897,7 @@ variables.deletion.description = Removing a variable is permanent and cannot be
|
|||
variables.description = Variables will be passed to certain actions and cannot be read otherwise.
|
||||
variables.id_not_exist = Variable with ID %d does not exist.
|
||||
variables.edit = Edit Variable
|
||||
variables.not_found = Failed to find the variable.
|
||||
variables.deletion.failed = Failed to remove variable.
|
||||
variables.deletion.success = The variable has been removed.
|
||||
variables.creation.failed = Failed to add variable.
|
||||
|
|
|
@ -56,7 +56,7 @@ mirror=Réplica
|
|||
new_repo=Nuevo repositorio
|
||||
new_migrate=Nueva migración
|
||||
new_mirror=Nueva réplica
|
||||
new_fork=Nuevo fork de repositorio
|
||||
new_fork=Nueva bifurcación del repositorio
|
||||
new_org=Nueva organización
|
||||
new_project=Nuevo proyecto
|
||||
new_project_column=Nueva columna
|
||||
|
@ -75,7 +75,7 @@ collaborative=Colaborativo
|
|||
forks=Forks
|
||||
|
||||
activities=Actividades
|
||||
pull_requests=Pull requests
|
||||
pull_requests=Solicitudes de incorporación de cambios
|
||||
issues=Incidencias
|
||||
milestones=Hitos
|
||||
|
||||
|
@ -156,8 +156,8 @@ invalid_data = Datos inválidos: %v
|
|||
confirm_delete_artifact = ¿Estás seguro de que deseas eliminar el artefacto "%s"?
|
||||
more_items = Mas cosas
|
||||
copy_generic = Copiar al portapapeles
|
||||
filter.not_fork = No forks
|
||||
filter.is_fork = Forks
|
||||
filter.not_fork = No hay bifurcaciones
|
||||
filter.is_fork = Bifurcaciones
|
||||
test = Test
|
||||
error413 = Has agotado tu cuota.
|
||||
new_repo.title = Nuevo repositorio
|
||||
|
@ -229,7 +229,7 @@ platform_desc=Se ha confirmado que Forgejo funciona en sistemas operativos libre
|
|||
lightweight=Ligero
|
||||
lightweight_desc=Forgejo tiene pocos requisitos y puede funcionar en una Raspberry Pi barata. ¡Ahorra energía!
|
||||
license=Código abierto
|
||||
license_desc=¡Está todo en < <a target="_blank" rel="noopener noreferrer" href="%[1]s">Forgejo</a>! Únase <a target="_blank" rel="noopener noreferrer" href="%[2]s">contribuyendo</a> a hacer este proyecto todavía mejor. ¡No sea tímido y colabore!
|
||||
license_desc=¡Pasa a conseguir <a target="_blank" rel="noopener noreferrer" href="%[1]s">Forgejo</a>! Únete a nosotros y <a target="_blank" rel="noopener noreferrer" href="%[2]s">colabora</a> para mejorar este proyecto. ¡No seas tímido y colabora!
|
||||
|
||||
[install]
|
||||
install=Instalación
|
||||
|
@ -397,8 +397,8 @@ code_search_results=Resultados de búsqueda para «%s»
|
|||
code_last_indexed_at=Indexado por última vez %s
|
||||
relevant_repositories_tooltip=Repositorios que son bifurcaciones o que no tienen ningún tema, ningún icono, y ninguna descripción están ocultos.
|
||||
relevant_repositories=Solo se muestran repositorios relevantes, <a href="%s">mostrar resultados sin filtrar</a>.
|
||||
forks_few = %d forks
|
||||
forks_one = %d fork
|
||||
forks_few = %d bifurcaciones
|
||||
forks_one = %d bifurcación
|
||||
stars_few = %d estrellas
|
||||
stars_one = %d estrella
|
||||
|
||||
|
@ -746,7 +746,7 @@ webauthn=Autenticación de dos factores (claves de seguridad)
|
|||
public_profile=Perfil público
|
||||
biography_placeholder=¡Cuenta a otros un poco sobre ti! (Se admite Markdown)
|
||||
location_placeholder=Comparte tu ubicación aproximada con otros
|
||||
profile_desc=Controla cómo se muestra su perfil a otros usuarios. Tu dirección de correo electrónico principal se utilizará para notificaciones, recuperación de contraseña y operaciones de Git basadas en la web.
|
||||
profile_desc=Acerca de ti
|
||||
password_username_disabled=Usuarios no locales no tienen permitido cambiar su nombre de usuario. Por favor, contacta con el administrador del sistema para más detalles.
|
||||
full_name=Nombre completo
|
||||
website=Página web
|
||||
|
@ -811,7 +811,7 @@ manage_emails=Administrar direcciones de correo electrónico
|
|||
manage_themes=Tema por defecto
|
||||
manage_openid=Direcciones OpenID
|
||||
email_desc=Su dirección de correo electrónico principal se utilizará para notificaciones, recuperación de contraseña y, siempre y cuando no esté oculto, operaciones de Git basadas en la web.
|
||||
theme_desc=Este será su tema por defecto en todo el sitio.
|
||||
theme_desc=Este tema será usado en la interfaz web cuando hayas iniciado sesión.
|
||||
primary=Principal
|
||||
activated=Activado
|
||||
requires_activation=Requiere activación
|
||||
|
@ -837,14 +837,14 @@ add_email_success=La nueva dirección de correo electrónico ha sido añadida.
|
|||
email_preference_set_success=La preferencia de correo electrónico se ha establecido correctamente.
|
||||
add_openid_success=La nueva dirección OpenID ha sido añadida.
|
||||
keep_email_private=Ocultar dirección de correo electrónico
|
||||
keep_email_private_popup=Esto ocultará tu dirección de correo electrónico de tu perfil. Ya no será la dirección predeterminada para los commits realizados a través de la interfaz web, como las subidas y ediciones de archivos, y no se utilizará para los commits de fusión. En su lugar, se utilizará una dirección especial %s para asociar los commits a tu cuenta. Ten en cuenta que cambiar esta opción no afectará a los commits existentes.
|
||||
keep_email_private_popup=Esto ocultará tu dirección de correo electrónico de tu perfil. Ya no será la dirección predeterminada para los confirmaciones realizadas a través de la interfaz web, como las subidas y ediciones de archivos, y no se utilizará para las confirmaciones de fusión. En su lugar, se utilizará una dirección especial %s para asociar las confirmaciones a tu cuenta. Ten en cuenta que cambiar esta opción no afectará a las confirmaciones existentes.
|
||||
openid_desc=OpenID le permite delegar la autenticación a un proveedor externo.
|
||||
|
||||
manage_ssh_keys=Gestionar claves SSH
|
||||
manage_ssh_principals=Administrar Principales de Certificado SSH
|
||||
manage_gpg_keys=Gestionar claves GPG
|
||||
add_key=Añadir clave
|
||||
ssh_desc=Estas claves SSH públicas están asociadas a tu cuenta. Las correspondientes claves privadas permiten el acceso total a tus repositorios. Las claves SSH que han sido verificadas pueden utilizarse para verificar commits de Git firmados por SSH.
|
||||
ssh_desc=Estas claves SSH públicas están asociadas a tu cuenta. Las correspondientes claves privadas permiten el acceso total a tus repositorios. Las claves SSH que han sido verificadas pueden utilizarse para verificar confirmaciones de Git firmadas por SSH.
|
||||
principal_desc=Estos principales de certificado SSH están asociados con su cuenta y permiten el acceso completo a sus repositorios.
|
||||
gpg_desc=Estas claves GPG públicas están asociadas a tu cuenta y se utilizan para verificar tus commits. Mantén a salvo tus claves privadas, ya que permiten firmar commits con tu identidad.
|
||||
ssh_helper=<strong>¿Necesitas ayuda?</strong> Echa un vistazo en la guía de GitHub para <a href="%s">crear tus propias claves SSH</a> o resolver <a href="%s">problemas comunes</a> que puede encontrar al usar SSH.
|
||||
|
@ -1054,6 +1054,8 @@ keep_activity_private.description = Tu <a href="%s">actividad pública</a> solo
|
|||
language.description = Este idioma se guardará en tu cuenta y se utilizará como predeterminado cuando te conectes.
|
||||
language.localization_project = ¡Ayúdanos a traducir Forgejo a tu idioma! <a href="%s">Más información</a>.
|
||||
|
||||
pronouns_custom_label = Pronombres personalizados
|
||||
|
||||
[repo]
|
||||
owner=Propietario
|
||||
owner_helper=Algunas organizaciones pueden no aparecer en el menú desplegable debido a un límite máximo de recuento de repositorios.
|
||||
|
@ -1068,10 +1070,10 @@ visibility=Visibilidad
|
|||
visibility_description=Sólo el propietario o los miembros de la organización -si tienen derechos- podrán verlo.
|
||||
visibility_helper=Hacer el repositorio privado
|
||||
visibility_helper_forced=El administrador de su sitio obliga a nuevos repositorios a ser privados.
|
||||
visibility_fork_helper=(Cambiar esto afectará a la visibilidad de todos los forks.)
|
||||
visibility_fork_helper=(Cambiar esto afectará a la visibilidad de todas las bifurcaciones.)
|
||||
clone_helper=¿Necesita ayuda para clonar? Visite <a target="_blank" rel="noopener noreferrer" href="%s">Ayuda</a>.
|
||||
fork_repo=Hacer fork del repositorio
|
||||
fork_from=Crear un fork desde
|
||||
fork_repo=Hacer una bifurcación del repositorio
|
||||
fork_from=Crear una bifurcación desde
|
||||
already_forked=Ya ha forkeado %s
|
||||
fork_to_different_account=Forkear a una cuenta diferente
|
||||
fork_visibility_helper=La visibilidad de un repositorio del cual se ha hecho fork no puede ser cambiada.
|
||||
|
@ -1094,11 +1096,11 @@ issue_labels=Etiquetas
|
|||
issue_labels_helper=Selecciona un conjunto de etiquetas
|
||||
license=Licencia
|
||||
license_helper=Selecciona un archivo de licencia
|
||||
license_helper_desc=Una licencia regula lo que otros pueden y no pueden hacer con tu código. ¿No está seguro de cuál es el adecuado para su proyecto? Vea <a target="_blank" rel="noopener noreferrer" href="%s">Elija una licencia.</a>
|
||||
license_helper_desc=Una licencia regula lo que otros pueden y no pueden hacer con tu código. ¿No está seguro de cuál es el adecuado para su proyecto? Vea <a target="_blank" rel="noopener noreferrer" href="%s">Elija una licencia</a>.
|
||||
readme=LÉAME
|
||||
readme_helper=Selecciona una plantilla de archivo README
|
||||
readme_helper_desc=Este es el lugar donde puedes escribir una descripción completa de su proyecto.
|
||||
auto_init=Inicializar el repositorio (añade .gitignore, licencia y README)
|
||||
auto_init=Inicializar el repositorio
|
||||
trust_model_helper=Seleccionar modelo de confianza para la verificación de la firma. Las opciones posibles son:
|
||||
trust_model_helper_collaborator=Colaborador: Confiar en firmas de colaboradores
|
||||
trust_model_helper_committer=Comitter: Firmas de confianza que coinciden con los committers
|
||||
|
@ -1222,7 +1224,7 @@ migrate.migrating_failed_no_addr=Migración fallida.
|
|||
migrate.github.description=Migrar datos desde github.com o un servidor GitHub Enterprise.
|
||||
migrate.git.description=Migrar un repositorio sólo desde cualquier servicio Git.
|
||||
migrate.gitlab.description=Migrar datos de gitlab.com u otra instancia de GitLab.
|
||||
migrate.gitea.description=Migrar datos de gitea.com u otra instancia de Gitea/Forgejo.
|
||||
migrate.gitea.description=Migrar datos de gitea.com u otra instancia de Gitea.
|
||||
migrate.gogs.description=Migrar datos de notabug.org u otra instancia de Gogs.
|
||||
migrate.onedev.description=Migrar datos desde code.onedev.io u otra instancia de OneDev.
|
||||
migrate.codebase.description=Migrar datos desde codebasehq.com.
|
||||
|
@ -1233,7 +1235,7 @@ migrate.migrating_milestones=Migrando hitos
|
|||
migrate.migrating_labels=Migrando etiquetas
|
||||
migrate.migrating_releases=Migrando lanzamientos
|
||||
migrate.migrating_issues=Migrando incidencias
|
||||
migrate.migrating_pulls=Migrando pull requests
|
||||
migrate.migrating_pulls=Migrando solicitudes de incorporación de cambios
|
||||
migrate.cancel_migrating_title=Cancelar la migración
|
||||
migrate.cancel_migrating_confirm=¿Quiere cancelar esta migración?
|
||||
|
||||
|
@ -1310,6 +1312,7 @@ view_git_blame=Ver Git blame
|
|||
video_not_supported_in_browser=Su navegador no soporta el tag "video" de HTML5.
|
||||
audio_not_supported_in_browser=Su navegador no soporta el tag "audio" de HTML5.
|
||||
stored_lfs=Almacenados con Git LFS
|
||||
stored_annex=Almacenados con Git Annex
|
||||
symbolic_link=Enlace simbólico
|
||||
executable_file=Archivo ejecutable
|
||||
commit_graph=Gráfico de commits
|
||||
|
@ -1333,6 +1336,7 @@ editor.upload_file=Subir archivo
|
|||
editor.edit_file=Editar archivo
|
||||
editor.preview_changes=Vista previa de los cambios
|
||||
editor.cannot_edit_lfs_files=Los archivos LFS no se pueden editar en la interfaz web.
|
||||
editor.cannot_edit_annex_files=Los archivos Annex no se pueden editar en la interfaz web.
|
||||
editor.cannot_edit_non_text_files=Los archivos binarios no se pueden editar en la interfaz web.
|
||||
editor.edit_this_file=Editar archivo
|
||||
editor.this_file_locked=El archivo está bloqueado
|
||||
|
@ -1859,7 +1863,7 @@ pulls.add_prefix=Añadir prefijo <strong>%s</strong>
|
|||
pulls.remove_prefix=Eliminar prefijo <strong>%s</strong>
|
||||
pulls.data_broken=Este pull request está rota debido a que falta información del fork.
|
||||
pulls.files_conflicted=Este pull request tiene cambios en conflicto con la rama de destino.
|
||||
pulls.is_checking=La comprobación de conflicto de fusión está en progreso. Inténtalo de nuevo en unos momentos.
|
||||
pulls.is_checking=La comprobación de conflicto de fusión está en progreso. Inténtelo de nuevo en unos momentos.
|
||||
pulls.is_ancestor=Esta rama ya está incluida en la rama de destino. No hay nada que fusionar.
|
||||
pulls.is_empty=Los cambios en esta rama ya están en la rama de destino. Esto será un commit vacío.
|
||||
pulls.required_status_check_failed=Algunos controles requeridos no han tenido éxito.
|
||||
|
@ -2039,8 +2043,8 @@ activity.opened_prs_count_1=Pull request propuesta
|
|||
activity.opened_prs_count_n=Pull requests propuestas
|
||||
activity.title.user_1=%d usuario
|
||||
activity.title.user_n=%d usuarios
|
||||
activity.title.prs_1=%d pull request
|
||||
activity.title.prs_n=%d pull requests
|
||||
activity.title.prs_1=%d solicitud de incorporación de cambios
|
||||
activity.title.prs_n=%d solicitudes de incorporación de cambios
|
||||
activity.title.prs_merged_by=%s fusionado por %s
|
||||
activity.title.prs_opened_by=%s propuesto por %s
|
||||
activity.merged_prs_label=Fusionado
|
||||
|
@ -2087,7 +2091,7 @@ activity.git_stats_and_deletions=y
|
|||
activity.git_stats_deletion_1=%d eliminación
|
||||
activity.git_stats_deletion_n=%d eliminaciones
|
||||
|
||||
contributors.contribution_type.commits=Commits
|
||||
contributors.contribution_type.commits=Confirmaciones
|
||||
|
||||
search=Buscar
|
||||
search.search_repo=Buscar repositorio
|
||||
|
@ -2331,7 +2335,7 @@ settings.event_pull_request_desc=Pull request abierto, cerrado, reabierto o edit
|
|||
settings.event_pull_request_assign=Asignación
|
||||
settings.event_pull_request_assign_desc=Pull Request asignado o no asignado.
|
||||
settings.event_pull_request_label=Etiquetas
|
||||
settings.event_pull_request_label_desc=Etiqueta de pull request actualizada o borrada.
|
||||
settings.event_pull_request_label_desc=Etiquetas de pull request actualizadas o borradas.
|
||||
settings.event_pull_request_milestone=Hitos
|
||||
settings.event_pull_request_milestone_desc=Hitos añadidos, eliminados o modificados.
|
||||
settings.event_pull_request_comment=Comentarios
|
||||
|
@ -2436,7 +2440,7 @@ settings.protect_approvals_whitelist_users=Lista blanca de usuarios revisores
|
|||
settings.protect_approvals_whitelist_teams=Lista blanca de equipos revisores
|
||||
settings.dismiss_stale_approvals=Descartar aprobaciones obsoletas
|
||||
settings.dismiss_stale_approvals_desc=Cuando los nuevos commits que cambien el contenido de la pull request sean empujados a la rama, se descartarán las aprobaciones antiguas.
|
||||
settings.require_signed_commits=Exigir commits firmados
|
||||
settings.require_signed_commits=Exigir confirmaciones firmadas
|
||||
settings.require_signed_commits_desc=Rechazar push en esta rama si los commits no están firmados o no son verificables.
|
||||
settings.protect_branch_name_pattern=Patrón de nombre de ramas protegidas
|
||||
settings.protect_patterns=Patrones
|
||||
|
@ -2464,7 +2468,7 @@ settings.choose_branch=Elija una rama…
|
|||
settings.no_protected_branch=No hay ramas protegidas.
|
||||
settings.edit_protected_branch=Editar
|
||||
settings.protected_branch_required_rule_name=Nombre de regla requerido
|
||||
settings.protected_branch_duplicate_rule_name=Nombre de regla duplicado
|
||||
settings.protected_branch_duplicate_rule_name=Ya hay una regla para este conjunto de ramas
|
||||
settings.protected_branch_required_approvals_min=Las aprobaciones necesarias no pueden ser negativas.
|
||||
settings.tags=Etiquetas
|
||||
settings.tags.protection=Protección de etiquetas
|
||||
|
@ -2488,11 +2492,11 @@ settings.archive.text=Archivar el repositorio lo hará de sólo lectura. Se ocul
|
|||
settings.archive.success=El repositorio ha sido archivado exitosamente.
|
||||
settings.archive.error=Ha ocurrido un error al intentar archivar el repositorio. Vea el registro para más detalles.
|
||||
settings.archive.error_ismirror=No puede archivar un repositorio replicado.
|
||||
settings.archive.branchsettings_unavailable=Los ajustes de rama no están disponibles si el repositorio está archivado.
|
||||
settings.archive.branchsettings_unavailable=Los ajustes de rama no están disponibles en repositorios archivados.
|
||||
settings.archive.tagsettings_unavailable=Los ajustes de las etiquetas no están disponibles si el repositorio está archivado.
|
||||
settings.unarchive.button=Desarchivar repositorio
|
||||
settings.unarchive.header=Desarchivar este repositorio
|
||||
settings.unarchive.text=La desarchivación del repositorio restablecerá su capacidad de recibir commits y pushes, así como nuevas incidencias y pull requests.
|
||||
settings.unarchive.text=La desarchivación del repositorio restablecerá su capacidad de recibir confirmaciones y subidos, así como nuevas incidencias y solicitudes de incorporación de cambios.
|
||||
settings.unarchive.success=El repositorio se ha desarchivado correctamente.
|
||||
settings.unarchive.error=Ocurrió un error mientras se trataba de des-archivar el repositorio. Revisa el registro para más detalles.
|
||||
settings.update_avatar_success=El avatar del repositorio ha sido actualizado.
|
||||
|
@ -2563,7 +2567,7 @@ diff.generated=generado
|
|||
diff.vendored=vendido
|
||||
diff.comment.add_line_comment=Añadir comentario en línea
|
||||
diff.comment.placeholder=Deja un comentario
|
||||
diff.comment.markdown_info=Es posible estilizar con markdown.
|
||||
diff.comment.markdown_info=Es posible dar estilos con Markdown.
|
||||
diff.comment.add_single_comment=Añadir solo comentario
|
||||
diff.comment.add_review_comment=Añadir comentario
|
||||
diff.comment.start_review=Comenzar revisión
|
||||
|
@ -2718,7 +2722,7 @@ size_format = %[1]s: %[2]s, %[3]s: %[4]s
|
|||
admin.update_flags = Actualizar indicadores
|
||||
admin.flags_replaced = Indicadores del repositorio sustituidos
|
||||
admin.failed_to_replace_flags = Fallo al substituir los indicadores del repositorio
|
||||
new_repo_helper = Un repositorio contiene todos los archivos del proyecto, incluido el historial de revisiones. ¿Ya tienes uno en otro sitio? <a href="%s">Migrar repositorio.</a>
|
||||
new_repo_helper = Un repositorio contiene todos los archivos del proyecto, incluido el historial de revisiones. ¿Ya tienes uno en otro sitio? <a href="%s">Migrar repositorio</a>.
|
||||
object_format_helper = Formato de objeto del repositorio. No puede ser modificado más tarde. SHA1 es el más compatible.
|
||||
commits.browse_further = Seguir explorando
|
||||
subscribe.issue.guest.tooltip = Inicia sesión para suscribirte a esta incidencia.
|
||||
|
@ -2796,7 +2800,7 @@ settings.confirmation_string = Cadena de confirmación
|
|||
issues.filter_sort.relevance = Relevancia
|
||||
settings.transfer_quota_exceeded = El nuevo propietario (%s) ha sobrepasado la cuota. El repositorio no ha sido transferido.
|
||||
settings.web_hook_name_sourcehut_builds = Builds de SourceHut
|
||||
settings.wiki_rename_branch_main_notices_2 =
|
||||
settings.wiki_rename_branch_main_notices_2 =Se va a renombrar de forma permanente la rama interna de la wiki del repositorio %s. Se actualizaran los checkouts existentes.
|
||||
settings.wiki_rename_branch_main = Normalizar el nombre de la rama de la wiki
|
||||
settings.wiki_rename_branch_main_desc = Renombrar la rama interna usada por la wiki a "%s". Este cambio es permanente y no se puede deshacer.
|
||||
settings.confirm_wiki_branch_rename = Renombrar la rama de la wiki
|
||||
|
@ -2813,7 +2817,32 @@ release.download_count_one = %s descarga
|
|||
diff.git-notes.add = Añadir nota
|
||||
diff.git-notes.remove-header = Eliminar nota
|
||||
release.download_count_few = %s descargas
|
||||
diff.git-notes.remove-body = Esta nota se eliminará.
|
||||
diff.git-notes.remove-body = Esta nota será eliminada.
|
||||
|
||||
new_from_template = Usa una plantilla
|
||||
new_from_template_description = Puedes seleccionar una plantilla de repositorio ya existente en esta instancia y aplicar sus ajustes.
|
||||
new_advanced = Ajustes avanzados
|
||||
new_advanced_expand = Click para expandir
|
||||
auto_init_description = Empieza el historial Git con un README y opcionalmente añade una Licencia y archivos .gitignore.
|
||||
editor.add_tmpl.filename = nombre de fichero
|
||||
issues.num_reviews_one = %d revisión
|
||||
issues.num_reviews_few = %d revisiones
|
||||
issues.reaction.add = Añadir reacción
|
||||
issues.reaction.alt_remove = Quitar %[1]s reacción de comentario.
|
||||
issues.reaction.alt_add = Añadir %[1]s reacción al comentario.
|
||||
issues.review.add_review_requests = solicitada revisiones de %[1]s %[2]s
|
||||
issues.review.remove_review_requests = eliminada la solicitud de revisiones para %[1]s %[2]s
|
||||
|
||||
editor.commit_email = Correo electrónico del commit
|
||||
issues.context.menu = Menú de comentarios
|
||||
issues.review.add_remove_review_requests = Revisiones solicitadas de %[1]s y revisiones eliminadas para %[2]s %[3]s
|
||||
pulls.sign_in_require = <a href="%s">Inicia sesión</a> para crear un nuevo pull request.
|
||||
pulls.cmd_instruction_checkout_title = Cambiar rama
|
||||
settings.protect_new_rule = Crear una nueva regla de protección de rama
|
||||
settings.enforce_on_admins_desc = Los administradores del repositorio no pueden saltarse esta regla.
|
||||
release.type_external_asset = Recurso externo
|
||||
release.asset_name = Nombre del recurso
|
||||
release.add_external_asset = Añadir un recurso externo
|
||||
|
||||
[graphs]
|
||||
component_loading = Cargando %s...
|
||||
|
@ -2822,6 +2851,9 @@ contributors.what = contribuciones
|
|||
recent_commits.what = commits recientes
|
||||
code_frequency.what = frecuencia de código
|
||||
|
||||
component_loading_info = Esto puede tomar un tiempo…
|
||||
component_failed_to_load = Ocurrió un error inesperado.
|
||||
|
||||
[org]
|
||||
org_name_holder=Nombre de la organización
|
||||
org_full_name_holder=Nombre completo de la organización
|
||||
|
@ -2947,6 +2979,8 @@ teams.invite.by=Invitado por %s
|
|||
teams.invite.description=Por favor, haga clic en el botón de abajo para unirse al equipo.
|
||||
follow_blocked_user = No puedes seguir a esta organización porque esta organización te ha bloqueado.
|
||||
|
||||
open_dashboard = Abrir panel de control
|
||||
|
||||
[admin]
|
||||
dashboard=Panel de control
|
||||
identity_access=Identidad y acceso
|
||||
|
@ -3474,6 +3508,20 @@ notices.op=Operación
|
|||
notices.delete_success=Los avisos del sistema se han eliminado.
|
||||
|
||||
|
||||
config_summary = Resumen
|
||||
config_settings = Ajustes
|
||||
users.activated.description = Finalización de la verificación del correo electrónico. El propietario de una cuenta sin activar no podrá iniciar sesión hasta que la verificación se complete.
|
||||
users.organization_creation.description = Permitir la creación de nuevas organizaciones.
|
||||
emails.change_email_text = ¿Estás seguro que quieres actualizar esta dirección de correo electrónico?
|
||||
emails.delete = Eliminar correo electrónico
|
||||
emails.delete_desc = ¿Estás seguro que quieres eliminar esta dirección de correo electrónico?
|
||||
emails.deletion_success = El correo electrónico ha sido eliminado.
|
||||
emails.delete_primary_email_error = No puedes eliminar el correo electrónico principal.
|
||||
auths.tips.gmail_settings = Ajustes de Gmail:
|
||||
auths.tip.gitlab_new = Registrar una nueva aplicación en %s
|
||||
config.cache_test = Caché de prueba
|
||||
self_check.no_problem_found = Aún no se encontró un problema.
|
||||
|
||||
[action]
|
||||
create_repo=creó el repositorio <a href="%s">%s</a>
|
||||
rename_repo=repositorio renombrado de <code>%[1]s</code> a <a href="%[2]s">%[3]s</a>
|
||||
|
@ -3617,7 +3665,7 @@ conda.install=Para instalar el paquete usando Conda, ejecute el siguiente comand
|
|||
container.details.type=Tipo de imagen
|
||||
container.details.platform=Plataforma
|
||||
container.pull=Arrastra la imagen desde la línea de comandos:
|
||||
container.digest=Resumen:
|
||||
container.digest=Resumen
|
||||
container.multi_arch=SO / Arquitectura
|
||||
container.layers=Capas de imagen
|
||||
container.labels=Etiquetas
|
||||
|
@ -3714,6 +3762,19 @@ owner.settings.chef.title=Registro de Chef
|
|||
owner.settings.chef.keypair=Generar par de claves
|
||||
owner.settings.chef.keypair.description=Un par de claves es necesario para autenticarse en el registro del Chef. Si ha generado un par de claves antes, generar un nuevo par de claves descartará el par de claves antiguo.
|
||||
|
||||
arch.pacman.repo.multi = %s tiene la misma versión en diferentes distribuciones.
|
||||
arch.pacman.repo.multi.item = Configuración para %s
|
||||
arch.pacman.conf = Añadir servidor con distribución y arquitectura relacionadas a <code>/etc/pacman.conf</code> :
|
||||
arch.pacman.sync = Sincronizar el paquete con pacman:
|
||||
arch.version.properties = Propiedades de la versión
|
||||
arch.version.groups = Grupo
|
||||
arch.version.depends = Depende
|
||||
arch.version.conflicts = Conflictos
|
||||
arch.version.replaces = Reemplazos
|
||||
arch.version.backup = Copia de seguridad
|
||||
container.images.title = Imágenes
|
||||
rpm.repository.multiple_groups = Este paquete está disponible en múltiples grupos.
|
||||
|
||||
[secrets]
|
||||
secrets=Secretos
|
||||
description=Los secretos pasarán a ciertas acciones y no se podrán leer de otro modo.
|
||||
|
@ -3732,7 +3793,7 @@ management=Gestión de secretos
|
|||
[actions]
|
||||
actions=Acciones
|
||||
|
||||
unit.desc=Gestionar acciones
|
||||
unit.desc=Gestione procesos CI/CD integrados con Forgejo Actions.
|
||||
|
||||
status.unknown=Desconocido
|
||||
status.waiting=Esperando
|
||||
|
@ -3816,6 +3877,9 @@ variables.update.failed=Error al editar la variable.
|
|||
variables.update.success=La variable ha sido editada.
|
||||
variables.id_not_exist = Variable con id %d no existe.
|
||||
|
||||
runs.empty_commit_message = (mensaje de commit vacío)
|
||||
runs.expire_log_message = Los registros han sido eliminados porque eran demasiado antiguos.
|
||||
|
||||
[projects]
|
||||
type-1.display_name=Proyecto individual
|
||||
type-2.display_name=Proyecto repositorio
|
||||
|
@ -3837,7 +3901,7 @@ search = Buscar...
|
|||
type_tooltip = Tipo de búsqueda
|
||||
project_kind = Buscar proyectos...
|
||||
branch_kind = Buscar ramas...
|
||||
commit_kind = Buscar commits...
|
||||
commit_kind = Buscar confirmaciones...
|
||||
repo_kind = Buscar repositorios...
|
||||
user_kind = Buscar usuarios...
|
||||
org_kind = Buscar organizaciones...
|
||||
|
@ -3860,6 +3924,8 @@ fuzzy = Difusa
|
|||
runner_kind = Buscar ejecutores…
|
||||
regexp_tooltip = Interpretar los términos de búsqueda como una expresión regular
|
||||
|
||||
regexp = Expresión Regular
|
||||
|
||||
[markup]
|
||||
filepreview.lines = Líneas %[1]d a %[2]d en %[3]s
|
||||
filepreview.line = Línea %[1]d en %[2]s
|
||||
|
@ -3870,7 +3936,7 @@ releases.write = <b>Write:</b> Publicar, editar y eliminar lanzamientos y sus ar
|
|||
packages.read = <b>Lectura:</b> Ver y descargar paquetes asignados al repositorio.
|
||||
wiki.read = <b>Lectura:</b> Leer la wiki integrada y su historial.
|
||||
issues.read = <b>Lectura:</b> Leer y crear incidencias y comentarios.
|
||||
pulls.write = <b>Escritura:</b> Cerrar pull requests y gestionar metadatos como etiquetas, hitos, asignaciones, fechas de vencimiento y dependencias.
|
||||
pulls.write = <b>Escritura:</b> Cerrar solicitudes de incorporación de cambios y gestionar metadatos como etiquetas, hitos, asignaciones, fechas de vencimiento y dependencias.
|
||||
releases.read = <b>Lectura:</b> Ver y descagar lanzamientos.
|
||||
wiki.write = <b>Escritura:</b> Crear, actualizar y eliminar páginas en la wiki integrada.
|
||||
projects.read = <b>Lectura:</b> Acceso a las tablas de proyecto del repositorio.
|
||||
|
|
|
@ -881,7 +881,7 @@ migrate.migrating_failed=مهاجرت از <b>%s</b> ناموفق بود.
|
|||
migrate.migrating_failed_no_addr=مهاجرت ناموفق بود.
|
||||
migrate.git.description=کوچ یک مخزن فقط از یک سرویس Git.
|
||||
migrate.gitlab.description=مهاجرت داده از gitlabb.com یا پیادهسازیهای دیگر GitLab.
|
||||
migrate.gitea.description=مهاجرت داده از gitea.com یا پیادهسازیهای دیگر Gitea/Forgejo.
|
||||
migrate.gitea.description=مهاجرت داده از gitea.com یا پیادهسازیهای دیگر Gitea.
|
||||
migrate.gogs.description=مهاجرت داده از notabug.com یا پیادهسازیهای دیگر Gogs.
|
||||
migrate.onedev.description=مهاجرت داده از code.onedev.io یا پیادهسازیهای دیگر OneDev.
|
||||
migrate.codebase.description=مهاجر داده ها از codebasehq.com.
|
||||
|
@ -951,6 +951,7 @@ file_copy_permalink=پرمالینک را کپی کنید
|
|||
video_not_supported_in_browser=مرورگر شما از تگ video که در HTML5 تعریف شده است، پشتیبانی نمی کند.
|
||||
audio_not_supported_in_browser=مرورگر شما از تگ audio که در HTML5 تعریف شده است، پشتیبانی نمی کند.
|
||||
stored_lfs=ذخیره شده با GIT LFS
|
||||
stored_annex=ذخیره شده با GIT Annex
|
||||
symbolic_link=پیوند نمادین
|
||||
commit_graph=نمودار کامیت
|
||||
commit_graph.select=انتخاب برنچها
|
||||
|
@ -968,6 +969,7 @@ editor.upload_file=بارگذاری پرونده
|
|||
editor.edit_file=ویرایش پرونده
|
||||
editor.preview_changes=پیش نمایش تغییرات
|
||||
editor.cannot_edit_lfs_files=پرونده های LFS در صحفه وب قابل تغییر نیست.
|
||||
editor.cannot_edit_annex_files=پرونده های Annex در صحفه وب قابل تغییر نیست.
|
||||
editor.cannot_edit_non_text_files=پروندههای دودویی در صفحه وب قابل تغییر نیست.
|
||||
editor.edit_this_file=ویرایش پرونده
|
||||
editor.this_file_locked=پرونده قفل شده است
|
||||
|
@ -2291,7 +2293,7 @@ auths.bind_password=اتصال گذرواژه
|
|||
auths.user_base=پایگاه جستجوی کاربر
|
||||
auths.user_dn=کاربر DN
|
||||
auths.attribute_username=ویژگی نام کاربری
|
||||
auths.attribute_username_placeholder=نام کاربری را خالی بگذارید برای انتخاب نام کاربری gitea انتخاب شود.
|
||||
auths.attribute_username_placeholder=نام کاربری را خالی بگذارید برای انتخاب نام کاربری Forgejo انتخاب شود.
|
||||
auths.attribute_name=ویژگی نام
|
||||
auths.attribute_surname=ویژگی نام خانوادگی
|
||||
auths.attribute_mail=ویژگی ایمیل
|
||||
|
|
|
@ -1766,7 +1766,7 @@ issues.close = Sulje ongelma
|
|||
issues.no_content = Ei kuvausta.
|
||||
pulls.reject_count_1 = %d muutospyyntö
|
||||
pulls.update_branch_success = Haarapäivitys onnistui
|
||||
milestones.completeness = <strong>%d%%</strong> valmiina
|
||||
milestones.completeness = <strong>%d% %</strong> valmiina
|
||||
contributors.contribution_type.additions = Lisäykset
|
||||
contributors.contribution_type.deletions = Poistot
|
||||
settings.webhook_deletion_success = Webkoukku on poistettu.
|
||||
|
@ -2097,6 +2097,16 @@ settings.archive.text = Repon arkistointi asettaa sen pelkkään lukutilaan. Se
|
|||
no_eol.text = Ei EOL:ää
|
||||
pulls.compare_changes_desc = Valitse haara, johon yhdistetään, ja haara, josta vedetään.
|
||||
|
||||
new_from_template = Käytä mallipohjaa
|
||||
new_from_template_description = Voit valita olemassa olevan repon mallipohjan ja toteuttaa sen asetukset.
|
||||
new_advanced = Lisäasetukset
|
||||
new_advanced_expand = Laajenna napsauttamalla
|
||||
template_description = Repojen mallipohjat mahdollistavat uusien repojen luomisen halutulla hakemistorakenteella, tiedostoilla ja valinnaisilla asetuksilla.
|
||||
auto_init_description = Aloita Git-historia README-tiedostolla ja valinnaisesti License- ja .gitignore-tiedostoilla.
|
||||
settings.enter_repo_name = Kirjoita omistajan ja repon nimi täsmälleen kuten esitetty:
|
||||
settings.confirmation_string = Vahvistusteksti
|
||||
settings.delete_notices_2 = - Tämä toiminto poistaa pysyvästi repon <strong>%s</strong> mukaan lukien koodin, ongelmat, kommentit, wikidatan ja avustaja-asetukset.
|
||||
|
||||
[graphs]
|
||||
component_loading_info = Tämä saattaa kestää hetken…
|
||||
component_failed_to_load = Odottamaton virhe.
|
||||
|
@ -2582,6 +2592,16 @@ compare_branch = Vertaa
|
|||
review_dismissed_reason = Syy:
|
||||
commit_repo = työnsi haaraan <a href="%[2]s">%[3]s</a> repossa <a href="%[1]s">%[4]s</a>
|
||||
|
||||
create_issue = `avasi ongelman <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_issue = `sulki ongelman <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reopen_issue = `avasi uudelleen ongelman <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
create_pull_request = `loi vetopyynnön <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_pull_request = `sulki vetopyynnön <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reopen_pull_request = `avasi uudelleen vetopyynnön <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
comment_issue = `kommentoi ongelmaa <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
comment_pull = `kommentoi vetopyyntöä <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
merge_pull_request = `yhdisti vetopyynnön <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
|
||||
[tool]
|
||||
now=nyt
|
||||
1s=1 sekunti
|
||||
|
@ -2628,6 +2648,8 @@ error.extract_sign = Allekirjoituksen purkaminen epäonnistui
|
|||
default_key = Allekirjoitettu oletusavaimella
|
||||
error.failed_retrieval_gpg_keys = Ei saatu yhtäkään kommitin tekijän tiliin liitettyä avainta
|
||||
|
||||
error.generate_hash = Tiivisteen luominen kommitista epäonnistui
|
||||
|
||||
[units]
|
||||
unit = Yksikkö
|
||||
|
||||
|
@ -2768,6 +2790,10 @@ owner.settings.cargo.rebuild.error = Cargo-indeksin rakentaminen uudelleen epäo
|
|||
owner.settings.cargo.rebuild.success = Cargo-indeksi rakennettiin uudelleen.
|
||||
owner.settings.cleanuprules.preview.none = Siivoussääntö ei vastaa yhtäkään pakettia.
|
||||
|
||||
settings.link.error = Repositorion linkin päivittäminen epäonnistui.
|
||||
owner.settings.cargo.initialize = Alusta indeksi
|
||||
owner.settings.cargo.initialize.description = Erityinen Git-repoindeksi vaaditaan Cargo-rekisterin käyttämiseksi. Tämän valinnan käyttäminen luo (tarvittaessa uudelleen) repon ja määrittää sen asetukset automaattisesti.
|
||||
|
||||
[secrets]
|
||||
creation.failed = Salaisuuden lisääminen epäonnistui.
|
||||
deletion = Poista salaisuus
|
||||
|
|
|
@ -641,6 +641,8 @@ Biography = Byograpya
|
|||
Location = Lokasyon
|
||||
visit_rate_limit = Natugunan ang limitasyon sa rate ng malayuang pagbisita.
|
||||
|
||||
email_domain_is_not_allowed = Sumasalungat ang domain ng email address ng user <b>%s</b> sa EMAIL_DOMAIN_ALLOWLIST o EMAIL_DOMAIN_BLOCKLIST. Siguraduhing natakda mo ang email address nang tama.
|
||||
|
||||
[user]
|
||||
joined_on = Sumali noong %s
|
||||
repositories = Mga Repositoryo
|
||||
|
@ -2725,6 +2727,8 @@ issues.context.menu = Menu ng komento
|
|||
summary_card_alt = Pangkalahatang-ideyang card ng repositoryo na %s
|
||||
release.summary_card_alt = Pangkalahatang-ideyang card ng isang release na nakapamagat na "%s" sa repositoryo na %s
|
||||
|
||||
editor.commit_email = Email ng commit
|
||||
|
||||
[search]
|
||||
commit_kind = Maghanap ng mga commit…
|
||||
keyword_search_unavailable = Kasalukuyang hindi available ang paghahanap sa pamamagitan ng keyword. Mangyaring makipag-ugnayan sa tagapangasiwa ng site.
|
||||
|
@ -2911,7 +2915,7 @@ dashboard.delete_old_system_notices = Burahin ang lahat ng mga lumang paunawa ng
|
|||
dashboard.gc_lfs = I-garbage collect ang mga LFS meta object
|
||||
dashboard.stop_zombie_tasks = Itigil ang mga zombie action task
|
||||
users.user_manage_panel = Ipamahala ang mga user account
|
||||
users.new_account = Gumawa ng User Account
|
||||
users.new_account = Gumawa ng user account
|
||||
users.auth_login_name = Pangalan ng sign-in authentication
|
||||
users.password_helper = Iwanang walang laman ang password upang panatilihing hindi nabago.
|
||||
users.max_repo_creation = Pinakamataas na numero ng mga repositoryo
|
||||
|
@ -3684,7 +3688,7 @@ approve_pull_request = `inaprubahan ang <a href="%[1]s">%[3]s#%[2]s</a>`
|
|||
review_dismissed_reason = Dahilan:
|
||||
compare_branch = Ikumpara
|
||||
reject_pull_request = `nagmungkahi ng mga pagbabago para sa <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
rename_repo = pinalitan ang pangalan ng repositoryo mula <code>%[1]s</code> sa <a href="%[2]s">%[3]#</a>
|
||||
rename_repo = pinalitan ang pangalan ng repositoryo mula <code>%[1]s</code> sa <a href="%[2]s">%[3]s</a>
|
||||
close_issue = `sinara ang isyu na <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
review_dismissed = `na-dismiss ang pagsusuri mula <b>%[4]s</b> para sa <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_pull_request = `sinara ang hiling sa paghila na <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
|
|
|
@ -681,6 +681,8 @@ Website = Site web
|
|||
Location = Emplacement
|
||||
To = Nom de la branche
|
||||
|
||||
email_domain_is_not_allowed = Le domaine <b>%s</b> du courriel utilisateur entre en conflit avec EMAIL_DOMAIN_ALLOWLIST ou EMAIL_DOMAIN_BLOCKLIST. Veuillez vous assurer le courriel est renseigné.
|
||||
|
||||
[user]
|
||||
change_avatar=Changer votre avatar…
|
||||
joined_on=Inscrit le %s
|
||||
|
@ -1228,7 +1230,7 @@ migrate.migrating_failed_no_addr=Échec de la migration.
|
|||
migrate.github.description=Migrer les données depuis github.com ou GitHub Enterprise Server.
|
||||
migrate.git.description=Migrer uniquement un dépôt depuis n’importe quel service Git.
|
||||
migrate.gitlab.description=Migrer les données depuis gitlab.com ou d’autres instances de GitLab.
|
||||
migrate.gitea.description=Migrer les données depuis gitea.com ou d’autres instances de Gitea/Forgejo.
|
||||
migrate.gitea.description=Migrer les données depuis gitea.com ou d’autres instances de Gitea.
|
||||
migrate.gogs.description=Migrer les données depuis notabug.org ou d’autres instances de Gogs.
|
||||
migrate.onedev.description=Migrer les données depuis code.onedev.io ou d’autre instance de OneDev.
|
||||
migrate.codebase.description=Migrer les données depuis codebasehq.com.
|
||||
|
@ -1316,6 +1318,7 @@ view_git_blame=Voir Git blame
|
|||
video_not_supported_in_browser=Votre navigateur ne supporte pas la balise « vidéo » HTML5.
|
||||
audio_not_supported_in_browser=Votre navigateur ne supporte pas la balise « audio » HTML5.
|
||||
stored_lfs=Stocké avec Git LFS
|
||||
stored_annex=Stocké avec Git Annex
|
||||
symbolic_link=Lien symbolique
|
||||
executable_file=Fichier exécutable
|
||||
vendored = Vendored
|
||||
|
@ -1341,6 +1344,7 @@ editor.upload_file=Téléverser un fichier
|
|||
editor.edit_file=Modifier le fichier
|
||||
editor.preview_changes=Aperçu des modifications
|
||||
editor.cannot_edit_lfs_files=Les fichiers LFS ne peuvent pas être modifiés dans l'interface web.
|
||||
editor.cannot_edit_annex_files=Les fichiers Annex ne peuvent pas être modifiés dans l'interface web.
|
||||
editor.cannot_edit_non_text_files=Les fichiers binaires ne peuvent pas être édités dans l'interface web.
|
||||
editor.edit_this_file=Modifier le fichier
|
||||
editor.this_file_locked=Le fichier est verrouillé
|
||||
|
@ -2868,6 +2872,8 @@ issues.context.menu = Menu commentaire
|
|||
pulls.sign_in_require = <a href="%s">Identifiez vous</a> pour créer une nouvelle demande d'ajout.
|
||||
release.summary_card_alt = Carte résumé de la publication dont le titre est "%s" dans le dépôt %s
|
||||
|
||||
editor.commit_email = Courriel de commit
|
||||
|
||||
[graphs]
|
||||
component_loading = Chargement %s...
|
||||
component_loading_failed = Échec de chargement de %s
|
||||
|
|
239
options/locale/locale_he.ini
Normal file
239
options/locale/locale_he.ini
Normal file
|
@ -0,0 +1,239 @@
|
|||
[common]
|
||||
home = בית
|
||||
dashboard = מבט על
|
||||
help = עזרה
|
||||
logo = לוגו
|
||||
sign_in = כניסה
|
||||
sign_in_with_provider = כניסה דרך %s
|
||||
sign_in_or = או
|
||||
sign_out = יציאה מהחשבון
|
||||
sign_up = הרשמה
|
||||
link_account = חיבור חשבון
|
||||
register = הרשמה
|
||||
version = גרסה
|
||||
powered_by = רץ על %s
|
||||
page = דף
|
||||
template = תבנית
|
||||
language = שפה
|
||||
notifications = הודעות
|
||||
active_stopwatch = סטופר
|
||||
create_new = חדש…
|
||||
user_profile_and_more = פרופיל והגדרות…
|
||||
signed_in_as = שלום
|
||||
enable_javascript = אתר זה משתמש בJavaScript.
|
||||
toc = תוכן הענינים
|
||||
licenses = רישיונות
|
||||
return_to_forgejo = חזרה לפורג'ו
|
||||
more_items = עוד אפשרויות
|
||||
username = שם משתמש
|
||||
email = כתובת אימייל
|
||||
password = סיסמה
|
||||
access_token = קוד גישה
|
||||
captcha = CAPTCHA
|
||||
twofa = אימות דו־שלבי
|
||||
twofa_scratch = קוד אימות דו־שלבי
|
||||
passcode = קוד כניסה
|
||||
webauthn_insert_key = יש להכניס את מפתח אבטחך
|
||||
webauthn_sign_in = יש ללחוץ על הכפתור שעל מפתח האבטחה. אם אין כפתור, אפשר להוציא את המפתח ולחבר אותו שוב.
|
||||
webauthn_press_button = נא ללחוץ על הכפתור שעל מפתח האבטחה…
|
||||
webauthn_error = קריאת מפתח האבטחה נכשלה.
|
||||
webauthn_unsupported_browser = הדפדפן שלך לא תומך בWebAuthn.
|
||||
webauthn_error_unknown = שגיאה לא ידועה, אפשר לנסות שוב.
|
||||
webauthn_error_insecure = הפרוטוקול WebAuthn לא תומך בחיבורים לא מאובטחים, למעט דרך "localhost" או "127.0.0.1"
|
||||
webauthn_error_unable_to_process = שרת זה נכשל בעיבוד בקשתך.
|
||||
webauthn_error_duplicated = מפתח האבטחה לא יכול לשמש לבקשה זו. נא לוודא שהמפתח לא רשום.
|
||||
webauthn_error_empty = שם המפתח הוא שדה חובה.
|
||||
webauthn_error_timeout = קריאת מפתחך לקחה יותר מדי זמן. אפשר לטעון מחדש את הדף ולנסות שוב.
|
||||
repository = קרפיף
|
||||
organization = ארגון
|
||||
mirror = מראה
|
||||
new_mirror = מראה חדשה
|
||||
new_fork = מזלוג חדש של קרפיף זה
|
||||
new_project = פרויקט חדש
|
||||
new_project_column = עמודה חדשה
|
||||
admin_panel = לוח ניהול מערכת
|
||||
settings = הגדרות
|
||||
your_profile = פרופיל
|
||||
your_starred = כיכבת
|
||||
your_settings = הגדרות
|
||||
new_repo.title = קרפיף חדש
|
||||
new_migrate.title = יבוא קרפיף
|
||||
new_org.title = ארגון חדש
|
||||
new_repo.link = קרפיף חדש
|
||||
new_migrate.link = יבוא קרפיף
|
||||
new_org.link = ארגון חדש
|
||||
all = הכל
|
||||
sources = מקורות
|
||||
mirrors = מראות
|
||||
collaborative = שיתופי
|
||||
forks = מזלוגים
|
||||
activities = פעילויות
|
||||
pull_requests = בקשות מיזוג
|
||||
issues = סוגיות
|
||||
milestones = מטרות
|
||||
ok = אישור
|
||||
cancel = ביטול
|
||||
retry = לנסות שוב
|
||||
rerun = הרצה חוזרת
|
||||
save = שמירה
|
||||
add = הוספה
|
||||
add_all = הוספת הכל
|
||||
remove = הסרה
|
||||
remove_all = הסרת הכל
|
||||
remove_label_str = הסרת "%s"
|
||||
edit = עריכה
|
||||
test = בדיקה
|
||||
enabled = מופעל
|
||||
disabled = כבוי
|
||||
locked = נעול
|
||||
copy = העתקה
|
||||
copy_generic = העתקה לCtrl + C
|
||||
copy_url = העתקת קישור
|
||||
copy_hash = העתקת קוד גיבוב
|
||||
copy_path = העתקת מיקום קובץ
|
||||
copy_content = העתקת תוכן
|
||||
copy_branch = העתקת שם ענף
|
||||
copy_success = הועתק!
|
||||
copy_error = העתקה נכשלה
|
||||
copy_type_unsupported = אי אפשר להעתיק קבצים מסוג זה
|
||||
write = כתיבה
|
||||
preview = תצוגה מקדימה
|
||||
loading = נטען…
|
||||
error = שגיאה
|
||||
error404 = דף זה <strong>לא קיים</strong> או ש<strong>אין לך אילו גישה</strong>.
|
||||
go_back = אחורה
|
||||
invalid_data = הבנת הקלט נכשלה: %v
|
||||
never = אף פעם
|
||||
unknown = לא ידוע
|
||||
rss_feed = פיד RSS
|
||||
pin = הצמדה
|
||||
unpin = ביטול הצמדה
|
||||
archived = ארכיון
|
||||
concept_system_global = גלובלי
|
||||
concept_user_individual = אישי
|
||||
concept_code_repository = קרפיף
|
||||
concept_user_organization = ארגון
|
||||
show_timestamps = הצגת זמנים
|
||||
show_log_seconds = הצגת שניות
|
||||
show_full_screen = מסך מלא
|
||||
download_logs = הורדת לוגים
|
||||
confirm_delete_selected = למחוק את כל הפריטים המסומנים?
|
||||
name = שם
|
||||
value = ערך
|
||||
filter = מסנן
|
||||
filter.clear = ניקוי מסננים
|
||||
filter.is_archived = בארכיון
|
||||
filter.not_archived = מחוץ לארכיון
|
||||
filter.is_fork = רק מזלוגים
|
||||
filter.not_fork = להוציא מזלוגים
|
||||
filter.is_mirror = רק מראות
|
||||
filter.not_mirror = להוציא מראות
|
||||
filter.is_template = רק תבניות
|
||||
filter.not_template = להוציא תבניות
|
||||
filter.public = ציבורי
|
||||
filter.private = פרטי
|
||||
|
||||
[search]
|
||||
search = חיפוש...
|
||||
type_tooltip = סוג חיפוש
|
||||
fuzzy = מקורב
|
||||
fuzzy_tooltip = תוצאות יתאימו לתוכן תיבת החיפוש בקירוב; מומלץ כנגד שגיאות כתיב
|
||||
union = מילות מפתח
|
||||
union_tooltip = תוצאות יכללו לפחות מילת מפתח אחת; אפשר להפריד מילות מפתח עם רווחים
|
||||
exact = מדויק
|
||||
exact_tooltip = תוצאות יתאימו במדויק לתוכן תיבת החיפוש
|
||||
regexp = רג'קס
|
||||
repo_kind = חיפוש קרפיפים...
|
||||
user_kind = חיפוש אנשים...
|
||||
org_kind = חיפוש ארגונים...
|
||||
team_kind = חיפוש צוותים...
|
||||
code_kind = חיפוש קוד...
|
||||
code_search_unavailable = חיפוש קוד לא זמין. נא לדווח למנהלי המערכת.
|
||||
package_kind = חיפוש חבילות...
|
||||
project_kind = חיפוש פרוייקטים...
|
||||
branch_kind = חיפוש ענפים...
|
||||
commit_kind = חיפוש קומיטים...
|
||||
runner_kind = חיפוש מריצים...
|
||||
no_results = לא נמצאו תוצאות.
|
||||
issue_kind = חיפוש סוגיות...
|
||||
keyword_search_unavailable = חיפוש מילות מפתח לא זמין. נא לדווח למנהלי המערכת.
|
||||
|
||||
[aria]
|
||||
navbar = סרגל הניווט
|
||||
footer.software = על תוכנה זו
|
||||
footer.links = קישורים
|
||||
|
||||
[heatmap]
|
||||
number_of_contributions_in_the_last_12_months = % תרומות ב־12 החודשים האחרונים
|
||||
contributions_zero = אפס תרומות
|
||||
contributions_format = {contributions} ב{day} ל{month} {year}
|
||||
contributions_one = תרומה
|
||||
contributions_few = תרומות
|
||||
less = פחות
|
||||
more = יותר
|
||||
|
||||
[editor]
|
||||
buttons.heading.tooltip = הוספת כותרת
|
||||
buttons.bold.tooltip = הדגשת טקסט
|
||||
buttons.italic.tooltip = הטיית טקסט
|
||||
buttons.quote.tooltip = ציטוט
|
||||
buttons.code.tooltip = הוספת קוד
|
||||
buttons.link.tooltip = הוספת קישור
|
||||
buttons.list.unordered.tooltip = הוספת רשימה לא ממוספרת
|
||||
buttons.list.ordered.tooltip = הוספת רשימה ממוספרת
|
||||
buttons.list.task.tooltip = הוספת רשימת משימות
|
||||
buttons.mention.tooltip = תיוג אדם או צוות
|
||||
buttons.ref.tooltip = ריפרור לסוגיה או בקשת מיזוג
|
||||
buttons.switch_to_legacy.tooltip = מעבר לעורך הישן
|
||||
buttons.enable_monospace_font = הפעלת גופן קבוע־רוחב
|
||||
buttons.disable_monospace_font = כיבוי גופן קבוע־רוחב
|
||||
buttons.new_table.tooltip = הוספת טבלה
|
||||
table_modal.header = הוספת טבלה
|
||||
table_modal.placeholder.header = כותרת
|
||||
table_modal.placeholder.content = תוכן
|
||||
table_modal.label.rows = שורות
|
||||
table_modal.label.columns = עמודות
|
||||
|
||||
[filter]
|
||||
string.asc = סדר אלפבתי עולה
|
||||
string.desc = סדר אלפבתי יורד
|
||||
|
||||
[error]
|
||||
occurred = קרתה שגיאה
|
||||
not_found = המטרה לא נמצאה.
|
||||
network_error = שגיאת אינטרנט
|
||||
server_internal = שגיאת שרת פנימית
|
||||
|
||||
[startpage]
|
||||
install = קל להתקנה
|
||||
lightweight = קל
|
||||
license = קוד פתוח
|
||||
|
||||
[install]
|
||||
install = התקנה
|
||||
title = הגדרה ראשונית
|
||||
db_title = הגדרות מסד מידע
|
||||
db_type = סוג מסד מידע
|
||||
user = שם משתמש
|
||||
password = סיסמה
|
||||
db_name = שם מסד המידע
|
||||
db_schema = סכימה
|
||||
db_schema_helper = תוכן ריק משמע ערך ברירת המחדל ("public") של מסד המידע.
|
||||
ssl_mode = SSL
|
||||
err_empty_admin_password = סיסמה של מנהל מערכת לא יכולה להיות ריקה.
|
||||
err_empty_admin_email = כתובת אימייל של מנהל מערכת היא חובה.
|
||||
general_title = הגדרות כלליות
|
||||
app_name = שם שרת זה
|
||||
|
||||
[mail]
|
||||
issue_assigned.pull = @%[1]s שייך אותך לבקשת המיזוג %[2]s בקרפיף %[3]s.
|
||||
issue_assigned.issue = @%[1]s שייך אותך לסוגיה %[2]s בקרפיף %[3]s.
|
||||
repo.transfer.subject_to = %s רוצה להעביר את הקרפיף "%s" ל־%s
|
||||
repo.transfer.subject_to_you = %s רוצה להעביר את הקרפיף "%s" אליך
|
||||
repo.collaborator.added.text = הוספת בתור פועל לקרפיף:
|
||||
|
||||
[form]
|
||||
RepoName = שם קרפיף
|
||||
repo_name_been_taken = כבר יש קרפיף בשם זה.
|
||||
repository_force_private = פרטיות כפויה מופעלת: קרפיפים פרטיים לא יכולים להעשות ציבוריים.
|
||||
repository_files_already_exist = כבר יש קבצים בקרפיף זה. יש לדבר עם מנהל המערכת כדי לתקן את הבעיה.
|
|
@ -787,6 +787,7 @@ file_too_large=Ez a fájl túl nagy ahhoz, hogy megjelenítsük.
|
|||
video_not_supported_in_browser=A böngésző nem támogatja a HTML5 video tag-et.
|
||||
audio_not_supported_in_browser=A böngésző nem támogatja a HTML5 audio tag-et.
|
||||
stored_lfs=Git LFS-el eltárolva
|
||||
stored_annex=Git Annex-el eltárolva
|
||||
symbolic_link=Szimbolikus hivatkozás
|
||||
commit_graph=Commit gráf
|
||||
commit_graph.hide_pr_refs=Pull request-ek elrejtése
|
||||
|
@ -799,6 +800,7 @@ editor.upload_file=Fájl feltöltése
|
|||
editor.edit_file=Fájl szerkesztése
|
||||
editor.preview_changes=Változások előnézete
|
||||
editor.cannot_edit_lfs_files=LFS fájlok nem szerkeszthetőek a webes felületen.
|
||||
editor.cannot_edit_annex_files=Annex fájlok nem szerkeszthetőek a webes felületen.
|
||||
editor.cannot_edit_non_text_files=Bináris fájlok nem szerkeszthetőek a webes felületen.
|
||||
editor.edit_this_file=Fájl szerkesztése
|
||||
editor.this_file_locked=Zárolt állomány
|
||||
|
|
|
@ -596,6 +596,7 @@ file_permalink=Permalink
|
|||
file_too_large=Berkas terlalu besar untuk ditampilkan.
|
||||
|
||||
stored_lfs=Tersimpan dengan GIT LFS
|
||||
stored_annex=Tersimpan dengan GIT Annex
|
||||
commit_graph=Grafik Komit
|
||||
blame=Salahkan
|
||||
normal_view=Pandangan Normal
|
||||
|
@ -607,6 +608,7 @@ editor.upload_file=Unggah Berkas
|
|||
editor.edit_file=Sunting Berkas
|
||||
editor.preview_changes=Tinjau Perubahan
|
||||
editor.cannot_edit_lfs_files=Berkas LFS tidak dapat disunting dalam antarmuka web.
|
||||
editor.cannot_edit_annex_files=Berkas Annex tidak dapat disunting dalam antarmuka web.
|
||||
editor.cannot_edit_non_text_files=Berkas biner tidak dapat disunting dalam antarmuka web.
|
||||
editor.edit_this_file=Sunting Berkas
|
||||
editor.this_file_locked=Berkas terkunci
|
||||
|
|
|
@ -680,6 +680,7 @@ file_view_rendered=Skoða Unnið
|
|||
|
||||
file_copy_permalink=Afrita Varanlega Slóð
|
||||
stored_lfs=Geymt með Git LFS
|
||||
stored_annex=Geymt með Git Annex
|
||||
commit_graph.hide_pr_refs=Fela Sameiningarbeiðnir
|
||||
commit_graph.monochrome=Einlitað
|
||||
commit_graph.color=Litað
|
||||
|
|
|
@ -220,7 +220,7 @@ platform=Multipiattaforma
|
|||
lightweight=Leggero
|
||||
lightweight_desc=Forgejo ha requisiti minimi bassi e può funzionare su un economico Raspberry Pi. Risparmia l'energia della tua macchina!
|
||||
license=Open Source
|
||||
license_desc=Ottieni <a target="_blank" rel="noopener noreferrer" href="%[1]s">Forgejo</a>! Partecipa per <a target="_blank" rel="noopener noreferrer" href="%[2]s">contribuire</a> a rendere questo progetto ancora migliore. Non aver paura di diventare un collaboratore!
|
||||
license_desc=Ottieni <a target="_blank" rel="noopener noreferrer" href="%[1]s">Forgejo</a>! Partecipa per <a target="_blank" rel="noopener noreferrer" href="%[2]s">contribuire</a> a rendere questo progetto ancora più bello. Non aver paura di diventare collaborante!
|
||||
install_desc = Semplicemente <a target="_blank" rel="noopener noreferrer" href="%[1]s">avvia l'eseguibile</a> per la tua piattaforma, distribuiscilo con <a target="_blank" rel="noopener noreferrer" href="%[2]s">Docker</a>, oppure scarica il <a target="_blank" rel="noopener noreferrer" href="%[3]s">pacchetto</a>.
|
||||
|
||||
[install]
|
||||
|
@ -511,11 +511,11 @@ issue.action.push_n=<b>@%[1]s</b> ha immesso %[3]d commit presso %[2]s
|
|||
issue.action.close=<b>@%[1]s</b> chiuso #%[2]d.
|
||||
issue.action.reopen=<b>@%[1]s</b> riaperto #%[2]d.
|
||||
issue.action.merge=<b>@%[1]s</b> unito #%[2]d in %[3]s.
|
||||
issue.action.approve=<b>@%[1]s</b> ha approvato questa pull request.
|
||||
issue.action.reject=<b>@%[1]s</b> ha richiesto modifiche su questa pull request.
|
||||
issue.action.review=<b>@%[1]s</b> ha commentato questa pull request.
|
||||
issue.action.review_dismissed=<b>@%[1]s</b> ha respinto l'ultima recensione da %[2]s per questa pull request.
|
||||
issue.action.ready_for_review=<b>@%[1]s</b> ha contrassegnato questa pull request pronta per la revisione.
|
||||
issue.action.approve=<b>@%[1]s</b> ha approvato questa richiesta di modifica.
|
||||
issue.action.reject=<b>@%[1]s</b> ha richiesto modifiche su questa richiesta.
|
||||
issue.action.review=<b>@%[1]s</b> ha commentato questa richiesta di modifica.
|
||||
issue.action.review_dismissed=<b>@%[1]s</b> ha respinto l'ultima revisione di %[2]s per questa richiesta di modifica.
|
||||
issue.action.ready_for_review=<b>@%[1]s</b> ha contrassegnato questa richiesta di modifica come pronta per la revisione.
|
||||
issue.action.new=<b>@%[1]s</b> creato #%[2]d.
|
||||
issue.in_tree_path=In %s:
|
||||
|
||||
|
@ -532,8 +532,8 @@ repo.transfer.subject_to_you=%s ti vorrebbe trasferire il repositorio "%s"
|
|||
repo.transfer.to_you=tu
|
||||
repo.transfer.body=Per accettare o respingerla visita %s o semplicemente ignorarla.
|
||||
|
||||
repo.collaborator.added.subject=%s ti ha aggiunto a %s come collaboratorə
|
||||
repo.collaborator.added.text=Sei statə aggiuntə come collaboratorə al repositorio:
|
||||
repo.collaborator.added.subject=%s ti ha aggiunto a %s come collaborante
|
||||
repo.collaborator.added.text=Sei statə aggiuntə come collaborante al repositorio:
|
||||
reply = o rispondi direttamente a questa email
|
||||
admin.new_user.subject = Il nuovo utente %s si è appena registrato
|
||||
admin.new_user.user_info = Informazioni utente
|
||||
|
@ -690,7 +690,7 @@ joined_on = Membro dal %s
|
|||
block_user = Blocca utente
|
||||
block_user.detail_1 = Questo utente non ti seguirà più.
|
||||
block_user.detail_2 = Quest'utente non potrà interagire né con i tuoi repositori, né con le segnalazioni che hai aperto, né con i tuoi commenti.
|
||||
block_user.detail_3 = Non sarete in grado di aggiungervi come collaboratorɜ del repositorio.
|
||||
block_user.detail_3 = Non sarete in grado di aggiungervi come collaboranti del repositorio.
|
||||
code = Codice
|
||||
block = Blocca
|
||||
unblock = Sblocca
|
||||
|
@ -762,7 +762,7 @@ comment_type_group_lock=Stato blocco
|
|||
comment_type_group_review_request=Richiesta di revisione
|
||||
comment_type_group_pull_request_push=Commit aggiunti
|
||||
comment_type_group_project=Progetto
|
||||
comment_type_group_issue_ref=Riferimento del problema
|
||||
comment_type_group_issue_ref=Riferimento alla segnalazione
|
||||
saved_successfully=Le impostazioni sono state salvate correttamente.
|
||||
privacy=Privacy
|
||||
keep_activity_private_popup=La tua attività sarà visibile solo a te e agli amministratori dell'istanza
|
||||
|
@ -1029,7 +1029,7 @@ oauth2_application_locked = Forgejo preregistra alcune applicazioni OAuth2 all'a
|
|||
hooks.desc = Aggiungi richiami HTTP che saranno innescati per <strong>tutti i progetti</strong> che possiedi.
|
||||
repos_none = Non possiedi alcun progetto.
|
||||
blocked_users_none = Non ci sono utenti bloccati.
|
||||
keep_email_private_popup = Questo nasconderà il tuo indirizzo e-mail nel tuo profilo, nelle pull request e quando modifichi un file usando l'interfaccia web. I commit inoltrati non saranno modificati. Usa %s nei commit per associarli al tuo profilo.
|
||||
keep_email_private_popup = Questo nasconderà il tuo indirizzo e-mail nel tuo profilo, nelle richieste di modifica e quando modifichi un file usando l'interfaccia web. I commit inoltrati non saranno modificati. Usa %s nei commit per associarli al tuo profilo.
|
||||
verify_gpg_key_success = La chiave GPG "%s" è stata verificata.
|
||||
added_on = Aggiunto su %s
|
||||
additional_repo_units_hint = Suggerisci l'attivazione di unità aggiuntive nel repositorio
|
||||
|
@ -1189,7 +1189,7 @@ migrate.migrating_failed_no_addr=Migrazione non riuscita.
|
|||
migrate.github.description=Migrare i dati da github.com o da server GitHub Enterprise.
|
||||
migrate.git.description=Migra un repositorio solo da qualsiasi servizio Git.
|
||||
migrate.gitlab.description=Migrare i dati da gitlab.com o da altre istanze di GitLab.
|
||||
migrate.gitea.description=Migrare i dati da gitea.com o altre istanze di Gitea/Forgejo.
|
||||
migrate.gitea.description=Migrare i dati da gitea.com o altre istanze di Gitea.
|
||||
migrate.gogs.description=Migrare i dati da notabug.org o da altre istanze Gogs.
|
||||
migrate.onedev.description=Migrare i dati da code.onedev.io o da altre istanze OneDev.
|
||||
migrate.codebase.description=Migrare i dati da codebasehq.com.
|
||||
|
@ -1267,6 +1267,7 @@ view_git_blame=Visualizza git incolpa
|
|||
video_not_supported_in_browser=Il tuo browser non supporta le etichette "video" di HTML5.
|
||||
audio_not_supported_in_browser=Il tuo browser non supporta le etichette "audio" di HTML5.
|
||||
stored_lfs=Memorizzati con Git LFS
|
||||
stored_annex=Memorizzati con Git Annex
|
||||
symbolic_link=Link Simbolico
|
||||
commit_graph=Grafico dei commit
|
||||
commit_graph.select=Seleziona rami
|
||||
|
@ -1285,6 +1286,7 @@ editor.upload_file=Carica file
|
|||
editor.edit_file=Modifica file
|
||||
editor.preview_changes=Anteprima modifiche
|
||||
editor.cannot_edit_lfs_files=I file LFS non possono essere modificati nell'interfaccia web.
|
||||
editor.cannot_edit_annex_files=I file Annex non possono essere modificati nell'interfaccia web.
|
||||
editor.cannot_edit_non_text_files=I file binari non possono essere modificati tramite interfaccia web.
|
||||
editor.edit_this_file=Modifica file
|
||||
editor.this_file_locked=Il file è bloccato
|
||||
|
@ -1338,8 +1340,8 @@ commits.date=Data
|
|||
commits.older=Più vecchio
|
||||
commits.newer=Più recente
|
||||
commits.signed_by=Firmato da
|
||||
commits.signed_by_untrusted_user=Firmato da un utente non attendibile
|
||||
commits.signed_by_untrusted_user_unmatched=Firmato da un utente non attendibile che non corrisponde al committer
|
||||
commits.signed_by_untrusted_user=Firmato da un*utente non attendibile
|
||||
commits.signed_by_untrusted_user_unmatched=Firmato da un*utente non attendibile che non corrisponde al committente
|
||||
commits.gpg_key_id=ID chiave GPG
|
||||
commits.ssh_key_fingerprint=Impronta chiave SSH
|
||||
|
||||
|
@ -1411,7 +1413,7 @@ issues.new.no_reviewers=Nessun revisore
|
|||
issues.choose.get_started=Cominciare
|
||||
issues.choose.open_external_link=Apri
|
||||
issues.choose.blank=Default
|
||||
issues.choose.blank_about=Crea un problema dal modello predefinito.
|
||||
issues.choose.blank_about=Crea una segnalazione dal modello predefinito.
|
||||
issues.no_ref=Nessun ramo/etichetta specificati
|
||||
issues.create=Crea segnalazione
|
||||
issues.new_label=Nuova etichetta
|
||||
|
@ -1482,8 +1484,8 @@ issues.action_milestone_no_select=Nessuna pietra miliare
|
|||
issues.action_assignee=Assegnatario
|
||||
issues.action_assignee_no_select=Nessun assegnatario
|
||||
issues.opened_by=aperta %[1]s da <a href="%[2]s">%[3]s</a>
|
||||
pulls.merged_by=di <a href="%[2]s">%[3]s</a> è stato fuso %[1]s
|
||||
pulls.merged_by_fake=di %[2]s è stato fuso %[1]s
|
||||
pulls.merged_by=di <a href="%[2]s">%[3]s</a> è stata fusa %[1]s
|
||||
pulls.merged_by_fake=di %[2]s è stata fusa %[1]s
|
||||
issues.closed_by=di <a href="%[2]s">%[3]s</a> è stato chiuso %[1]s
|
||||
issues.opened_by_fake=aperta %[1]s da %[2]s
|
||||
issues.closed_by_fake=di %[2]s è stato chiuso %[1]s
|
||||
|
@ -1511,7 +1513,7 @@ issues.ref_issue_from=`<a href="%[3]s">ha fatto riferimento a questa segnalazion
|
|||
issues.ref_pull_from=`<a href="%[3]s">ha fatto riferimento a questa richiesta di modifica %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_closing_from=`<a href="%[3]s">ha fatto riferimento a questa segnalazione da una richiesta di modifica %[4]s che la chiuderà</a>, <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_reopening_from=`<a href="%[3]s">ha fatto riferimento a questa segnalazione da una richiesta di modifica %[4]s che la riaprirà</a>, <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_closed_from=`<a href="%[3]s">chiuso questo problema %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_closed_from=`<a href="%[3]s">chiuso questa segnalazione %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_reopened_from=`<a href="%[3]s">ha riaperto questa segnalazione %[4]s</a> <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
issues.ref_from=`da %[1]s`
|
||||
issues.author=Autore
|
||||
|
@ -1549,32 +1551,32 @@ issues.subscribe=Iscriviti
|
|||
issues.unsubscribe=Annulla iscrizione
|
||||
issues.lock=Blocca conversazione
|
||||
issues.unlock=Sblocca conversazione
|
||||
issues.lock.unknown_reason=Impossibile bloccare un problema con un motivo sconosciuto.
|
||||
issues.lock.unknown_reason=Impossibile bloccare una segnalazione senza un motivo.
|
||||
issues.lock_duplicate=Un issue non può essere bloccato due volte.
|
||||
issues.unlock_error=Impossibile sbloccare un problema che non è bloccato.
|
||||
issues.lock_with_reason=ha bloccato come <strong>%s</strong> e limitato la conversazione ai collaboratori %s
|
||||
issues.lock_no_reason=ha bloccato e limitato la conversazione ai collaboratori %s
|
||||
issues.unlock_error=Impossibile sbloccare una segnalazione che non è bloccata.
|
||||
issues.lock_with_reason=ha bloccato come <strong>%s</strong> e limitato la conversazione allɜ collaboranti %s
|
||||
issues.lock_no_reason=ha bloccato e limitato la conversazione allɜ collaboranti %s
|
||||
issues.unlock_comment=ha sbloccato questa conversazione %s
|
||||
issues.lock_confirm=Blocca
|
||||
issues.unlock_confirm=Sblocca
|
||||
issues.lock.notice_1=- Altri utenti non possono aggiungere nuovi commenti a questa segnalazione.
|
||||
issues.lock.notice_2=- Tu e altri collaboratori con accesso a questo repository potete ancora lasciare commenti che altri possono vedere.
|
||||
issues.lock.notice_3=- Puoi sempre sbloccare questo problema in futuro.
|
||||
issues.unlock.notice_1=- Tutti potranno commentare nuovamente questo problema.
|
||||
issues.unlock.notice_2=- Puoi sempre chiudere nuovamente questo problema in futuro.
|
||||
issues.lock.notice_2=- Tu e altrɜ collaboranti con accesso a questo repositorio potete ancora lasciare commenti visibili da altre persone.
|
||||
issues.lock.notice_3=- Puoi sempre sbloccare questa segnalazione in futuro.
|
||||
issues.unlock.notice_1=- Tuttɜ potranno commentare nuovamente questa segnalazione.
|
||||
issues.unlock.notice_2=- Puoi sempre chiudere nuovamente questa segnalazione in futuro.
|
||||
issues.lock.reason=Motivo per il blocco
|
||||
issues.lock.title=Blocca la conversazione su questa issue.
|
||||
issues.unlock.title=Sblocca la conversazione su questa issue.
|
||||
issues.comment_on_locked=Non puoi commentare un problema bloccato.
|
||||
issues.comment_on_locked=Non puoi commentare una segnalazione bloccata.
|
||||
issues.delete=Elimina
|
||||
issues.delete.title=Eliminare questo problema?
|
||||
issues.delete.text=Vuoi davvero eliminare questo problema? (Questo rimuoverà permanentemente tutti i contenuti. Considera invece di chiuderlo, se vuoi tenerlo archiviato)
|
||||
issues.delete.title=Eliminare la segnalazione?
|
||||
issues.delete.text=Vuoi davvero eliminare la segnalazione? (Questo rimuoverà permanentemente tutti i contenuti. Considera invece di chiuderla, se vuoi tenerla archiviata)
|
||||
issues.tracker=Cronografo
|
||||
issues.start_tracking_short=Avvia timer
|
||||
issues.start_tracking=Avvia cronografo
|
||||
issues.start_tracking_history=ha iniziato a lavorare %s
|
||||
issues.tracker_auto_close=Il timer verrà interrotto automaticamente una volta che il problema verrá chiuso
|
||||
issues.tracking_already_started=`Hai già avviato il monitoraggio del tempo su <a href="%s">un altro problema</a>!`
|
||||
issues.tracker_auto_close=Il timer verrà fermato automaticamente quando questa segnalazione verrà chiusa
|
||||
issues.tracking_already_started=`Hai già avviato il monitoraggio del tempo su <a href="%s">un'altra segnalazione</a>!`
|
||||
issues.stop_tracking=Ferma timer
|
||||
issues.stop_tracking_history=`ha smesso di funzionare %s`
|
||||
issues.cancel_tracking=Scarta
|
||||
|
@ -1620,7 +1622,7 @@ issues.dependency.pr_closing_blockedby=Questa richiesta di modifica non può ess
|
|||
issues.dependency.issue_closing_blockedby=Questa segnalazione non può essere chiusa per via delle seguenti segnalazioni
|
||||
issues.dependency.issue_close_blocks=Questa segnalazione impedisce la chiusura delle seguenti segnalazioni
|
||||
issues.dependency.pr_close_blocks=Questa richiesta di modifica impedisce la chiusura delle seguenti segnalazioni
|
||||
issues.dependency.issue_close_blocked=Devi chiudere tutte le anomalie che bloiccano questo problema prima di chiudelo.
|
||||
issues.dependency.issue_close_blocked=Vanno chiuse tutte le segnalazioni che bloccano quest'ultima, prima di poterla chiudere.
|
||||
issues.dependency.pr_close_blocked=Chiudere tutte le anomalie che bloccano la richiesta di pull prima di effettaure il merge.
|
||||
issues.dependency.blocks_short=Blocchi
|
||||
issues.dependency.blocked_by_short=Dipende da
|
||||
|
@ -1628,8 +1630,8 @@ issues.dependency.remove_header=Rimuovi Dipendenza
|
|||
issues.dependency.issue_remove_text=Questo rimuoverà la dipendenza da questa issue. Continuare?
|
||||
issues.dependency.pr_remove_text=Questo rimuoverà la dipendenza da questa pull request. Continuare?
|
||||
issues.dependency.setting=Abilita le dipendenze per segnalazioni e richieste di modifica
|
||||
issues.dependency.add_error_same_issue=Non si può fare dipendere un problema da se stesso.
|
||||
issues.dependency.add_error_dep_issue_not_exist=Il problema dipendente non esiste.
|
||||
issues.dependency.add_error_same_issue=Non si può fare dipendere una segnalazione da se stessa.
|
||||
issues.dependency.add_error_dep_issue_not_exist=La segnalazione dalla quale dipende non esiste.
|
||||
issues.dependency.add_error_dep_not_exist=La dipendenza non esiste.
|
||||
issues.dependency.add_error_dep_exists=La dipendenza esiste già.
|
||||
issues.dependency.add_error_cannot_create_circular=Non puoi creare una dipendenza con due segnalazioni che si bloccano a vicenda.
|
||||
|
@ -1782,7 +1784,7 @@ pulls.auto_merge_newly_scheduled_comment=`ha programmato questa pull request per
|
|||
pulls.auto_merge_canceled_schedule_comment=`cancella l'auto-merging di questa pull request quando tutti i testi sono superati %[1]s`
|
||||
|
||||
pulls.delete.title=Eliminare questa pull request?
|
||||
pulls.delete.text=Vuoi davvero eliminare questo problema? (Questo rimuoverà permanentemente tutti i contenuti. Considera invece di chiuderlo, se vuoi tenerlo archiviato)
|
||||
pulls.delete.text=Vuoi davvero eliminare questa richiesta di modifica? (Ciò rimuoverà permanentemente tutti i contenuti. Considera invece di chiuderla, se vuoi tenerla archiviata)
|
||||
|
||||
|
||||
|
||||
|
@ -1816,8 +1818,8 @@ ext_wiki.desc=Collegamento a una wiki esterna.
|
|||
|
||||
wiki=Wiki
|
||||
wiki.welcome=Benvenuti nella Wiki.
|
||||
wiki.welcome_desc=La wiki ti permette di scrivere e condividere documentazione con i collaboratori.
|
||||
wiki.desc=Scrivi e condividi documentazione con i collaboratori.
|
||||
wiki.welcome_desc=La wiki ti permette di scrivere e condividere documentazione con lɜ collaboranti.
|
||||
wiki.desc=Scrivi e condividi documentazione con lɜ collaboranti.
|
||||
wiki.create_first_page=Crea la prima pagina
|
||||
wiki.page=Pagina
|
||||
wiki.filter_page=Filtra pagina
|
||||
|
@ -1915,7 +1917,7 @@ search.code_search_unavailable=Attualmente la ricerca di codice non è disponibi
|
|||
settings=Impostazioni
|
||||
settings.desc=Impostazioni ti permette di gestire le impostazioni del repository
|
||||
settings.options=Repository
|
||||
settings.collaboration=Collaboratori
|
||||
settings.collaboration=Collaboranti
|
||||
settings.collaboration.admin=Amministratore
|
||||
settings.collaboration.write=Scrittura
|
||||
settings.collaboration.read=Lettura
|
||||
|
@ -2009,14 +2011,14 @@ settings.signing_settings=Impostazioni verifica firma
|
|||
settings.trust_model=Modello di fiducia per la firma
|
||||
settings.trust_model.default=Modello di fiducia predefinito
|
||||
settings.trust_model.default.desc=Usa il modello di trust del repository predefinito per questa installazione.
|
||||
settings.trust_model.collaborator=Collaboratore
|
||||
settings.trust_model.collaborator.long=Collaboratore: Firme di fiducia da parte dei collaboratori
|
||||
settings.trust_model.collaborator.desc=Le firme valide da parte dei collaboratori di questo repository saranno contrassegnate con "trusted" (sia che corrispondano al committer o meno). Altrimenti, le firme valide saranno contrassegnate con "untrusted" se la firma corrisponde al committer e "unmatched" se non.
|
||||
settings.trust_model.collaborator=Collaborante
|
||||
settings.trust_model.collaborator.long=Collaborante: firme di fiducia da parte dellɜ collaboranti
|
||||
settings.trust_model.collaborator.desc=Le firme valide da parte dellɜ collaboranti di questo repositorio saranno contrassegnate con "fidate" (sia che corrispondano a chi ha fatto il commit o meno). Altrimenti saranno contrassegnate con "non fidate" se la firma corrisponde a chi ha fatto il commit e "senza riscontro" se non.
|
||||
settings.trust_model.committer=Autorə
|
||||
settings.trust_model.committer.long=Committer: firme affidabili che corrispondono ai committer (questo corrisponde a GitHub e costringerà i commit firmati di Forgejo ad avere Forgejo come committer)
|
||||
settings.trust_model.collaboratorcommitter=Collaboratore+Committer
|
||||
settings.trust_model.collaboratorcommitter.long=Collaboratore+Committer: Firme di fiducia da parte dei collaboratori che corrispondono al committer
|
||||
settings.trust_model.collaboratorcommitter.desc=Le firme valide da parte dei collaboratori di questa repository saranno contrassegnate "fidate" se corrispondono al committer. Altrimenti le firme saranno contrassegnate con "untrusted" se la firma corrisponde al committer non corrisponde. Questo costringerà Forgejo a essere contrassegnato come committer su impegni firmati con l'effettivo committer contrassegnato come Co-Authored-By: e Co-Committed-By: nel commit. La chiave Forgejo predefinita deve corrispondere a un utente nel database.
|
||||
settings.trust_model.collaboratorcommitter=Collaborante+Committente
|
||||
settings.trust_model.collaboratorcommitter.long=Collaborante+Committente: firme di fiducia da parte dellɜ collaboranti che corrispondono allə committente
|
||||
settings.trust_model.collaboratorcommitter.desc=Le firme valide da parte dellɜ collaboranti di questo repositorio saranno contrassegnate "fidate" se corrispondono a chi fa il commit. Altrimenti saranno contrassegnate con "non fidate" se la firma corrisponde a chi fa il commit, e "senza riscontro" se non corrisponde. Questo costringerà Forgejo a essere contrassegnato come committente sui commit firmati, con l'effettivə committente contrassegnatə come Co-Authored-By: e Co-Committed-By: nel commit. La chiave Forgejo predefinita deve corrispondere a un*utente nella base dati.
|
||||
settings.wiki_delete=Elimina dati wiki
|
||||
settings.wiki_delete_desc=L'eliminazione dei dati della wiki del repository è permanente e non può essere annullata.
|
||||
settings.wiki_delete_notices_1=-Questa operazione eliminerà permanentemente e disabiliterà la wiki repository per %s.
|
||||
|
@ -2025,21 +2027,21 @@ settings.wiki_deletion_success=I dati della repository wiki sono stati eliminati
|
|||
settings.delete=Elimina questo progetto
|
||||
settings.delete_desc=L'eliminazione di un repository è un'operazione permanente e non può essere annullata.
|
||||
settings.delete_notices_1=-Questa operazione <strong>NON PUÒ</strong> essere annullata.
|
||||
settings.delete_notices_2=-Questa operazione eliminerà definitivamente il repository <strong>%s</strong> inclusi codice, issue, commenti, dati wiki e impostazioni collaboratore.
|
||||
settings.delete_notices_2=-Questa operazione eliminerà definitivamente il repositorio <strong>%s</strong>, inclusi codice, segnalazioni commenti, dati della wiki e impostazioni collaboranti.
|
||||
settings.delete_notices_fork_1=-I fork di questo repository diventeranno indipendenti dopo la cancellazione.
|
||||
settings.deletion_success=Il repository è stato eliminato.
|
||||
settings.update_settings_success=Le impostazioni del repository sono state aggiornate.
|
||||
settings.confirm_delete=Elimina progetto
|
||||
settings.add_collaborator=Aggiungi collaboratore
|
||||
settings.add_collaborator_success=Il collaboratore è stato aggiunto.
|
||||
settings.add_collaborator_inactive_user=Non posso aggiungere un utente inattivo come collaboratore.
|
||||
settings.add_collaborator_duplicate=Il collaboratore è già stato aggiunto a questo repository.
|
||||
settings.add_collaborator=Aggiungi collaborante
|
||||
settings.add_collaborator_success=Lə collaborante è statə aggiuntə.
|
||||
settings.add_collaborator_inactive_user=Non posso aggiungere un*utente inattivə come collaborante.
|
||||
settings.add_collaborator_duplicate=Lə collaborante è già statə aggiuntə a questo repositorio.
|
||||
settings.delete_collaborator=Rimuovi
|
||||
settings.collaborator_deletion=Rimuovi collaboratore
|
||||
settings.collaborator_deletion_desc=Rimuovere un collaboratore revocherà l'accesso a questo repository. Continuare?
|
||||
settings.remove_collaborator_success=Il collaboratore è stato rimosso.
|
||||
settings.collaborator_deletion=Rimuovi collaborante
|
||||
settings.collaborator_deletion_desc=Rimuovere unə collaborante ne revocherà l'accesso a questo repositorio. Continuare?
|
||||
settings.remove_collaborator_success=Lə collaborante è statə rimossə.
|
||||
settings.search_user_placeholder=Ricerca utente…
|
||||
settings.org_not_allowed_to_be_collaborator=Le organizzazioni non possono essere aggiunte come un collaboratore.
|
||||
settings.org_not_allowed_to_be_collaborator=Le organizzazioni non possono essere aggiunte come collaborante.
|
||||
settings.change_team_access_not_allowed=La modifica dell'accesso al team per il repository è stato limitato al solo proprietario dell'organizzazione
|
||||
settings.team_not_in_organization=Il team non è nella stessa organizzazione del repository
|
||||
settings.teams=Gruppi
|
||||
|
@ -2409,7 +2411,7 @@ actions = Azioni
|
|||
commit.operations = Operazioni
|
||||
issues.action_check = Seleziona/Deseleziona
|
||||
issues.close = Chiudi segnalazione
|
||||
issues.role.collaborator = Collaboratore
|
||||
issues.role.collaborator = Collaborante
|
||||
desc.sha256 = SHA256
|
||||
editor.add = Aggiungi %s
|
||||
editor.update = Aggiorna %s
|
||||
|
@ -2452,7 +2454,7 @@ settings.units.overview = Panoramica
|
|||
all_branches = Tutti i rami
|
||||
projects.column.assigned_to = Assegnato a
|
||||
pulls.cmd_instruction_hint = `Visualizza istruzioni per la riga di comando.`
|
||||
settings.add_collaborator_blocked_them = Non si può aggiungere il collaboratore perché ha bloccato il proprietario del progetto.
|
||||
settings.add_collaborator_blocked_them = Non si può aggiungere lə collaborante perché ha bloccato lə proprietariə del progetto.
|
||||
branch.protected_deletion_failed = Il ramo "%s" è protetto. Non può essere eliminato.
|
||||
branch.default_deletion_failed = Il ramo "%s" è il ramo predefinito. Non può essere eliminato.
|
||||
branch.tag_collision = Il ramo "%s" non può essere creato perché esiste già un'etichetta con lo stesso nome nel repositorio.
|
||||
|
@ -2566,7 +2568,7 @@ settings.wiki_branch_rename_success = Il nome del ramo della wiki della repo è
|
|||
settings.wiki_branch_rename_failure = Impossibile normalizzare il nome del ramo della wiki della repo.
|
||||
settings.confirm_wiki_branch_rename = Rinomina il ramo della wiki
|
||||
settings.wiki_rename_branch_main_notices_2 = Ciò rinominerà permanentemente il ramo interno della wiki della repo di %s. Passaggi esistenti dovranno essere aggiornati.
|
||||
settings.add_collaborator_blocked_our = Non si può aggiungere il collaboratore perché il proprietario del progetto lo ha bloccato.
|
||||
settings.add_collaborator_blocked_our = Non si può aggiungere lə collaborante perché lə proprietariə del progetto l'ha bloccatə.
|
||||
settings.webhook.replay.description_disabled = Per riprodurre questo richiamo HTTP, attivalo.
|
||||
settings.event_wiki_desc = Pagina wiki creata, rinominata, modificata o rimossa.
|
||||
settings.event_pull_request_review_request = Richiesta di modifica revisionata
|
||||
|
@ -2609,7 +2611,7 @@ invisible_runes_description = `Questo file contiene caratteri Unicode invisibili
|
|||
issues.filter_type.reviewed_by_you = Revisionati da te
|
||||
projects.edit_success = Il progetto "%s" è stato aggiornato.
|
||||
issues.keyword_search_unavailable = La ricerca per parola chiave non è attualmente disponibile. Contatta l'amministratore del sito.
|
||||
issues.role.collaborator_helper = Questo utente è stato invitato a collaborare sul progetto.
|
||||
issues.role.collaborator_helper = Quest*utente è statə invitatə a collaborare al progetto.
|
||||
pulls.commit_ref_at = `ha fatto riferimento a questa richiesta di modifica da un commit <a id="%[1]s" href="#%[1]s">%[2]s</a>`
|
||||
settings.thread_id = ID della discussione
|
||||
release.title = Titolo del rilascio
|
||||
|
@ -2661,7 +2663,7 @@ settings.branches.add_new_rule = Aggiungi una nuova regola
|
|||
settings.actions_desc = Abilita azioni del progetto
|
||||
settings.new_owner_blocked_doer = Il nuovo proprietario ti ha bloccato.
|
||||
settings.update_settings_no_unit = Ili progetto dovrebbe consentire almeno qualche tipo di interazione.
|
||||
settings.add_collaborator_owner = Non si può aggiungere un proprietario come collaboratore.
|
||||
settings.add_collaborator_owner = Non si può aggiungere unə proprietariə come collaborante.
|
||||
branch.delete_desc = L'eliminazione di un ramo è definitiva. Nonostante il ramo eliminato potrebbe continuare ad esistere per un breve periodo di tempo prima di essere realmente eliminato, l'eliminazione NON PUÒ essere annullata in molti casi. Continuare?
|
||||
editor.invalid_commit_mail = Email invalida per creare un commit.
|
||||
editor.branch_does_not_exist = Non esiste nessun ramo "%s" nel repositorio.
|
||||
|
@ -2780,9 +2782,9 @@ settings.matrix.access_token_helper = È consigliata l'impostazione di un accoun
|
|||
issues.author.tooltip.issue = Questo utente è l'autore di questa segnalazione.
|
||||
form.string_too_long = La stringa data è più lunga di %d caratteri.
|
||||
project = Progetti
|
||||
issues.edit.already_changed = Impossibile salvare le modifiche al problema. Sembra che il contenuto sia già stato modificato da un altro utente. Aggiornare la pagina e provare a modificare nuovamente per evitare di sovrascrivere le modifiche
|
||||
issues.edit.already_changed = Impossibile salvare le modifiche alla segnalazione. Sembra che il contenuto sia già stato modificato da un*altrə utente. Aggiornare la pagina e provare a modificare nuovamente per evitare di sovrascrivere le modifiche
|
||||
subscribe.pull.guest.tooltip = Accedi per iscriverti a questa richiesta di modifica.
|
||||
subscribe.issue.guest.tooltip = Accedere per sottoscrivere questo problema.
|
||||
subscribe.issue.guest.tooltip = Accedere per seguire questa segnalazione.
|
||||
n_release_one = rilascio %s
|
||||
n_release_few = rilasci %s
|
||||
issues.author.tooltip.pr = Quest'utente è l'autorə di questa richiesta di modifica.
|
||||
|
@ -2889,7 +2891,7 @@ teams.read_access_helper=I membri possono visualizzare e clonare i repository de
|
|||
teams.write_access=Scrittura
|
||||
teams.write_access_helper=I membri possono leggere e pushare sui repository del team.
|
||||
teams.admin_access=Accesso amministratore
|
||||
teams.admin_access_helper=I membri possono pullare e pushare sulle repository del team e anche aggiungere collaboratori.
|
||||
teams.admin_access_helper=I membri possono prelevare e immettere sui repositori del team e aggiungere collaboranti.
|
||||
teams.no_desc=Questo team non ha alcuna descrizione
|
||||
teams.settings=Impostazioni
|
||||
teams.owners_permission_desc=I proprietari hanno pieno accesso a <strong>tutti i repository</strong> e hanno <strong>diritti di amministratore</strong> nell'organizzazione.
|
||||
|
@ -2902,7 +2904,7 @@ teams.delete_team_desc=Eliminare un team revocherà l'accesso al repository da p
|
|||
teams.delete_team_success=Il team è stato eliminato.
|
||||
teams.read_permission_desc=Questo team concede l'accesso di <strong>lettura</strong>: i membri possono visualizzare e clonare i repository del team.
|
||||
teams.write_permission_desc=Questo team concede l'accesso di <strong>Scrittura</strong>: i membri possono leggere da e pushare sui repository del team.
|
||||
teams.admin_permission_desc=Questo team concede l'accesso di <strong>Amministratore</strong>: i membri possono leggere da, pushare su e aggiungere collaboratori ai repository del team.
|
||||
teams.admin_permission_desc=Questo team concede l'accesso di <strong>Amministrante</strong>: i membri possono leggere da, immettere in e aggiungere collaboranti ai repositori del team.
|
||||
teams.create_repo_permission_desc=Inoltre, questo team concede il permesso di <strong>Creare repository</strong>: i membri possono creare nuove repository nell'organizzazione.
|
||||
teams.repositories=Progetti della squadra
|
||||
teams.search_repo_placeholder=Ricerca repository…
|
||||
|
@ -3463,7 +3465,7 @@ auths.tips.gmail_settings = Impostazioni Gmail:
|
|||
config.test_mail_failed = Impossibile inviare email di prova a "%s": %v
|
||||
users.details = Dettagli dell'utente
|
||||
monitor.queue.review_add = Revisiona / aggiungi lavoratori
|
||||
self_check.no_problem_found = Nessun problema trovato.
|
||||
self_check.no_problem_found = Non c'è ancora nessuna segnalazione.
|
||||
self_check.database_inconsistent_collation_columns = La base di dati sta usando la collazione %s ma queste colonne usano una collazione diversa. Potrebbe causare problemi imprevisti.
|
||||
monitor.queue.settings.remove_all_items = Rimuovi tutto
|
||||
monitor.queue.settings.desc = Le piscine crescono dinamicamente in risposta al blocco dei lavoratori in coda.
|
||||
|
@ -3483,11 +3485,13 @@ config.app_slogan = Slogan dell'istanza
|
|||
auths.default_domain_name = Nome di dominio predefinito utilizzato per l'indirizzo e-mail
|
||||
|
||||
|
||||
users.restricted.description = Permetti di interagire solo con i repositori e le organizzazioni in cui l'utente è aggiuntə come collaborante. Ciò evita l'accesso ai repositori pubblici di quest'istanza.
|
||||
|
||||
[action]
|
||||
create_repo=ha creato il repository <a href="%s">%s</a>
|
||||
rename_repo=repository rinominato da <code>%[1]s</code> a <a href="%[2]s">[3]s</a>
|
||||
create_issue=`ha aperto la segnalazione <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_issue=`ha chiuso il problema <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_issue=`ha chiuso la segnalazione <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
reopen_issue=`ha riaperto la segnalazione <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
create_pull_request=`ha creato la pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
close_pull_request=`ha chiuso la pull request <a href="%[1]s">%[3]s#%[2]s</a>`
|
||||
|
|
|
@ -1217,7 +1217,7 @@ migrate.migrating_failed_no_addr=移行に失敗しました。
|
|||
migrate.github.description=github.com やその他の GitHub エンタープライズサーバーからデータを移行します。
|
||||
migrate.git.description=Git サービスからリポジトリのみを移行します。
|
||||
migrate.gitlab.description=gitlab.com やその他の GitLab インスタンスからデータを移行します。
|
||||
migrate.gitea.description=gitea.com やその他の Gitea/Forgejo インスタンスからデータを移行します。
|
||||
migrate.gitea.description=gitea.com やその他の Gitea インスタンスからデータを移行します。
|
||||
migrate.gogs.description=notabug.org やその他の Gogs インスタンスからデータを移行します。
|
||||
migrate.onedev.description=code.onedev.io やその他の OneDev インスタンスからデータを移行します。
|
||||
migrate.codebase.description=codebasehq.com からデータを移行します。
|
||||
|
@ -1305,6 +1305,7 @@ view_git_blame=Git Blameを表示
|
|||
video_not_supported_in_browser=このブラウザはHTML5のvideoタグをサポートしていません。
|
||||
audio_not_supported_in_browser=このブラウザーはHTML5のaudioタグをサポートしていません。
|
||||
stored_lfs=Git LFSで保管されています
|
||||
stored_annex=Git Annexで保管されています
|
||||
symbolic_link=シンボリック リンク
|
||||
executable_file=実行ファイル
|
||||
commit_graph=コミットグラフ
|
||||
|
@ -1328,6 +1329,7 @@ editor.upload_file=ファイルをアップロード
|
|||
editor.edit_file=ファイルを編集
|
||||
editor.preview_changes=変更をプレビュー
|
||||
editor.cannot_edit_lfs_files=LFSのファイルはWebインターフェースで編集できません。
|
||||
editor.cannot_edit_annex_files=AnnexのファイルはWebインターフェースで編集できません。
|
||||
editor.cannot_edit_non_text_files=バイナリファイルはWebインターフェースで編集できません。
|
||||
editor.edit_this_file=ファイルを編集
|
||||
editor.this_file_locked=ファイルはロックされています
|
||||
|
|
|
@ -821,6 +821,7 @@ file_too_large=보여주기에는 파일이 너무 큽니다.
|
|||
video_not_supported_in_browser=당신의 브라우저가 HTML5의 "video" 태그를 지원하지 않습니다.
|
||||
audio_not_supported_in_browser=당신의 브라우저가 HTML5의 "audio" 태그를 지원하지 않습니다.
|
||||
stored_lfs=Git LFS에 저장되어 있습니다
|
||||
stored_annex=Git Annex에 저장되어 있습니다
|
||||
commit_graph=커밋 그래프
|
||||
|
||||
editor.new_file=새 파일
|
||||
|
@ -1435,6 +1436,8 @@ issues.cancel_tracking_history = `취소된 시간 기록 %s`
|
|||
settings.enter_repo_name = 표시된 소유자와 저장소명을 정확하게 입력하세요:
|
||||
settings.packagist_username = Packagist 사용자명
|
||||
|
||||
archive.title_date = 이 저장소는 %s에 보관처리되었습니다. 파일을 볼 수 있고 복제할 수도 있지만, 푸시하거나 이슈를 열거나 풀 리퀘스트를 만들 수 없습니다.
|
||||
|
||||
[graphs]
|
||||
|
||||
[org]
|
||||
|
|
|
@ -40,7 +40,7 @@ passcode=Kods
|
|||
webauthn_insert_key=Jāievieto sava drošības atslēga
|
||||
webauthn_sign_in=Jānospiež poga uz drošības. Ja drošības atslēgai nav pogas, tā ir atkārtoti jāievieto.
|
||||
webauthn_press_button=Lūgums nospiest pogu uz savas drošības atslēgas…
|
||||
webauthn_use_twofa=Izmantot divfaktoru kodu no tālruņa
|
||||
webauthn_use_twofa=Izmantot divpakāpju kodu no sava tālruņa
|
||||
webauthn_error=Nevar nolasīt drošības atslēgu.
|
||||
webauthn_unsupported_browser=Pārlūks pašlaik nenodrošina WebAuthn.
|
||||
webauthn_error_unknown=Atgadījās nezināma kļūda. Lūgums mēģināt vēlreiz.
|
||||
|
@ -75,7 +75,7 @@ mirrors=Spoguļglabātavas
|
|||
collaborative=Līdzdarbošanās
|
||||
forks=Atzarojumi
|
||||
|
||||
activities=Aktivitāte
|
||||
activities=Darbības
|
||||
pull_requests=Izmaiņu pieprasījumi
|
||||
issues=Pieteikumi
|
||||
milestones=Atskaites punkti
|
||||
|
@ -83,8 +83,8 @@ milestones=Atskaites punkti
|
|||
ok=Labi
|
||||
cancel=Atcelt
|
||||
retry=Mēģināt vēlreiz
|
||||
rerun=Palaist atkārtoti
|
||||
rerun_all=Palaist atkārtoti visus darbus
|
||||
rerun=Atkārtoti izpildīt
|
||||
rerun_all=Atkārtoti izpildīt visus darbus
|
||||
save=Saglabāt
|
||||
add=Pievienot
|
||||
add_all=Pievienot visus
|
||||
|
@ -213,7 +213,7 @@ string.desc=Z - A
|
|||
|
||||
[error]
|
||||
occurred=Radusies kļūda
|
||||
report_message=Ja ir pārliecība, ka šī ir Forgejo nepilnība, lūgums pārbaudīt <a href="%s" target="_blank">GitHub</a>, vai tā jau nav zināma, vai izveidot jaunu pieteikumu, ja nepieciešams.
|
||||
report_message=Ja ir pārliecība, ka šī ir Forgejo nepilnība, lūgums pārbaudīt <a href="%s" target="_blank">Codeberg</a>, vai tā jau nav zināma, vai izveidot jaunu pieteikumu, ja nepieciešams.
|
||||
missing_csrf=Kļūdains pieprasījums: netika iesūtīta drošības pilnvara
|
||||
invalid_csrf=Kļūdains pieprasījums: iesūtīta kļūdaina drošības pilnvara
|
||||
not_found=Pieprasītie dati netika atrasti.
|
||||
|
@ -221,18 +221,18 @@ network_error=Tīkla kļūda
|
|||
server_internal = Iekšēja servera kļūda
|
||||
|
||||
[startpage]
|
||||
app_desc=Viegli uzstādāms Git serviss
|
||||
install=Vienkārši instalējams
|
||||
app_desc=Pašmitināms Git pakalpojums bez galvassāpēm
|
||||
install=Viegli uzstādīt
|
||||
install_desc=Vienkārši <a target="_blank" rel="noopener noreferrer" href="%[1]s">jāpalaiž izpildāmā datne</a> vajadzīgajai sistēmai, jāizmanto <a target="_blank" rel="noopener noreferrer" href="%[2]s">Docker</a> vai jāiegūst <a target="_blank" rel="noopener noreferrer" href="%[3]s">pakotne</a>.
|
||||
platform=Pieejama dažādām platformām
|
||||
lightweight=Viegla
|
||||
lightweight_desc=Forgejo ir miminālas prasības un to var darbināt uz nedārga Raspberry Pi datora. Ietaupi savai ierīcei resursus!
|
||||
lightweight_desc=Forgejo ir zemas tehniskās prasības, un tas var darboties nedārgā Raspberry Pi. Taupām savu ierīču patērēto enerģiju!
|
||||
license=Atvērtā pirmkoda
|
||||
license_desc=Iegūsti <a target="_blank" rel="noopener noreferrer" href="%[1]s">Forgejo</a>! Pievienojies mums <a target="_blank" rel="noopener noreferrer" href="%[2]s">līdzdarbojoties</a>, lai padarītu šo projektu vēl labāku! Nekautrējies un līdzdarbojies!
|
||||
platform_desc = Ir apstiprināts, ka Forgejo darbojas brīvās operētājsistēmāš, piemēram, GNU/Linux un FreeBSD, kā arī ar dažādām procesoru arhitektūrām. Izvēlies to, kas patīk!
|
||||
platform_desc = Ir apstiprināts, ka Forgejo darbojas brīvās operētājsistēmās, piemēram, GNU/Linux un FreeBSD, kā arī ar dažādām procesoru arhitektūrām. Izvēlies to, kas patīk!
|
||||
|
||||
[install]
|
||||
install=Instalācija
|
||||
install=Uzstādīšana
|
||||
title=Sākotnējā konfigurācija
|
||||
docker_helper=Ja Forgejo ir uzstādīts Docker konteinerā, lūgums izlasīt <a target="_blank" rel="noopener noreferrer" href="%s">vadlīnijas</a>, pirms tiek mainīti iestatījumi.
|
||||
require_db_desc=Forgejo nepieciešams MySQL, PostgreSQL, SQLite3 vai TiDB (ar MySQL protokolu).
|
||||
|
@ -247,11 +247,11 @@ db_schema_helper=Atstāt tukšu, lai izmantotu datubāzes noklusējumu ("public"
|
|||
ssl_mode=SSL
|
||||
path=Ceļš
|
||||
sqlite_helper=SQLite3 datubāzes datnes ceļš.<br>Jāievada pilns ceļš, ja Forgejo tiek palaists kā sistēmas pakalpojums.
|
||||
reinstall_error=Nevar instalēt datubāzē, kura jau satur Forgejo datus
|
||||
reinstall_error=Tiek mēģināts uzstādīt esošā Forgejo datubāzē
|
||||
reinstall_confirm_message=Atkārtota uzstādīšana ar esošu Forgejo datubāzi var izraisīt vairākas nebūšanas. Vairumā gadījumu vajadzētu izmantot esošo "app.ini", lai palaistu Forgejo. Jāapstiprina zemāk esošais, ja ir skaidrs, kas tiek darīts:
|
||||
reinstall_confirm_check_1=Dati, kas šifrēti ar SECRET_KEY, kas ir norādīta app.ini datnē, var tikt pazaudēti: lietotāji nevarēs pieteikties ar 2FA/OTP, kā arī spoguļglabātavas var pārstāt darboties. Ar šīs izvēles rūtiņas atzīmēšanu tiek apstiprināts, ka pašreizējā app.ini datne satur pareizu SECRET_KEY vērtību.
|
||||
reinstall_confirm_check_2=Glabātavas un iestatījumus var būt nepieciešams atkārtoti sinhronizēt. Ar šīs izvēles rūtiņas atzīmēšanu tiek apstiprināts, ka pašrocīgi tiks veikta glabātavu aizķeru un authorized_keys datnes atkārtota sinhronizēšana, kā arī tiek apstiprināts, ka tiks nodrošināts, ka glabātavas un spoguļošanas iestatījumi ir pareizi.
|
||||
reinstall_confirm_check_3=Ar šo tiek apstiprināts, ka ir pilnīga pārliecība, ka Forgejo darbojas ar pareizu app.ini atrašanāš vietu un ka tiešām ir nepieciešama atkārtota uzstādīšana. Tiek apliecināts, ka iepriekšminētais var novest pie kļūmēm.
|
||||
reinstall_confirm_check_3=Ar šo tiek apstiprināts, ka ir pilnīga pārliecība, ka Forgejo darbojas ar pareizu app.ini atrašanās vietu un ka tiešām ir nepieciešama atkārtota uzstādīšana. Tiek apliecināts, ka iepriekšminētais var novest pie kļūmēm.
|
||||
err_empty_db_path=Nav norādīts SQLite3 datu bāzes ceļš.
|
||||
no_admin_and_disable_registration=Lietotāju reģistrēšanos nevar atspējot bez pārvaldītāja konta izveidošanas.
|
||||
err_empty_admin_password=Pārvaldītāja parole nevar būt tukša.
|
||||
|
@ -267,7 +267,7 @@ repo_path=Glabātavu atrašanās vieta
|
|||
repo_path_helper=Attālās Git glabātavas tiks saglabātas šajā mapē.
|
||||
lfs_path=Git LFS atrašanās vieta
|
||||
lfs_path_helper=Datnes, kas pievienotas Git LFS, tiks glabātas šajā mapē. Atstāt tukšu, lai atspējotu.
|
||||
run_user=Lietotājus, ar kuru palaist
|
||||
run_user=Lietotājs, ar kuru palaist
|
||||
run_user_helper=Operētājsistēms lietotājs, ar kuru tiks palaists Forgejo. Jāņem vērā, ka šim lietotājam ir jābūt piekļuvei glabātavas atrašanās vietai.
|
||||
domain=Servera domēna vārds
|
||||
domain_helper=Domēns vai servera adrese.
|
||||
|
@ -314,19 +314,19 @@ admin_name=Pārvaldītāja lietotājvārds
|
|||
admin_password=Parole
|
||||
confirm_password=Apstiprināt paroli
|
||||
admin_email=E-pasta adrese
|
||||
install_btn_confirm=Instalēt Forgejo
|
||||
install_btn_confirm=Uzstādīt Forgejo
|
||||
test_git_failed=Nevarēja pārbaudīt "git" komandu: %v
|
||||
sqlite3_not_available=Šī Forgejo versija neatbalsta SQLite3. Lūgums lejupielādēt oficiālo bināro versiju no %s (ne 'gobuild' versiju).
|
||||
invalid_db_setting=Nederīgi datu bāzes iestatījumi: %v
|
||||
invalid_db_table=Datubāzes tabula "%s" ir kļūdaina: %v
|
||||
invalid_repo_path=Nederīga glabātavu atrašanās vieta: %v
|
||||
invalid_app_data_path=Lietojumprogrammas datu ceļš ir kļūdains: %v
|
||||
run_user_not_match="Izpildīt kā lietotājam" lietotājvārds neatbilst pašreizējam lietotājam: %s -> %s
|
||||
invalid_app_data_path=Lietotnes datu ceļš ir kļūdains: %v
|
||||
run_user_not_match="Lietotājs, ar kuru palaist" lietotājvārds neatbilst pašreizējam lietotājam: %s -> %s
|
||||
internal_token_failed=Neizdevās izveidot iekšējo pilnvaru: %v
|
||||
secret_key_failed=Neizdevās izveidot drošības atslēgu: %v
|
||||
save_config_failed=Neizdevās saglabāt konfigurāciju: %v
|
||||
invalid_admin_setting=Pārvaldītāja konta iestatījums ir nederīgs: %v
|
||||
invalid_log_root_path=Nederīgs žurnalizēšanas ceļš: %v
|
||||
invalid_log_root_path=Žurnāla atrašanās vieta ir nederīga: %v
|
||||
default_keep_email_private=Pēc noklusējuma slēpt e-pasta adreses
|
||||
default_keep_email_private.description=Pēc noklusējuma iespējot e-pasta adreses slēpšanu jauniem lietotājiem, lai šī informāciju nenoplūstu uzreiz pēc reģistrēšanās.
|
||||
default_allow_create_organization=Pēc noklusējuma ļaut apvienību izveidošanu
|
||||
|
@ -424,7 +424,7 @@ account_activated=Konts ir aktivēts
|
|||
prohibit_login=Konta darbība ir apturēta
|
||||
prohibit_login_desc=Kontam ir liegts mijiedarboties ar serveri. Jāsazinās ar tā pārvaldītāju, lai atgūtu piekļuvi.
|
||||
resent_limit_prompt=Nesen jau tika pieprasīts aktivēšanas e-pasta ziņojums. Lūgums uzgaidīt 3 minūtes un mēģināt vēlreiz.
|
||||
has_unconfirmed_mail=Sveiciens, %s! Tev ir neapstiprināta e-pasta adrese (<b>%s</b>). Ja neesi saņēmis apstiprinājuma e-pasta ziņojumu vai ir nepieciešams nosūtīt jaunu, lūgums klikšķināt uz zemāk esošās pogas.
|
||||
has_unconfirmed_mail=Sveiciens, %s! Tev ir neapstiprināta e-pasta adrese (<b>%s</b>). Ja nav saņemts apstiprinājuma e-pasta ziņojums vai ir nepieciešams nosūtīt jaunu, lūgums klikšķināt uz zemāk esošās pogas.
|
||||
resend_mail=Klikšķināt šeit, lai atkārtoti nosūtītu aktivēšanas e-pasta ziņojumu
|
||||
email_not_associate=Šī e-pasta adrese nav saistīta ar nevienu kontu.
|
||||
send_reset_mail=Nosūtīt atkopes e-pasta ziņojumu
|
||||
|
@ -680,6 +680,8 @@ AccessToken = Piekļuves pilnvara
|
|||
To = Zara nosaukums
|
||||
|
||||
|
||||
email_domain_is_not_allowed = Lietotāja e-pasta adreses <b>%s</b> domēna vārds ir pretrunāt ar EMAIL_DOMAIN_ALLOWLIST vai EMAIL_DOMAIN_BLOCKLIST. Jāpārliecinās, ka e-pasta adrese ir norādīta pareizi.
|
||||
|
||||
[user]
|
||||
change_avatar=Mainīt profila attēlu…
|
||||
joined_on=Pievienojās %s
|
||||
|
@ -695,7 +697,7 @@ following_few=%d seko
|
|||
follow=Sekot
|
||||
unfollow=Nesekot
|
||||
user_bio=Biogrāfija
|
||||
disabled_public_activity=Šis lietotājs ir atslēdzies iespēju aplūkot tā aktivitāti.
|
||||
disabled_public_activity=Šis lietotājs ir atspējojis darbību redzamību visiem.
|
||||
email_visibility.limited=E-pasta adrese ir redzama visiem autentificētajiem lietotājiem
|
||||
email_visibility.private=E-pasta adrese ir redzama tikai administratoriem
|
||||
show_on_map=Rādīt šo vietu kartē
|
||||
|
@ -736,7 +738,7 @@ social=Sociālie konti
|
|||
applications=Lietotnes
|
||||
orgs=Apvienības
|
||||
repos=Glabātavas
|
||||
delete=Dzēst kontu
|
||||
delete=Izdzēst kontu
|
||||
twofa=Divpakāpju pieteikšanās (TOTP)
|
||||
account_link=Saistītie konti
|
||||
organization=Apvienības
|
||||
|
@ -780,7 +782,7 @@ comment_type_group_dependency=Atkarības
|
|||
comment_type_group_lock=Aizslēgšanas stāvoklis
|
||||
comment_type_group_review_request=Izskatīšanas pieprasījums
|
||||
comment_type_group_pull_request_push=Pievienotie iesūtījumi
|
||||
comment_type_group_project=Projektus
|
||||
comment_type_group_project=Projekts
|
||||
comment_type_group_issue_ref=Pieteikumu atsauces
|
||||
saved_successfully=Iestatījumi tika sekmīgi saglabāti.
|
||||
privacy=Privātums
|
||||
|
@ -804,15 +806,15 @@ new_password=Jaunā parole
|
|||
retype_new_password=Apstiprināt jauno paroli
|
||||
password_incorrect=Ievadīta nepareiza pašreizējā parole.
|
||||
change_password_success=Parole tika sekmīgi nomainīta. Turpmāk jāpiesakās ar savu jauno paroli.
|
||||
password_change_disabled=Ārējie konti nevar mainīt paroli, izmantojot, Forgejo saskarni.
|
||||
password_change_disabled=Ārējie lietotāji nevar mainīt savu paroli Forgejo tīmekļa saskarnē.
|
||||
|
||||
emails=E-pasta adreses
|
||||
manage_emails=Pārvaldīt e-pasta adreses
|
||||
manage_themes=Noklusējuma izskats
|
||||
manage_openid=OpenID adreses
|
||||
email_desc=Galvenā e-pasta adrese tiks izmantota paziņojumiem, paroļu atkopšanai un, ja tā nav paslēpta, Git tīmekļa darbībām.
|
||||
email_desc=Galvenā e-pasta adrese tiks izmantota paziņojumiem, paroļu atkopei un, ja tā nav paslēpta, Git tīmekļa darbībām.
|
||||
theme_desc=Šis izskats tiks izmantots tīmekļa saskarnei pēc pieteikšanās.
|
||||
primary=Primārā
|
||||
primary=Galvenā
|
||||
activated=Aktivēts
|
||||
requires_activation=Nepieciešama aktivēšana
|
||||
primary_email=Padarīt par galveno
|
||||
|
@ -904,7 +906,7 @@ added_on=Pievienots %s
|
|||
valid_until_date=Derīgs līdz %s
|
||||
valid_forever=Derīgs mūžīgi
|
||||
last_used=Pēdējo reizi izmantota
|
||||
no_activity=Nav nesenas aktivitātes
|
||||
no_activity=Nav nesenu darbību
|
||||
can_read_info=Lasīt
|
||||
can_write_info=Rakstīt
|
||||
key_state_desc=Šī atslēga ir izmantota pēdējo 7 dienu laikā
|
||||
|
@ -922,17 +924,17 @@ unbind_success=Sociālā tīkla konts tika veiksmīgi noņemts.
|
|||
|
||||
manage_access_token=Piekļuves pilnvaras
|
||||
generate_new_token=Izveidot jaunu pilnvaru
|
||||
tokens_desc=Šīs pilnvaras nodrošina piekļuvi kontam ar Gitea API.
|
||||
tokens_desc=Šīs pilnvaras nodrošina piekļuvi kontam ar Forgejo API.
|
||||
token_name=Pilnvaras nosaukums
|
||||
generate_token=Izveidot pilnvaru
|
||||
generate_token_success=Jaunā pilnvara tika izveidota. Tā ir jāievieto starpliktuvē, jo tā vairs netiks rādīta.
|
||||
generate_token_name_duplicate=Lietotnes nosaukums <strong>%s</strong> jau tiek izmantots. Lūgums izmantot citu.
|
||||
delete_token=Dzēst
|
||||
delete_token=Izdzēst
|
||||
access_token_deletion=Izdzēst piekļuves pilnvaru
|
||||
access_token_deletion_cancel_action=Atcelt
|
||||
access_token_deletion_confirm_action=Dzēst
|
||||
access_token_deletion_desc=Izdzēšot pilnvaru, lietojumprogrammām, kas to izmanto, tiks liegta piekļuve šim kontam. Šī darbība ir neatgriezeniska. Vai turpināt?
|
||||
delete_token_success=Pilnvara tika izdzēsta. Lietojumprogrammām, kas izmantoja šo pilnvaru, vairs nav piekļuves kontam.
|
||||
access_token_deletion_desc=Pilnvaras izdzēšana atsauks lietotņu, kas to izmanto, piekļuvi kontam. Šo darbību nevar atsaukt. Turpināt?
|
||||
delete_token_success=Pilnvara tika izdzēsta. Lietotnēm, kas to izmanto, vairs nav piekļuves kontam.
|
||||
repo_and_org_access=Glabātavas un apvienības piekļuve
|
||||
permissions_public_only=Tikai publiskie
|
||||
permissions_access_all=Visi (publiskie, privātie un ierobežotie)
|
||||
|
@ -975,18 +977,18 @@ revoke_oauth2_grant=Atsaukt piekļuvi
|
|||
revoke_oauth2_grant_description=Šīs trešās puses lietotnes piekļuves atsaukšana liegs tai piekļūt Taviem datiem. Turpināt?
|
||||
revoke_oauth2_grant_success=Piekļuve sekmīgi atsaukta.
|
||||
|
||||
twofa_desc=Divfaktoru autentifikācija uzlabo konta drošību.
|
||||
twofa_desc=Lai aizsargātu savu kontu no paroļu zādzības, var izmantot viedtālruni vai citu ierīci, lai saņemtu laikā balstītas vienreiz izmantojamas paroles ("TOTP").
|
||||
twofa_recovery_tip=Ja ierīce tiks pazaudēta, būs iespējams izmantot vienreizējas izmantošanas atkopšanas atslēgu, lai atgūtu piekļuvi savam kontam.
|
||||
twofa_is_enrolled=Kontam ir <strong>ieslēgta</strong> divfaktoru autentifikācija.
|
||||
twofa_not_enrolled=Kontam šobrīd nav ieslēgta divfaktoru autentifikācija.
|
||||
twofa_is_enrolled=Kontam šobrīd ir <strong>ieslēgta</strong> divpakāpju pieteikšanās.
|
||||
twofa_not_enrolled=Kontam šobrīd nav ieslēgta divpakāpju pieteikšanās.
|
||||
twofa_disable=Atspējot divpakāpju pieteikšanos
|
||||
twofa_scratch_token_regenerate=Atkārtoti izveidot vienreizējas izmantošanas atkopes atslēgu
|
||||
twofa_scratch_token_regenerated=Vienreizējā pilnvara tagad ir %s. Tā ir jāglabā drošā vietā, tā vairs nekad netiks rādīta.
|
||||
twofa_enroll=Ieslēgt divpakāpju pieteikšanos
|
||||
twofa_disable_note=Nepieciešamības gadījumā divfaktoru autentifikāciju ir iespējams atslēgt.
|
||||
twofa_disable_desc=Atslēdzot divfaktoru autentifikāciju, konts vairs nebūs tik drošs. Vai turpināt?
|
||||
twofa_disable_note=Ja nepieciešams, divpakāpju pieteikšanos var atslēgt.
|
||||
twofa_disable_desc=Divpakāpju pieteikšanās atspējošana padarīs kontu mazāk drošu. Turpināt?
|
||||
regenerate_scratch_token_desc=Ja atkopšanas atslēga ir pazaudēta vai tā jau ir izmantota, lai pieteiktos, to var atiestatīt šeit.
|
||||
twofa_disabled=Divfaktoru autentifikācija tika atslēgta.
|
||||
twofa_disabled=Divpakāpju pieteikšanās tika atspējota.
|
||||
scan_this_image=Šis attēls ir jānolasa ar autentificēšanās lietotni:
|
||||
or_enter_secret=Vai jāievada noslēpums: %s
|
||||
then_enter_passcode=Pēc tam jāievada lietotnē attēlotais piekļuves kods:
|
||||
|
@ -1007,7 +1009,7 @@ manage_account_links_desc=Šie ārējie konti ir sasaistīti ar Tavu Forgejo kon
|
|||
account_links_not_available=Pašlaik nav neviena ārējā konta piesaistīta šim kontam.
|
||||
link_account=Sasaistīt kontu
|
||||
remove_account_link=Noņemt sasaistīto kontu
|
||||
remove_account_link_desc=Sasaistītā konta noņemšana atsauks tā piekļuvi Tavam Gitea kontam. Turpināt?
|
||||
remove_account_link_desc=Sasaistītā konta noņemšana atsauks tā piekļuvi Tavam Forgejo kontam. Turpināt?
|
||||
remove_account_link_success=Sasaistītais konts tika noņemts.
|
||||
|
||||
hooks.desc=Pievienot tīmekļa aizķeres, kas izpildīsies <strong>visās piederošajās glabātavās</strong>.
|
||||
|
@ -1016,7 +1018,7 @@ orgs_none=Nav dalības nevienā apvienībā.
|
|||
repos_none=Tev nav nevienas glabātavas.
|
||||
|
||||
delete_account=Izdzēst savu kontu
|
||||
delete_prompt=Šī darbība neatgriezeniski izdzēsīs lietotāja kontu. To <strong>NEVAR</strong> atdarīt.
|
||||
delete_prompt=Šī darbība neatgriezeniski izdzēsīs lietotāja kontu. To <strong>NEVAR</strong> atsaukt.
|
||||
delete_with_all_comments=Konts ir jaunāks kā %s. Lai izvairītos no spoku piebildēm, visas pieteikumu/izmaiņu pieprasījumu piebildes tiks izdzēstas kopā ar to.
|
||||
confirm_delete_account=Apstiprināt izdzēšanu
|
||||
delete_account_title=Izdzēst lietotāja kontu
|
||||
|
@ -1129,7 +1131,7 @@ mirror_password_placeholder=(bez izmaiņām)
|
|||
mirror_password_blank_placeholder=(nav uzstādīts)
|
||||
mirror_password_help=Jānomaina lietotājvārds, lai izdzēstu saglabāto paroli.
|
||||
watchers=Novērotāji
|
||||
stargazers=Zvaigžņdevēji
|
||||
stargazers=Zvaigžņu vērotāji
|
||||
stars_remove_warning=Šī glabātava tiks izņemta no visām izlasēm.
|
||||
forks=Atzarojumi
|
||||
reactions_more=un vēl %d
|
||||
|
@ -1226,7 +1228,7 @@ migrate.migrating_failed_no_addr=Pārcelšana neizdevās.
|
|||
migrate.github.description=Pārcelt datus no github.com vai GitHub Enterprise servera.
|
||||
migrate.git.description=Pārcelt tikai glabātavu no jebkura Git pakalpojuma.
|
||||
migrate.gitlab.description=Pārcelt datus no gitlab.com vai citiem GitLab serveriem.
|
||||
migrate.gitea.description=Pārcelt datus no gitea.com vai citiem Gitea/Forgejo serveriem.
|
||||
migrate.gitea.description=Pārcelt datus no gitea.com vai citiem Gitea serveriem.
|
||||
migrate.gogs.description=Pārcelt datus no notabug.org vai citiem Gogs serveriem.
|
||||
migrate.onedev.description=Pārcelt datus no code.onedev.io vai citiem OneDev serveriem.
|
||||
migrate.codebase.description=Pārcelt datus no codebasehq.com.
|
||||
|
@ -1273,7 +1275,7 @@ clear_ref=`Notīrīt pašreizējo atsauci`
|
|||
filter_branch_and_tag=Atlasīt zaru vai birku
|
||||
find_tag=Atrast birku
|
||||
branches=Zari
|
||||
tags=Tagi
|
||||
tags=Birkas
|
||||
issues=Pieteikumi
|
||||
pulls=Izmaiņu pieprasījumi
|
||||
project_board=Projekti
|
||||
|
@ -1291,7 +1293,7 @@ releases=Laidieni
|
|||
tag=Tags
|
||||
released_this=izveidoja šo laidienu
|
||||
tagged_this=izveidoja tagu revīzijai
|
||||
file.title=%s atzarā %s
|
||||
file.title=%s zarā %s
|
||||
file_raw=Neapstrādāts
|
||||
file_history=Vēsture
|
||||
file_view_source=Skatīt avotu
|
||||
|
@ -1314,6 +1316,7 @@ view_git_blame=Apskatīt Git izmaiņu veicējus
|
|||
video_not_supported_in_browser=Pārlūks neatbalsta HTML5 tagu "video".
|
||||
audio_not_supported_in_browser=Pārlūks neatbalsta HTML5 tagu "audio".
|
||||
stored_lfs=Saglabāts Git LFS
|
||||
stored_annex=Saglabāts Git Annex
|
||||
symbolic_link=Simboliska saite
|
||||
executable_file=Izpildāma datne
|
||||
commit_graph=Iesūtījumu karte
|
||||
|
@ -1337,6 +1340,7 @@ editor.upload_file=Augšupielādēt datni
|
|||
editor.edit_file=Labot datni
|
||||
editor.preview_changes=Priekšskatīt izmaiņas
|
||||
editor.cannot_edit_lfs_files=LFS datnes tīmekļa saskarnē nevar labot.
|
||||
editor.cannot_edit_annex_files=Annex datnes tīmekļa saskarnē nevar labot.
|
||||
editor.cannot_edit_non_text_files=Binārās datnes tīmekļa saskarnē nevar labot.
|
||||
editor.edit_this_file=Labot datni
|
||||
editor.this_file_locked=Datne ir slēgta
|
||||
|
@ -1346,7 +1350,7 @@ editor.delete_this_file=Izdzēst datni
|
|||
editor.must_have_write_access=Ir jābūt rakstīšanas piekļuvei, lai šajā datnē veiktu vai ierosinātu izmaiņas.
|
||||
editor.file_delete_success=Datne "%s" tika izdzēsta.
|
||||
editor.name_your_file=Jāpiešķir datnei nosaukums…
|
||||
editor.filename_help=Mapi var pievienot, ja ieraksta tās nosaukumu, aiz kura ir slīpsvītra ('/'). Mapi var noņemt ar atpakaļatkāpes taustiņa nospiešanu ievades lauka sākumā.
|
||||
editor.filename_help=Mapi var pievienot, ja ieraksta tās nosaukumu, aiz kura ir slīpsvītra ("/"). Mapi var noņemt ar atpakaļatkāpes taustiņa nospiešanu ievades lauka sākumā.
|
||||
editor.or=vai
|
||||
editor.cancel_lower=Atcelt
|
||||
editor.commit_signed_changes=Iesūtīt parakstītas izmaiņas
|
||||
|
@ -1360,7 +1364,7 @@ editor.patch=Pielietot ielāpu
|
|||
editor.patching=Pielieto ielāpu:
|
||||
editor.fail_to_apply_patch=`Neizdevās pielietot ielāpu "%s"`
|
||||
editor.new_patch=Jauns ielāps
|
||||
editor.commit_message_desc=Pievienot neobligātu paplašinātu aprakstu…
|
||||
editor.commit_message_desc=Pēc izvēles var pievienot paplašinātu aprakstu…
|
||||
editor.signoff_desc=Iesūtījuma žurnāla ziņojumam pievienot noslēgumu Signed-off-by ar iesūtītāju.
|
||||
editor.commit_directly_to_this_branch=Iesūtīt uzreiz zarā <strong class="%[2]s">%[1]s</strong>.
|
||||
editor.create_new_branch=Izveidot šim iesūtījumam <strong>jaunu zaru</strong> un uzsākt izmaiņu pieprasījumu.
|
||||
|
@ -1437,7 +1441,7 @@ ext_issues.desc=Saite uz ārējo problēmu sekotāju.
|
|||
|
||||
projects=Projekti
|
||||
projects.desc=Pārvaldīt pieteikumus un izmaiņu pieprasījumus projektos.
|
||||
projects.description=Apraksts (neobligāts)
|
||||
projects.description=Apraksts (pēc izvēles)
|
||||
projects.description_placeholder=Apraksts
|
||||
projects.create=Izveidot projektu
|
||||
projects.title=Nosaukums
|
||||
|
@ -1597,8 +1601,8 @@ issues.opened_by_fake=%[2]s atvēra %[1]s
|
|||
issues.closed_by_fake=%[2]s aizvēra %[1]s
|
||||
issues.previous=Iepriekšējā
|
||||
issues.next=Nākamā
|
||||
issues.open_title=Atvērta
|
||||
issues.closed_title=Slēgta
|
||||
issues.open_title=Atvērti
|
||||
issues.closed_title=Aizvērti
|
||||
issues.draft_title=Melnraksts
|
||||
issues.num_comments_1=%d piebilde
|
||||
issues.num_comments=%d piebildes
|
||||
|
@ -1652,7 +1656,7 @@ issues.save=Saglabāt
|
|||
issues.label_title=Nosaukums
|
||||
issues.label_description=Apraksts
|
||||
issues.label_color=Krāsa
|
||||
issues.label_exclusive=Ekskluzīvs
|
||||
issues.label_exclusive=Sevišķa
|
||||
issues.label_archive=Arhivēt iezīmi
|
||||
issues.label_archived_filter=Rādīt arhivētās iezīmes
|
||||
issues.label_archive_tooltip=Arhivētās iezīmes pēc noklusējuma netiek iekļautas ieteikumos, kad meklē pēc iezīmes.
|
||||
|
@ -1728,7 +1732,7 @@ issues.error_modifying_due_date=Neizdevās izmainīt izpildes termiņu.
|
|||
issues.error_removing_due_date=Neizdevās noņemt izpildes termiņu.
|
||||
issues.push_commit_1=pievienoja %d iesūtījumu %s
|
||||
issues.push_commits_n=pievienoja %d iesūtījumus %s
|
||||
issues.force_push_codes=`veica uzspiestu aizgādāšanu zarā %[1]s no <a class="%[7]s" href="%[3]s"><code>%[2]s</code></a> to <a class="%[7]s" href="%[5]s"><code>%[4]s</code></a> %[6]s`
|
||||
issues.force_push_codes=`veica uzspiestu aizgādāšanu zarā %[1]s no <a class="%[7]s" href="%[3]s"><code>%[2]s</code></a> uz <a class="%[7]s" href="%[5]s"><code>%[4]s</code></a> %[6]s`
|
||||
issues.force_push_compare=Salīdzināt
|
||||
issues.due_date_form=dd.mm.gggg.
|
||||
issues.due_date_form_add=Pievienot izpildes termiņu
|
||||
|
@ -1868,7 +1872,7 @@ pulls.is_checking=Notiek apvienošanas nesaderību pārbaude. Pēc brīža jām
|
|||
pulls.is_ancestor=Zars jau ir pilnībā iekļauts mērķa zarā. Nav izmaiņu, ko apvienot.
|
||||
pulls.is_empty=Šī zara izmaiņas jau ir mērķa zarā. Šis būs tukšs iesūtījums.
|
||||
pulls.required_status_check_failed=Dažas no nepieciešamajām pārbaudēm bija nesekmīgas.
|
||||
pulls.required_status_check_missing=Trūkst dažu obligāto pārbaužu.
|
||||
pulls.required_status_check_missing=Trūkst dažu nepieciešamo pārbaužu.
|
||||
pulls.required_status_check_administrator=Kā pārvaldītājs joprojām vari iekļaut šo izmaiņu pieprasījumu.
|
||||
pulls.blocked_by_approvals=Šim izmaiņu pieprasījumam vēl nav pietiekami daudz apstiprinājumu. Nodrošināti %d no %d apstiprinājumiem.
|
||||
pulls.blocked_by_rejection=Šim izmaiņu pieprasījumam oficiālais izskatītājs ir pieprasījis labojumus.
|
||||
|
@ -1895,7 +1899,7 @@ pulls.no_merge_wip=Šo izmaiņu pieprasījumu nav iespējams iekļaut, jo tas ir
|
|||
pulls.no_merge_not_ready=Šis izmaiņu pieprasījums nav gatavs apvienošanai, jāpārbauda izskatīšanas stāvoklis un stāvokļa pārbaudes.
|
||||
pulls.no_merge_access=Nav pilnvaru, lai iekļautu šo izmaiņu pieprasījumu.
|
||||
pulls.merge_pull_request=Izveidot apvienošanas iesūtījumu
|
||||
pulls.rebase_merge_pull_request=Pārbāzēt un pārtīt uz priekšu
|
||||
pulls.rebase_merge_pull_request=Pārbāzēt, tad pārlēkt
|
||||
pulls.rebase_merge_commit_pull_request=Pārbāzēt, tad izveidot apvienošanas iesūtījumu
|
||||
pulls.squash_merge_pull_request=Izveidot saspiešanas iesūtījumu
|
||||
pulls.merge_manually=Pašrocīgi apvienots
|
||||
|
@ -1920,7 +1924,7 @@ pulls.status_checks_success=Visas pārbaudes bija sekmīgas
|
|||
pulls.status_checks_warning=Dažas pārbaudes ziņoja brīdinājumus
|
||||
pulls.status_checks_failure=Dažas pārbaudes neizdevās izpildīt
|
||||
pulls.status_checks_error=Dažu pārbaužu izpildes laikā, radās kļūdas
|
||||
pulls.status_checks_requested=Obligāts
|
||||
pulls.status_checks_requested=Nepieciešama
|
||||
pulls.status_checks_details=Papildu informācija
|
||||
pulls.status_checks_hide_all=Paslēpt visas pārbaudes
|
||||
pulls.status_checks_show_all=Parādīt visas pārbaudes
|
||||
|
@ -1963,7 +1967,7 @@ milestones.new=Jauns atskaites punkts
|
|||
milestones.closed=Aizvērts %s
|
||||
milestones.update_ago=Atjaunināts %s
|
||||
milestones.no_due_date=Bez termiņa
|
||||
milestones.open=Atvērta
|
||||
milestones.open=Atvērts
|
||||
milestones.close=Aizvērt
|
||||
milestones.new_subheader=Atskaites punkti var palīdzēt pārvaldīt pieteikumus un sekot to attīstībai.
|
||||
milestones.completeness=Pabeigtni <strong>%d%%</strong>
|
||||
|
@ -2033,7 +2037,7 @@ wiki.last_updated=Pēdējo reizi labota %s
|
|||
wiki.page_name_desc=Jāievada šīs vikivietnes lapas nosaukums. Daži īpašie nosaukumi ir: "Home", "_Sidebar" un "_Footer".
|
||||
wiki.original_git_entry_tooltip=Rādīt sākotnējo Git datni, nevis izmantot draudzīgo saiti.
|
||||
|
||||
activity=Aktivitāte
|
||||
activity=Notikumi
|
||||
activity.period.filter_label=Laika periods:
|
||||
activity.period.daily=1 diena
|
||||
activity.period.halfweekly=3 dienas
|
||||
|
@ -2065,10 +2069,10 @@ activity.title.issues_1=%d pieteikumu
|
|||
activity.title.issues_n=%d pieteikumus
|
||||
activity.title.issues_closed_from=%s aizvērts no %s
|
||||
activity.title.issues_created_by=%s izveidoja %s
|
||||
activity.closed_issue_label=Slēgta
|
||||
activity.closed_issue_label=Aizvēra
|
||||
activity.new_issues_count_1=Jauns pieteikums
|
||||
activity.new_issues_count_n=Jauni pieteikumi
|
||||
activity.new_issue_label=Atvērta
|
||||
activity.new_issue_label=Atvēra
|
||||
activity.title.unresolved_conv_1=%d neatrisināta saruna
|
||||
activity.title.unresolved_conv_n=%d neatrisinātu apspriešanu
|
||||
activity.unresolved_conv_desc=Šie nesen mainītie pieteikumi un izmaiņu pieprasījumi vēl nav atrisināti.
|
||||
|
@ -2085,9 +2089,9 @@ activity.git_stats_pushed_1=aizgādāja
|
|||
activity.git_stats_pushed_n=aizgādāja
|
||||
activity.git_stats_commit_1=%d iesūtījumu
|
||||
activity.git_stats_commit_n=%d iesūtījumus
|
||||
activity.git_stats_push_to_branch=atzarā %s un
|
||||
activity.git_stats_push_to_branch=zarā %s un
|
||||
activity.git_stats_push_to_all_branches=visos zaros.
|
||||
activity.git_stats_on_default_branch=Atzarā %s,
|
||||
activity.git_stats_on_default_branch=Zarā %s,
|
||||
activity.git_stats_file_1=%d datne
|
||||
activity.git_stats_file_n=%d datnes
|
||||
activity.git_stats_files_changed_1=tika izmainīts
|
||||
|
@ -2207,7 +2211,7 @@ settings.convert_notices_1=Šī darbība pārveidos spoguļglabātavu par parast
|
|||
settings.convert_confirm=Pārveidot glabātavu
|
||||
settings.convert_succeed=Spoguļglabātava tika pārveidota par parastu glabātavu.
|
||||
settings.convert_fork=Pārveidot par parastu glabātavu
|
||||
settings.convert_fork_desc=Šo atzarojumu var pārveidot par parastu glabātavu. To nevar atdarīt.
|
||||
settings.convert_fork_desc=Šo atzarojumu var pārveidot par parastu glabātavu. To nevar atsaukt.
|
||||
settings.convert_fork_notices_1=Šī darbība pārveidos atzarojumu par parastu glabātavu, un tā nav atsaucama.
|
||||
settings.convert_fork_confirm=Pārveidot glabātavu
|
||||
settings.convert_fork_succeed=Atzarojums tika pārveidots par parastu glabātavu.
|
||||
|
@ -2406,13 +2410,13 @@ settings.deploy_key_deletion=Noņemt izvietošanas atslēgu
|
|||
settings.deploy_key_deletion_desc=Izvietošanas atslēgas noņemšana atsauks tās piekļuvi šai glabātavai. Turpināt?
|
||||
settings.deploy_key_deletion_success=Izvietošanas atslēga tika noņemta.
|
||||
settings.branches=Zari
|
||||
settings.protected_branch=Zaru aizsardzība
|
||||
settings.protected_branch=Zaru aizsargāšana
|
||||
settings.protected_branch.save_rule=Saglabāt kārtulu
|
||||
settings.protected_branch.delete_rule=Izdzēst kārtulu
|
||||
settings.protected_branch_can_push=Atļaut izmaiņu nosūtīšanu?
|
||||
settings.protected_branch_can_push_yes=Jūs varat nosūtīt izmaiņas
|
||||
settings.protected_branch_can_push_no=Jūs nevarat nosūtīt izmaiņas
|
||||
settings.branch_protection=Zara "<b>%s</b>" aizsardzības kārtulas
|
||||
settings.branch_protection=Zara "<b>%s</b>" aizsargāšanas kārtulas
|
||||
settings.protect_this_branch=Iespējot atzara aizsardzību
|
||||
settings.protect_this_branch_desc=Neļauj atzara dzēšanu, kā arī ierobežo izmaiņu iesūtīšanu un sapludināšanu šajā atzarā.
|
||||
settings.protect_disable_push=Atspējot aizgādāšanu
|
||||
|
@ -2433,7 +2437,7 @@ settings.protect_merge_whitelist_committers_desc=Atļaut tikai noteiktiem lietot
|
|||
settings.protect_merge_whitelist_users=Lietotāji, kuri var veikt apvienošanu
|
||||
settings.protect_merge_whitelist_teams=Komandas, kuras var veikt apvienošanu
|
||||
settings.protect_check_status_contexts=Iespējot stāvokļa pārbaudi
|
||||
settings.protect_status_check_patterns=Stāvokļa pārbaudes paraugi
|
||||
settings.protect_status_check_patterns=Stāvokļa pārbaužu paraugi
|
||||
settings.protect_status_check_patterns_desc=Jāievada paraugi, lai norādītu, kurām stāvokļa pārbaudēm sekmīgi jāizpildās, pirms zari var tikt iekļauti zarā, kas atbilst šai kārtulai. Katrā rindā ir norādāms viens paraugs. Paraugi nevar būt tukši.
|
||||
settings.protect_check_status_contexts_desc=Pirms apvienošanas ir nepieciešama sekmīga stāvokļa pārbaužu izpilde. Kad iespējots, iesūtījumiem vispirms jābūt aizgādātiem citā zarā, tad pēc stāvokļa pārbaužu sekmīgas izpildes iekļautiem vai aizgādātiem tieši zarā, kas atbilst šai kārtulai. Ja nav atbilstošu kontekstu, pēdējam iesūtījumam jābūt sekmīgam neatkarīgi no konteksta.
|
||||
settings.protect_check_status_contexts_list=Stāvokļa pārbaudes, kas šajā glabātavā atrastas pēdējās nedēļas laikā
|
||||
|
@ -2459,11 +2463,11 @@ settings.protect_unprotected_file_patterns=Neaizsargāto datņu paraugs (vairāk
|
|||
settings.protect_unprotected_file_patterns_desc=Neaizsargātās datnes, kuras ir ļauts izmainīt tiešā veidā, apejot aizgādāšanas ierobežojumu, ja lietotājam ir rakstīšanas piekļuve. Vairāki paraugi ir atdalāmi ar semikolu (";"). Paraugu pierakstu skatīt <a href='%[1]s'>%[2]s</a> dokumentācijā. Piemēri: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
|
||||
settings.add_protected_branch=Iespējot aizsargāšanu
|
||||
settings.delete_protected_branch=Atspējot aizsargāšanu
|
||||
settings.update_protect_branch_success=Zara aizsardzības kārtula "%s" tika atjaunināta.
|
||||
settings.remove_protected_branch_success=Zara aizsardzības kārtula "%s" tika noņemta.
|
||||
settings.remove_protected_branch_failed=Zara aizsardzības kārtulas "%s" noņemšana neizdevās.
|
||||
settings.protected_branch_deletion=Izdzēst zara aizsardzību
|
||||
settings.protected_branch_deletion_desc=Zara aizsardzības atspējošana ļauj lietotājiem ar rakstīšanas atļauju aizgādāt izmaiņas uz zaru. Turpināt?
|
||||
settings.update_protect_branch_success=Zara aizsargāšanas kārtula "%s" tika atjaunināta.
|
||||
settings.remove_protected_branch_success=Zara aizsargāšanas kārtula "%s" tika noņemta.
|
||||
settings.remove_protected_branch_failed=Zara aizsargāšanas kārtulas "%s" noņemšana neizdevās.
|
||||
settings.protected_branch_deletion=Izdzēst zara aizsargāšanu
|
||||
settings.protected_branch_deletion_desc=Zara aizsargāšanas atspējošana ļauj lietotājiem ar rakstīšanas atļauju aizgādāt zarā izmaiņas. Turpināt?
|
||||
settings.block_rejected_reviews=Liegt apvienošanu, ja izskatīšana ir beigusies ar noraidīšanu
|
||||
settings.block_rejected_reviews_desc=Apvienošana nebūs iespējama, kad oficiālie izskatītāji ir pieprasījuši izmaiņas, pat ja ir pietiekami daudz apstiprinājumu.
|
||||
settings.block_on_official_review_requests=Liegt apvienošanu, ja ir oficiāli izskatīšanas pieprasījumi
|
||||
|
@ -2479,7 +2483,7 @@ settings.edit_protected_branch=Labot
|
|||
settings.protected_branch_required_rule_name=Jānorāda kārtulas nosaukums
|
||||
settings.protected_branch_duplicate_rule_name=Šai zaru kopai jau pastāv kārtula
|
||||
settings.protected_branch_required_approvals_min=Pieprasīto izskatīšanu skaits nevar būt mazāks par nulli.
|
||||
settings.tags=Tagi
|
||||
settings.tags=Birkas
|
||||
settings.tags.protection=Birku aizsargāšana
|
||||
settings.tags.protection.pattern=Birku paraugs
|
||||
settings.tags.protection.allowed=Atļauts
|
||||
|
@ -2601,7 +2605,7 @@ diff.hide_file_tree=Paslēpt datņu koku
|
|||
releases.desc=Projekta versiju un lejupielāžu pārraudzīšana.
|
||||
release.releases=Laidieni
|
||||
release.detail=Informācija par laidienu
|
||||
release.tags=Tagi
|
||||
release.tags=Birkas
|
||||
release.new_release=Jauns laidiens
|
||||
release.draft=Melnraksts
|
||||
release.prerelease=Pirmsizlaide
|
||||
|
@ -2843,7 +2847,7 @@ pulls.fast_forward_only_merge_pull_request = Tikai pārlēkšana
|
|||
settings.federation_apapiurl = Šīs glabātavas federācijas URL. Tas ir jāievieto starpliktuvē un jāielīmē citas glabātavas federācijas iestatījumos kā sekojošas glabātavas URL.
|
||||
settings.federation_following_repos = Sekojošu glabātavu URL. Atdalīti ar ";", bez atstarpes.
|
||||
settings.add_webhook.invalid_path = Ceļš nedrīkst saturēt daļu, kas ir "." vai "..", vai tukša virkne. Tas nevar sākties vai beigties ar slīpsvītru.
|
||||
settings.protect_new_rule = Izveidot jaunu zaru aizsardzības kārtulu
|
||||
settings.protect_new_rule = Izveidot jaunu zaru aizsargāšanas kārtulu
|
||||
settings.sourcehut_builds.secrets_helper = Dot darbam piekļuvi būvēšanas noslēpumiem (nepieciešams nodrošināt SECRETS:RO)
|
||||
release.asset_external_url = Ārējais URL
|
||||
release.add_external_asset = Pievienot ārēju līdzekli
|
||||
|
@ -2866,6 +2870,8 @@ issues.reaction.alt_add = Pievienot piebildei %[1] reakcijas.
|
|||
issues.context.menu = Piebildes izvēlne
|
||||
release.summary_card_alt = Laidiena "%s" apkopojuma kartīte glabātavā %s
|
||||
|
||||
editor.commit_email = Iesūtījuma e-pasta adrese
|
||||
|
||||
[graphs]
|
||||
component_loading=Ielādē %s...
|
||||
component_loading_failed=Nevarēja ielādēt %s
|
||||
|
@ -3039,7 +3045,7 @@ dashboard.task.unknown=Nezināms uzdevums: %[1]s
|
|||
dashboard.cron.started=Uzsākts Cron: %[1]s
|
||||
dashboard.cron.process=Cron: %[1]s
|
||||
dashboard.cron.cancelled=Cron: %[1]s atcelts: %[3]s
|
||||
dashboard.cron.error=Kļūda Cron: %s: %[3]s
|
||||
dashboard.cron.error=Cron kļūda: %s: %[3]s
|
||||
dashboard.cron.finished=Cron: %[1]s pabeigts
|
||||
dashboard.delete_inactive_accounts=Izdzēst visus neaktivētos kontus
|
||||
dashboard.delete_inactive_accounts.started=Ir uzsākts visu neaktivēto kontu izdzēšanas uzdevums.
|
||||
|
@ -3113,7 +3119,7 @@ users.activated=Aktivēts
|
|||
users.admin=Pārvaldītājs
|
||||
users.restricted=Ierobežots
|
||||
users.reserved=Aizņemts
|
||||
users.bot=Bots
|
||||
users.bot=Robotprogrammatūra
|
||||
users.remote=Attāls
|
||||
users.2fa=2FA
|
||||
users.repos=Glabātavas
|
||||
|
@ -3164,7 +3170,7 @@ users.list_status_filter.not_2fa_enabled=2FA atspējota
|
|||
users.details=Lietotāja informācija
|
||||
|
||||
emails.email_manage_panel=Pārvaldīt lietotāju e-pasta adreses
|
||||
emails.primary=Primārais
|
||||
emails.primary=Galvenā
|
||||
emails.activated=Aktivēta
|
||||
emails.filter_sort.email=E-pasts
|
||||
emails.filter_sort.email_reverse=E-pasta adrese (pretēji alfabētiski)
|
||||
|
@ -3237,7 +3243,7 @@ auths.bind_password=Saistīšanas parole
|
|||
auths.user_base=Lietotāju meklēšanas pamatnosacījumi
|
||||
auths.user_dn=Lietotāja DN
|
||||
auths.attribute_username=Lietotājvārda atribūts
|
||||
auths.attribute_username_placeholder=Atstāt tukšu, lai izmantotu Gitea ievadīto lietotājvārdu.
|
||||
auths.attribute_username_placeholder=Atstāt tukšu, lai izmantotu Forgejo ievadīto lietotājvārdu.
|
||||
auths.attribute_name=Vārda atribūts
|
||||
auths.attribute_surname=Uzvārda atribūts
|
||||
auths.attribute_mail=E-pasta atribūts
|
||||
|
@ -3290,7 +3296,7 @@ auths.oauth2_required_claim_name=Nepieciešamās prasības nosaukums
|
|||
auths.oauth2_required_claim_name_helper=Šis nosaukums ir iestatāms, lai ierobežotu pieteikšanos no šī avota lietotājiem, kuriem ir prasība ar šādu nosaukumu
|
||||
auths.oauth2_required_claim_value=Nepieciešamās prasības vērtība
|
||||
auths.oauth2_required_claim_value_helper=Šī vērtība ir iestatāma, lai ierobežotu pieteikšanos no šī avota lietotājiem, kuriem ir prasība ar šādu nosaukumu un vērtību
|
||||
auths.oauth2_group_claim_name=Prasības nosaukums, kas nodrošina grupu nosaukumus šim avotam. (Neobligāts)
|
||||
auths.oauth2_group_claim_name=Prasības nosaukums, kas šim avotam nodrošina grupu nosaukumus. (Pēc izvēles)
|
||||
auths.oauth2_admin_group=Kopas prasības vērtība pārvaldītājiem. (Izvēles - nepieciešams augstāk esošais prasības nosaukums)
|
||||
auths.oauth2_restricted_group=Grupas prasības vērtība ierobežotajiem lietotājiem. (Izvēles - nepieciešams augstāk esošais prasības nosaukums)
|
||||
auths.oauth2_map_group_to_team=Sasaistīt pieprasītās kopas ar apvienības komandām. (Izvēles - nepieciešams augstāk esošais prasības nosaukums)
|
||||
|
@ -3308,7 +3314,7 @@ auths.sspi_default_language=Lietotāju noklusējuma valoda
|
|||
auths.sspi_default_language_helper=Noklusējuma valoda lietotājiem, kurus automātiski izveido SSPI autentificēšanās veids. Atstāt tukšu, ja ir vēlams, lai valoda tiktu noteikta automātiski.
|
||||
auths.tips=Padomi
|
||||
auths.tips.oauth2.general=OAuth2 autentificēšanās
|
||||
auths.tips.oauth2.general.tip=Kad tiek reģistrēta jauna OAuth2 autentifikācija, atzvanīšanas/pārvirzīšanas URL vajadzētu būt:
|
||||
auths.tips.oauth2.general.tip=Kad tiek reģistrēta jauna OAuth2 autentificēšana, atzvanīšanas/pārvirzīšanas URL vajadzētu būt:
|
||||
auths.tip.oauth2_provider=OAuth2 nodrošinātājs
|
||||
auths.tip.bitbucket=Jāizveido jauns OAuth patērētājs %s un jāpievieno atļauja "Account" - "Read"
|
||||
auths.tip.nextcloud=Reģistrēt jaunu OAuth patērētāju savā serverī var izvēlnē "Iestatījumi -> Drošība -> OAuth 2.0 klients"
|
||||
|
@ -3320,7 +3326,7 @@ auths.tip.google_plus=OAuth2 klienta piekļuves dati ir iegūstami Google API ko
|
|||
auths.tip.openid_connect=Jāizmanto OpenID savienošanās atklāšanas URL (<server>/.well-known/openid-configuration), lai norādītu galapunktus
|
||||
auths.tip.twitter=Jādodas uz %s, jāizveido lietotne un jānodrošina, ka iespēja "Allow this application to be used to Sign in with Twitter" ir iespējota
|
||||
auths.tip.discord=Jāizveido jauna lietotne %s
|
||||
auths.tip.gitea=Pievienot jaunu OAuth2 lietojumprogrammu. Dokumentācija ir pieejama %s
|
||||
auths.tip.gitea=Pievienot jaunu OAuth2 lietotni. Norādes ir atrodamas %s
|
||||
auths.tip.yandex=%s jāizveido jauna lietotne. Sadaļā "Yandex.Passport API" jāatlasa šīs atļaujas: "Access to email address", "Access to user avatar" un "Access to username, first name and surname, gender"
|
||||
auths.tip.mastodon=Jāievada pielāgota Mastodon servera URL, ar kuru vēlies autentificēties (vai jāizmanto noklusējuma)
|
||||
auths.edit=Labot autentificēšanas avotu
|
||||
|
@ -3347,7 +3353,7 @@ config.custom_file_root_path=Pielāgoto datņu pamata ceļš
|
|||
config.domain=Servera domēna vārds
|
||||
config.offline_mode=Bezsaistes režīms
|
||||
config.disable_router_log=Atspējot maršrutētāja žurnālu
|
||||
config.run_user=Lietotājs, ar kuru palaists
|
||||
config.run_user=Lietotājs, ar kuru palaist
|
||||
config.run_mode=Palaišanas veids
|
||||
config.git_version=Git versija
|
||||
config.app_data_path=Lietotnes datu ceļš
|
||||
|
@ -3605,7 +3611,7 @@ future=nākotnē
|
|||
1y=1 gada
|
||||
seconds=%d sekundēm
|
||||
minutes=%d minūtēm
|
||||
hours=%d stundām
|
||||
hours=%d stundās
|
||||
days=%d dienas
|
||||
weeks=%d nedēļām
|
||||
months=%d mēnešiem
|
||||
|
@ -3655,7 +3661,7 @@ desc=Pārvaldīt glabātavas pakotnes.
|
|||
empty=Pašlaik šeit nav nevienas pakotnes.
|
||||
empty.documentation=Papildu informācija par pakotņu reģistru ir pieejama <a target="_blank" rel="noopener noreferrer" href="%s">dokumentācijā</a>.
|
||||
empty.repo=Šeit netiek parādīta augšupielādēta pakotne? Jādodas uz <a href="%[1]s">pakotņu iestatījumiem</a> un jāsasaista tā ar šo glabātavu.
|
||||
registry.documentation=Vairāk informācija par %s reģistru ir pieejama <a target="_blank" rel="noopener noreferrer" href="%s">dokumentācijā</a>.
|
||||
registry.documentation=Vairāk informācijas par %s reģistru ir <a target="_blank" rel="noopener noreferrer" href="%s">dokumentācijā</a>.
|
||||
filter.type=Veids
|
||||
filter.type.all=Visas
|
||||
filter.no_result=Pēc norādītajiem kritērijiem nekas netika atrasts.
|
||||
|
@ -3663,7 +3669,7 @@ filter.container.tagged=Ar atzīmi
|
|||
filter.container.untagged=Bez atzīmes
|
||||
published_by=Publicēja <a href="%[2]s">%[3]s</a> %[1]s
|
||||
published_by_in=<a href="%[2]s">%[3]s</a> laida klajā %[1]s <a href="%[4]s"><strong>%[5]s</strong></a>
|
||||
installation=Instalācija
|
||||
installation=Uzstādīšana
|
||||
about=Par šo pakotni
|
||||
requirements=Prasības
|
||||
dependencies=Atkarības
|
||||
|
@ -3696,7 +3702,7 @@ composer.install=Lai uzstādīt pakotni ar Composer, jāizpilda šī komanda:
|
|||
composer.dependencies=Atkarības
|
||||
composer.dependencies.development=Izstrādes atkarības
|
||||
conan.details.repository=Glabātava
|
||||
conan.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
conan.registry=Šis reģistra uzstādīšana komandrindā:
|
||||
conan.install=Lai uzstādītu pakotni ar Conan, jāizpilda šī komanda:
|
||||
conda.registry=Izveidot šo reģistru kā Conda glabātavu datnē <code>.condarc</code>:
|
||||
conda.install=Lai uzstādītu pakotni ar Conda, jāizpilda šī komanda:
|
||||
|
@ -3711,7 +3717,7 @@ container.labels.key=Atslēga
|
|||
container.labels.value=Vērtība
|
||||
cran.registry=Iestatīt šo reģistru datnē <code>Rprofile.site</code>:
|
||||
cran.install=Lai uzstādītu pakotni, ir jāizpilda šī komanda:
|
||||
debian.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
debian.registry=Šis reģistra uzstādīšana komandrindā:
|
||||
debian.registry.info=No zemāk esošā saraksta jāizvēlas $distribution un $component.
|
||||
debian.install=Lai uzstādītu pakotni, ir jāizpilda šī komanda:
|
||||
debian.repository=Glabātavas informācija
|
||||
|
@ -3719,14 +3725,14 @@ debian.repository.distributions=Distribūcijas
|
|||
debian.repository.components=Komponentes
|
||||
debian.repository.architectures=Arhitektūras
|
||||
generic.download=Lejupielādēt pakotni, izmantojot, komandrindu:
|
||||
go.install=Instalēt pakotni no komandrindas:
|
||||
helm.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
helm.install=Lai instalētu pakotni, nepieciešams izpildīt sekojošu komandu:
|
||||
go.install=Uzstādīt pakotni komandrindā:
|
||||
helm.registry=Šī reģistra uzstādīšana komandrindā:
|
||||
helm.install=Lai uzstādītu pakotni, ir jāizpilda šī komanda:
|
||||
maven.registry=Iestatīt šo reģistru sava projekta datnē <code>pom.xml</code>:
|
||||
maven.install=Lai izmantotu pakotni, datnes <code>pom.xml</code> sadaļā <code>dependencies</code> jāievieto šīs rindas:
|
||||
maven.install2=Jāizpilda komandrindā:
|
||||
maven.download=Jāizpilda komandrindā, lai lejupielādētu šo atkarību:
|
||||
nuget.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
nuget.registry=Šī reģistra uzstādīšana komandrindā:
|
||||
nuget.install=Lai uzstādītu pakotni ar NuGet, jāizpilda šī komanda:
|
||||
nuget.dependency.framework=Mērķa ietvars
|
||||
npm.registry=Iestatīt šo reģistru sava projekta datnē <code>.npmrc</code>:
|
||||
|
@ -3740,7 +3746,7 @@ npm.details.tag=Tags
|
|||
pub.install=Lai uzstādītu pakotni ar Dart, jāizpilda šī komanda:
|
||||
pypi.requires=Nepieciešams Python
|
||||
pypi.install=Lai uzstādītu pakotni ar pip, jāizpilda šī komanda:
|
||||
rpm.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
rpm.registry=Šī reģistra uzstādīšana komandrindā:
|
||||
rpm.distros.redhat=uz RedHat balstītās operētājsistēmās
|
||||
rpm.distros.suse=uz SUSE balstītās operētājsistēmās
|
||||
rpm.install=Lai uzstādītu pakotni, ir jāizpilda šī komanda:
|
||||
|
@ -3752,7 +3758,7 @@ rubygems.dependencies.runtime=Izpildlaika atkarības
|
|||
rubygems.dependencies.development=Izstrādes atkarības
|
||||
rubygems.required.ruby=Nepieciešamā Ruby versija
|
||||
rubygems.required.rubygems=Nepieciešamā RubyGem versija
|
||||
swift.registry=Šis reģistrs ir uzstādāms komandrindā:
|
||||
swift.registry=Šī reģistra uzstādīšana komandrindā:
|
||||
swift.install=Pakotne jāpievieno datnē <code>Package.swift</code>:
|
||||
swift.install2=vai jāpievieno tā Gemfile:
|
||||
vagrant.install=Lai pievienotu Vagrant kasti, jāizpilda šī komanda:
|
||||
|
@ -3762,7 +3768,7 @@ settings.link.select=Atlasīt glabātavu
|
|||
settings.link.button=Atjaunināt glabātavas saiti
|
||||
settings.link.success=Glabātavas saite tika sekmīgi atjaunināta.
|
||||
settings.link.error=Neizdevās atjaunināt glabātavas saiti.
|
||||
settings.delete=Dzēst pakotni
|
||||
settings.delete=Izdzēst pakotni
|
||||
settings.delete.description=Pakotne tiks neatgriezeniski izdzēsta.
|
||||
settings.delete.notice=Tiks izdzēsta pakotne %s (%s). Šī darbība ir neatgriezeniska. Tiešām turpināt?
|
||||
settings.delete.success=Pakotne tika izdzēsta.
|
||||
|
@ -3888,14 +3894,14 @@ runners.reset_registration_token=Atiestatīt reģistrācijas pilnvaru
|
|||
runners.reset_registration_token_success=Izpildītāja reģistrācijas pilnvara tika sekmīgi atiestatīta
|
||||
|
||||
runs.all_workflows=Visas darbplūsmas
|
||||
runs.commit=Iesūtījums
|
||||
runs.commit=Iesūtījumu
|
||||
runs.scheduled=Ieplānots
|
||||
runs.pushed_by=aizgādāja
|
||||
runs.invalid_workflow_helper=Darbplūsmas konfigurācijas datne ir nederīga. Lūgums pārbaudīt konfigurācijas datni: %s
|
||||
runs.no_matching_online_runner_helper=Nav pieejami izpildītāji, kas atbilstu šai iezīmei: %s
|
||||
runs.actor=Aktors
|
||||
runs.no_matching_online_runner_helper=Nav tiešsaistē esošu izpildītāju, kas atbilstu iezīmei: %s
|
||||
runs.actor=Izraisītājs
|
||||
runs.status=Statuss
|
||||
runs.actors_no_select=Visi aktori
|
||||
runs.actors_no_select=Visi izraisītāji
|
||||
runs.status_no_select=Visi stāvokļi
|
||||
runs.no_results=Netika atrasts nekas atbilstošs.
|
||||
runs.no_workflows=Vēl nav nevienas darbplūsmas.
|
||||
|
@ -3915,7 +3921,7 @@ variables.management=Pārvaldīt mainīgos
|
|||
variables.creation=Pievienot mainīgo
|
||||
variables.none=Vēl nav neviena mainīgā.
|
||||
variables.deletion=Noņemt mainīgo
|
||||
variables.deletion.description=Mainīgā noņemšana ir neatgriezeniska un nav atsaucama. Vai turpināt?
|
||||
variables.deletion.description=Mainīgā noņemšana ir neatgriezeniska un nav atsaucama. Turpināt?
|
||||
variables.description=Mainīgie tiks padoti noteiktām darbībām, un citādāk tos nevar nolasīt.
|
||||
variables.id_not_exist=Mainīgais ar identifikatoru %d nepastāv.
|
||||
variables.edit=Labot mainīgo
|
||||
|
@ -3929,7 +3935,7 @@ variables.update.success=Mainīgais tika labots.
|
|||
runs.workflow = Darbplūsma
|
||||
runs.no_job_without_needs = Darbplūsmā ir jābūt vismaz vienam darbam bez atkarībām.
|
||||
runs.no_job = Darbplūsmā ir jābūt vismaz vienam darbam
|
||||
runs.no_workflows.help_write_access = Nav skaidrs, kā sākt izmantot Forgejo Actions? Jāieskatās <a target="_blank" rel="noopener noreferrer" href="%s">ātro ievadu lietotāja dokumentācijā</a>, lai uzrakstītu savu pirmo darbplūsmu, tad <a target="_blank" rel="noopener noreferrer" href="%s">jāiestata Forgejo izpildītājs</a>, lai izpildītu savus darbus.
|
||||
runs.no_workflows.help_write_access = Nav skaidrs, kā sākt izmantot Forgejo Actions? Jāieskatās <a target="_blank" rel="noopener noreferrer" href="%s">ātrajā ievadā lietotāja dokumentācijā</a>, lai uzrakstītu savu pirmo darbplūsmu, tad <a target="_blank" rel="noopener noreferrer" href="%s">jāiestata Forgejo izpildītājs</a>, lai izpildītu savus darbus.
|
||||
runs.no_workflows.help_no_write_access = Lai uzzinātu par Forgejo Acties, jāieskatās <a target="_blank" rel="noopener noreferrer" href="%s">dokumentācijā</a>.
|
||||
runs.expire_log_message = Žurnāli tika iztīrīti, jo tie bija pārāk veci.
|
||||
workflow.dispatch.trigger_found = Šai darbplūsmai ir <c>workflow_dispatch</c> notikuma izraisītājs.
|
||||
|
@ -4023,4 +4029,4 @@ filepreview.lines = %[1]d. līdz %[2]d. rinda %[3]s
|
|||
filepreview.truncated = Priekšskatījums tika saīsināts
|
||||
|
||||
[translation_meta]
|
||||
test = Šī ir pārbaudes virkne. Tā netiek attēlota Forgejo saskarnē, bet tiek izmantota pārbaudes nolūkiem. Droši var ievadīt "ok", lai ietaupītu laiku (vai kādu jautru faktu pēc izvēles), lai sasniegtu to saldo 100% pabeigšanas atzīmi.
|
||||
test = Šī ir pārbaudes virkne. Tā netiek attēlota Forgejo saskarnē, bet tiek izmantota pārbaudes nolūkiem. Droši var ievadīt "ok", lai ietaupītu laiku (vai kādu jautru faktu pēc izvēles), lai sasniegtu to saldo 100% pabeigšanas atzīmi.
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
[common]
|
||||
enable_javascript = Denne nettsiden behøver JavaScript.
|
||||
enable_javascript = Denne nettsiden krever JavaScript.
|
||||
toc = Innholdsfortegnelse
|
||||
licenses = Lisenser
|
||||
return_to_forgejo = Tilbake til Forgejo
|
||||
|
@ -128,6 +128,14 @@ webauthn_error_unable_to_process = Tjeneren kunne ikke behandle forespørselen d
|
|||
webauthn_error_empty = Du må gi nøkkelen et navn.
|
||||
copy_path = Kopier sti
|
||||
|
||||
toggle_menu = Åpne/lukke meny
|
||||
twofa_scratch = To-faktor skrapekode
|
||||
webauthn_press_button = Vennligst trykk på knappen på sikkerhetsnøkkelen…
|
||||
webauthn_error_duplicated = Sikkerhetsnøkkelen er ikke tillatt for denne forespørselen. Vennligst sørg for at nøkkelen ikke allerede er registrert.
|
||||
webauthn_error_timeout = Et tidsavbrudd oppsto før nøkkelen din kunne leses. Vennligst last inn siden på nytt og prøv igjen.
|
||||
new_fork = Ny fork av repository
|
||||
collaborative = Samarbeidende
|
||||
|
||||
[search]
|
||||
search = Søk...
|
||||
type_tooltip = Søketype
|
||||
|
|
|
@ -511,6 +511,8 @@ PayloadUrl = Ladung-URL
|
|||
visit_rate_limit = Frömd-Togriep hett Togrieps-Begrenz troffen.
|
||||
2fa_auth_required = Frömd-Togriep bruukt Twee-Faktooren-Anmellen.
|
||||
|
||||
email_domain_is_not_allowed = De Domään vun de Bruker-E-Mail-Adress <b>%s</b> passt nich mit EMAIL_DOMAIN_ALLOWLIST of EMAIL_DOMAIN_BLOCKLIST. Wees wiss, dat du de E-Mail-Adress recht sett hest.
|
||||
|
||||
[user]
|
||||
change_avatar = Änner dien Kontobill …
|
||||
joined_on = Am %s bitreden
|
||||
|
@ -2566,6 +2568,8 @@ issues.reaction.alt_remove = De %[1]s-Reageren vun de Kommentaar wegdoon.
|
|||
issues.context.menu = Kommentaar-Menü
|
||||
release.summary_card_alt = Tosamenfatens-Kaart vun eenem Publizeren mit de Naam »%s« im Repositorium %s
|
||||
|
||||
editor.commit_email = Kommitterens-E-Mail
|
||||
|
||||
[repo.permissions]
|
||||
code.read = <b>Lesen:</b> De Quelltext vun deesem Repositorium ankieken un klonen.
|
||||
code.write = <b>Schrieven:</b> Schuuv to de Repositorium un maak Twiegen un Markens.
|
||||
|
|
|
@ -234,7 +234,7 @@ install_desc = Draai gewoon <a target="_blank" rel="noopener noreferrer" href="%
|
|||
[install]
|
||||
install=Installatie
|
||||
title=Initiële configuratie
|
||||
docker_helper=Als je gitea draait in Docker, Lees eerst de <a target="_blank" rel="noopener noreferrer" href="%s">documentatie</a> voordat je een instelling aanpast.
|
||||
docker_helper=Als je Forgejo draait in Docker, Lees eerst de <a target="_blank" rel="noopener noreferrer" href="%s">documentatie</a> voordat je een instelling aanpast.
|
||||
require_db_desc=Forgejo vereist MySQL, PostgreSQL, SQLite3 of TiDB (MySQL protocol).
|
||||
db_title=Database-instellingen
|
||||
db_type=Database-type
|
||||
|
@ -683,6 +683,8 @@ AccessToken = Toegangstoken
|
|||
Pronouns = Voornaamwoorden
|
||||
|
||||
|
||||
email_domain_is_not_allowed = Het domein van het e-mailadres van de gebruiker <b>%s</b> is in strijd met EMAIL_DOMAIN_ALLOWLIST of EMAIL_DOMAIN_BLOCKLIST. Controleer of u het e-mailadres correct hebt ingesteld.
|
||||
|
||||
[user]
|
||||
change_avatar=Wijzig je profielfoto…
|
||||
repositories=repositories
|
||||
|
@ -1205,7 +1207,7 @@ migrate.migrating_failed_no_addr=Migratie is mislukt.
|
|||
migrate.github.description=Migreer gegevens van github.com of GitHub Enterprise server.
|
||||
migrate.git.description=Migreer een repositorie van elke Git service.
|
||||
migrate.gitlab.description=Gegevens migreren van gitlab.com of andere GitLab-instanties.
|
||||
migrate.gitea.description=Gegevens overzetten van gitea.com of andere Gitea/Forgejo instanties.
|
||||
migrate.gitea.description=Gegevens overzetten van gitea.com of andere Gitea instanties.
|
||||
migrate.gogs.description=Gegevens overzetten van notabug.org of andere Gogs instanties.
|
||||
migrate.onedev.description=Gegevens overzetten van code.onedev.io of andere OneDev instanties.
|
||||
migrate.codebase.description=Gegevens migreren van codebasehq.com.
|
||||
|
@ -1283,6 +1285,7 @@ view_git_blame=Bekijk git blame
|
|||
video_not_supported_in_browser=Uw browser ondersteunt de HTML5 "video" element niet.
|
||||
audio_not_supported_in_browser=Uw browser ondersteunt de HTML5 "audio" element niet.
|
||||
stored_lfs=Opgeslagen met Git LFS
|
||||
stored_annex=Opgeslagen met Git Annex
|
||||
symbolic_link=Symbolische link
|
||||
commit_graph=Commit grafiek
|
||||
commit_graph.select=Selecteer branches
|
||||
|
@ -1301,6 +1304,7 @@ editor.upload_file=Upload bestand
|
|||
editor.edit_file=Bewerk bestand
|
||||
editor.preview_changes=Voorbeeld tonen
|
||||
editor.cannot_edit_lfs_files=LFS-bestanden kunnen niet worden bewerkt in de webinterface.
|
||||
editor.cannot_edit_annex_files=Annex-bestanden kunnen niet worden bewerkt in de webinterface.
|
||||
editor.cannot_edit_non_text_files=Binaire bestanden kunnen niet worden bewerkt in de webinterface.
|
||||
editor.edit_this_file=Bewerk bestand
|
||||
editor.this_file_locked=Bestand is vergrendeld
|
||||
|
@ -2868,6 +2872,8 @@ issues.reaction.alt_add = Voeg %[1]s reactie toe aan commentaar.
|
|||
issues.context.menu = Commentaar menu
|
||||
release.summary_card_alt = Samenvattende kaart van een release met de titel "%s" in repository %s
|
||||
|
||||
editor.commit_email = Commit e-mail
|
||||
|
||||
[graphs]
|
||||
component_loading_info = Dit kan even duren…
|
||||
component_failed_to_load = Er is een onverwachte fout opgetreden.
|
||||
|
@ -3085,7 +3091,7 @@ dashboard.gc_times=GC verwerkingen
|
|||
dashboard.delete_old_system_notices=Verwijder alle oude systeemmededelingen uit de database
|
||||
|
||||
users.user_manage_panel=Gebruikersaccounts beheren
|
||||
users.new_account=Nieuw account aanmaken
|
||||
users.new_account=Gebruikersaccount aanmaken
|
||||
users.name=Gebruikersnaam
|
||||
users.full_name=Volledige naam
|
||||
users.activated=Geactiveerd
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -682,6 +682,8 @@ Description = Descrição
|
|||
unset_password = O usuário de login não definiu a senha.
|
||||
|
||||
|
||||
email_domain_is_not_allowed = O domínio do endereço de email da conta <b>%s</b> está em conflito com EMAIL_DOMAIN_ALLOWLIST ou EMAIL_DOMAIN_BLOCKLIST. Certifique-se de que você colocou o endereço de email correto.
|
||||
|
||||
[user]
|
||||
change_avatar=Altere seu avatar...
|
||||
joined_on=Inscreveu-se em %s
|
||||
|
@ -1220,7 +1222,7 @@ migrate.migrating_failed_no_addr=A migração falhou.
|
|||
migrate.github.description=Migre dados do servidor github.com ou GitHub Enterprise.
|
||||
migrate.git.description=Migrar um repositório somente de qualquer serviço Git.
|
||||
migrate.gitlab.description=Migrar dados de gitlab.com ou de outras instâncias do GitLab.
|
||||
migrate.gitea.description=Migrar dados de gitea.com ou de outras instâncias do Gitea/Forgejo.
|
||||
migrate.gitea.description=Migrar dados de gitea.com ou de outras instâncias do Gitea.
|
||||
migrate.gogs.description=Migrar dados de notabug.org ou de outras instâncias do Gogs.
|
||||
migrate.onedev.description=Migrar dados de code.onedev.io ou de outras instâncias do OneDev.
|
||||
migrate.codebase.description=Migrar dados de codebasehq.com.
|
||||
|
@ -1308,6 +1310,7 @@ view_git_blame=Ver git blame
|
|||
video_not_supported_in_browser=Seu navegador não tem suporte para a tag "video" do HTML5.
|
||||
audio_not_supported_in_browser=Seu navegador não tem suporte para a tag "audio" do HTML5.
|
||||
stored_lfs=Armazenado com Git LFS
|
||||
stored_annex=Armazenado com Git Annex
|
||||
symbolic_link=Link simbólico
|
||||
executable_file=Arquivo executável
|
||||
commit_graph=Gráfico de commits
|
||||
|
@ -1331,6 +1334,7 @@ editor.upload_file=Enviar arquivo
|
|||
editor.edit_file=Editar arquivo
|
||||
editor.preview_changes=Pré-visualizar alterações
|
||||
editor.cannot_edit_lfs_files=Arquivos LFS não podem ser editados na interface web.
|
||||
editor.cannot_edit_annex_files=Arquivos Annex não podem ser editados na interface web.
|
||||
editor.cannot_edit_non_text_files=Arquivos binários não podem ser editados na interface web.
|
||||
editor.edit_this_file=Editar arquivo
|
||||
editor.this_file_locked=Arquivo está bloqueado
|
||||
|
@ -2620,7 +2624,7 @@ tag.create_tag_from=`Criar nova tag a partir de "%s"`
|
|||
|
||||
tag.create_success=Tag "%s" criada.
|
||||
|
||||
topic.manage_topics=Gerenciar Tópicos
|
||||
topic.manage_topics=Gerenciar tópicos
|
||||
topic.done=Feito
|
||||
topic.count_prompt=Você não pode selecionar mais de 25 tópicos
|
||||
|
||||
|
@ -2867,6 +2871,8 @@ issues.reaction.alt_add = Adicionar reação %[1]s ao comentário.
|
|||
issues.context.menu = Menu de comentário
|
||||
release.summary_card_alt = Cartão de resumo de um release intitulado "%s" no repositório %s
|
||||
|
||||
editor.commit_email = Email de commit
|
||||
|
||||
[graphs]
|
||||
component_loading = Carregando %s...
|
||||
component_loading_failed = Não foi possível carregar o(a) %s
|
||||
|
|
|
@ -682,6 +682,8 @@ FullName = Nome completo
|
|||
Description = Descrição
|
||||
Pronouns = Pronomes
|
||||
|
||||
email_domain_is_not_allowed = O domínio do endereço de email <b>%s</b> do utilizador entra em conflito com EMAIL_DOMAIN_ALLOWLIST ou EMAIL_DOMAIN_BLOCKLIST. Certifique-se de que definiu corretamente o endereço de email.
|
||||
|
||||
[user]
|
||||
change_avatar=Mude o seu avatar…
|
||||
joined_on=Inscreveu-se em %s
|
||||
|
@ -1231,7 +1233,7 @@ migrate.migrating_failed_no_addr=A migração falhou.
|
|||
migrate.github.description=Migrar dados do github.com ou do GitHub Enterprise server.
|
||||
migrate.git.description=Migrar um repositório somente de qualquer serviço Git.
|
||||
migrate.gitlab.description=Migrar dados de gitlab.com ou de outras instâncias do GitLab.
|
||||
migrate.gitea.description=Migrar dados de gitea.com ou de outras instâncias do Gitea/Forgejo.
|
||||
migrate.gitea.description=Migrar dados de gitea.com ou de outras instâncias do Gitea.
|
||||
migrate.gogs.description=Migrar dados de notabug.org ou de outras instâncias do Gogs.
|
||||
migrate.onedev.description=Migrar dados de code.onedev.io ou de outras instâncias do OneDev.
|
||||
migrate.codebase.description=Migrar dados de codebasehq.com.
|
||||
|
@ -1319,6 +1321,7 @@ view_git_blame=Ver git blame
|
|||
video_not_supported_in_browser=O seu navegador não suporta a etiqueta "video" do HTML5.
|
||||
audio_not_supported_in_browser=O seu navegador não suporta a etiqueta "audio" do HTML5.
|
||||
stored_lfs=Armazenado com Git LFS
|
||||
stored_annex=Armazenado com Git Annex
|
||||
symbolic_link=Ligação simbólica
|
||||
executable_file=Ficheiro executável
|
||||
vendored=Externo
|
||||
|
@ -1344,6 +1347,7 @@ editor.upload_file=Carregar ficheiro
|
|||
editor.edit_file=Editar ficheiro
|
||||
editor.preview_changes=Pré-visualizar modificações
|
||||
editor.cannot_edit_lfs_files=Ficheiros LFS não podem ser editados na interface web.
|
||||
editor.cannot_edit_annex_files=Ficheiros Annex não podem ser editados na interface web.
|
||||
editor.cannot_edit_non_text_files=Ficheiros binários não podem ser editados na interface da web.
|
||||
editor.edit_this_file=Editar ficheiro
|
||||
editor.this_file_locked=Ficheiro bloqueado
|
||||
|
@ -2868,6 +2872,8 @@ pulls.sign_in_require = <a href="%s">Inicie sessão</a> para criar um novo pedid
|
|||
settings.default_update_style_desc = Estilo de atualização predefinido utilizado para atualizar pedidos de integração que estão atrasados em relação ao ramo base.
|
||||
release.summary_card_alt = Cartão de resumo de um lançamento com o título "%s" no repositório %s
|
||||
|
||||
editor.commit_email = Endereço de email do cometimento
|
||||
|
||||
[graphs]
|
||||
component_loading=A carregar %s...
|
||||
component_loading_failed=Não foi possível carregar %s
|
||||
|
@ -3535,7 +3541,7 @@ notices.delete_success=As notificações do sistema foram eliminadas.
|
|||
|
||||
self_check.no_problem_found=Nenhum problema encontrado até agora.
|
||||
self_check.database_collation_mismatch=Supor que a base de dados usa a colação: %s
|
||||
self_check.database_collation_case_insensitive=A base de dados está a usar a colação %s, que é insensível à diferença entre maiúsculas e minúsculas. Embora o Gitea possa trabalhar com ela, pode haver alguns casos raros que não funcionem como esperado.
|
||||
self_check.database_collation_case_insensitive=A base de dados está a usar a colação %s, que é insensível à diferença entre maiúsculas e minúsculas. Embora o Forgejo possa trabalhar com ela, pode haver alguns casos raros que não funcionem como esperado.
|
||||
self_check.database_inconsistent_collation_columns=A base de dados está a usar a colação %s, mas estas colunas estão a usar colações diferentes. Isso poderá causar alguns problemas inesperados.
|
||||
self_check.database_fix_mysql=Para utilizadores do MySQL/MariaDB, pode usar o comando "forgejo doctor convert" para resolver os problemas de colação. Também pode resolver o problema com comandos SQL "ALTER ... COLLATE ..." aplicados manualmente.
|
||||
config_summary = Resumo
|
||||
|
|
|
@ -341,7 +341,7 @@ password_algorithm_helper=Задайте алгоритм хеширования
|
|||
enable_update_checker=Проверка обновлений
|
||||
env_config_keys=Настройка окружения
|
||||
env_config_keys_prompt=Следующие переменные окружения также будут применены к вашему конфигурационному файлу:
|
||||
enable_update_checker_helper_forgejo = Периодически проверять наличие новых версий Forgejo через DNS-запись TXT на release.forgejo.org.
|
||||
enable_update_checker_helper_forgejo = Периодически проверять наличие новых версий Forgejo через «TXT» DNS-запись домена release.forgejo.org.
|
||||
allow_dots_in_usernames = Разрешить точки в именах пользователей. Это не повлияет на уже созданные учётные записи.
|
||||
smtp_from_invalid = Адрес для отправки писем некорректен
|
||||
config_location_hint = Эти настройки конфигурации будут сохранены в:
|
||||
|
@ -682,6 +682,8 @@ Location = Местоположение
|
|||
To = Название ветви
|
||||
|
||||
|
||||
email_domain_is_not_allowed = Домен адреса эл. почты <b>%s</b> не разрешён к использованию. Убедитесь, что он введён правильно или попробуйте другой адрес.
|
||||
|
||||
[user]
|
||||
change_avatar=Изменить изображение профиля…
|
||||
joined_on=Регистрация %s
|
||||
|
@ -761,7 +763,7 @@ update_language_success=Язык обновлён.
|
|||
update_profile_success=Ваш профиль успешно обновлён.
|
||||
change_username=Ваше имя пользователя было изменено.
|
||||
change_username_prompt=Обратите внимание: изменение имени пользователя также меняет URL вашей учётной записи.
|
||||
change_username_redirect_prompt=Старое имя пользователя будет перенаправлять на новое до тех пор, пока его не займут.
|
||||
change_username_redirect_prompt=Старое имя будет перенаправлять на новое до тех пор, пока оно не будет занято.
|
||||
continue=Далее
|
||||
cancel=Отмена
|
||||
language=Язык
|
||||
|
@ -1302,6 +1304,7 @@ view_git_blame=Показать git blame
|
|||
video_not_supported_in_browser=Ваш браузер не поддерживает тэг HTML5 «video».
|
||||
audio_not_supported_in_browser=Ваш браузер не поддерживает тэг HTML5 «audio».
|
||||
stored_lfs=Хранится Git LFS
|
||||
stored_annex=Хранится Git Annex
|
||||
symbolic_link=Символическая ссылка
|
||||
executable_file=Исполняемый файл
|
||||
commit_graph=Граф коммитов
|
||||
|
@ -1325,6 +1328,7 @@ editor.upload_file=Загрузить файл
|
|||
editor.edit_file=Редактировать файл
|
||||
editor.preview_changes=Просмотр изменений
|
||||
editor.cannot_edit_lfs_files=LFS файлы невозможно редактировать в веб-интерфейсе.
|
||||
editor.cannot_edit_annex_files=Annex файлы невозможно редактировать в веб-интерфейсе.
|
||||
editor.cannot_edit_non_text_files=Двоичные файлы нельзя редактировать в веб-интерфейсе.
|
||||
editor.edit_this_file=Редактировать файл
|
||||
editor.this_file_locked=Файл заблокирован
|
||||
|
@ -2650,7 +2654,7 @@ tag.create_tag_from=Создать новый тег из «%s»
|
|||
|
||||
tag.create_success=Тег «%s» создан.
|
||||
|
||||
topic.manage_topics=Редактировать тематические метки
|
||||
topic.manage_topics=Изменить темы
|
||||
topic.done=Сохранить
|
||||
topic.count_prompt=Нельзя выбрать более 25 тем
|
||||
topic.format_prompt=Темы должны начинаться с буквы или цифры и могут содержать дефисы («-») и точки («.»). Длина темы не должна превышать 35 символов. Все буквы должны быть строчными.
|
||||
|
@ -2869,6 +2873,8 @@ issues.reaction.alt_add = Добавить реакцию %[1]s к этому к
|
|||
issues.context.menu = Меню комментария
|
||||
release.summary_card_alt = Карточка со сводкой о выпуске «%s» в репозитории %s
|
||||
|
||||
editor.commit_email = Эл. почта автора
|
||||
|
||||
[graphs]
|
||||
component_loading_failed = Не удалось загрузить %s
|
||||
component_failed_to_load = Случилась непредвиденная ошибка.
|
||||
|
@ -3694,7 +3700,7 @@ dependency.version=Версия
|
|||
alpine.registry=Настройте этот реестр, добавив URL в файл <code>/etc/apk/repositories</code>:
|
||||
alpine.registry.key=Загрузите публичный ключ RSA реестра в каталог <code>/etc/apk/keys/</code> для проверки подписи индекса:
|
||||
alpine.registry.info=Выберите $branch и $repository из списка ниже.
|
||||
alpine.install=Чтобы установить пакет, выполните следующую команду:
|
||||
alpine.install=Для установки пакета выполните следующую команду:
|
||||
alpine.repository=О репозитории
|
||||
alpine.repository.branches=Ветви
|
||||
alpine.repository.repositories=Репозитории
|
||||
|
@ -3702,13 +3708,13 @@ alpine.repository.architectures=Архитектуры
|
|||
cargo.registry=Настройте этот реестр в файле конфигурации Cargo (например, <code>~/.cargo/config.toml</code>):
|
||||
cargo.install=Чтобы установить пакет с помощью Cargo, выполните следующую команду:
|
||||
chef.registry=Настройте этот реестр в своём файле <code>~/.chef/config.rb</code>:
|
||||
chef.install=Чтобы установить пакет, выполните следующую команду:
|
||||
chef.install=Для установки пакета выполните следующую команду:
|
||||
composer.registry=Настройте этот реестр в файле <code>~/.composer/config.json</code>:
|
||||
composer.install=Чтобы установить пакет с помощью Composer, выполните следующую команду:
|
||||
composer.dependencies=Зависимости
|
||||
composer.dependencies.development=Зависимости для разработки
|
||||
conan.details.repository=Репозиторий
|
||||
conan.registry=Настроить реестр из командной строки:
|
||||
conan.registry=Добавьте реестр командой:
|
||||
conan.install=Чтобы установить пакет с помощью Conan, выполните следующую команду:
|
||||
conda.registry=Пропишите этот реестр в качестве репозитория Conda в своём файле <code>.condarc</code>:
|
||||
conda.install=Чтобы установить пакет с помощью Conda, выполните следующую команду:
|
||||
|
@ -3722,23 +3728,23 @@ container.labels=Метки
|
|||
container.labels.key=Ключ
|
||||
container.labels.value=Значение
|
||||
cran.registry=Настройте этот реестр в файле <code>Rprofile.site</code>:
|
||||
cran.install=Чтобы установить пакет, выполните следующую команду:
|
||||
debian.registry=Настроить реестр из командной строки:
|
||||
cran.install=Для установки пакета выполните следующую команду:
|
||||
debian.registry=Добавьте реестр командой:
|
||||
debian.registry.info=Выберите $distribution и $component из списка ниже.
|
||||
debian.install=Чтобы установить пакет, выполните следующую команду:
|
||||
debian.install=Для установки пакета выполните следующую команду:
|
||||
debian.repository=О репозитории
|
||||
debian.repository.distributions=Дистрибутивы
|
||||
debian.repository.components=Компоненты
|
||||
debian.repository.architectures=Архитектуры
|
||||
generic.download=Скачать пакет из командной строки:
|
||||
go.install=Установите пакет из командной строки:
|
||||
helm.registry=Настроить реестр из командной строки:
|
||||
helm.install=Чтобы установить пакет, выполните следующую команду:
|
||||
helm.registry=Добавьте реестр командой:
|
||||
helm.install=Для установки пакета выполните следующую команду:
|
||||
maven.registry=Настройте реестр в файле <code>pom.xml</code> вашего проекта:
|
||||
maven.install=Чтобы использовать пакет, включите в блок <code>dependencies</code> в файле <code>pom.xml</code> следующее:
|
||||
maven.install2=Выполнить через командную строку:
|
||||
maven.download=Чтобы скачать зависимость, запустите в командной строке:
|
||||
nuget.registry=Настроить реестр из командной строки:
|
||||
nuget.registry=Добавьте реестр командой:
|
||||
nuget.install=Чтобы установить пакет с помощью NuGet, выполните следующую команду:
|
||||
nuget.dependency.framework=Целевой фреймворк
|
||||
npm.registry=Настройте реестр в файле <code>.npmrc</code> вашего проекта:
|
||||
|
@ -3752,10 +3758,10 @@ npm.details.tag=Тег
|
|||
pub.install=Чтобы установить пакет с помощью Dart, выполните следующую команду:
|
||||
pypi.requires=Требуется Python
|
||||
pypi.install=Чтобы установить пакет с помощью pip, выполните следующую команду:
|
||||
rpm.registry=Настроить реестр из командной строки:
|
||||
rpm.registry=Добавьте реестр командой:
|
||||
rpm.distros.redhat=на дистрибутивах семейства RedHat
|
||||
rpm.distros.suse=на дистрибутивах семейства SUSE
|
||||
rpm.install=Чтобы установить пакет, выполните следующую команду:
|
||||
rpm.install=Для установки пакета выполните следующую команду:
|
||||
rpm.repository = О репозитории
|
||||
rpm.repository.architectures = Архитектуры
|
||||
rubygems.install=Чтобы установить пакет с помощью gem, выполните следующую команду:
|
||||
|
@ -3764,7 +3770,7 @@ rubygems.dependencies.runtime=Зависимости времени выполн
|
|||
rubygems.dependencies.development=Зависимости для разработки
|
||||
rubygems.required.ruby=Требуется версия Ruby
|
||||
rubygems.required.rubygems=Требуется версия RubyGem
|
||||
swift.registry=Настроить реестр из командной строки:
|
||||
swift.registry=Добавьте реестр командой:
|
||||
swift.install=Добавьте пакет в свой файл <code>Package.swift</code>:
|
||||
swift.install2=и запустите следующую команду:
|
||||
vagrant.install=Чтобы добавить бокс Vagrant, выполните следующую команду:
|
||||
|
|
|
@ -821,7 +821,7 @@ migrate.migrating_failed=<b>%s</b> සිට සංක්රමණය වීම
|
|||
migrate.migrating_failed_no_addr=සංක්රමණය අසාර්ථකයි.
|
||||
migrate.git.description=ඕනෑම Git සේවාවකින් පමණක් ගබඩාවක් සංක්රමණය කරන්න.
|
||||
migrate.gitlab.description=gitlab.com හෝ වෙනත් GitLab අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
migrate.gitea.description=Gitea.com හෝ වෙනත් Gitea/Forgejo අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
migrate.gitea.description=Gitea.com හෝ වෙනත් Gitea අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
migrate.gogs.description=notabug.org හෝ වෙනත් Gogs අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
migrate.onedev.description=code.onedev.io හෝ වෙනත් OnedeV අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
migrate.gitbucket.description=GitBucket අවස්ථා වලින් දත්ත සංක්රමණය කරන්න.
|
||||
|
@ -889,6 +889,7 @@ file_copy_permalink=පිටපත් මාමලින්ක්
|
|||
video_not_supported_in_browser=ඔබගේ බ්රව්සරය HTML5 'වීඩියෝ' ටැගය සඳහා සහය නොදක්වයි.
|
||||
audio_not_supported_in_browser=ඔබගේ බ්රව්සරය HTML5 'ශ්රව්ය' ටැගය සඳහා සහය නොදක්වයි.
|
||||
stored_lfs=Git LFS සමඟ ගබඩා
|
||||
stored_annex=Git Annex සමඟ ගබඩා
|
||||
symbolic_link=සංකේතාත්මක සබැඳිය
|
||||
commit_graph=ප්රස්තාරය කැප
|
||||
commit_graph.select=ශාඛා තෝරන්න
|
||||
|
@ -906,6 +907,7 @@ editor.upload_file=ගොනුව උඩුගත කරන්න
|
|||
editor.edit_file=ගොනුව සංස්කරණය
|
||||
editor.preview_changes=වෙනස්කම් පෙරදසුන
|
||||
editor.cannot_edit_lfs_files=LFS ගොනු වෙබ් අතුරු මුහුණත තුළ සංස්කරණය කළ නොහැක.
|
||||
editor.cannot_edit_annex_files=Annex ගොනු වෙබ් අතුරු මුහුණත තුළ සංස්කරණය කළ නොහැක.
|
||||
editor.cannot_edit_non_text_files=ද්විමය ගොනු වෙබ් අතුරු මුහුණත තුළ සංස්කරණය කළ නොහැක.
|
||||
editor.edit_this_file=ගොනුව සංස්කරණය
|
||||
editor.this_file_locked=ගොනුවට අගුළු ලා ඇත
|
||||
|
|
|
@ -176,7 +176,7 @@ string.desc=Z - A
|
|||
|
||||
[error]
|
||||
occurred=Vyskytla sa chyba
|
||||
report_message=Ak si myslíte, že ide o chybu Gitea, vyhľadajte problémy na <a href="%s" target="_blank">GitHub-e</a> alebo v prípade potreby otvorte nový problém.
|
||||
report_message=Ak si myslíte, že ide o chybu Forgejo, vyhľadajte problémy na <a href="%s" target="_blank">Codeberg-e</a> alebo v prípade potreby otvorte nový problém.
|
||||
missing_csrf=Nesprávna žiadosť: neprítomný CSFR token
|
||||
invalid_csrf=Nesprávna žiadosť: nesprávny CSFR token
|
||||
not_found=Nebolo možné nájsť cieľ.
|
||||
|
@ -1010,6 +1010,7 @@ view_git_blame=Zobraziť Git Blame
|
|||
video_not_supported_in_browser=Váš prehliadač nepodporuje HTML5 tag 'video'.
|
||||
audio_not_supported_in_browser=Váš prehliadač nepodporuje HTML5 tag 'audio'.
|
||||
stored_lfs=Uložené pomocou Git LFS
|
||||
stored_annex=Uložené pomocou Git Annex
|
||||
symbolic_link=Symbolický odkaz
|
||||
commit_graph=Graf commitov
|
||||
line=riadok
|
||||
|
|
|
@ -62,7 +62,7 @@ federated_avatar_lookup_popup=Омогућите federated avatars lookup да
|
|||
enable_captcha_popup=Тражи Captcha приликом регистрације корисника.
|
||||
admin_password=Лозинка
|
||||
confirm_password=Потврдите лозинку
|
||||
install_btn_confirm=Успостави Gitea
|
||||
install_btn_confirm=Успостави Forgejo
|
||||
test_git_failed=Команда 'git' није успела: %v
|
||||
|
||||
[home]
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue