---
title: "Нұсқалар тарихы"
description: "Жазбаның ревизиялар журналы: мазмұны бойынша дедупталған снапшоттар, түзетулердің шығу тегі және кез келген нұсқаны қалпына келтіру."
---

# Нұсқалар тарихы

Әрбір жазба өзінің ревизиялар журналын жүргізеді — ол өткен барлық күйлердің тарихы. Бұл қалта үстіндегі git-қабат емес, қолданба деңгейіндегі нұсқалау: журнал қызметтік дерекқорда (метадеректер дерекқоры) тұрады және Notarium арқылы өткен немесе файл синхрондауы байқаған күйлерді жинақтайды. Сонымен қатар `.md`-файлдың өзі шындық көзі болып қала береді — журнал оны алмастырмайды, толықтырады.

## Ревизия — бұл снапшот

Әрбір ревизия жазбаның түзету сәтіндегі толық күйін сақтайды: тақырып, тегтер, slug және қалыпқа келтірілген дене — жолма-жол дифф емес. Нұсқаларды салыстыруға арналған диффтер лезде есептеледі, өйткені оларды снапшоттардан қалпына келтіруге болады.

Ревизиялардың денелері мазмұны бойынша адрестеледі (content-addressed, sha-256), сондықтан бірдей мазмұн бір рет сақталады. Нұсқаны қалпына келтіру, агенттің түзету циклдары және қайталанатын күйлер артық көшірмелер тудырмайды — дедупликация мазмұнның өзі бойынша жүреді.

Журналдың кілті — файл жолы емес, жазбаның ішкі идентификаторы (`notarium-id`). Сондықтан тарих қалталар арасында жылжытуды және атын өзгертуді аман өтеді: бұл әлі де сол тарихы бар сол бір жазба.

## Шығу тегі: кім және қалай түзеткен

Әрбір ревизия қол қойылған — өзгеріс қайдан келгені көрінеді. Ревизияның түрі мен автор-субъекті болады:

| Ревизия түрі | Нені білдіреді |
|---|---|
| `write` | Notarium арқылы сақтау (адам немесе агент) |
| `external` | Файл синхрондауы дискіде тікелей байқаған күй |
| `restore` | Өткен нұсқаға кері қайтару (көзіне сілтемені сақтайды) |
| `delete` | Tombstone: жойылған жазбаның соңғы күйі |

Автор нақты пайдаланушы, агенттің жеке токені немесе интерфейс ретінде тіркеледі; сыртқы түзетулердің авторы жоқ — оларға қол қоятын ешкім жоқ. Осылайша тарихта нақ нені адам түзеткені, ал нені ЖИ-агент істегені көрінеді. Адам мен агенттердің түзетулерін бөлу туралы толығырақ — [Адам және агенттер](/docs/concepts/human-and-agents/) бөлімінде.

> [!note] Сыртқы түзетулердің түйіршіктілігі
> Файлда тікелей жасалған түзетулерді (Notarium-ды айналып өтіп) журнал синхрондау циклінің дәлдігімен көреді: сұрау аралығындағы бірнеше өзгеріс бір байқалған күйге бірігеді. Notarium-ның өзі арқылы жасалған түзетулер дәл тіркеледі.

Ревизия сонымен қатар қосылған және жойылған таңбалардың санағыштарын алып жүреді — түзетудің алдыңғы нұсқаға қатысты «құнын».

## Қарау, салыстыру және қалпына келтіру

Жазбаның тарихы оқу режимінен қолжетімді — бүйір панеліндегі **History** қойындысы нұсқалар таймлайнын көрсетеді: түзетуді кім енгізгені, `+N −M` санағыштары және күні. Ревизияны таңдау оны ағымдағы мәтіннің орнына ашады, Changes (кірістірулер мен жоюлар бөлектелген сөзбе-сөз дифф) және Content (мазмұнның өзі) режимдерінің арасында ауыстырғышпен.

![History қойындысы: авторы мен санағыштары бар ревизиялар; v3 — агенттің түзетуі](/media/app-history-light.webp)

Кері қайтару — **Restore this version** түймесі. Қалпына келтіру денені журналдан алып, оны нұсқаның оптимистік тексеруі арқылы жаңа түзету ретінде жазады: егер жазба сол уақыт ішінде өзгертілген болса, сіз қайшылық (409) аласыз, ешнәрсе үнсіз үстінен жазылмайды.

## Сақтау және жою

Әдепкіде тарих толығымен сақталады — Notarium ревизияларды автоматты түрде сирелетпейді. Жазбаның тарихын толықтай қолмен өшіруге болады, оны [Себеттен](/docs/guides/trash/) тазалау арқылы: жазбаны жою оның соңғы күйімен tombstone жасайды (оны қалпына келтіруге болады), ал соңғы тазалау тарихты да өшіреді.

> [!note] Журналдың шектеулері
> Нұсқалар тарихы метадеректер дерекқорын талап етеді. Метадеректер дерекқорынсыз тарих тек процестің жұмыс уақытында ғана тіршілік етеді. Ескі ревизияларды кесте бойынша автоматты сирелету жоқ — тарихты толығымен сақтаймыз.

Сабақтас тақырыптар: [File-first](/docs/concepts/file-first/) — шындық көзі ретіндегі файл, [Себет](/docs/guides/trash/) — жою және қалпына келтіру, [Қатынау моделі](/docs/concepts/access-model/) — нұсқаларды кім кері қайтара алады.
