Delen via


Een verwijderde wiki herstellen

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

Als een gebruiker per ongeluk een ingerichte wiki (project) of gepubliceerde wiki (code) heeft verwijderd, kunt u deze herstellen. Hoewel er geen opties in de gebruikersinterface zijn om een wiki te verwijderen, kunnen gebruikers de REST API gebruiken om de Git-opslagplaats te verwijderen die aan de wiki is gekoppeld.

Notitie

Verwijderde opslagplaatsen blijven 30 dagen in de Prullenbak staan, waarna ze permanent worden verwijderd en niet kunnen worden hersteld.

Voorwaarden

Categorie Eisen
projecttoegang Lid van het project waar de wiki zich bevindt. Als u geen toegang hebt, vraagt u dit aan bij de projectbeheerder. Iedereen met toegang tot het teamproject kan de wiki bekijken, inclusief belanghebbenden.
machtigingen - Wikipagina's toevoegen of bewerken: Lid van de Inzenders groep.
- Om code als wiki te publiceren: repository maken , toestemming. Deze machtiging is standaard ingesteld voor leden van de groep Projectbeheerders.
Toegangsniveaus Ten minste basis toegang.

Een volledige wiki herstellen

Wiki's, zowel project als code, worden opgeslagen als opslagplaatsen in uw project in Azure DevOps. Voer de volgende stappen uit om een volledige wiki te herstellen met REST API.

  1. Git-opslagplaatsen ophalen: Lijst opslagplaatsen.

    Gebruik de parameter THE includeHidden=true om de wikiopslagplaatsen te bekijken.

    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. zoek in de Prullenbak naar uw opslagplaats.

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

    Wanneer u de opslagplaats hebt gevonden, die vaak wordt genoemd als .wiki, noteert u de opslagplaats-id.

    {
        "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. de wiki terugzetten vanuit de prullenbak van de opslagplaats.

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

De inhoud van de opslagplaats wordt hersteld. Als de wiki-gebruikersinterface niet automatisch opnieuw wordt weergegeven, publiceert u de herstelde opslagplaats als wiki of maakt u een wiki via de Wiki REST API om deze opnieuw te registreren bij het project.

Een wikipagina herstellen

  1. Ga naar de URL voor uw opslagplaats: https://dev.azure.com/<OrgName>/<ProjectName>/_git/classicreleaseoption.wiki.

  2. Zoek de geschiedenis van de hoofdbranch wikiMain.

  3. Zoek en selecteer de doorvoering met de verwijderde bestanden.

  4. Selecteer Meer actiesen dan herstellen.

  5. Een pull-aanvraag maken en voltooien.

De wikipagina wordt hersteld.

Een wikipagina herstellen met CLI

Als u de voorkeur geeft aan opdrachtregelopties, voert u de volgende stappen uit.

  1. Kloon de wiki naar uw lokale computer.
  2. Zoek naar de commit die de pagina heeft verwijderd.
  3. Bekijk de commit.
  4. Kopieer de pagina om een nieuwe commit te maken.

Uw wikipagina is hersteld.

Een opslagplaats verwijderen

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

Een herstelde wiki opnieuw koppelen

Met het herstel van de prullenbak wordt de Git-opslagplaats (wikipagina's en geschiedenis) hersteld, maar wordt de wikiregistratie of de bestandsnaamkoppeling niet altijd opnieuw gemaakt in de gebruikersinterface.

Als de wiki niet wordt weergegeven nadat u de opslagplaats hebt hersteld, hebt u twee opties:

Optie 1: Opnieuw publiceren via de gebruikersinterface

  1. Ga naarOverzichtswiki> in uw project.
  2. Als er geen wiki wordt weergegeven, selecteert u Code publiceren als wiki.
  3. Selecteer de herstelde opslagplaats en vertakking (meestal wikiMaster).
  4. Geef indien nodig een wikinaam en mappad op.
  5. Selecteer Publiceren.

Zie Een Git-opslagplaats publiceren naar een wiki voor gedetailleerde stappen.

Optie 2: Wikiregistratie opnieuw maken met REST API

  1. Maak een nieuwe wiki met behulp van de Wiki's - REST API maken:

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

    Verzoekinhoud:

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

    Vervang de volgende waarden:

    • {organization}: de naam van uw Azure DevOps-organisatie
    • {project}: Uw projectnaam of ID
    • name: Weergavenaam voor de wiki
    • projectId: Project-id uit stap 2
    • repositoryId: Opslagplaats-id uit stap 2
    • mappedPath: Pad naar hoofdmap (meestal /)
    • version: Branch name (meestal wikiMaster)
  2. Controleer de registratie van wiki's door wiki's op te sommen met behulp van de Wiki's - List REST API:

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

Verificatie na herstel

Nadat u een van de opties hebt gebruikt:

  1. Controleer of de repository en branches aanwezig zijn in uw project in Repos.
  2. Controleer of de wiki wordt weergegeven in uw project onderOverzichtswiki>.
  3. Controleer de machtigingen, koppelingen en eventuele widgets waarnaar de oude wiki verwijst.

Notitie

  • De prullenbak en enkele wikiregistratie-API's zijn preview en kunnen veranderen: testen in een niet-productieorganisatie en de API-versie gebruiken die voor uw omgeving wordt gedocumenteerd.
  • Gebruik voor projectwiki's (ingerichte wiki's) type: "projectWiki" in plaats van "codeWiki" in de REST API-aanroep en laat de repositoryId en mappedPath eigenschappen weg.

Volgende stap