Service auto-hébergé
theonedev/onedev avatar
theonedev/onedev

OneDev : une plateforme Java qui combine revue de code, CI/CD et agents IA

La plateforme de développement unifiée et autonome. Tutoriel** Service Desk pour lier les e-mails aux problèmes Utilisez les problèmes comme système de tickets pour assister les clients par e-mail, sans leur demander d'enregistrer des comptes.

15 240 étoiles978 forksJavaMIT

En bref

De quoi s’agit-il ?
Une plateforme de développement écrite en Java, qui associe navigation dans le code et règles de protection au suivi d'issues, à la CI/CD, aux registres de paquets et aux flux de travail IA intégrés.
À qui s’adresse-t-il ?
OneDev est développé sur sa propre instance à code.onedev.io, où la README dirige les signalements d'issues et les pull requests. Les métadonnées du dépôt indiquent la licence SPDX MIT, mais l'extrait de licence ne contient aucun texte de licence, si bien que les conditions précises ne peuvent pas être citées à partir des sources fournies.
Puis-je l’utiliser commercialement ?
Oui. MIT est une licence permissive : vous pouvez utiliser, modifier et vendre un logiciel qui en dépend, à condition de conserver les mentions de droit d’auteur et de licence.
Est-il encore maintenu ?
Oui. Les derniers commits datent d’il y a 3 jours.
En quel langage est-il écrit ?
Principalement Java, d’après les statistiques de langage de GitHub.

Ces réponses reposent sur les données GitHub du projet (dernière synchronisation le 14 septembre 2026) et sur notre analyse. Elles ne constituent pas un avis juridique.

ANALYSE OPEN SOURCE APPROFONDIE

Une plateforme Java développée sur sa propre infrastructure

OneDev est une plateforme de développement en Java dont la description du dépôt est "The Unified and Autonomous Development Platform". Les métadonnées du dépôt enregistrent 15 142 étoiles et 966 forks, avec zéro issue ouverte sur GitHub. La README explique pourquoi : le développement se fait sur l'instance propre du projet à code.onedev.io, comme exercice de dogfooding, et les issues et pull requests y sont soumises plutôt que sur GitHub. Le site public est onedev.io, et la README renvoie vers docs.onedev.io pour la prise en main et les tutoriels.

Recherche de code, navigation et annotations de revue

La première section de fonctionnalités de la README décrit la recherche et la navigation de symboles sensibles au langage dans n'importe quel commit. Un clic sur un symbole montre ses occurrences dans le fichier courant, et la recherche de code prend en charge les expressions régulières. Les résultats des pipelines CI/CD annotent le code avec des informations de couverture et des problèmes pour faciliter la revue. Des discussions peuvent être lancées sur n'importe quelle sélection de code ou diff, avec des suggestions applicables, et la README affirme que les discussions restent associées au code pour aider la compréhension. La README renvoie vers une démo en direct de la base Kubernetes sur l'instance du projet, mais elle ne documente ni la syntaxe de recherche ni la configuration des annotations.

Règles de protection et mise à jour des dépendances

Les règles de protection peuvent exiger une revue ou une vérification CI/CD lorsque certains utilisateurs touchent certains fichiers dans certaines branches. Pour la maintenance des dépendances, OneDev s'intègre à Renovate afin que les mises à jour arrivent sous forme de pull requests, qui peuvent être fusionnées automatiquement une fois que les réviseurs requis les approuvent ou que les tests requis passent. La README renvoie vers des tutoriels pour les deux fonctions, mais la syntaxe des règles et le format de configuration Renovate ne sont pas documentés dans la README elle-même.

Flux d'issues, Kanban et support par courriel

Le suivi d'issues prend en charge des états et champs personnalisés, des règles de transition d'état manuelles ou automatiques, et des liens entre issues qui synchronisent les opérations et les états. Des issues confidentielles peuvent exister dans des projets publics. Un tableau Kanban permet de déplacer les tâches manuellement, ou automatiquement selon des règles lorsque le travail associé est committé, testé, publié ou déployé. Une fonction de service desk transforme les issues en système de tickets pour le support par courriel, sans que les clients aient à créer de compte, et différents contacts de support peuvent être attribués à différents projets ou clients. Le suivi du temps enregistre le temps estimé et passé, agrège automatiquement le temps des sous-tâches et génère des feuilles de temps pour les statistiques de travail et la facturation.

Configuration CI/CD, exécuteurs et registres de paquets

Les jobs CI/CD sont créés via une interface graphique intuitive plutôt que par configuration écrite à la main, avec des modèles pour les frameworks typiques, des paramètres typés, des jobs matriciels, de la logique CI/CD réutilisable et une gestion du cache. Les jobs s'exécutent directement dans des conteneurs ou sur du bare metal, et Kubernetes ou des agents gèrent un grand nombre d'exécutions concurrentes. Les outils de débogage comprennent la pause d'un job en cours, un terminal web pour inspecter l'environnement du job et l'exécution locale d'un job contre des modifications non committées. Un registre de paquets intégré gère les paquets binaires et les associe aux jobs CI/CD.

Fonctionnalités IA et flux de travail d'agents

L'IA intégrée accepte les requêtes en langage naturel, explique des extraits de code, aide à comprendre une base de code, révise les commits et les pull requests, assiste la rédaction des spécifications CI/CD et enquête sur les erreurs de build. Les espaces de travail fournissent des conteneurs de développement préconfigurés sur le serveur, permettant de travailler sur n'importe quelle branche depuis un navigateur avec des agents de terminal comme OpenCode, Claude Code et Codex. Un outil en ligne de commande nommé TOD peut interroger et modifier les issues, les pull requests et les builds, exécuter des jobs CI/CD contre des modifications locales et vérifier localement des pull requests. La README décrit aussi des utilisateurs IA qui travaillent de manière autonome dans le flux des issues et des pull requests : implémenter les issues assignées, revoir et améliorer les pull requests, corriger les échecs CI/CD et résoudre les conflits de fusion.

Organisation, tableaux de bord et passage à l'échelle

Les projets peuvent être organisés en arborescence, où les projets parents définissent des paramètres communs que les projets enfants héritent. Les requêtes intelligentes couvrent tout dans le système et peuvent être enregistrées et suivies par abonnement. Les tableaux de bord disposent des gadgets pour les équipes et les utilisateurs, avec des options de partage qui incluent la mise à disposition publique pour tous. Une palette de commandes invoquée avec Ctrl ou Cmd+K recherche dans la plateforme et saute directement aux résultats. Pour le passage à l'échelle, la README décrit une configuration de cluster simple, avec des projets répliqués entre serveurs pour la haute disponibilité ou distribués pour la scalabilité horizontale. Les étapes de configuration du cluster ne sont pas documentées dans la README.

Affirmations de performance et statut de licence

La README affirme que l'ensemble complet des fonctionnalités fonctionne sur une machine à un cœur et 2 Go de mémoire pour des projets de taille moyenne, et que la plateforme est utilisée intensivement depuis plus de cinq ans, avec une fiabilité éprouvée. Ce sont des affirmations du projet lui-même ; les sources ne fournissent ni benchmarks ni vérification indépendante. La README renvoie vers une comparaison de performance externe, mais la méthodologie de cet article n'est pas résumée dans la README. Les métadonnées du dépôt indiquent l'identifiant de licence SPDX MIT, mais l'extrait de licence fourni ne contient aucun texte de licence et précise qu'aucun fichier LICENSE n'a été trouvé au chemin habituel. Les conditions de licence précises, ainsi que tout ce qui concerne la garantie, le support ou la posture de sécurité, ne peuvent pas être vérifiés à partir des sources fournies.

Conclusion éditoriale

OneDev est développé sur sa propre instance à code.onedev.io, où la README dirige les signalements d'issues et les pull requests. Les métadonnées du dépôt indiquent la licence SPDX MIT, mais l'extrait de licence ne contient aucun texte de licence, si bien que les conditions précises ne peuvent pas être citées à partir des sources fournies.

Sources officielles

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Notes de la communauté

Notes de la communauté