Source Control
voor TIA Portal Projecten
Een volledig op Git gebaseerd versiebeheersysteem ingebed in T-IA Connect. Exporteer uw project als leesbare tekstbestanden, commit wijzigingen, bekijk diffs, beheer branches en synchroniseer met remotes — direct vanuit de UI of via MCP tools.
TIA Portal Projecten zijn Nachtmerries voor Versiebeheer
Binaire bestanden, geen diffs, geen merge — het slechtste scenario voor broncodebeheer
Ondoorzichtig Binair Formaat
TIA Portal projecten zijn bedrijfseigen binaire bestanden. Git ziet ze als blobs — geen regel-voor-regel diffs, geen zinvolle merge, geen manier om te zien wat er werkelijk is veranderd tussen twee versies.
Copy-Paste Versiebeheer
Engineers beheren projectversies door mappen te kopiëren: Project_v1, Project_v2, Project_v2_John_modified. De schijfruimte explodeert, niemand weet welke versie actueel is en mergen is onmogelijk.
Geen Zichtbaarheid van Wijzigingen
Iemand heeft vorige week een function block gewijzigd. Wat is er precies veranderd? Welk netwerk? Welke instructie? Zonder tekst-diffs kunt u dit niet zien zonder beide versies naast elkaar te openen in TIA Portal.
Geen Samenwerkingsworkflow
Twee engineers kunnen niet met vertrouwen tegelijkertijd aan hetzelfde project werken. Geen branches, geen merge-mogelijkheid, geen pull requests. De één overschrijft het werk van de ander.
Hoe VCS in T-IA Connect Werkt
Export → Git → diff/branch/merge, met automatische XML-normalisatie
Automatische Project Export
T-IA Connect exporteert alle projectelementen als leesbare tekstbestanden: blocks (OB, FB, FC, DB) als SimaticML XML, tag tables, UDTs, watch tables als XML, en hardware-configuratie als AML.
XML-Normalisatie
TIA Portal kan XML-attributen herordenen tussen exports, wat valse diffs veroorzaakt. De ingebouwde XmlNormalizer sorteert attributen deterministisch, zodat diffs alleen echte wijzigingen tonen.
Ingebedde Git (LibGit2Sharp)
Geen externe Git-installatie vereist. T-IA Connect gebruikt LibGit2Sharp voor een volledig ingebedde Git-implementatie. Init, commit, branch, diff, merge, push, pull — allemaal ingebouwd.
Volledig Branch-beheer
Maak branches aan voor varianten of experimenten. Werk aan een feature-branch, test deze en merge vervolgens terug naar main. Dezelfde workflow die softwareteams gebruiken, nu voor PLC-projecten.
Remote Synchronisatie (Push/Pull)
Voeg een remote repository toe (GitHub, GitLab, Gitea, Azure DevOps) en push/pull wijzigingen. Deel de projectgeschiedenis met het team via standaard Git-infrastructuur.
Desktop UI Zijbalk
Een VCS-zijbalk in de desktopapplicatie toont de repo-status, gewijzigde bestanden en laat u direct vanuit de UI committen. Geen command line nodig voor dagelijkse handelingen.
Typische Versiebeheer Workflow
Van projectwijziging naar bijgehouden, diffbare geschiedenis
1. Initialiseer Repository
Voer vcs_init uit om een Git-repository aan te maken in .tia-connect/source/. Dit gebeurt eenmalig per project. Alle volgende exports gaan naar deze map.
2. Commit Wijzigingen
Na het aanbrengen van wijzigingen in TIA Portal, voert u vcs_commit uit. T-IA Connect exporteert het volledige project, staget de bestanden en maakt een Git commit met uw bericht.
3. Bekijk Diffs & Geschiedenis
Gebruik vcs_diff om precies te zien wat er is veranderd — welke XML-elementen zijn toegevoegd, gewijzigd of verwijderd. Gebruik vcs_log om door de commit-geschiedenis te bladeren met berichten en tijdstempels.
4. Branch, Merge & Restore
Maak branches aan voor experimenten (vcs_branch_create), merge ze terug (vcs_merge), of herstel een specifiek bestand uit een vorige commit (vcs_restore).
Wat Wordt Geëxporteerd
Elk projectelement wordt een leesbaar, diffbaar tekstbestand
Program Blocks
OB, FB, FC, DB — geëxporteerd als SimaticML XML. Elke block is een apart bestand in de blocks/ map. Volledige netwerkstructuur, instructies en opmerkingen blijven behouden.
Tag Tables
PLC tags geëxporteerd als gestructureerde XML in de tags/ map. Namen, datatypen, adressen en opmerkingen — allemaal onder versiebeheer.
UDTs & Watch Tables
User-Defined Types in udts/ en watch tables in watch/. Volledige project-datatypen bijgehouden naast de programmalogica.
Hardware-configuratie
Netwerktopologie, CPU-configuratie en I/O-modules geëxporteerd als AML (AutomationML) in hardware/. Volg hardwarewijzigingen samen met softwarewijzigingen.
Beschikbare VCS Tools
Toegankelijk via MCP, Copilot, REST API en de desktop UI
vcs_init / vcs_commit / vcs_status
Initialiseer de repository, commit de huidige projectstatus met een bericht, en controleer welke bestanden zijn gewijzigd, toegevoegd of verwijderd sinds de laatste commit.
vcs_log / vcs_diff
Blader door de commit-geschiedenis met berichten en tijdstempels. Bekijk tekst-diffs tussen commits of tussen de huidige staat en de laatste commit.
vcs_branch_* / vcs_merge
Maak, lijst, checkout en verwijder branches. Merge branches weer samen. Volledige Git branching-workflow voor PLC-projecten.
vcs_remote_* / vcs_push / vcs_pull
Remote repositories toevoegen, lijsten en verwijderen. Push commits naar een remote en pull wijzigingen van het team. Standaard Git remote workflow.
vcs_restore / vcs_config
Herstel een bestand uit een vorige commit. Configureer Git gebruikersnaam en e-mail. Instellingen op projectniveau voor de ingebedde Git-repository.
Veelgestelde Vragen
Hoe verschilt dit van de ingebouwde projectversiebeheer van TIA Portal?
Het versiebeheer van TIA Portal werkt op het niveau van het volledige project — binaire snapshots. Het VCS van T-IA Connect exporteert individuele elementen als tekstbestanden, waardoor u regel-voor-regel diffs, branching, merging en de mogelijkheid krijgt om precies te zien wat er in elke block is veranderd. Ze vullen elkaar aan.
Kan ik pushen naar GitHub/GitLab?
Ja. Voeg een remote toe met vcs_remote_add en gebruik vcs_push/vcs_pull om te synchroniseren. De geëxporteerde tekstbestanden werken perfect met elk Git-hostingplatform. Uw PLC-projectgeschiedenis leeft naast uw andere repositories.
Importeert de restore daadwerkelijk terug in TIA Portal?
vcs_restore haalt de bestandsinhoud op uit een vorige commit. Volledige herimport in TIA Portal is in ontwikkeling (er is een coderingsprobleem met UTF-16 op sommige block-types). Voor nu geeft restore u de exacte broninhoud om handmatig opnieuw te importeren.
Moet ik Git op mijn machine hebben geïnstalleerd?
Nee. T-IA Connect bedt Git in via LibGit2Sharp — een eigen .NET-implementatie van Git. Geen externe Git-installatie, geen PATH-configuratie, geen command line. Alles werkt via de UI en tools van T-IA Connect.