Partager via


Restaurer un wiki supprimé

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

Si un utilisateur a supprimé accidentellement un wiki provisionné (projet) ou publié (code), vous pouvez le restaurer. Bien qu’il n’existe aucune option dans l’interface utilisateur pour supprimer un wiki, les utilisateurs peuvent utiliser l’API REST pour supprimer le référentiel Git associé au wiki.

Note

Les référentiels supprimés restent dans la corbeille pendant 30 jours, après quoi ils sont définitivement supprimés et ne peuvent pas être restaurés.

Conditions préalables

Catégorie Spécifications
Accès au projet Membre du projet où se trouve le wiki. Si vous n’avez pas accès, demandez-le à l’administrateur de votre projet. Toute personne ayant accès au projet d’équipe peut consulter le wiki, y compris les parties prenantes.
Autorisations - Pour ajouter ou modifier des pages wiki : membre du groupe Contributeurs .
- Pour publier du code en tant que wiki : Créer une autorisation de dépôt . Par défaut, cette autorisation est définie pour les membres du groupe Administrateurs de projet .
Niveaux d’accès Au moins un accès de base.

Restaurer un wiki complet

Les wikis, à la fois le projet et le code, sont stockés en tant que référentiels dans votre projet dans Azure DevOps. Effectuez les étapes suivantes pour restaurer un wiki complet avec l’API REST.

  1. Récupérez les dépôts Git : Lister les dépôts.

    Utilisez le paramètre includeHidden=true pour afficher les référentiels wiki.

    GET https://dev.azure.com/christiechurch/fabrikamfiber/_apis/git/repositories?includeHidden=true&api-version=7.1-preview.1
    
            {
                "id": "978e3886-64a8-4b6f-96da-6afc2936b04b",
                "name": "fabrikamfiber.wiki",
                "url": https://dev.azure.com/christiechurch/052a83ac-af70-4194-b53f-df073e5f1786/_apis/git/repositories/978e3886-64a8-4b6f-96da-6afc2936b04b,
                "project": {
                    "id": "052a83ac-af70-4194-b53f-df073e5f1786",
                    "name": "fabrikamfiber",
                    "url": https://dev.azure.com/christiechurch/_apis/projects/052a83ac-af70-4194-b53f-df073e5f1786,
                    "state": "wellFormed",
                    "revision": 421800049,
                    "visibility": "organization",
                    "lastUpdateTime": "2023-07-18T12:25:29.3Z"
                },
                "defaultBranch": "refs/heads/wikiMaster",
                "size": 193,
                "remoteUrl": https://christiechurch@dev.azure.com/christiechurch/fabrikamfiber/_git/fabrikamfiber.wiki,
                "sshUrl": git@ssh.dev.azure.com:v3/christiechurch/fabrikamfiber/fabrikamfiber.wiki,
                "webUrl": https://dev.azure.com/christiechurch/fabrikamfiber/_git/fabrikamfiber.wiki,
                "isDisabled": false,
                "isInMaintenance": false
            }
    
  2. Recherchez votre dépôt dans la corbeille.

    GET https://dev.azure.com/christiechurch/fabrikamfiber/_apis/git/recycleBin/repositories?api-version=7.1-preview.1
    

    Lorsque vous trouvez votre référentiel, souvent nommé .wiki, prenez note de l’ID de dépôt.

    {
        "value": [
            {
                "id": "978e3886-64a8-4b6f-96da-6afc2936b04b",
                "name": "fabrikamfiber.wiki",
                "project": {
                    "id": "052a83ac-af70-4194-b53f-df073e5f1786",
                    "name": "fabrikamfiber",
                    "url": https://dev.azure.com/christiechurch/_apis/projects/052a83ac-af70-4194-b53f-df073e5f1786,
                    "state": "wellFormed",
                    "revision": 421800049,
                    "visibility": "organization",
                    "lastUpdateTime": "2023-07-18T12:25:29.3Z"
                },
                "deletedBy": {
                    "displayName": "Christie Church",
                    "url": https://spsprodeus23.vssps.visualstudio.com/A1df9d653-bdfb-459b-a0c7-725052b2f944/_apis/Identities/0a0a4b55-9671-440d-87bf-26644f200d8a,
                    "_links": {
                        "avatar": {
                            "href": https://dev.azure.com/christiechurch/_apis/GraphProfile/MemberAvatars/aad.MDY4MDk2OGQtYWU5OS03Y2M5LTgxZTEtNTBjMDk4ZTllZTlh
                        }
                    },
                    "id": "0a0a4b55-9671-440d-87bf-26644f200d8a",
                    "uniqueName": christiechurch@fabrikam.com,
                    "imageUrl": https://dev.azure.com/christiechurch/_api/_common/identityImage?id=0a0a4b55-9671-440d-87bf-26644f200d8a,
                    "descriptor": "aad.MDY4MDk2OGQtYWU5OS03Y2M5LTgxZTEtNTBjMDk4ZTllZTlh"
                },
                "createdDate": "2023-07-18T12:23:55.64Z",
                "deletedDate": "2023-07-18T12:41:38.737Z"
            }
        ],
        "count": 1
    }
    
  3. Restaurez le wiki à partir de la corbeille du dépôt.

    PATCH https://dev.azure.com/christiechurch/fabrikamfiber/_apis/git/recycleBin/repositories/978e3886-64a8-4b6f-96da-6afc2936b04b?api-version=7.1-preview.1
    
    {
        "deleted": false
    }
    

Restauration du contenu du référentiel. Si l’interface utilisateur wiki ne réapparaît pas automatiquement, publiez le référentiel restauré en tant que wiki ou créez un wiki via l’API REST Wiki pour l’inscrire à nouveau auprès du projet.

Restaurer une page wiki

  1. Accédez à l’URL de votre dépôt : https://dev.azure.com/<OrgName>/<ProjectName>/_git/classicreleaseoption.wiki.

  2. Recherchez l’historique de la branche principale, wikiMain.

  3. Recherchez et sélectionnez la validation contenant les fichiers supprimés.

  4. Sélectionnez Autres actions, puis Rétablir.

  5. Créez et finalisez une pull request.

Votre page wiki est en cours de restauration.

Restaurer une page wiki avec l’interface CLI

Si vous préférez des options de ligne de commande, procédez comme suit.

  1. Clonez le wiki sur votre ordinateur local.
  2. Recherchez le commit qui a supprimé la page.
  3. Consultez la validation.
  4. Copiez la page pour effectuer une nouvelle validation.

Votre page wiki est restaurée.

Supprimer un référentiel

DELETE https://dev.azure.com/christiechurch/fabrikamfiber/_apis/git/repositories/052a83ac-af70-4194-b53f-df073e5f1786?api-version=7.1-preview.1

Réassocier un wiki restauré

La restauration de la corbeille de recyclage récupère le dépôt Git (pages wiki et historique), mais ne rétablit pas toujours l’enregistrement du wiki ou l’association du nom de fichier dans l’interface utilisateur.

Si le wiki n’apparaît pas après avoir restauré le dépôt, vous avez deux options :

Option 1 : Republier via l’interface utilisateur

  1. Accédez à Vue d’ensemble>du Wiki dans votre projet.
  2. Si aucun wiki n’apparaît, sélectionnez Publier du code en tant que wiki.
  3. Sélectionnez le référentiel et la branche restaurés (généralement wikiMaster).
  4. Fournissez un nom wiki et un chemin d’accès au dossier si nécessaire.
  5. Cliquez sur Publier.

Pour obtenir des instructions détaillées, consultez Publier un dépôt Git sur un wiki.

Option 2 : Recréer l’inscription wiki avec l’API REST

  1. Créez un wiki à l’aide des Wikis - Créer une API REST :

    POST https://dev.azure.com/{organization}/{project}/_apis/wiki/wikis?api-version=7.1-preview.2
    

    Corps de la demande :

    {
        "type": "codeWiki",
        "name": "Fabrikam Fiber Wiki",
        "projectId": "052a83ac-af70-4194-b53f-df073e5f1786",
        "repositoryId": "978e3886-64a8-4b6f-96da-6afc2936b04b",
        "mappedPath": "/",
        "version": {
            "version": "wikiMaster"
        }
    }
    

    Remplacez les valeurs suivantes :

    • {organization}: Nom de votre organisation Azure DevOps
    • {project}: Nom ou ID de votre projet
    • name: Nom d'affichage du wiki
    • projectId: ID de projet de l’étape 2
    • repositoryId: Identifiant de dépôt de l’étape 2
    • mappedPath: Chemin du dossier racine (généralement /)
    • version: Nom de branche (généralement wikiMaster)
  2. Vérifiez l'enregistrement du wiki en listant les wikis à l'aide de l'API REST Wikis - List :

    GET https://dev.azure.com/{organization}/{project}/_apis/wiki/wikis?api-version=7.1-preview.2
    

Vérification postérieure à la restauration

Après avoir utilisé l’une ou l’autre option :

  1. Vérifiez que le référentiel et les branches existent dans votre projet dans Repos.
  2. Vérifiez que le wiki apparaît dans votre projet sous Wiki vue d’ensemble>.
  3. Vérifiez les autorisations, les liens et tous les widgets qui ont référencé l’ancien wiki.

Note

  • La corbeille et certaines API d'enregistrement wiki sont en préversion et peuvent changer. Elles doivent être testées dans une organisation autre que de production et il faut utiliser la version de l'API documentée pour votre environnement.
  • Pour les wikis de projet (wikis provisionnés), utilisez type: "projectWiki" plutôt que "codeWiki" dans l’appel d’API REST et omettez les propriétés repositoryId et mappedPath.

Étape suivante