28 votes

Subversion - Quelles sont les différences entre les commandes SVN Checkout et SVN Update ?

Je comprends que la commande "SVN Checkout" fera la récupération initiale du/des fichier(s) du référentiel Subversion et les amènera localement dans votre répertoire de travail/copie et que la commande "SVN Update" récupérera les modifications du/des fichier(s) du référentiel si des modifications ont été faites par d'autres. Il me semble cependant qu'une "Mise à jour" n'est qu'un cas particulier d'un "Extraction", c'est-à-dire que lorsqu'une Extraction se produit, elle récupère tous les fichiers puisqu'aucun n'existe encore localement et donc TOUS les fichiers ont "changé", et qu'en coulisse ces commandes font largement la même chose. Je suppose que les commandes existent séparément par souci de simplification ?

Ou bien, y a-t-il d'autres différences entre les commandes, par exemple, est-ce que "SVN Update" récupère les nouveaux fichiers (les fichiers qui existent dans le référentiel et que vous n'avez pas dans votre copie de travail) ou seulement les mises à jour des fichiers existants ?

30voto

karoberts Points 4472

Comme je le vois, la grande différence est que checkout crée une copie de travail, tandis que update ramène les changements à un existant copie de travail.

8voto

svinto Points 8601

Update mettra à jour votre version extraite vers la dernière version (ou une autre révision spécifiée) du dépôt. Si vous avez apporté des modifications à votre copie de travail, elles seront toujours présentes après la mise à jour. Si des fichiers ont été ajoutés ou supprimés dans le référentiel, cela sera reflété dans votre copie de travail. S'il y a des changements à la fois dans votre copie locale et dans le référentiel, SVN essaiera de fusionner tous les changements pour vous, si cela ne fonctionne pas, il signalera un conflit que vous devrez résoudre manuellement.

6voto

Edd Points 1894

svn checkout copie tous les fichiers versionnés du répertoire donné dans le référentiel à la révision donnée (par défaut HEAD), et les copie sur votre machine locale. Il génère également tous les répertoires .svn cachés, et les méta-données qu'ils contiennent, qui font de ces fichiers une copie de travail.

svn export copie tous les fichiers versionnés du répertoire donné dans le référentiel à la révision donnée (par défaut HEAD), et les copie sur votre machine locale, mais produit une hiérarchie de répertoire standard (il ne fait pas de pas produire une copie de travail qui peut être mise à jour ou contrôlée).

svn update applique les changements à un existant copie de travail. Si, ce faisant, un conflit est découvert, l'utilisateur est alerté et doit le résoudre avant de pouvoir valider les modifications. Lorsque vous utilisez svn commit il est nécessaire que la copie de travail à valider soit à jour (c'est-à-dire qu'elle ait la même révision que HEAD).

2voto

Eric Kolb Points 848

Subversion utilise des répertoires cachés de métadonnées pour permettre la fonctionnalité qu'il fournit. Ces répertoires .svn sont ce qui fait d'un répertoire une copie de travail de Subversion -- sans eux, c'est juste un répertoire et Subversion ne peut pas faire grand chose avec.

UPDATE est une opération qui est effectuée sur une copie de travail de Subversion ; pas de répertoires .svn, pas d'UPDATE. CHECKOUT est l'opération qui crée une copie de travail.

0voto

George Points 1

svn update n'apporte que la différence entre les fichiers de la version utilisateur et la dernière version disponible. Si aucune différence, aucune action. Mais checkout crée un nouveau dossier et apporte tous les fichiers de cette branche. Checkout est une bonne méthode de travail si nous changeons constamment les branches sur lesquelles nous travaillons. Update est utilisé lorsque nous avons un tronc et que nous devons obtenir les mises à jour effectuées par d'autres personnes sur ce tronc. J'espère que cela vous aidera

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X