2009-05-28 4 views
4

Je savais qu'avec Subversion, vous pouvez attacher des propriétés arbitraires à chaque fichier.Est-ce que git supporte le versionnage de propriétés arbitraires comme Subversion?

Dans Subversion, certaines propriétés ont une signification particulière, elles sont les propriétés de l'espace de noms "svn:", mais vous pouvez attacher n'importe quelle propriété arbitraire aux fichiers.

Je me demande si git ou tout autre système de contrôle de version distribuée prend en charge cette fonctionnalité.

Tout autre système de contrôle de version (distribué ou centralisé) a le support de quelque chose de similaire aux propriétés de subversion?

Répondre

3

La chose la plus proche serait gitattributes

$GIT_DIR/info/attributes, .gitattributes 

Un fichier gitattributes est un simple fichier texte qui donne des attributs à noms de fichiers.
Chaque ligne dans le fichier gitattributes est de la forme:

pattern attr1 attr2 ... 

Autrement dit, un motif suivi par une liste d'attributs, séparés par des espaces.
Lorsque le motif correspond au chemin en question, les attributs figurant sur la ligne sont donnés au chemin

0

Il est possible d'ajouter des attributs à l'git fichiers attributs. Vous pouvez ensuite interroger les valeurs avec git-check-attr. Pour autant que je sache, il y a non correspondant git-set-attr type de fonction, vous devez mettre à jour les fichiers d'attributs git directement.

Utilisez .gitattributes pour les attributs qui seront la version contrôlée et déplacer lorsque le dépôt se cloné, tiré etc.

Utilisez $GIT_DIR/info/attributes pour « privé » des attributs qui ne seront pas déplacés lors de faire transférer l'historique des versions à un autre référentiel.

Questions connexes