- Les sous-modules mettent-ils automatiquement à jour?
- Git va-t-il les sous-modules de mise à jour?
- Puis-je commettre des modifications dans un sous-module?
- Les sous-modules Git sont-ils une bonne idée?
- Quelle commande utiliserez-vous pour mettre à jour tous les sous-modules de votre référentiel?
- Pouvez-vous pousser vers un sous-module?
- Que fait la synchronisation des sous-modules?
- Qu'est-ce que la mise à jour du sous-module GIT - distant?
- Qu'est-ce que la mise à jour du sous-module Git - récursif?
- Pourquoi le sous-module est-il sale?
- Les sous-modules devraient-ils être en gitignore?
- Où est engagé dans le sous-module Git?
- Quel est l'inconvénient des sous-modules Git?
- Quels sont les inconvénients de l'utilisation des sous-modules Git?
- Quelle est une meilleure alternative aux sous-modules Git?
- Comment vérifier et mettre à jour les sous-modules dans GIT?
- Git pousse-t-il les sous-modules?
- Que fait la synchronisation des sous-modules?
- Qu'est-ce que la mise à jour du sous-module Git - récursif?
- Qu'est-ce que la mise à jour du sous-module GIT - distant?
- Le sous-module est-il généré par le sous-module?
- Les sous-modules devraient-ils être en gitignore?
- Est-ce que le sous-arbre est meilleur que le sous-module git?
Les sous-modules mettent-ils automatiquement à jour?
Un sous-module GIT est un enregistrement dans un référentiel GIT hôte qui pointe vers un engagement spécifique dans un autre référentiel externe. Les sous-modules sont très statiques et ne suivent que des validations spécifiques. Les sous-modules ne suivent pas les références ou les branches GIT et ne sont pas automatiquement mis à jour lorsque le référentiel hôte est mis à jour.
Git va-t-il les sous-modules de mise à jour?
Si vous souhaitez vérifier de nouveaux travaux dans un sous-module, vous pouvez entrer dans le répertoire et exécuter Git Fetch et Git fusionne la branche en amont pour mettre à jour le code local. Maintenant, si vous revenez dans le projet principal et exécutez Git Diff - submodule, vous pouvez voir que le sous-module a été mis à jour et obtenir une liste de validations qui y ont été ajoutées.
Puis-je commettre des modifications dans un sous-module?
Le sous-module est juste un référentiel séparé. Si vous souhaitez apporter des modifications à lui, vous devriez apporter les modifications à son référentiel et les pousser comme dans un référentiel GIT ordinaire (exécutez simplement les commandes GIT dans le répertoire du sous-module).
Les sous-modules Git sont-ils une bonne idée?
Les sous-modules Git peuvent sembler puissants ou cool à l'avance, mais pour toutes les raisons ci-dessus, c'est une mauvaise idée de partager le code à l'aide de sous-modules, en particulier lorsque le code change fréquemment. Ce sera bien pire quand vous aurez de plus en plus de développeurs travaillant sur les mêmes dépositions.
Quelle commande utiliserez-vous pour mettre à jour tous les sous-modules de votre référentiel?
Utilisez la commande de mise à jour du sous-module GIT pour définir les sous-modules sur le commit spécifié par le référentiel principal. Cela signifie que si vous réalisez de nouveaux changements dans les sous-modules, vous devez créer un nouvel engagement dans votre référentiel principal afin de suivre les mises à jour des sous-modules imbriqués.
Pouvez-vous pousser vers un sous-module?
Dans le repo parent, vous pouvez également utiliser Git Push --Recurse-Submodules = Vérifier qui empêche de pousser le repo parent si le ou les sous-modules ne sont pas poussés en premier. Une autre option est Git Push --Recurse-submodules = à la demande qui essaiera de pousser automatiquement les sous-modules (si nécessaire) avant de pousser le repo parent.
Que fait la synchronisation des sous-modules?
La synchronisation du sous-module GIT synchronise tous les sous-modules tandis que le sous-module Git Sync - A synchronise le sous-module "A" uniquement. Si - réécursive est spécifié, cette commande se reproduira dans les sous-modules enregistrés et synchronisera tout sous-module imbriqué.
Qu'est-ce que la mise à jour du sous-module GIT - distant?
Une mise à jour du sous-module GIT - Init --Remote est comme: Git Submodule init: Pour initialiser (Checkout) Les sous-modules enregistrés dans l'index. Mise à jour du sous-module GIT --Remote: Pour tirer de la branche enregistrée (ou maître par défaut), une fois le sous-module initialisé (vérifié).
Qu'est-ce que la mise à jour du sous-module Git - récursif?
Si - réécursive est spécifié, cette commande se reproduira dans les sous-modules enregistrés et mettra à jour tout sous-module imbriqué. Afficher le résumé de la validation entre le commit donné (par défaut à la tête) et l'arborescence / index qui fonctionne.
Pourquoi le sous-module est-il sale?
Les sous-modules sont désormais considérés comme sales s'ils ont des fichiers modifiés ou des fichiers non suivis, alors qu'auparavant, ce ne serait le cas que si la tête dans le sous-module pointé du mauvais engagement.
Les sous-modules devraient-ils être en gitignore?
Non, vous n'avez pas besoin d'ajouter votre sous-module à votre . Gitignore: Ce que le parent verra de votre sous-module est un gitlink (une entrée spéciale, mode 160000). Cela signifie: tout changement directement effectué dans un sous-module doit être suivi d'un engagement dans le répertoire parent.
Où est engagé dans le sous-module Git?
Il est stocké directement dans la base de données d'objets de Git. L'objet d'arbre pour le répertoire où la vie du sous-module aura une entrée pour la validation du sous-module (c'est le soi-disant "Gitlink").
Quel est l'inconvénient des sous-modules Git?
Les sous-modules ne peuvent pas être facilement examinés dans les ensembles de change.
Ils apparaîtront simplement comme un hachage SHA1 du nouveau commit qui sera vérifié. Afin de vérifier les modifications réellement dans cet engagement, vous devrez vérifier ces engagements vous-même.
Quels sont les inconvénients de l'utilisation des sous-modules Git?
Cela est dû à certains inconvénients majeurs autour des sous-modules Git, comme être verrouillé sur une version spécifique du référentiel extérieur, le manque de gestion efficace de la fusion et la notion générale que le référentiel Git lui-même ne sait pas vraiment qu'il s'agit maintenant d'un multi-multi-multiples référentiel de module.
Quelle est une meilleure alternative aux sous-modules Git?
Git Subtree est une excellente alternative
Après avoir utilisé des sous-modules Git pendant un certain temps, vous verrez Git Subtree résout beaucoup de problèmes avec le sous-module Git. Comme d'habitude, avec tout ce qui est Git, il y a une courbe d'apprentissage pour tirer le meilleur parti de la fonctionnalité.
Comment vérifier et mettre à jour les sous-modules dans GIT?
Afin de mettre à jour un sous-module GIT existant, vous devez exécuter la «mise à jour du sous-module GIT» avec l'option «–remote» et «–Merge». En utilisant la commande «–Remote», vous pourrez mettre à jour vos sous-modules GIT existants sans avoir à exécuter les commandes «Git Pull» dans chaque sous-module de votre projet.
Git pousse-t-il les sous-modules?
Dans le repo parent, vous pouvez également utiliser Git Push --Recurse-Submodules = Vérifier qui empêche de pousser le repo parent si le ou les sous-modules ne sont pas poussés en premier. Une autre option est Git Push --Recurse-submodules = à la demande qui essaiera de pousser automatiquement les sous-modules (si nécessaire) avant de pousser le repo parent.
Que fait la synchronisation des sous-modules?
La synchronisation du sous-module GIT synchronise tous les sous-modules tandis que le sous-module Git Sync - A synchronise le sous-module "A" uniquement. Si - réécursive est spécifié, cette commande se reproduira dans les sous-modules enregistrés et synchronisera tout sous-module imbriqué.
Qu'est-ce que la mise à jour du sous-module Git - récursif?
Si - réécursive est spécifié, cette commande se reproduira dans les sous-modules enregistrés et mettra à jour tout sous-module imbriqué. Afficher le résumé de la validation entre le commit donné (par défaut à la tête) et l'arborescence / index qui fonctionne.
Qu'est-ce que la mise à jour du sous-module GIT - distant?
Une mise à jour du sous-module GIT - Init --Remote est comme: Git Submodule init: Pour initialiser (Checkout) Les sous-modules enregistrés dans l'index. Mise à jour du sous-module GIT --Remote: Pour tirer de la branche enregistrée (ou maître par défaut), une fois le sous-module initialisé (vérifié).
Le sous-module est-il généré par le sous-module?
En général, les sous-modules de modules générés par des fin. À titre d'exemple, considérez l'anneau r = z [x1, X2, ...] de tous les polynômes dans de nombreuses variables dénombrables. R lui-même est un module R généré finalement (avec 1 comme ensemble de génération).
Les sous-modules devraient-ils être en gitignore?
Non, vous n'avez pas besoin d'ajouter votre sous-module à votre . Gitignore: Ce que le parent verra de votre sous-module est un gitlink (une entrée spéciale, mode 160000). Cela signifie: tout changement directement effectué dans un sous-module doit être suivi d'un engagement dans le répertoire parent.
Est-ce que le sous-arbre est meilleur que le sous-module git?
TL; DR: Subtree est meilleur si vous voulez essentiellement oublier que vous avez du code externe, ou que vous le mettez rarement à mettre à jour; Le sous-module est meilleur si vous ne voulez pas oublier que le code est externe, et / ou si vous voulez peut-être éditer et le pousser.