This commit is contained in:
Kasi 2018-06-10 20:05:47 +01:00
commit ce09a1c075
34 changed files with 170 additions and 62 deletions

View File

@ -201,6 +201,10 @@ an advisor has time to code review, we will gladly welcome them back
to the maintainers team. If a maintainer is inactive for more than 3
months and forgets to leave the maintainers team, the owners may move
him or her from the maintainers team to the advisors team.
For security reasons, Maintainers should use 2FA for their accounts and
if possible provide gpg signed commits.
https://help.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/
https://help.github.com/articles/signing-commits-with-gpg/
## Owners
@ -211,6 +215,9 @@ be the main owner, and the other two the assistant owners. When the new
owners have been elected, the old owners will give up ownership to the
newly elected owners. If an owner is unable to do so, the other owners
will assist in ceding ownership to the newly elected owners.
For security reasons, Owners or any account with write access (like a bot)
must use 2FA.
https://help.github.com/articles/securing-your-account-with-two-factor-authentication-2fa/
After the election, the new owners should proactively agree
with our [CONTRIBUTING](CONTRIBUTING.md) requirements in the

View File

@ -22,3 +22,4 @@ Peter Žeby <morlinest@gmail.com> (@morlinest)
Matti Ranta <matti@mdranta.net> (@techknowlogick)
Michael Lustfield <mtecknology@debian.org> (@MTecknology)
Jonas Franz <info@jonasfranz.software> (@JonasFranzDEV)
Flynn Lufmons <fluf@warpmail.net> (@flufmonster)

View File

@ -12,13 +12,6 @@
[![Help Contribute to Open Source](https://www.codetriage.com/go-gitea/gitea/badges/users.svg)](https://www.codetriage.com/go-gitea/gitea)
[![Become a backer/sponsor of gitea](https://opencollective.com/gitea/tiers/backer/badge.svg?label=backer&color=brightgreen)](https://opencollective.com/gitea)
| | | |
|:---:|:---:|:---:|
|![Dashboard](https://image.ibb.co/dms6DG/1.png)|![Repository](https://image.ibb.co/m6MSLw/2.png)|![Commits History](https://image.ibb.co/cjrSLw/3.png)|
|![Branches](https://image.ibb.co/e6vbDG/4.png)|![Issues](https://image.ibb.co/bJTJSb/5.png)|![Pull Request View](https://image.ibb.co/e02dSb/6.png)|
|![Releases](https://image.ibb.co/cUzgfw/7.png)|![Activity](https://image.ibb.co/eZgGDG/8.png)|![Wiki](https://image.ibb.co/dYV9YG/9.png)|
|![Diff](https://image.ibb.co/ewA9YG/10.png)|![Organization](https://image.ibb.co/ceOwDG/11.png)|![Profile](https://image.ibb.co/c44Q7b/12.png)|
## Purpose
The goal of this project is to make the easiest, fastest, and most
@ -102,3 +95,13 @@ Gitea is pronounced [/ɡɪti:/](https://youtu.be/EM71-2uDAoY) as in "gi-tea"
This project is licensed under the MIT License.
See the [LICENSE](https://github.com/go-gitea/gitea/blob/master/LICENSE) file
for the full license text.
## Screenshots
Looking for an overview of the interface? Check it out!
| | | |
|:---:|:---:|:---:|
|![Dashboard](https://image.ibb.co/dms6DG/1.png)|![Repository](https://image.ibb.co/m6MSLw/2.png)|![Commits History](https://image.ibb.co/cjrSLw/3.png)|
|![Branches](https://image.ibb.co/e6vbDG/4.png)|![Issues](https://image.ibb.co/bJTJSb/5.png)|![Pull Request View](https://image.ibb.co/e02dSb/6.png)|
|![Releases](https://image.ibb.co/cUzgfw/7.png)|![Activity](https://image.ibb.co/eZgGDG/8.png)|![Wiki](https://image.ibb.co/dYV9YG/9.png)|
|![Diff](https://image.ibb.co/ewA9YG/10.png)|![Organization](https://image.ibb.co/ceOwDG/11.png)|![Profile](https://image.ibb.co/c44Q7b/12.png)|

View File

@ -73,6 +73,11 @@ var (
Value: "",
Usage: "New password to set for user",
},
cli.StringFlag{
Name: "config, c",
Value: "custom/conf/app.ini",
Usage: "Custom configuration file path",
},
},
}
@ -123,6 +128,10 @@ func runChangePassword(c *cli.Context) error {
return err
}
if c.IsSet("config") {
setting.CustomConf = c.String("config")
}
if err := initDB(); err != nil {
return err
}

View File

@ -20,7 +20,7 @@ file can be unpacked and used to restore an instance.
## Backup Command (`dump`)
Switch to the user running gitea: `su git`. Run `./gitea dump` in the gitea installation
Switch to the user running gitea: `su git`. Run `./gitea dump -c /path/to/app.ini` in the gitea installation
directory. There should be some output similar to the following:
```
@ -34,7 +34,8 @@ directory. There should be some output similar to the following:
Inside the `gitea-dump-1482906742.zip` file, will be the following:
* `custom/conf/app.ini` - Server config.
* `custom` - All config or customerize files in `custom/`.
* `data` - Data directory in <GITEA_WORK_DIR>, except sessions if you are using file session. This directory includes `attachments`, `avatars`, `lfs`, `indexers`, sqlite file if you are using sqlite.
* `gitea-db.sql` - SQL dump of database
* `gitea-repo.zip` - Complete copy of the repository directory.
* `log/` - Various logs. They are not needed for a recovery or migration.

View File

@ -0,0 +1,60 @@
---
date: "2018-06-06T09:33:00+08:00"
title: "使用: 备份与恢复"
slug: "backup-and-restore"
weight: 11
toc: true
draft: false
menu:
sidebar:
parent: "usage"
name: "备份与恢复"
weight: 11
identifier: "backup-and-restore"
---
# 备份与恢复
Gitea 已经实现了 `dump` 命令可以用来备份所有需要的文件到一个zip压缩文件。该压缩文件可以被用来进行数据恢复。
## 备份命令 (`dump`)
先转到git用户的权限: `su git`. 再Gitea目录运行 `./gitea dump`。一般会显示类似如下的输出:
```
2016/12/27 22:32:09 Creating tmp work dir: /tmp/gitea-dump-417443001
2016/12/27 22:32:09 Dumping local repositories.../home/git/gitea-repositories
2016/12/27 22:32:22 Dumping database...
2016/12/27 22:32:22 Packing dump files...
2016/12/27 22:32:34 Removing tmp work dir: /tmp/gitea-dump-417443001
2016/12/27 22:32:34 Finish dumping in file gitea-dump-1482906742.zip
```
最后生成的 `gitea-dump-1482906742.zip` 文件将会包含如下内容:
* `custom` - 所有保存在 `custom/` 目录下的配置和自定义的文件。
* `data` - 数据目录下的所有内容不包含使用文件session的文件。该目录包含 `attachments`, `avatars`, `lfs`, `indexers`, 如果使用sqlite 还会包含 sqlite 数据库文件。
* `gitea-db.sql` - 数据库dump出来的 SQL。
* `gitea-repo.zip` - Git仓库压缩文件。
* `log/` - Logs文件如果用作迁移不是必须的。
中间备份文件将会在临时目录进行创建,如果您要重新指定临时目录,可以用 `--tempdir` 参数,或者用 `TMPDIR` 环境变量。
## Restore Command (`restore`)
当前还没有恢复命令,恢复需要人工进行。主要是把文件和数据库进行恢复。
例如:
```
apt-get install gitea
unzip gitea-dump-1482906742.zip
cd gitea-dump-1482906742
mv custom/conf/app.ini /etc/gitea/conf/app.ini
unzip gitea-repo.zip
mv gitea-repo/* /var/lib/gitea/repositories/
chown -R gitea:gitea /etc/gitea/conf/app.ini /var/lib/gitea/repositories/
mysql -u$USER -p$PASS $DATABASE <gitea-db.sql
# or sqlite3 $DATABASE_PATH <gitea-db.sql
service gitea restart
```

View File

@ -62,6 +62,7 @@ Admin operations:
- Options:
- `--username value`, `-u value`: Username. Required.
- `--password value`, `-p value`: New password. Required.
- `--config path`: Gitea configuration file path. Optional. (default: custom/conf/app.ini).
- Examples:
- `gitea admin change-password --username myname --password asecurepassword`
- `regenerate`

View File

@ -102,7 +102,7 @@ func IsErrEmailAlreadyUsed(err error) bool {
}
func (err ErrEmailAlreadyUsed) Error() string {
return fmt.Sprintf("e-mail has been used [email: %s]", err.Email)
return fmt.Sprintf("e-mail already in use [email: %s]", err.Email)
}
// ErrOpenIDAlreadyUsed represents a "OpenIDAlreadyUsed" kind of error.
@ -117,7 +117,7 @@ func IsErrOpenIDAlreadyUsed(err error) bool {
}
func (err ErrOpenIDAlreadyUsed) Error() string {
return fmt.Sprintf("OpenID has been used [oid: %s]", err.OpenID)
return fmt.Sprintf("OpenID already in use [oid: %s]", err.OpenID)
}
// ErrUserOwnRepos represents a "UserOwnRepos" kind of error.

View File

@ -606,9 +606,7 @@ config.db_config=Настройки на базата данни
config.db_type=Тип
config.db_host=Сървър
config.db_name=Име
config.db_ssl_mode_helper=(само за postgres)
config.db_path=Път
config.db_path_helper=(за "sqlite3" и "tidb")
config.service_config=Настройка на услугата
config.show_registration_button=Покажи бутон за регистрация

View File

@ -603,9 +603,7 @@ config.db_config=Nastavení databáze
config.db_type=Typ
config.db_host=Server
config.db_name=Název
config.db_ssl_mode_helper=(pouze pro 'postgres')
config.db_path=Cesta
config.db_path_helper=(pro "sqlite3" a "tidb")
config.service_config=Nastavení služby
config.show_registration_button=Ukázat tlačítko registrace

View File

@ -693,6 +693,8 @@ issues.filter_sort.recentupdate=Kürzlich aktualisiert
issues.filter_sort.leastupdate=Am Längsten nicht aktualisiert
issues.filter_sort.mostcomment=Am meisten kommentiert
issues.filter_sort.leastcomment=Am wenigsten kommentiert
issues.filter_sort.moststars=Meiste Favoriten
issues.filter_sort.feweststars=Wenigste Favoriten
issues.filter_sort.mostforks=Meiste Forks
issues.filter_sort.fewestforks=Wenigste Forks
issues.action_open=Öffnen
@ -1388,6 +1390,7 @@ auths.attribute_username_placeholder=Leerlassen, um den in Gitea eingegebenen Be
auths.attribute_name=Vornamensattribut
auths.attribute_surname=Nachnamensattribut
auths.attribute_mail=E-Mail Attribut
auths.attribute_ssh_public_key=Öffentliches SSH-Schlüssel Attribut
auths.attributes_in_bind=Hole Attribute im Bind-Kontext
auths.use_paged_search=Seitensuche verwenden
auths.search_page_size=Seitengröße
@ -1472,9 +1475,7 @@ config.db_host=Host
config.db_name=Name
config.db_user=Benutzername
config.db_ssl_mode=SSL
config.db_ssl_mode_helper=(nur für "postgres")
config.db_path=Verzeichnis
config.db_path_helper=(für "sqlite3" und "tidb")
config.service_config=Service-Konfiguration
config.register_email_confirm=E-Mail-Bestätigung benötigt zum Registrieren

View File

@ -741,9 +741,7 @@ config.ssh_minimum_key_sizes=Tamaños de clave mínimos
config.db_config=Configuración de la Base de Datos
config.db_type=Tipo
config.db_name=Nombre
config.db_ssl_mode_helper=(sólo para "postgres")
config.db_path=Ruta
config.db_path_helper=(para "sqlite3" y "tidb")
config.service_config=Configuración del servicio
config.show_registration_button=Mostrar Botón de Registro

View File

@ -585,9 +585,7 @@ config.db_config=Tietokannan asetukset
config.db_type=Tyyppi
config.db_host=Isäntä
config.db_name=Nimi
config.db_ssl_mode_helper=(vain "postgres")
config.db_path=Polku
config.db_path_helper=("sqlite3" ja "tidb")
config.service_config=Palvelu asetukset
config.show_registration_button=Näytä rekisteröidy painike

View File

@ -818,9 +818,7 @@ config.db_config=Configuration de la base de données
config.db_type=Type
config.db_host=Hôte
config.db_name=Nom
config.db_ssl_mode_helper=("postgres" uniquement)
config.db_path=Emplacement
config.db_path_helper=(pour « sqlite3 » et « TIDB »)
config.service_config=Configuration du service
config.show_registration_button=Afficher le bouton d'enregistrement

View File

@ -835,9 +835,7 @@ config.db_config=Adatbázis Konfiguráció
config.db_type=Típus
config.db_host=Kiszolgáló
config.db_name=Név
config.db_ssl_mode_helper=(csak "postgres"-nek)
config.db_path=Elérési út
config.db_path_helper=("sqlite3" és "tidb"-nek)
config.service_config=Szolgáltatás konfiguráció
config.show_registration_button=Regisztráció gomb megjelenítése

View File

@ -807,9 +807,7 @@ config.ssh_minimum_key_sizes=Ukuran kunci minimum
config.db_config=Konfigurasi basis data
config.db_name=Nama
config.db_ssl_mode_helper=(untuk "postgres" saja)
config.db_path=Jalur
config.db_path_helper=(untuk "sqlite3 dan "tidb")
config.service_config=Konfigurasi layanan
config.show_registration_button=Tampilkan tombol mendaftar

View File

@ -638,9 +638,7 @@ config.ssh_minimum_key_sizes=Dimensioni minime della chiave
config.db_config=Configurazione Database
config.db_type=Tipo
config.db_name=Nome
config.db_ssl_mode_helper=(solo per "postgres")
config.db_path=Percorso
config.db_path_helper=(per "sqlite3" e "tidb")
config.service_config=Configurazione Servizio
config.show_registration_button=Mostra Pulsane Registrazione

View File

@ -833,9 +833,7 @@ config.db_config=データベースの構成
config.db_type=タイプ
config.db_host=ホスト
config.db_name=名前
config.db_ssl_mode_helper=(「postgres」のみ
config.db_path=パス
config.db_path_helper=("sqlite3"および"tidb"のみ)
config.service_config=サービスの構成
config.show_registration_button=登録ボタンを表示します。

View File

@ -687,9 +687,7 @@ config.db_config=데이터베이스 설정
config.db_type=유형
config.db_host=호스트
config.db_name=이름
config.db_ssl_mode_helper=("postgres" 전용)
config.db_path=경로
config.db_path_helper=("sqlite3" 및 "tidb"만)
config.service_config=서비스 설정
config.show_registration_button=등록 버튼을 표시

View File

@ -833,9 +833,7 @@ config.db_config=Datu bāzes konfigurācija
config.db_type=Veids
config.db_host=Resursdators
config.db_name=Nosaukums
config.db_ssl_mode_helper=(tikai PostgreSQL datu bāzei)
config.db_path=Ceļš
config.db_path_helper=(priekš "sqlite3" and "tidb")
config.service_config=Pakalpojuma konfigurācija
config.show_registration_button=Rādīt reģistrēšanās pogu

View File

@ -784,9 +784,7 @@ config.db_config=Databaseconfiguratie
config.db_type=Type
config.db_host=Host
config.db_name=Naam
config.db_ssl_mode_helper=(alleen voor "postgres")
config.db_path=Pad
config.db_path_helper=(voor "sqlite3" en "tidb")
config.service_config=Serviceconfiguratie
config.show_registration_button=Registeren knop weergeven

View File

@ -816,9 +816,7 @@ config.db_config=Konfiguracja bazy danych
config.db_type=Typ
config.db_host=Serwer
config.db_name=Nazwa
config.db_ssl_mode_helper=(tylko dla „postgres”)
config.db_path=Ścieżka
config.db_path_helper=(dla „sqlite3” i „tidb”)
config.service_config=Konfiguracja usługi
config.show_registration_button=Pokazuj przycisk rejestracji

View File

@ -1475,9 +1475,7 @@ config.db_host=Servidor
config.db_name=Nome
config.db_user=Nome de usuário
config.db_ssl_mode=SSL
config.db_ssl_mode_helper=(apenas para "postgres")
config.db_path=Caminho
config.db_path_helper=(para "sqlite3" e "tidb")
config.service_config=Configuração do serviço
config.register_email_confirm=Exigir confirmação de e-mail para se cadastrar

View File

@ -1475,9 +1475,7 @@ config.db_host=Сервер
config.db_name=Имя
config.db_user=Пользователь
config.db_ssl_mode=SSL
config.db_ssl_mode_helper=(только для "postgres")
config.db_path=Путь
config.db_path_helper=(для "sqlite3" и "tidb")
config.service_config=Сервисная конфигурация
config.register_email_confirm=Требуется подтверждение по электронной почте

View File

@ -601,9 +601,7 @@ config.db_config=Конфигурација базе података
config.db_type=Тип
config.db_host=Хост
config.db_name=Име
config.db_ssl_mode_helper=(само за postgres)
config.db_path=Пут
config.db_path_helper=(за "sqlite3" и "tidb")
config.service_config=Подешавања сервиса
config.show_registration_button=Прикажи дугме за регистрацију

View File

@ -738,9 +738,7 @@ config.db_config=Databaskonfiguration
config.db_type=Typ
config.db_host=Värd
config.db_name=Namn
config.db_ssl_mode_helper=(endast för "postgres")
config.db_path=Sökväg
config.db_path_helper=(för "sqlite3" och "tidb")
config.service_config=Tjänstkonfiguration
config.show_registration_button=Visa registreringsknapp

View File

@ -802,9 +802,7 @@ config.db_config=Veritabanı Yapılandırması
config.db_type=Türü
config.db_host=Sunucu
config.db_name=İsim
config.db_ssl_mode_helper=(sadece "postgres" için)
config.db_path=Yol
config.db_path_helper=("sqlite3" ve "tidb" için)
config.service_config=Servis Yapılandırması
config.show_registration_button=Kaydolma Tuşunu Göster

View File

@ -32,6 +32,13 @@ twofa_scratch=Двофакторний одноразовий пароль
passcode=Код доступу
u2f_insert_key=Вставте ключ безпеки
u2f_sign_in=Натисніть кнопку на ключі безпеки. Якщо не вдається знайти кнопки, повторно вставте ключ.
u2f_press_button=Будь ласка, натисніть кнопку на ключі захисту...
u2f_use_twofa=Використовуйте дво-факторний код з вашого телефону
u2f_error=Неможливо прочитати ваш ключ безпеки!
u2f_unsupported_browser=Ваш браузер не підтримує U2F ключі. Будь ласка, спробуйте інший браузер.
u2f_error_1=Сталася невідома помилка. Спробуйте ще раз.
u2f_error_3=Сервер не може обробити, ваш запит.
u2f_reload=Оновити
repository=Репозиторій
@ -132,6 +139,7 @@ confirm_password=Підтвердження пароля
admin_email=Адреса електронної пошти
install_btn_confirm=Встановлення Gitea
test_git_failed=Не в змозі перевірити 'git' команду: %v
invalid_db_setting=Налаштування бази даних є некоректними: %v
save_config_failed=Не в змозі зберегти конфігурацію: %v
invalid_admin_setting=Неприпустимі налаштування облікового запису адміністратора: %v
install_success=Ласкаво просимо! Дякуємо вам за вибір Gitea. Розважайтеся, і будьте обережні!
@ -257,8 +265,12 @@ team_name_been_taken=Назва команди вже зайнято.
email_been_used=Ця електронна адреса вже використовується.
openid_been_used=OpenID адреса '%s' вже використовується.
username_password_incorrect=Неправильне ім'я користувача або пароль.
enterred_invalid_repo_name=Невірно введено ім'я репозиторію.
user_not_exist=Даний користувач не існує.
cannot_add_org_to_team=Організацію неможливо додати як учасника команди.
invalid_ssh_key=Неможливо перевірити ваш SSH ключ: %s
invalid_gpg_key=Неможливо перевірити ваш GPG ключ: %s
auth_failed=Помилка автентифікації: %v
@ -331,9 +343,13 @@ primary=Основний
primary_email=Зробити основним
delete_email=Видалити
email_deletion=Видалити адресу електронної пошти
openid_deletion=Видалити адресу OpenID
add_new_email=Додати нову адресу електронної пошти
add_new_openid=Додати новий OpenID URI
add_email=Додати адресу електронної пошти
add_openid=Додати OpenID URI
add_email_confirmation_sent=Електронний лист із підтвердженням було відправлено на '%s', будь ласка, перевірте вашу поштову скриньку протягом наступних %s, щоб підтвердити адресу.
add_email_success=Додано нову адресу електронної пошти.
keep_email_private=Приховати адресу електронної пошти
keep_email_private_popup=Вашу адресу електронної пошти буде приховано від інших користувачів.
@ -349,6 +365,7 @@ key_id=ID ключа
key_name=Ім'я ключа
key_content=Зміст
add_key_success=SSH ключ '%s' додано.
add_gpg_key_success=GPG ключ '%s' додано.
delete_key=Видалити
ssh_key_deletion=Видалити SSH ключ
gpg_key_deletion=Видалити GPG ключ
@ -382,15 +399,20 @@ access_token_deletion=Видалити токен доступу
twofa_disable=Вимкнути двофакторну автентифікацію
or_enter_secret=Або введіть секрет: %s
passcode_invalid=Некоректний пароль. Спробуй ще раз.
u2f_register_key=Додати ключ безпеки
u2f_nickname=Псевдонім
u2f_delete_key=Видалити ключ безпеки
manage_account_links=Керування обліковими записами
remove_account_link=Видалити облікові записи
orgs_none=Ви не є учасником будь-якої організації.
repos_none=У вас немає власних репозиторіїв
delete_account=Видалити ваш обліковий запис
delete_prompt=Ця операція остаточно видалить обліковий запис користувача. Це <strong>НЕ МОЖЛИВО</strong> відмінити.
confirm_delete_account=Підтвердження видалення
delete_account_title=Видалити цей обліковий запис
@ -414,6 +436,7 @@ create_repo=Створити репозиторій
default_branch=Головна гілка
mirror_prune=Очистити
mirror_interval=Інтервал дзеркалювання (доступні значення 'h', 'm', 's')
mirror_interval_invalid=Інтервал дзеркалювання є неприпустимим.
mirror_address=Клонування з URL-адреси
mirror_last_synced=Остання синхронізація
watchers=Спостерігачі
@ -423,6 +446,7 @@ pick_reaction=Залиште свою оцінку
reactions_more=додати %d більше
form.reach_limit_of_creation=Ви досягли максимальної кількості %d створених репозиторіїв.
form.name_reserved=Назву репозиторію '%s' зарезервовано.
need_auth=Клонувати з авторизацією
migrate_type=Тип міграції
@ -439,6 +463,7 @@ mirror_from=дзеркало
forked_from=форк від
fork_from_self=Ви не можете форкнути репозиторій, так як ви його власник.
copy_link=Копіювати
copy_link_success=Посилання було скопійоване
copy_link_error=Натисніть ⌘-C або Ctrl-C, щоб скопіювати
copied=Скопійовано
unwatch=Не стежити
@ -472,6 +497,8 @@ file_raw=Неформатований
file_history=Історія
file_view_raw=Перегляд Raw
file_permalink=Постійне посилання
file_too_large=Цей файл завеликий щоб бути показаним.
video_not_supported_in_browser=Ваш браузер не підтримує тег 'video' HTML5.
stored_lfs=Збережено з Git LFS
commit_graph=Графік комітів
@ -479,6 +506,7 @@ editor.new_file=Новий файл
editor.upload_file=Завантажити файл
editor.edit_file=Редагування файлу
editor.preview_changes=Попередній перегляд змін
editor.cannot_edit_non_text_files=Бінарні файли не можливо редагувати у веб-інтерфейсі.
editor.edit_this_file=Редагувати файл
editor.must_be_on_a_branch=Ви повинні бути у гілці щоб зробити, або запропонувати зміни до цього файлу.
editor.fork_before_edit=Необхідно зробити форк цього репозиторій, щоб внести або запропонувати зміни в цей файл.
@ -498,7 +526,10 @@ editor.commit_directly_to_this_branch=Зробіть коміт прямо в г
editor.create_new_branch=Створити <strong>нову гілку</strong> для цього коміту та відкрити запит на злиття.
editor.new_branch_name_desc=Ім'я нової гілки…
editor.cancel=Відміна
editor.filename_cannot_be_empty=Ім'я файлу не може бути порожнім.
editor.branch_already_exists=Гілка '%s' вже присутня в репозиторії.
editor.directory_is_a_file=Ім'я каталогу "%s" уже використовується як ім'я файлу в цьому репозиторії.
editor.file_already_exists=Файл з назвою "%s" уже існує у цьому репозиторію.
editor.no_changes_to_show=Нема змін для показу.
editor.fail_to_update_file=Не вдалося оновити/створити файл '%s' через помилку: %v
editor.add_subdir=Додати каталог…
@ -514,6 +545,7 @@ commits.message=Повідомлення
commits.date=Дата
commits.older=Давніше
commits.newer=Новіше
commits.signed_by=Підписано
ext_issues=Зов. Проблеми
@ -606,6 +638,7 @@ issues.label_edit=Редагувати
issues.label_delete=Видалити
issues.label_modify=Редагувати мітку
issues.label_deletion=Видалити мітку
issues.label_deletion_success=Мітку було видалено.
issues.label.filter_sort.alphabetically=За алфавітом
issues.label.filter_sort.reverse_alphabetically=З кінця алфавіту
issues.label.filter_sort.by_size=Розмір
@ -854,6 +887,8 @@ settings.add_deploy_key=Додати ключ для розгортування
settings.is_writable=Увімкнути доступ для запису
settings.title=Заголовок
settings.deploy_key_content=Зміст
settings.deploy_key_deletion=Видалити ключ для розгортування
settings.deploy_key_deletion_success=Ключі розгортання було видалено.
settings.branches=Гілки
settings.protected_branch=Захист гілки
settings.protected_branch_can_push=Дозволити push?
@ -863,6 +898,7 @@ settings.protect_whitelist_search_users=Пошук користувачів…
settings.protect_whitelist_search_teams=Пошук команд…
settings.add_protected_branch=Увімкнути захист
settings.delete_protected_branch=Вимкнути захист
settings.protected_branch_deletion=Відключити захист гілки
settings.choose_branch=Оберіть гілку…
settings.no_protected_branch=Немає захищених гілок.
@ -902,6 +938,8 @@ release.save_draft=Зберегти чернетку
release.edit_release=Оновити реліз
release.delete_release=Видалити реліз
release.deletion=Видалити реліз
release.deletion_success=Реліз, було видалено.
release.tag_name_invalid=Неприпустиме ім'я тега.
release.downloads=Завантажити
branch.name=Ім'я гілки
@ -909,9 +947,13 @@ branch.search=Пошук гілок
branch.delete_head=Видалити
branch.delete=Видалити гілку '%s'
branch.delete_html=Видалити гілку
branch.deletion_success=Гілка '%s' видалена.
branch.deletion_failed=Не вдалося видалити гілку "%s".
branch.create_from=з '%s'
branch.create_success=Створено гілку "%s".
branch.branch_already_exists=Гілка '%s' вже присутня в репозиторії.
branch.deleted_by=Видалено %s
branch.restore_success=Гілку "%s" відновлено.
topic.manage_topics=Керувати тематичними мітками
topic.done=Готово
@ -931,9 +973,11 @@ org_desc=Опис
team_name=Назва команди
team_desc=Опис
team_name_helper=Назва команди має бути простою та зрозумілою.
team_desc_helper=Опишіть мету або роль команди.
team_permission_desc=Права доступу
team_unit_desc=Дозволити доступ до розділів репозиторію
form.name_reserved=Назву організації '%s' зарезервовано.
settings=Налаштування
settings.options=Організація
@ -941,6 +985,9 @@ settings.full_name=Повне ім'я
settings.website=Веб-сайт
settings.location=Розташування
settings.update_settings=Оновити налаштування
settings.update_setting_success=Налаштування організації оновлені.
settings.change_orgname_prompt=Ця зміна змінить посилання на організацію.
settings.update_avatar_success=Аватар організації оновлений.
settings.delete=Видалити організацію
settings.delete_account=Видалити цю організацію
settings.confirm_delete_account=Підтвердіть видалення
@ -972,6 +1019,7 @@ teams.update_settings=Оновити налаштування
teams.delete_team=Видалити команду
teams.add_team_member=Додати учасника команди
teams.delete_team_title=Видалити команду
teams.delete_team_success=Команду було видалено.
teams.read_permission_desc=Ця команда має доступ для <strong>читання</strong>: учасники можуть переглядати та клонувати репозиторії.
teams.write_permission_desc=Ця команда надає доступ на <strong>запис</strong>: учасники можуть отримувати й виконувати push команди до репозитрію.
teams.admin_permission_desc=Ця команда надає <strong>адміністраторський</strong> доступ: учасники можуть читати, виконувати push команди та додавати співробітників до репозиторію.
@ -1005,15 +1053,19 @@ dashboard.delete_inactivate_accounts_success=Усі неактивні облі
dashboard.delete_repo_archives=Видалити всі архіви репозиторіїв
dashboard.git_gc_repos_success=Всі репозиторії завершили збирання сміття.
dashboard.server_uptime=Uptime серверу
dashboard.current_goroutine=Поточна кількість Goroutines
dashboard.current_memory_usage=Поточне використання пам'яті
dashboard.total_memory_allocated=Виділено пам'яті загалом
dashboard.memory_obtained=Отримано пам'яті
dashboard.pointer_lookup_times=Пошуків вказівника
dashboard.memory_allocate_times=Виділення пам'яті
dashboard.current_heap_usage=Поточне використання динамічної пам'яті
dashboard.heap_memory_obtained=Отримано динамічної пам'яті
dashboard.heap_memory_idle=Не використовується динамічною пам'яттю
dashboard.heap_memory_in_use=Використовується динамічною пам'яттю
dashboard.heap_memory_released=Звільнено динамічної пам'яті
dashboard.heap_objects=Об'єктів динамічної пам'яті
dashboard.bootstrap_stack_usage=Використання стеку Bootstrap
dashboard.stack_memory_obtained=Зайнято пам'яті стеком
dashboard.mspan_structures_usage=Використання структур MSpan
dashboard.mspan_structures_obtained=Отримано структур MSpan
@ -1041,6 +1093,7 @@ users.send_register_notify=Надіслати повідомлення про р
users.edit=Редагувати
users.auth_source=Джерело автентифікації
users.local=Локальні
users.update_profile_success=Обліковий запис користувача було оновлено.
users.edit_account=Редагувати обліковий запис
users.max_repo_creation=Максимальна кількість репозиторіїв
users.max_repo_creation_desc=(Введіть -1, щоб використовувати глобальний ліміт за замовчуванням.)
@ -1052,6 +1105,7 @@ users.allow_import_local=Може імпортувати локальні реп
users.allow_create_organization=Може створювати організацій
users.update_profile=Оновити обліковий запис
users.delete_account=Видалити цей обліковий запис
users.deletion_success=Обліковий запис користувача було видалено.
orgs.org_manage_panel=Керування організаціями
orgs.name=Назва
@ -1074,6 +1128,7 @@ auths.new=Додати джерело автентифікації
auths.name=Ім'я
auths.type=Тип
auths.enabled=Увімкнено
auths.syncenabled=Увімкнути синхронізацію користувача
auths.updated=Оновлено
auths.auth_type=Тип автентифікації
auths.auth_name=Назва автентифікації
@ -1081,8 +1136,11 @@ auths.security_protocol=Протокол безпеки
auths.domain=Домен
auths.host=Хост
auths.port=Порт
auths.bind_dn=Прив'язати DN
auths.bind_password=Прив'язати пароль
auths.user_base=База пошуку користувачів
auths.user_dn=DN користувача
auths.attribute_username=Атрибут імені користувача
auths.search_page_size=Розмір сторінки
auths.filter=Користувацький фільтр
auths.admin_filter=Фільтр адміністратора
@ -1094,6 +1152,7 @@ auths.enable_tls=Увімкнути TLS-шифрування
auths.skip_tls_verify=Пропустити перевірку TLS
auths.pam_service_name=Ім'я служби PAM
auths.oauth2_provider=Постачальник OAuth2
auths.oauth2_clientID=ID клієнта (ключ)
auths.oauth2_clientSecret=Ключ клієнта
auths.oauth2_tokenURL=URL токену
auths.oauth2_authURL=URL авторизації
@ -1133,6 +1192,7 @@ config.script_type=Тип скрипта
config.ssh_config=Конфігурація SSH
config.ssh_enabled=Увімкнено
config.ssh_start_builtin_server=Використовувати вбудований сервер
config.ssh_domain=Домен сервера
config.ssh_port=Порт
config.ssh_listen_port=Порт що прослуховується
@ -1148,9 +1208,7 @@ config.db_host=Хост
config.db_name=Ім'я
config.db_user=Ім'я кристувача
config.db_ssl_mode=SSL
config.db_ssl_mode_helper=(тільки для "postgres")
config.db_path=Шлях
config.db_path_helper=(для "sqlite3" і "tidb")
config.service_config=Конфігурація сервісу
config.register_email_confirm=Потрібно підтвердити електронну пошту для реєстрації
@ -1201,6 +1259,7 @@ config.session_life_time=Час життя сесії
config.https_only=Тільки HTTPS
config.cookie_life_time=Час життя cookie-файлу
config.picture_config=Налаштування фотографії або аватари
config.picture_service=Сервіс зображень
config.disable_gravatar=Вимкнути Gravatar
config.enable_federated_avatar=Увімкнути зовнішні аватари
@ -1225,12 +1284,14 @@ monitor.name=Ім'я
monitor.schedule=Розклад
monitor.next=Наступного разу
monitor.previous=Попереднього разу
monitor.execute_times=Кількість виконань
monitor.process=Запущені процеси
monitor.desc=Опис
monitor.start=Час початку
monitor.execute_time=Час виконання
notices.system_notice_list=Сповіщення системи
notices.view_detail_header=Переглянути деталі повідомлення
notices.actions=Дії
notices.select_all=Вибрати все
notices.deselect_all=Скасувати виділення
@ -1285,6 +1346,7 @@ raw_minutes=хвилини
[dropzone]
default_message=Перетягніть файли або натисніть тут, щоб завантажити.
invalid_input_type=Ви не можете завантажувати файли цього типу.
file_too_big=Розмір файлу ({{filesize}} MB), що більше ніж максимальний розмір: ({{maxFilesize}} MB).
remove_file=Видалити файл
@ -1300,6 +1362,7 @@ mark_as_unread=Позначити як непрочитане
mark_all_as_read=Позначити всі як прочитані
[gpg]
error.generate_hash=Не вдалося згенерувати хеш коміту
error.not_signed_commit=Непідписаний коміт
[units]

View File

@ -1475,9 +1475,7 @@ config.db_host=主机
config.db_name=数据库名称
config.db_user=用户名
config.db_ssl_mode=SSL
config.db_ssl_mode_helper=(仅限 "postgres" 使用)
config.db_path=数据库路径
config.db_path_helper=(用于 "sqlite3" 和 "tidb"
config.service_config=服务配置
config.register_email_confirm=需要电子邮件确认注册

View File

@ -737,9 +737,7 @@ config.db_config=資料庫設定
config.db_type=資料庫類型
config.db_host=主機地址
config.db_name=資料庫名稱
config.db_ssl_mode_helper=(僅限 "postgres" 使用)
config.db_path=資料庫路徑
config.db_path_helper=(用於 "sqlite3" 和 "tidb"
config.service_config=服務設定
config.show_registration_button=顯示註冊按鈕

View File

@ -808,9 +808,7 @@ config.db_config=資料庫設定
config.db_type=資料庫類型
config.db_host=主機地址
config.db_name=資料庫名稱
config.db_ssl_mode_helper=(僅限 "postgres" 使用)
config.db_path=資料庫路徑
config.db_path_helper=(用於 "sqlite3" 和 "tidb"
config.service_config=服務設定
config.show_registration_button=顯示註冊按鈕

View File

@ -105,7 +105,9 @@ func renderDirectory(ctx *context.Context, treeLink string) {
ctx.Data["FileContent"] = string(markup.Render(readmeFile.Name(), buf, treeLink, ctx.Repo.Repository.ComposeMetas()))
} else {
ctx.Data["IsRenderedHTML"] = true
ctx.Data["FileContent"] = string(bytes.Replace(buf, []byte("\n"), []byte(`<br>`), -1))
ctx.Data["FileContent"] = strings.Replace(
gotemplate.HTMLEscapeString(string(buf)), "\n", `<br>`, -1,
)
}
}
}
@ -208,7 +210,9 @@ func renderFile(ctx *context.Context, entry *git.TreeEntry, treeLink, rawLink st
ctx.Data["FileContent"] = string(markup.Render(blob.Name(), buf, path.Dir(treeLink), ctx.Repo.Repository.ComposeMetas()))
} else if readmeExist {
ctx.Data["IsRenderedHTML"] = true
ctx.Data["FileContent"] = string(bytes.Replace(buf, []byte("\n"), []byte(`<br>`), -1))
ctx.Data["FileContent"] = strings.Replace(
gotemplate.HTMLEscapeString(string(buf)), "\n", `<br>`, -1,
)
} else {
// Building code view blocks with line number on server side.
var fileContent string

View File

@ -49,8 +49,8 @@
<tr>
<td>{{.PID}}</td>
<td>{{.Description}}</td>
<td>{{.Start.FormatLong}}</td>
<td>{{TimeSinceUnix .Start $.Lang}}</td>
<td>{{DateFmtLong .Start}}</td>
<td>{{TimeSince .Start $.Lang}}</td>
</tr>
{{end}}
</tbody>

View File

@ -32,7 +32,7 @@
</div>
{{if .CanBeForked}}
<div class="ui compact labeled button" tabindex="0">
<a class="ui compact button {{if not $.CanSignedUserFork}}poping up{{end}}" {{if $.CanSignedUserFork}}href="{{AppSubUrl}}/repo/fork/{{.ID}}"{{else}} data-content="{{$.i18n.Tr "repo.fork_from_self"}}" data-position="top center" data-variation="tiny"{{end}}>
<a class="ui compact button {{if not $.CanSignedUserFork}}poping up{{end}}" {{if $.CanSignedUserFork}}href="{{AppSubUrl}}/repo/fork/{{.ID}}"{{else if $.IsSigned}} data-content="{{$.i18n.Tr "repo.fork_from_self"}}" data-position="top center" data-variation="tiny"{{end}}>
<i class="octicon octicon-repo-forked"></i>{{$.i18n.Tr "repo.fork"}}
</a>
<a class="ui basic label" href="{{.Link}}/forks">