

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE rdf:RDF[
	<!ENTITY rdf 'http://www.w3.org/1999/02/22-rdf-syntax-ns#'>
	<!ENTITY rdfs 'http://www.w3.org/2000/01/rdf-schema#'>
	<!ENTITY owl 'http://www.w3.org/2002/07/owl#'>
	<!ENTITY swivt 'http://semantic-mediawiki.org/swivt/1.0#'>
	<!ENTITY wiki 'http://https://stuga.dokit.app/wiki/Special:URIResolver/'>
	<!ENTITY category 'http://https://stuga.dokit.app/wiki/Special:URIResolver/Category-3A'>
	<!ENTITY property 'http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3A'>
	<!ENTITY wikiurl 'https://stuga.dokit.app/wiki/'>
]>

<rdf:RDF
	xmlns:rdf="&rdf;"
	xmlns:rdfs="&rdfs;"
	xmlns:owl ="&owl;"
	xmlns:swivt="&swivt;"
	xmlns:wiki="&wiki;"
	xmlns:category="&category;"
	xmlns:property="&property;">

	<owl:Ontology rdf:about="https://stuga.dokit.app/wiki/Special:ExportRDF/Placing_a_TwinCAT3_Machine_Under_Source_Control">
		<swivt:creationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2026-05-26T15:08:20+02:00</swivt:creationDate>
		<owl:imports rdf:resource="http://semantic-mediawiki.org/swivt/1.0"/>
	</owl:Ontology>
	<swivt:Subject rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Placing_a_TwinCAT3_Machine_Under_Source_Control">
		<rdf:type rdf:resource="http://https://stuga.dokit.app/wiki/Special:URIResolver/Category-3ATutorials"/>
		<rdf:type rdf:resource="http://https://stuga.dokit.app/wiki/Special:URIResolver/Category-3ASoftware"/>
		<rdfs:label>Placing a TwinCAT3 Machine Under Source Control</rdfs:label>
		<rdfs:isDefinedBy rdf:resource="https://stuga.dokit.app/wiki/Special:ExportRDF/Placing_a_TwinCAT3_Machine_Under_Source_Control"/>
		<swivt:page rdf:resource="https://stuga.dokit.app/wiki/Placing_a_TwinCAT3_Machine_Under_Source_Control"/>
		<swivt:wikiNamespace rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</swivt:wikiNamespace>
		<swivt:wikiPageContentLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string">en</swivt:wikiPageContentLanguage>
		<property:Complete rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Draft</property:Complete>
		<property:Description rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Changing the directory structure to allow  a PC used for PLC code editing to sync with the source code version control system</property:Description>
		<property:Difficulty rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Medium</property:Difficulty>
		<property:Duration rdf:datatype="http://www.w3.org/2001/XMLSchema#double">30</property:Duration>
		<property:Duration-2Dtype rdf:datatype="http://www.w3.org/2001/XMLSchema#string">minute(s)</property:Duration-2Dtype>
		<property:Introduction rdf:datatype="http://www.w3.org/2001/XMLSchema#string">&lt;div class="icon-instructions caution-icon"&gt;
&lt;div class="icon-instructions-icon"&gt;&lt;i class="fa fa-exclamation-triangle"&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class="icon-instructions-text"&gt;...Note - This dokit is now obsolete - the sourcetree system has been replaced by the internal one in TcXAEShell&lt;/div&gt;
&lt;/div&gt;

Click [https://stuga.dokit.app/wiki/Changing_Version_Control_to_Visual_Studio here] for the latest procedure


For many years, the source code for the PLCs has resided on the G:\drive and then a copy on each and every one of the PCs used to edit the code, so at least one on each machine. This is a recipe for disaster because maintaining all the copies and version numbers is incredibly difficult and adds a lot of  time overhead to fixes and changes. This has worked because there has been only one developer, but this is set to change in future as more programmers will be trained and tracking versions becomes more difficult


From 2020, the PLC code version control has been improved by using an industry standard source control system called "Git" along with "BitBucket" to store the PLC code in the cloud. The program "SourceTree" is used to commit, push and pull the changes


[https://www.atlassian.com/git/tutorials/what-is-version-control Click here] for an introduction to version control using Git


This tutorial is a step by step guide to setting up an existing machine or diagnostic PC to a standard uses on all Stuga machines to enable quick, easy and stress free version control.</property:Introduction>
		<property:IsTranslation rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">false</property:IsTranslation>
		<property:Language rdf:datatype="http://www.w3.org/2001/XMLSchema#string">en</property:Language>
		<property:Main_Picture rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Installing_SourceTree_Version_Control_Software_Annotation_2020-02-01_125845.jpg</property:Main_Picture>
		<property:SourceLanguage rdf:datatype="http://www.w3.org/2001/XMLSchema#string">none</property:SourceLanguage>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">See this tutorial for backing up (archiving) a TwinCAT3 project</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Clone the online repository to a new local directory c:\TwinCAT\stuga\versionControl

Check success by navigating to the folder - there should be 2 folders

PLC_Reset

tc3Multi

&lt;br/&gt;</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Remove the version numbers at the end</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">In the Project folder for the machine, delete tc3Multi and PLC_Reset folder

&lt;div class="icon-instructions info-icon"&gt;
&lt;div class="icon-instructions-icon"&gt;&lt;i class="fa fa-info-circle"&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class="icon-instructions-text"&gt;...These folders now reside in the versionControl folder&lt;/div&gt;
&lt;/div&gt;&lt;br/&gt;</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">This will get the latest file versions from the cloud of tcMulti and PLC_Reset and copy into PLC_Reset and tc3Multi folders</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">#Open the machine's standard Visual Studio project file
#Right click on tc3Multi_and select Change Project
#Navigate to the versionControl folder\tc3Multi
#Select Use Original Project Location
#Repeat for PLC_Reset
&lt;div class="icon-instructions pin-icon"&gt;
&lt;div class="icon-instructions-icon"&gt;&lt;i class="fa fa-thumb-tack"&gt;&lt;/i&gt;&lt;/div&gt;
&lt;div class="icon-instructions-text"&gt;...Following this method will keep the io links in the project&lt;/div&gt;
&lt;/div&gt;&lt;br/&gt;</property:Step_Content>
		<property:Step_Content rdf:datatype="http://www.w3.org/2001/XMLSchema#string">See this [https://stuga.dokit.app/wiki/Installing_SourceTree_Version_Control_Software tutorial] for installation instructions

&lt;br/&gt;</property:Step_Content>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Backup the Old Project</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Install Sourcetree on the PC</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Clone the tcMulti repository</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Pull the latest tcMulti Projects</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Change the PLC Projects to versionControl</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Rename tcMulti and PLC_Reset</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Check the IO Links still Exist</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Activate Configuration</property:Step_Title>
		<property:Step_Title rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Delete the Old PLC Projects</property:Step_Title>
		<property:Tags rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Sourcetree</property:Tags>
		<property:Tags rdf:datatype="http://www.w3.org/2001/XMLSchema#string">version</property:Tags>
		<property:Tags rdf:datatype="http://www.w3.org/2001/XMLSchema#string">control</property:Tags>
		<property:Has_query rdf:resource="&wiki;Placing_a_TwinCAT3_Machine_Under_Source_Control-23_QUERYee7a61aae48f1c3f91d8e4d7736360be"/>
		<swivt:wikiPageModificationDate rdf:datatype="http://www.w3.org/2001/XMLSchema#dateTime">2022-03-21T10:07:19Z</swivt:wikiPageModificationDate>
		<property:Modification_date-23aux rdf:datatype="http://www.w3.org/2001/XMLSchema#double">2459659.9217477</property:Modification_date-23aux>
		<swivt:wikiPageSortKey rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Placing a TwinCAT3 Machine Under Source Control</swivt:wikiPageSortKey>
		<property:Comments rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:Comments>
		<property:Page_creator rdf:resource="&wiki;Utilisateur-3AGareth_Green"/>
		<property:Approved rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">false</property:Approved>
		<property:IsReview rdf:datatype="http://www.w3.org/2001/XMLSchema#boolean">false</property:IsReview>
		<property:I_did_it rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:I_did_it>
		<property:Favorites rdf:datatype="http://www.w3.org/2001/XMLSchema#double">0</property:Favorites>
	</swivt:Subject>
	<swivt:Subject rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Placing_a_TwinCAT3_Machine_Under_Source_Control-23_QUERYee7a61aae48f1c3f91d8e4d7736360be">
		<swivt:masterPage rdf:resource="&wiki;Placing_a_TwinCAT3_Machine_Under_Source_Control"/>
		<swivt:wikiNamespace rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">0</swivt:wikiNamespace>
		<property:Query_depth rdf:datatype="http://www.w3.org/2001/XMLSchema#double">1</property:Query_depth>
		<property:Query_format rdf:datatype="http://www.w3.org/2001/XMLSchema#string">plainlist</property:Query_format>
		<property:Query_size rdf:datatype="http://www.w3.org/2001/XMLSchema#double">3</property:Query_size>
		<property:Query_string rdf:datatype="http://www.w3.org/2001/XMLSchema#string">[[:Dokit:DocOptions]] [[DokitEPIEnable::yes]]</property:Query_string>
		<swivt:wikiPageSortKey rdf:datatype="http://www.w3.org/2001/XMLSchema#string">Placing a TwinCAT3 Machine Under Source Control# QUERYee7a61aae48f1c3f91d8e4d7736360be</swivt:wikiPageSortKey>
	</swivt:Subject>
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#creationDate" />
	<owl:Class rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Category-3ATutorials" />
	<owl:Class rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Category-3ASoftware" />
	<owl:ObjectProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#page" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiNamespace" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageContentLanguage" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AComplete" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ADescription" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ADifficulty" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ADuration" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ADuration-2Dtype" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AIntroduction" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AIsTranslation" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ALanguage" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AMain_Picture" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ASourceLanguage" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AStep_Content" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AStep_Title" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3ATags" />
	<owl:ObjectProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AHas_query" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageModificationDate" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AModification_date-23aux" />
	<owl:DatatypeProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#wikiPageSortKey" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AComments" />
	<owl:ObjectProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3APage_creator" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AApproved" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AIsReview" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AI_did_it" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AFavorites" />
	<owl:ObjectProperty rdf:about="http://semantic-mediawiki.org/swivt/1.0#masterPage" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AQuery_depth" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AQuery_format" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AQuery_size" />
	<owl:DatatypeProperty rdf:about="http://https://stuga.dokit.app/wiki/Special:URIResolver/Property-3AQuery_string" />
	<!-- Created by Semantic MediaWiki, https://www.semantic-mediawiki.org/ -->
</rdf:RDF>