Processus de développement en utilisant un workspace ramifié

L’espace de travail branché est un espace de travail lié à un espace de travail source. Il permet aux développeurs de travailler sur les modifications dans un environnement isolé, de comprendre comment leur travail se rapporte à d’autres espaces de travail et de promouvoir les modifications apportées à l’espace de travail principal en toute confiance.

La relation (lien) entre un espace de travail branched et son espace de travail source est établie lorsque l’utilisateur effectue une création de branche. Pour les développeurs Fabric, la création de branche crée une nouvelle branche Git à partir de la dernière validation de la branche actuellement connectée de l’espace de travail source. L’utilisateur peut ensuite créer un espace de travail connecté à cette nouvelle branche ou utiliser un espace de travail existant en basculant sa connexion Git à la branche nouvellement créée.

Espace de travail branché

La relation Espace de travail ramifié présente plusieurs représentations visuelles dans l’interface utilisateur Fabric.

  • Arborescence de l’espace de travail : représente l’espace de travail source en tant que parent de l’espace de travail branché

    Hiérarchie d’arborescence d’espaces de travail avec espaces de travail branchés.

  • Barre de navigation de l’espace de travail : option de navigation de l’espace de travail branché vers l’espace de travail source

    Barres de navigation de l’espace de travail branchées.

  • Contrôle de code source - onglet Branches associées

    Branches liées à l'espace de travail ramifié.

Opération d'extension

Par défaut, lorsqu’une opération de branche out se termine, tous les éléments de la branche source sont inclus dans l’espace de travail cible. Ce comportement peut être modifié en sélectionnant Sélectionner des éléments individuellement (préversion) lors de la configuration de la branche, permettant ainsi d'inclure uniquement les éléments choisis dans l'espace de travail cible pour accélérer l'expérience de codage.

En tant que développeur de Fabric, le flux de branchement se déroulera comme suit :

  1. Sous l’onglet Branches du menu Contrôle de code source, sélectionnez Créer une branche dans un autre espace de travail.

    Capture d’écran de l’option Créer une branche de contrôle de code source.

  2. Spécifiez si vous souhaitez créer un nouvel espace de travail ou créer une branche dans un espace de travail existant. Spécifiez les noms de la nouvelle branche et de l’espace de travail, ou sélectionnez l’espace de travail existant dans la liste déroulante. Cochez la case pour la sélection des éléments individuellement (aperçu) en cas où vous souhaitez travailler uniquement sur un sous-ensemble des éléments de l'espace de travail dérivé. Vous verrez la capture d’écran suivante lorsque vous créez un nouvel espace de travail avec des branchements sélectifs.

Note

Notez que lorsque vous créez une branche vers un espace de travail, tous les éléments qui ne sont pas enregistrés dans Git peuvent être perdus. Nous vous recommandons de commiter tous les éléments que vous souhaitez conserver avant de créer l’embranchement.

Capture d’écran de la sélection d’éléments individuellement.

Important

Lorsqu'on crée une branche à partir d'un espace de travail existant, certains éléments peuvent être supprimés. Vous devez confirmer que vous comprenez ce risque avant de poursuivre l’opération

  1. Cliquez sur le bouton Branch out (les étapes 4-8 s’appliquent uniquement lorsque Sélectionner des éléments individuellement (préversion) est sélectionné)
  2. Cette action affiche une boîte de dialogue permettant de sélectionner des éléments pour votre espace de travail.

Note

Si la branche Git contient un grand nombre d’éléments, la boîte de dialogue Sélectionner des éléments peut prendre un certain temps.

  1. Sélectionnez les éléments souhaités pour cet espace de travail.

  2. Cliquez sur Créer une branche. Capture d’écran de la création d'une branche.

  3. Lorsque vous effectuez une branche sélective, toutes les dépendances de l’élément sont requises. Vous pouvez utiliser le bouton Sélectionner les éléments associés à cet effet. Si vous ne sélectionnez pas l’une des dépendances, vous voyez ce qui suit : Capture d’écran de l’erreur de dépendance.

  4. Une fois la branche créée, vous pouvez vérifier que vous êtes dans une branche sélective par l’icône dans la barre d’état inférieure (coin inférieur gauche). Il est indiqué branche sélectionnée. Capture d’écran de l’icône de branche sélective.

  5. Fabric crée l’espace de travail branché. Vous êtes automatiquement redirigé vers le nouvel espace de travail. Il contient tous les éléments ou uniquement les éléments que vous avez sélectionnés en cas de branchement sélectif.

    L’espace de travail se synchronise avec votre branche de fonctionnalité et devient un environnement isolé dans lequel travailler, comme illustré. Vous pouvez maintenant travailler dans ce nouvel espace de travail branché. La synchronisation peut prendre quelques minutes. Pour plus d'informations sur l'expansion, consultez conseils de résolution des problèmes.

    Diagramme montrant le workflow des commits.

  6. Enregistrez vos modifications et commitez-les dans la branche de fonctionnalité.

  7. Lorsque vous êtes prêt, créez une demande de tirage (pull request) dans la branche principale. Les processus de révision et de fusion sont effectués via le fournisseur Git associé en fonction de la configuration définie par votre équipe pour ce référentiel.

Une fois la révision et la fusion terminées, un nouveau commit est créé dans la branche principale. Ce commit invite l’utilisateur à mettre à jour le contenu de l’espace de travail de l’équipe de développement avec les modifications fusionnées.

Pour en savoir plus, veuillez consulter Limitations d’embranchement.

Comment ajouter des éléments supplémentaires à un espace de travail avec branchement sélectif

Lorsqu’un développeur Fabric doit ajouter des éléments qui n’ont pas été sélectionnés pendant l’opération de branchement, les étapes ci-dessous décrivent comment ajouter des éléments supplémentaires à l’espace de travail :

  1. Accédez à l’espace de travail Fabric requis, puis sélectionnez Contrôle de code source en haut.
  2. Sur la droite, sélectionnez le symbole de divergence.
  3. Utilisez la liste déroulante et sélectionnez Sélectionner des éléments supplémentaires.
  4. Cette action affiche une boîte de dialogue permettant de sélectionner des éléments pour votre espace de travail. La boîte de dialogue Sélectionner des éléments affiche uniquement les éléments de la branche Git qui n’ont pas été précédemment sélectionnés.
  5. Sélectionnez les éléments supplémentaires que vous souhaitez ajouter à l’espace de travail.
  6. Cliquez sur Ajouter. Les éléments sélectionnés sont ajoutés aux mises à jour en attente dans le volet de contrôle de code source.
  7. Cliquez sur Mettre à jour tout. Cette opération effectue une mise à jour à partir de git et crée les éléments dans l’espace de travail.

Passer d’une branche à l’autre

Si votre espace de travail est connecté à une branche Git et que vous souhaitez basculer vers une autre branche, vous pouvez le faire rapidement à partir du volet Contrôle de code source sans vous déconnecter et vous reconnecter.

Lorsque vous changez de branche, l’espace de travail se synchronise avec la nouvelle branche et tous les éléments de l’espace de travail sont remplacés. S’il existe différentes versions du même élément dans chaque branche, l’élément est remplacé.

Effectuer le changement de branche n'affecte pas la relation (lien) entre un espace de travail branché et son espace de travail source. Le changement de branche est un changement d’état Git. Par conséquent, le changement de branches ne crée pas ou ne modifie pas les relations d’espace de travail. Si un espace de travail a déjà une relation, il est conservé.

Note

Lorsque vous changez de branches, si l’espace de travail contient un élément dans l’ancienne branche, mais pas le nouveau, l’élément est supprimé. En outre, dans un espace de travail avec branchement sélectif, l’exécution d’une opération de commutateur réinitialise la sélection de l’élément et tous les éléments de la branche commutée sont synchronisés avec l’espace de travail.

Pour basculer entre les branches, procédez comme suit :

  1. Sous l’onglet Branches du menu Contrôle de code source, sélectionnez Changer de branche.

    Capture d’écran de l’option Contrôle de code source Extraction d’une nouvelle branche.

  2. Spécifiez la branche à laquelle vous souhaitez vous connecter ou créez une branche. Cette branche doit contenir le même répertoire que la branche actuelle.

  3. Cochez Je comprends que les éléments de l'espace de travail peuvent être supprimés et ne peuvent pas être restaurés., puis sélectionnez Changer de branche.

    Capture d’écran du changement de branches.

Vous ne pouvez pas changer de branche si vous avez des modifications non commitées dans l’espace de travail. Sélectionnez Annuler pour revenir en arrière et valider vos modifications avant de changer de branche.

Pour connecter l’espace de travail actuel à une nouvelle branche tout en conservant l’état de l’espace de travail existant, sélectionnez Extraire une nouvelle branche. En savoir plus sur l’extraction d’une nouvelle branche sur Résoudre les conflits dans Git.

Limitations à l'expansion

  • L'extension nécessite les permissions répertoriées dans la table des autorisations.

  • Il doit y avoir une capacité disponible pour cette action.

  • Toutes les limitations d’affectation de noms d’espace de travail et de branche s’appliquent lors du branchement à un nouvel espace de travail.

  • Seuls les éléments pris en charge par Git sont disponibles dans le nouvel espace de travail.

  • La liste des branches associées affiche uniquement les branches et les espaces de travail que vous avez l’autorisation d’afficher.

  • L’intégration Git doit être activée.

  • Lors de la création d’une branche, une nouvelle branche est créée et les paramètres de la branche d’origine ne sont pas copiés. Ajustez les paramètres ou définitions pour vous assurer que le nouveau répond aux stratégies de votre organisation.

  • Lors de la déconnexion d’un espace de travail branché de Git, sa relation à l’espace de travail source est également supprimée.

  • Lors de la déconnexion d’un espace de travail connecté à Git qui a des espaces de travail branchés associés, toutes les relations d’espace de travail de branche sont également supprimées.

  • Lors de la suppression d’un espace de travail associé à des espaces de travail branchés, toutes les relations d’espace de travail de branche sont supprimées et les espaces de travail branchés deviennent des espaces de travail réguliers.

  • Lors de la création d'une branche dans un espace de travail existant :

    • L’espace de travail cible doit prendre en charge une connexion Git.
    • L’utilisateur doit être administrateur de l’espace de travail cible.
    • L’espace de travail cible doit avoir une capacité.
    • L’espace de travail ne peut pas avoir d’applications modèles.
    • L’espace de travail cible ne peut pas avoir d’espaces de travail de branche associés.
  • Notez que lorsque vous créez un embranchement vers un espace de travail, tous les éléments qui ne sont pas enregistrés dans Git peuvent être perdus. Nous vous recommandons de valider tous les éléments que vous souhaitez conserver avant de créer l’embranchement.