mercredi 6 mai 2009

Leçon 3 : Comment ajouter un fichier ?


 
Pour ajouter un fichier ou plusieurs il est nécéssaire de passer par VersionControlServer (Voir Leçon 2).
 
Une fois le versionControlServer récupéré il faut créer un Workspace pour travailler.
 
Etape 1: Création du workspace
Workspace workspace = versionControl.CreateWorkspace(Guid.NewGuid().ToString(), versionControl.AuthenticatedUser);
 
Je passe Guid.NewGuid() pour pouvoir créer un workspace qui ne rentrera pas en conflit avec un existant.
 
Etape 2: Récupération des fichiers du serveur dans le workspace
 
Paramétrage de la liaison serveur <-> local
workspace.Map(Target, tmp); 
"Target" représente la destination, l'endroit où sera ajouté le fichier .
"tmp" représente l'emplacement sur le disque dur en local.
 
Action de récupération
workspace.Get();
               
 Etape 3: Ajout du fichier dans le workspace
On edit du coté local donc dans le workspace
workspace.PendEdit(fileTarget);
Puis on ajout le fichier
workspace.PendAdd(fileTarget);
Copie du fichier dans le workspace

File.Copy(_s, fileTarget, true);
Ajout du fichier. 
workspace.PendAdd(fileTarget, (Recursion == RecursionType.Full));
Etape 4: Gestion des modifications en cours
 
Affiche les changement en cour.

PendingChange[] pendingChanges = workspace.GetPendingChanges();
 
Parcour les fichier en attente
    
foreach (PendingChange pendingChange in pendingChanges)
{
         Console.WhritLine("  path: " + pendingChange.LocalItem +
                                      ", change: " + PendingChange.GetLocalizedStringForChangeType(pendingChange.ChangeType));
}
           
Etape 5: Archivage
 
Archive les fichiers et récupère le changeset 
int changesetNumber = workspace.CheckIn(pendingChanges, Description);
 

Aucun commentaire: