Skip to content

Commit 7bb1b3f

Browse files
authored
Merge branch 'main' into add-microsoft-oauth2-providers
2 parents 2d7c289 + 4b6370c commit 7bb1b3f

File tree

9 files changed

+117
-25
lines changed

9 files changed

+117
-25
lines changed

models/issue_stopwatch.go

Lines changed: 45 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ import (
99
"time"
1010

1111
"code.gitea.io/gitea/modules/timeutil"
12+
13+
"xorm.io/xorm"
1214
)
1315

1416
// Stopwatch represents a stopwatch for time tracking.
@@ -61,20 +63,36 @@ func StopwatchExists(userID, issueID int64) bool {
6163

6264
// HasUserStopwatch returns true if the user has a stopwatch
6365
func HasUserStopwatch(userID int64) (exists bool, sw *Stopwatch, err error) {
66+
return hasUserStopwatch(x, userID)
67+
}
68+
69+
func hasUserStopwatch(e Engine, userID int64) (exists bool, sw *Stopwatch, err error) {
6470
sw = new(Stopwatch)
65-
exists, err = x.
71+
exists, err = e.
6672
Where("user_id = ?", userID).
6773
Get(sw)
6874
return
6975
}
7076

7177
// CreateOrStopIssueStopwatch will create or remove a stopwatch and will log it into issue's timeline.
7278
func CreateOrStopIssueStopwatch(user *User, issue *Issue) error {
73-
sw, exists, err := getStopwatch(x, user.ID, issue.ID)
79+
sess := x.NewSession()
80+
defer sess.Close()
81+
if err := sess.Begin(); err != nil {
82+
return err
83+
}
84+
if err := createOrStopIssueStopwatch(sess, user, issue); err != nil {
85+
return err
86+
}
87+
return sess.Commit()
88+
}
89+
90+
func createOrStopIssueStopwatch(e *xorm.Session, user *User, issue *Issue) error {
91+
sw, exists, err := getStopwatch(e, user.ID, issue.ID)
7492
if err != nil {
7593
return err
7694
}
77-
if err := issue.loadRepo(x); err != nil {
95+
if err := issue.loadRepo(e); err != nil {
7896
return err
7997
}
8098

@@ -90,11 +108,11 @@ func CreateOrStopIssueStopwatch(user *User, issue *Issue) error {
90108
Time: timediff,
91109
}
92110

93-
if _, err := x.Insert(tt); err != nil {
111+
if _, err := e.Insert(tt); err != nil {
94112
return err
95113
}
96114

97-
if _, err := CreateComment(&CreateCommentOptions{
115+
if _, err := createComment(e, &CreateCommentOptions{
98116
Doer: user,
99117
Issue: issue,
100118
Repo: issue.Repo,
@@ -104,21 +122,21 @@ func CreateOrStopIssueStopwatch(user *User, issue *Issue) error {
104122
}); err != nil {
105123
return err
106124
}
107-
if _, err := x.Delete(sw); err != nil {
125+
if _, err := e.Delete(sw); err != nil {
108126
return err
109127
}
110128
} else {
111129
// if another stopwatch is running: stop it
112-
exists, sw, err := HasUserStopwatch(user.ID)
130+
exists, sw, err := hasUserStopwatch(e, user.ID)
113131
if err != nil {
114132
return err
115133
}
116134
if exists {
117-
issue, err := getIssueByID(x, sw.IssueID)
135+
issue, err := getIssueByID(e, sw.IssueID)
118136
if err != nil {
119137
return err
120138
}
121-
if err := CreateOrStopIssueStopwatch(user, issue); err != nil {
139+
if err := createOrStopIssueStopwatch(e, user, issue); err != nil {
122140
return err
123141
}
124142
}
@@ -129,11 +147,11 @@ func CreateOrStopIssueStopwatch(user *User, issue *Issue) error {
129147
IssueID: issue.ID,
130148
}
131149

132-
if _, err := x.Insert(sw); err != nil {
150+
if _, err := e.Insert(sw); err != nil {
133151
return err
134152
}
135153

136-
if _, err := CreateComment(&CreateCommentOptions{
154+
if _, err := createComment(e, &CreateCommentOptions{
137155
Doer: user,
138156
Issue: issue,
139157
Repo: issue.Repo,
@@ -147,21 +165,33 @@ func CreateOrStopIssueStopwatch(user *User, issue *Issue) error {
147165

148166
// CancelStopwatch removes the given stopwatch and logs it into issue's timeline.
149167
func CancelStopwatch(user *User, issue *Issue) error {
150-
sw, exists, err := getStopwatch(x, user.ID, issue.ID)
168+
sess := x.NewSession()
169+
defer sess.Close()
170+
if err := sess.Begin(); err != nil {
171+
return err
172+
}
173+
if err := cancelStopwatch(sess, user, issue); err != nil {
174+
return err
175+
}
176+
return sess.Commit()
177+
}
178+
179+
func cancelStopwatch(e *xorm.Session, user *User, issue *Issue) error {
180+
sw, exists, err := getStopwatch(e, user.ID, issue.ID)
151181
if err != nil {
152182
return err
153183
}
154184

155185
if exists {
156-
if _, err := x.Delete(sw); err != nil {
186+
if _, err := e.Delete(sw); err != nil {
157187
return err
158188
}
159189

160-
if err := issue.loadRepo(x); err != nil {
190+
if err := issue.loadRepo(e); err != nil {
161191
return err
162192
}
163193

164-
if _, err := CreateComment(&CreateCommentOptions{
194+
if _, err := createComment(e, &CreateCommentOptions{
165195
Doer: user,
166196
Issue: issue,
167197
Repo: issue.Repo,

models/repo.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1125,7 +1125,7 @@ func CreateRepository(ctx DBContext, doer, u *User, repo *Repository, overwriteO
11251125

11261126
// Give access to all members in teams with access to all repositories.
11271127
if u.IsOrganization() {
1128-
if err := u.GetTeams(&SearchTeamOptions{}); err != nil {
1128+
if err := u.getTeams(ctx.e); err != nil {
11291129
return fmt.Errorf("GetTeams: %v", err)
11301130
}
11311131
for _, t := range u.Teams {

models/repo_list.go

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -217,16 +217,14 @@ func SearchRepositoryCondition(opts *SearchRepoOptions) builder.Cond {
217217
cond = cond.And(accessibleRepositoryCondition(opts.Actor))
218218
}
219219
} else {
220-
// Not looking at private organisations
220+
// Not looking at private organisations and users
221221
// We should be able to see all non-private repositories that
222222
// isn't in a private or limited organisation.
223223
cond = cond.And(
224224
builder.Eq{"is_private": false},
225225
builder.NotIn("owner_id", builder.Select("id").From("`user`").Where(
226-
builder.And(
227-
builder.Eq{"type": UserTypeOrganization},
228-
builder.Or(builder.Eq{"visibility": structs.VisibleTypeLimited}, builder.Eq{"visibility": structs.VisibleTypePrivate}),
229-
))))
226+
builder.Or(builder.Eq{"visibility": structs.VisibleTypeLimited}, builder.Eq{"visibility": structs.VisibleTypePrivate}),
227+
)))
230228
}
231229

232230
if opts.IsPrivate != util.OptionalBoolNone {

options/locale/locale_de-DE.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1848,6 +1848,7 @@ settings.add_telegram_hook_desc=<a href="%s">Telegram</a>-Integration zu deinem
18481848
settings.add_matrix_hook_desc=<a href="%s">Matrix</a>-Integration zu deinem Repository hinzufügen.
18491849
settings.add_msteams_hook_desc=<a href="%s">"Microsoft Teams"</a>-Integration zu deinem Repository hinzufügen.
18501850
settings.add_feishu_hook_desc=<a href="%s">Feishu</a>-Integration zu deinem Repository hinzufügen.
1851+
settings.add_Wechat_hook_desc=<a href="%s">Wechatwork</a> in dein Repository integrieren.
18511852
settings.deploy_keys=Deploy-Schlüssel
18521853
settings.add_deploy_key=Deploy-Schlüssel hinzufügen
18531854
settings.deploy_key_desc=Deploy-Keys haben nur Lesezugriff auf das Repository.
@@ -2710,6 +2711,7 @@ comment_issue=`hat das Issue <a href="%s/issues/%s">%s#%[2]s</a> kommentiert`
27102711
comment_pull=`kommentierte im Pull Request <a href="%s/pulls/%s">%s#%[2]s</a>`
27112712
merge_pull_request=`hat den Pull-Request <a href="%s/pulls/%s">%s#%[2]s</a> gemergt`
27122713
transfer_repo=hat Repository <code>%s</code> transferiert an <a href="%s">%s</a>
2714+
push_tag=hat Tag <a href="%s/src/tag/%s">%[4]s</a> auf <a href="%[1]s">%[3]s</a> gepusht
27132715
delete_tag=hat Tag %[2]s in <a href="%[1]s">%[3]s</a> gelöscht
27142716
delete_branch=hat Branch %[2]s in <a href="%[1]s">%[3]s</a> gelöscht
27152717
compare_branch=Vergleichen

options/locale/locale_es-ES.ini

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1848,6 +1848,7 @@ settings.add_telegram_hook_desc=Integrar <a href="%s">Telegrama</a> en tu reposi
18481848
settings.add_matrix_hook_desc=Integrar <a href="%s">Matrix</a> en su repositorio.
18491849
settings.add_msteams_hook_desc=Integrar <a href="%s">Microsoft Teams</a> en tu repositorio.
18501850
settings.add_feishu_hook_desc=Integrar <a href="%s">Slack</a> en su repositorio.
1851+
settings.add_Wechat_hook_desc=Integrar <a href="%s">Wechatwork</a> en su repositorio.
18511852
settings.deploy_keys=Claves de Implementación
18521853
settings.add_deploy_key=Añadir Clave de Implementación
18531854
settings.deploy_key_desc=Las claves de implementación tienen acceso de sólo lectura al repositorio.
@@ -2710,6 +2711,7 @@ comment_issue=`comentó en la incidencia <a href="%s/issues/%s">%s#%[2]s</a>`
27102711
comment_pull=`comentado en pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
27112712
merge_pull_request=`fusionado pull request <a href="%s/pulls/%s">%s#%[2]s</a>`
27122713
transfer_repo=transfirió el repositorio <code>%s</code> a <a href="%s">%s</a>
2714+
push_tag=hizó push la etiqueta <a href="%s/src/tag/%s">%[4]s</a> a <a href="%[1]s">%[3]s</a>
27132715
delete_tag=etiqueta eliminada %[2]s de <a href="%[1]s">%[3]s</a>
27142716
delete_branch=rama %[2]s eliminada, de <a href="%[1]s">%[3]s</a>
27152717
compare_branch=Comparar

options/locale/locale_ja-JP.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1848,6 +1848,7 @@ settings.add_telegram_hook_desc=<a href="%s">Telegram</a>をリポジトリと
18481848
settings.add_matrix_hook_desc=<a href="%s">Matrix</a> とリポジトリを組み合わせます。
18491849
settings.add_msteams_hook_desc=<a href="%s">Microsoft Teams</a>をリポジトリと組み合わせます。
18501850
settings.add_feishu_hook_desc=<a href="%s">Feishu</a>をリポジトリと組み合わせます。
1851+
settings.add_Wechat_hook_desc=<a href="%s">Wechatwork</a>をリポジトリと組み合わせます。
18511852
settings.deploy_keys=デプロイキー
18521853
settings.add_deploy_key=デプロイキーを追加
18531854
settings.deploy_key_desc=デプロイキーには、リポジトリの読み取り専用プルアクセス権が与えられます。

options/locale/locale_pt-PT.ini

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1848,6 +1848,7 @@ settings.add_telegram_hook_desc=Integrar <a href="%s">Telegram</a> no seu reposi
18481848
settings.add_matrix_hook_desc=Integrar <a href="%s">Matrix</a> no seu repositório.
18491849
settings.add_msteams_hook_desc=Integrar <a href="%s">Microsoft Teams</a> no seu repositório.
18501850
settings.add_feishu_hook_desc=Integrar <a href="%s">Feishu</a> no seu repositório.
1851+
settings.add_Wechat_hook_desc=Integrar <a href="%s">Wechatwork</a> no seu repositório.
18511852
settings.deploy_keys=Chaves de instalação
18521853
settings.add_deploy_key=Adicionar chave de instalação
18531854
settings.deploy_key_desc=Chaves de instalação têm acesso para puxar do repositório apenas em modo de leitura.

options/locale/locale_tr-TR.ini

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ add=Ekle
8383
add_all=Tümünü Ekle
8484
remove=Kaldır
8585
remove_all=Tümünü Kaldır
86+
edit=Düzenle
8687
8788
write=Yaz
8889
preview=Önizleme
@@ -315,6 +316,9 @@ password_pwned=Seçtiğiniz parola, daha önce herkese açık veri ihlallerinde
315316
password_pwned_err=HaveIBeenPwned'e yapılan istek tamamlanamadı
316317
317318
[mail]
319+
view_it_on=%s üzerinde görüntüle
320+
link_not_working_do_paste=Çalışmıyorsa, kopyalayıp tarayıcıya yapıştırmayı deneyin.
321+
hi_user_x=Merhaba <b>%s</b>,
318322
319323
activate_account=Lütfen hesabınızı aktifleştirin
320324
@@ -327,6 +331,8 @@ reset_password=Hesabınızı kurtarın
327331
register_success=Kayıt başarılı
328332

329333

334+
issue.action.close=<b>@%[1]s</b> kapattı #%[2]d.
335+
issue.action.reopen=<b>@%[1]s</b> yeniden açtı #%[2]d.
330336

331337
release.new.subject=%s içinden %s bırakıldı
332338

@@ -551,6 +557,8 @@ ssh_key_been_used=Bu SSH anahtarı, sunucuya zaten eklenmiş.
551557
ssh_key_name_used=Hesabınızda aynı ada sahip bir SSH anahtarı zaten var.
552558
ssh_principal_been_used=Bu sorumlu sunucuya zaten eklendi.
553559
gpg_key_id_used=Aynı kimliğe sahip bir açık GPG anahtarı zaten var.
560+
key_signature_gpg_placeholder='-----PGP İMZA BAŞLAT -----' ile başlar
561+
verify_gpg_key_success=GPG anahtarı '%s' doğrulandı.
554562
subkeys=Alt anahtarlar
555563
key_id=Anahtar Kimliği
556564
key_name=Anahtar İsmi
@@ -681,6 +689,13 @@ email_notifications.onmention=Sadece Bahsedilen E-posta
681689
email_notifications.disable=E-posta Bildirimlerini Devre Dışı Bırak
682690
email_notifications.submit=E-posta Tercihlerini Ayarla
683691
692+
visibility=Kullanıcı görünürlüğü
693+
visibility.public=Herkese Açık
694+
visibility.public_tooltip=Bütün kullanıcılara görünür
695+
visibility.limited=Sınırlı
696+
visibility.limited_tooltip=Sadece oturum açmış kullanıcılar görebilir
697+
visibility.private=Özel
698+
visibility.private_tooltip=Yalnızca organizasyon üyeleri tarafından görülebilir
684699
685700
[repo]
686701
new_repo_helper=Bir depo, revizyon geçmişi dahil tüm proje dosyalarını içerir. Zaten başka bir yerde mi var? <a href="%s">Depoyu taşıyın.</a>
@@ -759,6 +774,7 @@ delete_preexisting_label=Sil
759774
delete_preexisting=Önceden var olan dosyaları sil
760775
delete_preexisting_content=%s içindeki dosyaları sil
761776
delete_preexisting_success=%s içindeki kabul edilmeyen dosyalar silindi
777+
blame_prior=Bu değişiklikten önceki suçu görüntüle
762778

763779
transfer.accept=Aktarımı Kabul Et
764780
transfer.accept_desc="%s" tarafına aktar
@@ -829,11 +845,19 @@ migrated_from_fake=%[1]s Konumundan Göç Edildi
829845
migrate.migrate=%s Konumundan Göç Et
830846
migrate.migrating=<b>%s</b> konumundan taşınıyor ...
831847
migrate.migrating_failed=<b>%s</b> konumundan taşıma başarısız oldu.
848+
migrate.migrating_failed.error=Hata: %s
832849
migrate.github.description=Github.com veya Github Enterprise'dan veri taşıma.
833850
migrate.git.description=Git hizmetlerinden git verilerini taşıma veya yansıtma
834851
migrate.gitlab.description=Verileri GitLab.com'dan veya Kendi Kendine Barındırılan gitlab sunucusundan taşıma.
835852
migrate.gitea.description=Verileri Gitea.com'dan veya Kendi Kendine Barındırılan Gitea sunucusundan taşıma.
836853
migrate.gogs.description=Notabug.org'dan veya başka bir Kendi Kendine Barındırılan Gogs sunucusundan veri taşıma.
854+
migrate.migrating_git=Git Verilerini Taşıma
855+
migrate.migrating_topics=Konuları Taşıma
856+
migrate.migrating_milestones=Kilometre Taşlarını Taşıma
857+
migrate.migrating_labels=Etiketleri Taşıma
858+
migrate.migrating_releases=Sürümleri Taşıma
859+
migrate.migrating_issues=Konuları Taşıma
860+
migrate.migrating_pulls=Değişiklik İsteklerini Taşıma
837861

838862
mirror_from=şunun yansıması
839863
forked_from=şundan çatallanmış
@@ -1603,6 +1627,7 @@ settings.pulls.allow_rebase_merge_commit=Açık birleştirme işlemeleri ile Yen
16031627
settings.pulls.allow_squash_commits=İşlemeleri Birleştirmek için Ezmeyi Etkinleştir
16041628
settings.pulls.allow_manual_merge=Dİ'yi elle birleştirilmiş olarak işaretlemeyi etkinleştir
16051629
settings.pulls.enable_autodetect_manual_merge=Kendiliğinden algılamalı elle birleştirmeyi etkinleştir (Not: Bazı özel durumlarda yanlış kararlar olabilir)
1630+
settings.pulls.default_delete_branch_after_merge=Varsayılan olarak birleştirmeden sonra değişiklik isteği dalını sil
16061631
settings.projects_desc=Depo Projelerini Etkinleştir
16071632
settings.admin_settings=Yönetici Ayarları
16081633
settings.admin_enable_health_check=Depo Sağlık Kontrollerini Etkinleştir (git fsck)
@@ -1754,6 +1779,7 @@ settings.event_pull_request_review_desc=Değişiklik isteği onaylandı, reddedi
17541779
settings.event_pull_request_sync=Değişiklik İsteği Senkronize Edildi
17551780
settings.event_pull_request_sync_desc=Değişiklik isteği senkronize edildi.
17561781
settings.branch_filter=Dal filtresi
1782+
settings.branch_filter_desc=Gönderme, dal oluşturma ve dal silme olayları için glob deseni olarak belirtilen dal beyaz listesi. Boşsa veya <code>*</code> ise, tüm dallar için olaylar raporlanır. Sözdizimi için <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> belgelerine bakın. Örnekler: <code>master</code>, <code>{master,release*}</code>.
17571783
settings.active=Etkin
17581784
settings.active_helper=Tetiklenen olaylar hakkındaki bilgiler bu web isteği URL'sine gönderilir.
17591785
settings.add_hook_success=Web isteği eklendi.
@@ -1772,6 +1798,7 @@ settings.add_telegram_hook_desc=Deponuza <a href="%s">Telegram</a> entegre edin.
17721798
settings.add_matrix_hook_desc=Deponuza <a href="%s">Matrix</a> entegre edin.
17731799
settings.add_msteams_hook_desc=Deponuza <a href="%s">Microsoft Teams</a> entegre edin.
17741800
settings.add_feishu_hook_desc=Deponuza <a href="%s">Feishu</a> entegre edin.
1801+
settings.add_Wechat_hook_desc=Deponuza <a href="%s">Wechatwork</a> entegre edin.
17751802
settings.deploy_keys=Dağıtım Anahtarları
17761803
settings.add_deploy_key=Dağıtım Anahtarı Ekle
17771804
settings.deploy_key_desc=Dağıtım anahtarları, depoyu salt okunur çekme yetkisine sahip.
@@ -1823,6 +1850,7 @@ settings.dismiss_stale_approvals_desc=Değişiklik isteğinin içeriğini deği
18231850
settings.require_signed_commits=İmzalı İşleme Gerekli
18241851
settings.require_signed_commits_desc=Reddetme, onlar imzasızsa veya doğrulanamazsa bu dala gönderir.
18251852
settings.protect_protected_file_patterns=Korumalı dosya kalıpları (noktalı virgülle ayrılmış '\;'):
1853+
settings.protect_protected_file_patterns_desc=Kullanıcının bu dalda dosya ekleme, düzenleme veya silme hakları olsa bile doğrudan değiştirilmesine izin verilmeyen korumalı dosyalar. Birden çok desen noktalı virgül ('\;') kullanılarak ayrılabilir. Desen sözdizimi için <a href="https://pkg.go.dev/github.com/gobwas/glob#Compile">github.com/gobwas/glob</a> belgelerine bakın. Örnekler: <code>.drone.yml</code>, <code>/docs/**/*.txt</code>.
18261854
settings.add_protected_branch=Korumayı etkinleştir
18271855
settings.delete_protected_branch=Korumayı devre dışı bırak
18281856
settings.update_protect_branch_success='%s' dalı için dal koruması güncellendi.
@@ -1841,6 +1869,16 @@ settings.choose_branch=Bir dal seç…
18411869
settings.no_protected_branch=Korumalı dal yok.
18421870
settings.edit_protected_branch=Düzenle
18431871
settings.protected_branch_required_approvals_min=Gerekli onaylar negatif olamaz.
1872+
settings.tags=Etiketler
1873+
settings.tags.protection=Etiket Koruması
1874+
settings.tags.protection.pattern=Etiket Deseni
1875+
settings.tags.protection.allowed=İzin Verilen
1876+
settings.tags.protection.allowed.users=İzin verilen kullanıcılar
1877+
settings.tags.protection.allowed.teams=İzin verilen takımlar
1878+
settings.tags.protection.allowed.noone=Hiç kimse
1879+
settings.tags.protection.create=Etiketi Koru
1880+
settings.tags.protection.none=Korumalı etiket yok.
1881+
settings.tags.protection.pattern.description=Birden çok etiketi eşleştirmek için tek bir ad, glob deseni veya normal ifade kullanabilirsiniz. Daha fazlası için <a target="_blank" rel="noopener" href="https://docs.gitea.io/en-us/protected-tags/">korumalı etiketler rehberini</a> okuyun.
18441882
settings.bot_token=Bot Jetonu
18451883
settings.chat_id=Sohbet Kimliği
18461884
settings.matrix.homeserver_url=Ev sunucusu URL'si
@@ -1854,6 +1892,7 @@ settings.archive.success=Depo başarıyla arşivlendi.
18541892
settings.archive.error=Depoyu arşivlemeye çalışırken bir hata oluştu. Daha fazla ayrıntı için günlüğe bakın.
18551893
settings.archive.error_ismirror=Yansılanmış bir depoyu arşivleyemezsiniz.
18561894
settings.archive.branchsettings_unavailable=Depo arşivlenirse dal ayarları kullanılamaz.
1895+
settings.archive.tagsettings_unavailable=Depo arşivlenmişse etiket ayarları kullanılamaz.
18571896
settings.unarchive.button=Depoyu Arşivden Çıkar
18581897
settings.unarchive.header=Bu Depoyu Arşivden Çıkar
18591898
settings.unarchive.text=Depoyu arşivden çıkarmak, yeni sorunların ve değişiklik isteklerinin yanı sıra işleme ve itme yeteneğini de geri kazandıracaktır.
@@ -1968,6 +2007,7 @@ release.deletion_tag_desc=Bu etiket depodan silinecek. Depo içeriği ve geçmi
19682007
release.deletion_tag_success=Etiket silindi.
19692008
release.tag_name_already_exist=Bu etiket adına sahip bir sürüm zaten var.
19702009
release.tag_name_invalid=Etiket adı geçerli değil.
2010+
release.tag_name_protected=Etiket ismi korumalıdır.
19712011
release.tag_already_exist=Bu etiket adı zaten var.
19722012
release.downloads=İndirmeler
19732013
release.download_count=İndirilen: %s
@@ -2621,6 +2661,7 @@ comment_issue=`<a href="%s/issues/%s">%s#%[2]s</a> konusuna yorum yazdı`
26212661
comment_pull=`<a href="%s/pulls/%s">%s#%[2]s</a> değişiklik isteği üzerinde yorum yapıldı`
26222662
merge_pull_request=`<a href="%s/pulls/%s">%s#%[2]s</a> değişiklik isteğini birleştirdi`
26232663
transfer_repo=depo <code>%s</code> <a href="%s">%s</a>'a aktarıldı
2664+
push_tag=<a href="%s/src/tag/%s">%[4]s</a> etiketini <a href="%[1]s">%[3]s</a> konumuna gönderdi
26242665
delete_tag=%[2]s etiketi <a href="%[1]s">%[3]s</a> deposundan silindi
26252666
delete_branch=<a href="%[1]s">%[3]s</a> deposundan %[2]s dalı silindi
26262667
compare_branch=Karşılaştır

0 commit comments

Comments
 (0)