Git: кэш+пагинация истории, diff в потоке, точечный коммит, честное удаление

- История: кэш по vault|rel|headOid, fileHistory(vault,file,limit), в диалоге Показать ещё по 60 с сохранением выбора
- Diff считается в QtConcurrent-пуле (parseBlocksWithDiffAsync+blocksReady, stale-guard), спиннер busy; MarkdownView.diffApplied
- commitFile точечно вместо всего хранилища (общий commitFromIndex), autoCommit честный; fileExistedAt + willDelete в подтверждении
- DocumentManager.readTextFile общий (GitManager.workdirContent через него); fileGitStatus через relativePath
- Тесты: пагинация/кэш, existed, commitFile не трогает B, async==sync
This commit is contained in:
2026-09-06 21:17:25 +03:00
parent f6074df0fc
commit 0846605c2b
12 changed files with 474 additions and 138 deletions
+2 -1
View File
@@ -23,7 +23,7 @@ message(STATUS "OpenSSL: ${OPENSSL_VERSION}")
# Qt 6
find_package(Qt6 6.4 REQUIRED COMPONENTS
Quick QuickControls2 QuickTemplates2 QuickLayouts
Sql Network Pdf PrintSupport Svg)
Sql Network Pdf PrintSupport Svg Concurrent)
qt_standard_project_setup(REQUIRES 6.4)
@@ -81,6 +81,7 @@ target_link_libraries(flora_core PUBLIC
Qt6::Pdf
Qt6::PrintSupport
Qt6::Svg
Qt6::Concurrent
cmark::cmark
)
if(TARGET cmark::cmark_extensions)