Saved Data settings
Open Settings → Saved Data to clear histories or make previously suppressed questions appear again. The controls follow TortoiseGit's Saved Data page.
- URL history → Clear removes Clone URLs, Fetch/Pull URLs, repository-specific Push URLs, Request Pull URL history and Format Patch output-directory history.
- Log messages (Input dialog) → Clear removes saved Commit message histories across repositories and the shared Merge message history. The history backend reloads storage on each access, so an existing history object sees the cleared entries and can save new messages.
- Log messages (Show log dialog) → Clear clears TurtleGit's cached repository log file records. Other caches and repository files are preserved.
- Authentication data → Clear… opens the saved SSH authentication dialog to review and remove selected TurtleGit Keychain entries. Git HTTP helper credentials and keys already loaded by a running operation are outside this control's scope.
- SSH key file permissions → Manage… opens Key File Permissions. Review remembered key paths, authorize a file with the native picker, copy selected paths, or forget selected/all listed permissions after confirmation. Forgetting keeps the key files, saved passphrases, Git configuration and permissions held by running operations. Future key loading may ask for Browse again. This is a macOS addition for sandbox file access.
- Dialog sizes and positions → Clear forgets saved native window frames; see dialog geometry.
- Temp files (including Gravatar images) → Clear removes app-owned temporary files after an Abort/Proceed confirmation. See temporary files.
- Stored decisions → Clear forgets remembered answers and suppressed warnings. This includes Fetch/Rebase decisions, Stash Pop changes questions, Merge conflict hints, Push All Branches confirmation and Commit cancellation/template hints. It also forgets approved and declined project-hook decisions. The next invocation asks again; a hook already accepted and running continues under its existing owner. Configured hook commands and remembered script-file permissions remain. Open Hook Scripts settings refresh unchanged local decision rows while retaining unrelated drafts and explicit unsaved enable/disable changes.
- Action log has its own line limit, Show and Clear controls. See the Action log guide.
Hover over URL or input-message history controls to see the current number of saved entries and histories. Their Clear buttons are disabled when no matching saved history exists. Stored decisions can always be cleared, matching upstream. URL, input-message, stored-decision and action-log controls act immediately. Temporary-file cleanup asks for confirmation.
Newly opened dialogs load the cleared histories. An already open dialog can keep its current text and loaded dropdown choices; clearing saved data does not cancel an operation or erase the text being edited. Its next submission can save a new history entry.
These controls target explicit preference keys. They preserve repository bookmarks, working files, commits, indexes, SSH key-path history, branch/revision histories, ordinary dialog options, appearance settings and the separately managed action log. They do not delete private key files or credentials.
Source and current limits
Adapted from pinned TortoiseGit 7338078f8ddd924b8cddee35f512f2286072136d,
src/TortoiseProc/Settings/SetSavedDataPage.cpp/.h and
src/Resources/TortoiseProcENG.rc. The decision fixture
records all 21 source TortoiseGit decision keys and the source merge-editor key,
with the source blob and pin. Native aliases map Commit and Stash choices to their
macOS preference names. Windows registry histories become native preferences.
URL histories include Request Pull's existing native list; its other per-repository
input defaults are preserved.
Authentication management and Show Log cache clearing are implemented in the native Saved Data page. Authentication management targets TurtleGit-owned SSH Keychain entries; it does not erase external Git HTTP credential-helper stores or Windows Subversion credentials. Merge input-message history is implemented; see Merge parity. Clearing both histories fixes the pinned source asymmetry in which Merge is counted but only Commit is deleted.
The merge-editor reset key DeleteFileWhenEmpty remains in the source catalogue.
The pinned Merge save flow already asks Delete/Keep for an empty result, and the
native editor has the corresponding owned question. Neither pinned prompt reads
that legacy reset key; it does not establish a missing remembered-answer feature.
The project-hook reset addition follows SetSavedDataPage.cpp:395–397, which
removes the approvedhooks namespace. Native decisions use the exact
ClientHooks.Approvals preference key. The reset checkpoint records the
actual focused Core and grouped native results separately. This guide makes no
new signed-installation or full-port acceptance claim.
Core tests check the source catalogue, reset scope, multiple Commit repositories,
false/integer remembered answers and preserved neighboring keys. After a Debug
build, python3 scripts/test-saved-data.py checks real native model loading, private
histories, restored Stash Pop questions and a hidden settings host. These headless
checks use isolated preferences and repositories; they do not launch the main app.