forked from NYANDEV/forgejo
fc037b4b82
closes #13585 fixes #9067 fixes #2386 ref #6226 ref #6219 fixes #745 This PR adds support to process incoming emails to perform actions. Currently I added handling of replies and unsubscribing from issues/pulls. In contrast to #13585 the IMAP IDLE command is used instead of polling which results (in my opinion ๐) in cleaner code. Procedure: - When sending an issue/pull reply email, a token is generated which is present in the Reply-To and References header. - IMAP IDLE waits until a new email arrives - The token tells which action should be performed A possible signature and/or reply gets stripped from the content. I added a new service to the drone pipeline to test the receiving of incoming mails. If we keep this in, we may test our outgoing emails too in future. Co-authored-by: silverwind <me@silverwind.io> Co-authored-by: Lunny Xiao <xiaolunwen@gmail.com>
20 KiB
20 KiB
date | title | slug | weight | toc | draft | menu | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2019-02-14T11:51:04+08:00 | ๆจชๅๅฏนๆฏ Gitea ไธๅ ถๅฎ Git ๆ็ฎกๅทฅๅ ท | comparison | 5 | false | false |
|
ๆจชๅๅฏนๆฏ Gitea ไธๅ ถๅฎ Git ๆ็ฎกๅทฅๅ ท
่ฟ้ๅๅบไบ Gitea ไธๅ ถๅฎไธไบ Git ๆ็ฎกๅทฅๅ ทไน้ด็ๅผๅ๏ผไปฅไพฟ็กฎ่ฎค Gitea ๆฏๅฆ่ฝๅคๆปก่ถณๆจ็้ๆฑใ
่ฏทๆณจๆ๏ผๆญคๅ่กจไธญ็ๆไบ่กจ้กนๅฏ่ฝๅทฒ็ป่ฟๆถ๏ผๅ ไธบๆไปฌๅนถๆฒกๆๅฎๆๆฃๆฅๅ ถๅฎไบงๅ็ๅ่ฝๆฏๅฆๆๆๆดๆนใไฝ ๅฏไปฅๅๅพ Github issue ๆฅๅธฎๅฉๆไปฌๆดๆฐ่ฟๆถ็ๅ ๅฎน๏ผๆ่ฐข๏ผ
่กจๆ ผไธญ็็ฌฆๅทๅซไน:
-
โ - ๆฏๆ
-
โ - ้จๅๆฏๆ
-
โ - ไธๆฏๆ
-
? - ไธ็กฎๅฎ
ไธป่ฆ็นๆง
็นๆง | Gitea | Gogs | GitHub EE | GitLab CE | GitLab EE | BitBucket | RhodeCode CE |
---|---|---|---|---|---|---|---|
ๅผๆบๅ ่ดน | โ | โ | โ | โ | โ | โ | โ |
ไฝ่ตๆบๅผ้ (RAM/CPU) | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆๅค็งๆฐๆฎๅบ | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆๅค็งๆไฝ็ณป็ป | โ | โ | โ | โ | โ | โ | โ |
ๅ็บง็ฎไพฟ | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆ Markdown | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆ Orgmode | โ | โ | โ | โ | โ | โ | ? |
ๆฏๆ CSV | โ | โ | โ | โ | โ | โ | ? |
ๆฏๆ็ฌฌไธๆนๆธฒๆๅทฅๅ ท | โ | โ | โ | โ | โ | โ | ? |
Git ้ฉฑๅจ็้ๆ pages | โ | โ | โ | โ | โ | โ | โ |
Git ้ฉฑๅจ็้ๆๅ wiki | โ | โ | โ | โ | โ | โ (cloud only) | โ |
้จ็ฝฒไปค็ | โ | โ | โ | โ | โ | โ | โ |
ไปๅบๅๆ้ไปค็ | โ | โ | โ | โ | โ | โ | โ |
ๅ ็ฝฎๅฎนๅจ Registry | โ | โ | โ | โ | โ | โ | โ |
ๅค้จ Git ้ๅ | โ | โ | โ | โ | โ | โ | โ |
WebAuthn (2FA) | โ | โ | โ | โ | โ | โ | ? |
ๅ ็ฝฎ CI/CD | โ | โ | โ | โ | โ | โ | โ |
ๅญ็ป็ป๏ผ็ป็ปๅ ็็ป็ป | โ | โ | โ | โ | โ | โ | โ |
ไปฃ็ ็ฎก็
็นๆง | Gitea | Gogs | GitHub EE | GitLab CE | GitLab EE | BitBucket | RhodeCode CE |
---|---|---|---|---|---|---|---|
ไปๅบไธป้ขๆ่ฟฐ | โ | โ | โ | โ | โ | โ | โ |
ไปๅบๅ ไปฃ็ ๆ็ดข | โ | โ | โ | โ | โ | โ | โ |
ๅ จๅฑไปฃ็ ๆ็ดข | โ | โ | โ | โ | โ | โ | โ |
Git LFS 2.0 | โ | โ | โ | โ | โ | โ | โ |
็ป็ป้็จ็ข | โ | โ | โ | โ | โ | โ | โ |
็ป็ฒๅบฆ็จๆท่ง่ฒ (ไพๅฆ Code, Issues, Wiki) | โ | โ | โ | โ | โ | โ | โ |
ๆไบคไบบ็่บซไปฝ้ช่ฏ | โ | โ | ? | โ | โ | โ | โ |
GPG ็ญพๅ็ๆไบค | โ | โ | โ | โ | โ | โ | โ |
SSH ็ญพๅ็ๆไบค | โ | โ | โ | โ | โ | ? | ? |
ๆ็ปๆช็จ้่ฟ้ช่ฏ็ๆไบค | โ | โ | โ | โ | โ | โ | โ |
ไปๅบๆดป่ทๅบฆ้กต้ข | โ | โ | โ | โ | โ | โ | โ |
ๅๆฏ็ฎก็ | โ | โ | โ | โ | โ | โ | โ |
ๅปบ็ซๆฐๅๆฏ | โ | โ | โ | โ | โ | โ | โ |
ๅจ็บฟไปฃ็ ็ผ่พ | โ | โ | โ | โ | โ | โ | โ |
ๆไบค็็ป่ฎกๅพ่กจ | โ | โ | โ | โ | โ | โ | โ |
ๆจกๆฟไปๅบ | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅ็ฎก็
็นๆง | Gitea | Gogs | GitHub EE | GitLab CE | GitLab EE | BitBucket | RhodeCode CE |
---|---|---|---|---|---|---|---|
ๅทฅๅ่ท่ธช | โ | โ | โ | โ | โ | โ (cloud only) | โ |
ๅทฅๅๆจกๆฟ | โ | โ | โ | โ | โ | โ | โ |
ๆ ็ญพ | โ | โ | โ | โ | โ | โ | โ |
ๆถ้ด่ท่ธช | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆๅคไธช่ด่ดฃไบบ | โ | โ | โ | โ | โ | โ | โ |
ๅ ณ่็ๅทฅๅ | โ | โ | โ | โ | โ | โ | โ |
็งๅฏๅทฅๅ | โ | โ | โ | โ | โ | โ | โ |
่ฏ่ฎบๅ้ฆ | โ | โ | โ | โ | โ | โ | โ |
้ๅฎ่ฎจ่ฎบ | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅๆนๅค็ | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅ็ๆฟ | โ | โ | โ | โ | โ | โ | โ |
ไปๅทฅๅๅๅปบๅๆฏ | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅๆ็ดข | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅๅ จๅฑๆ็ดข | โ | โ | โ | โ | โ | โ | โ |
ๅทฅๅไพ่ตๅ ณ็ณป | โ | โ | โ | โ | โ | โ | โ |
้่ฟ Email ๅๅปบๅทฅๅ | โ | โ | โ | โ | โ | โ | โ |
ๆๅกๅฐ | โ | โ | โ | โ | โ | โ | โ |
Pull/Merge requests
็นๆง | Gitea | Gogs | GitHub EE | GitLab CE | GitLab EE | BitBucket | RhodeCode CE |
---|---|---|---|---|---|---|---|
Pull/Merge requests | โ | โ | โ | โ | โ | โ | โ |
Squash merging | โ | โ | โ | โ | โ | โ | โ |
Rebase merging | โ | โ | โ | โ | โ | โ | โ |
่ฏ่ฎบ Pull/Merge request ไธญ็ๆ่กไปฃ็ | โ | โ | โ | โ | โ | โ | โ |
ๆๅฎ Pull/Merge request ็ๅฎกๆ ธไบบ | โ | โ | โ | โ | โ | โ | โ |
่งฃๅณ Merge ๅฒ็ช | โ | โ | โ | โ | โ | โ | โ |
้ๅถๆไบ็จๆท็ push ๅ merge ๆ้ | โ | โ | โ | โ | โ | โ | โ |
ๅ้ๆไบ commits ๆ merge request | โ | โ | โ | โ | โ | โ | โ |
Pull/Merge requests ๆจกๆฟ | โ | โ | โ | โ | โ | โ | โ |
ๆฅ็ Cherry-picking ็ๆดๆน | โ | โ | โ | โ | โ | โ | โ |
ไธ่ฝฝ Patch | โ | โ | โ | โ | โ | / | โ |
็ฌฌไธๆน้ๆ
็นๆง | Gitea | Gogs | GitHub EE | GitLab CE | GitLab EE | BitBucket | RhodeCode CE |
---|---|---|---|---|---|---|---|
ๆฏๆ Webhook | โ | โ | โ | โ | โ | โ | โ |
่ชๅฎไน Git ้ฉๅญ | โ | โ | โ | โ | โ | โ | โ |
้ๆ AD / LDAP | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆๅคไธช LDAP / AD ๆๅก | โ | โ | โ | โ | โ | โ | โ |
LDAP ็จๆทๅๆญฅ | โ | โ | โ | โ | โ | โ | โ |
SAML 2.0 service provider | โ | โ | โ | โ | โ | โ | โ |
ๆฏๆ OpenId ่ฟๆฅ | โ | โ | โ | โ | โ | ? | โ |
้ๆ OAuth 2.0๏ผๅค้จๆๆ๏ผ | โ | โ | โ | โ | โ | ? | โ |
ไฝไธบ OAuth 2.0 provider | โ | โ | โ | โ | โ | โ | โ |
ไบๆฌก้ช่ฏ (2FA) | โ | โ | โ | โ | โ | โ | โ |
้ๆ Mattermost/Slack | โ | โ | โ | โ | โ | โ | โ |
้ๆ Discord | โ | โ | โ | โ | โ | โ | โ |
้ๆ Microsoft Teams | โ | โ | โ | โ | โ | โ | โ |
ๆพ็คบๅค้จ CI/CD ็็ถๆ | โ | โ | โ | โ | โ | โ | โ |