External git client (SSH): admin console changes are never committed

External git client (SSH): admin console changes are never committed

avatar

Changes made in the admin ui are written to the working directory but
never committed. The next sync then fails, because git pull (pull.rebase=true)
refuses to run on a dirty tree. Sync stays broken until the tree is cleared
manually, then breaks again on the next UI change.

PSU 2026.2.2
Windows Server 2022 Standard Evaluation, 10.0.20348
Service: PowerShellUniversal, running as LocalSystem
Git for Windows 2.55.0.windows.3
Remote: git@github.com:user/repo.git (SSH)
External Git Client: on (forced by SSH key selection)
TwoWay + Automatic
Dev/Test License over devolutions account

System gitconfig (C:/Program Files/Git/etc/gitconfig):

user.name=PowerShell Universal
user.email=psu@lab.local
safe.directory=C:/ProgramData/UniversalAutomation/Repository
pull.rebase=true
core.autocrlf=true


Repro:
1. Configure git sync with an SSH remote + SSH key. Clone succeeds, sync OK.
2. Confirm clean working tree.
3. Edit a portal page description in the admin console.
4. git status -> .universal/portalPages.psd1 modified. git log -> no new commit.
5. Next sync:

   [ERR] Git Error: error: cannot pull with rebase: You have unstaged changes.
   [ERR] Failed to sync ("Failed"): Git command failed with exit code 128.
      at GitService.RunGitCommandAsync(String args) in GitService.cs:line 1553
      at GitService.PullAsync() in GitService.cs:line 1018
      at GitSyncService.TrySync(...) in GitSyncService.cs:line 201


With debug logging on, the only git commands logged are "git remote set-url"
and "git pull origin master". There is no git commit or git add, it looks like PSU never
attempts a commit.

Expected per docs: changes made in the admin ui invoke a git commit.

All Comments (1)

avatar

Hello jasonschilling,

Thank you for providing the detailed reproduction steps and the Git command sequence.

Based on the evidence provided, PSU is updating the repository file after the Admin Console change, but the expected staging and commit operation does not appear to occur before the next pull. The `pull.rebase=true` setting exposes the dirty working tree, but it does not explain why the change was not committed.

Your reproduction is sufficiently specific for us to validate the External Git Client path using PSU 2026.2.2 with SSH, TwoWay mode, and Automatic synchronization. We will compare the Git commands and repository state before and after an Admin Console change. Until that validation is complete, I do not want to classify this as a confirmed bug or regression.

Please confirm whether this is limited to the evaluation lab described or also affects a production environment.

Before manually clearing the working tree, please preserve or commit any intended changes to avoid accidentally discarding them.

If you provide any additional logs or configuration excerpts, because this is a public forum, please sanitize all evidence before posting. Remove credentials, tokens, license keys, cookies, private keys, full connection strings, email addresses, usernames, customer data, tenant or account identifiers, internal domains, hostnames, IP addresses, and private URLs. Please do not upload unredacted HAR files, memory dumps, database backups, or complete configuration files to this public thread.

References:
https://docs.devolutions.net/powershell-universal/config/git

Best regards,
Ruben Tapia