Fait 1: les Projets et les Dépôts ont toujours été synonymes sur GitHub.
Fait 2: Ce n'est plus le cas.
Il y a beaucoup de confusion au sujet de Dépôts et de Projets. Dans le passé, les deux termes ont été utilisés assez bien de façon interchangeable par les utilisateurs et le GitHub est très propre documentation. Cela se traduit par quelques-uns des réponses et des commentaires ici qui expliquent les différences subtiles entre ces termes et quand l'un a été préférée à une autre. La différence étaient toujours subtile, par exemple, de la question de traqueur de faire partie du projet, mais pas le repo qui pourrait être bien comme strictement git chose etc.
N'est plus du tout.
Actuellement, les repos et les projets se réfèrent à différents types d'entités qui ont séparé les Api:
Depuis lors, il n'est plus correct d'appeler le dépôt d'un projet ou vice versa.
Notez qu'il est souvent confondu dans la documentation officielle et il est regrettable qu'un terme qui a déjà été largement utilisé a été choisi comme le nom de la nouvelle entité, mais c'est le cas et nous devons vivre avec cela.
La conséquence est que le repos et les projets sont généralement confus et chaque fois que vous lisez sur GitHub projets que vous avez à me demander si c'est vraiment sur les projets ou sur les pensions de titres. S'ils avaient choisi un autre nom ou une abréviation, comme le "projet" puis nous avons pu savoir que ce qui est discuté est le nouveau type d'entité, un objet précis avec le béton des propriétés, ou d'une manière générale repo-comme projectish genre de truc.
Le terme qui est généralement sans ambiguïté est "projet".
Que pouvons-nous apprendre à partir de l'API
Le premier point de terminaison dans la documentation des Projets de l'API:
est décrite comme suit: Liste de dépôt des projets. Cela signifie qu'un référentiel peut avoir de nombreux projets. Ces deux-là ne peut pas dire la même chose. Il comprend Réponse si les projets sont désactivés:
{
"message": "Projects are disabled for this repo",
"documentation_url": "https://developer.github.com/v3"
}
ce qui signifie que certaines repos peut avoir des projets désactivé. Encore une fois, ceux qui ne peuvent pas être la même chose quand un repo peut avoir des projets désactivé.
Il y a quelques points de terminaison:
-
Créer un référentiel de projet -
POST /repos/:owner/:repo/projects
-
La création d'une organisation de projet -
POST /orgs/:org/projects
mais il n'y est pas:
Créer un projet utilisateur - POST /users/:user/projects
Ce qui nous amène à une autre différence:
1. Les référentiels peuvent appartenir à des utilisateurs ou des organisations
2. Les projets peuvent appartenir à des référentiels ou des organisations
ou, plus important encore:
1. Les projets peuvent appartenir à des référentiels, mais pas l'inverse
2. Les projets peuvent appartenir à des organisations, mais pas pour les utilisateurs
3. Les référentiels peuvent appartenir à des organisations et des utilisateurs
Voir aussi: