<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: Alteryx Workflow Version Control in Alteryx Designer Desktop Discussions</title>
    <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175057#M45354</link>
    <description>&lt;P&gt;Alteryx workflows are simply XML files, so one possible solution is to control them using a Git repository.&amp;nbsp; Plain old Git doesn't require server software and works well in a distributed environment.&amp;nbsp; Throw in a git GUI like SourceTree or GitKraken and managing the repository becomes quite easy.&lt;/P&gt;</description>
    <pubDate>Tue, 19 Jun 2018 19:13:44 GMT</pubDate>
    <dc:creator>tlarsen7572</dc:creator>
    <dc:date>2018-06-19T19:13:44Z</dc:date>
    <item>
      <title>Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175046#M45353</link>
      <description>&lt;P&gt;Team,&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We are updating one Alteryx workflow in a folder.&amp;nbsp;The folder is shared by multiple colleagues.&amp;nbsp;We are running the workflow and making updates at the same time. How is the best way to handle version control?&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thank you,&amp;nbsp;&lt;/P&gt;&lt;P&gt;EW&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jun 2018 18:53:25 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175046#M45353</guid>
      <dc:creator>Eworabo</dc:creator>
      <dc:date>2018-06-19T18:53:25Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175057#M45354</link>
      <description>&lt;P&gt;Alteryx workflows are simply XML files, so one possible solution is to control them using a Git repository.&amp;nbsp; Plain old Git doesn't require server software and works well in a distributed environment.&amp;nbsp; Throw in a git GUI like SourceTree or GitKraken and managing the repository becomes quite easy.&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jun 2018 19:13:44 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175057#M45354</guid>
      <dc:creator>tlarsen7572</dc:creator>
      <dc:date>2018-06-19T19:13:44Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175144#M45382</link>
      <description>&lt;P&gt;Thank you, @tlarsen7572 Do you recommend any tool to convert yxmd&amp;nbsp;to xml? I used this tool:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;A href="https://community.alteryx.com/t5/Alteryx-Designer-Discussions/Convert-Several-Alteryx-Workflows-to-XML/td-p/88586" target="_blank"&gt;https://community.alteryx.com/t5/Alteryx-Designer-Discussions/Convert-Several-Alteryx-Workflows-to-XML/td-p/88586&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;However, I'm afraid it does not reflect the updated Alteryx version.&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks,&amp;nbsp;&lt;/P&gt;&lt;P&gt;EW&lt;/P&gt;</description>
      <pubDate>Tue, 19 Jun 2018 21:58:07 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175144#M45382</guid>
      <dc:creator>Eworabo</dc:creator>
      <dc:date>2018-06-19T21:58:07Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175373#M45454</link>
      <description>&lt;P&gt;There is no need to convert to XML.&amp;nbsp; Git will see that yxmd is a text file and treat it appropriately.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Here are a few screenshots of what the setup process might look like.&amp;nbsp; This is GitKraken, which is what I currently use, but the process should be similar in any Git GUI.&amp;nbsp; Also, if you choose a GUI today (such as GitKraken) and decide you don't like it, any other GUI will still work with the repository, so you are not locked in.&amp;nbsp; Git is still Git underneath the shiny GUI wrappers.&amp;nbsp; You could even use the Git command line rather than a GUI, but I personally find it to be challenging to use.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Assume our workflow is called 'RegexExtract Sample.yxmd' and it is located in a folder called 'Some Repository'.&amp;nbsp; It looks like this:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git1.png" style="width: 273px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36410iA37B6B5FF5A713B8/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git1.png" alt="Git1.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;We can initialize a git repository in this folder (IIRC, this will work for network folder as well as local folders):&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git2.png" style="width: 998px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36411i9392DF92038B3A68/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git2.png" alt="Git2.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Once the repository is initialized we can perform the initial commit of the workflow:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git3.png" style="width: 999px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36412i2BA67B0F2C4BA3EA/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git3.png" alt="Git3.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now we make a change to the workflow and it looks like this:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git4.png" style="width: 433px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36413i35CAF58765329B69/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git4.png" alt="Git4.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The Git GUI will automatically detect that a change was made.&amp;nbsp; Once we are done making changes we can commit them:&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git5.png" style="width: 999px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36414i0EEE71E39172C922/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git5.png" alt="Git5.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;As we do this the history of the file is built and tracked.&amp;nbsp; At any point in time we can see the history of the entire repository, and even individual files.&amp;nbsp; We can also revert to older versions if we do something that causes a bug.&lt;/P&gt;&lt;P&gt;&lt;span class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="Git6.png" style="width: 999px;"&gt;&lt;img src="https://community.alteryx.com/t5/image/serverpage/image-id/36415iC956D812873B27B3/image-size/large?v=v2&amp;amp;px=999" role="button" title="Git6.png" alt="Git6.png" /&gt;&lt;/span&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Right now the actual diff view (the changes made to the file) is not very helpful.&amp;nbsp; But you can add custom diff'ers, some of which may provide more useful information for XML files.&amp;nbsp; It is something I am looking at right now so that the diff screen can be helpful for us.&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 12:14:24 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175373#M45454</guid>
      <dc:creator>tlarsen7572</dc:creator>
      <dc:date>2018-06-20T12:14:24Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175493#M45490</link>
      <description>&lt;P&gt;ary changes?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 15:52:24 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175493#M45490</guid>
      <dc:creator>Eworabo</dc:creator>
      <dc:date>2018-06-20T15:52:24Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175500#M45492</link>
      <description>&lt;P&gt;Thank you for getting back to me! I was able to convert it to xml. I can see the version difference and even update the xml&amp;nbsp;file when it is necessary. Unfortunately, I'm afraid I cannot use&amp;nbsp;the conversion tool you use since I'm currently working on commercial case. The problem is how can I convert back to yxmd after making the necessary changes?&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 15:51:32 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175500#M45492</guid>
      <dc:creator>Eworabo</dc:creator>
      <dc:date>2018-06-20T15:51:32Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175518#M45500</link>
      <description>&lt;P&gt;Git itself is open source, so that should not be an issue.&amp;nbsp; But I may not completely understand your requirements here...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;There is no need to convert to yxmd.&amp;nbsp; yxmd IS xml.&amp;nbsp; Is there a particular reason you need a file with an XML extension?&amp;nbsp; If you really need to, you can rename your workflow from MyWorkflow.xml to MyWorkflow.yxmd...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Could you perhaps explain exactly what you are doing a bit more?&amp;nbsp; Are you generating copies of the workflow and saving them in a directory?&amp;nbsp; I do not understand why you need this step of generating an XML file.&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 16:22:22 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175518#M45500</guid>
      <dc:creator>tlarsen7572</dc:creator>
      <dc:date>2018-06-20T16:22:22Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175612#M45532</link>
      <description>&lt;P&gt;I must have downloaded the wrong Git software. Thank you. I got it.&amp;nbsp;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Wed, 20 Jun 2018 19:07:26 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/175612#M45532</guid>
      <dc:creator>Eworabo</dc:creator>
      <dc:date>2018-06-20T19:07:26Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/460760#M90304</link>
      <description>&lt;P&gt;We are looking at Git but have a question about saved database settings.&amp;nbsp; Alteryx workflow saves the connection info so if we were to keep production workflows in git and don't want production connection info stored is there a way to handle this?&lt;/P&gt;</description>
      <pubDate>Fri, 06 Sep 2019 22:35:13 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/460760#M90304</guid>
      <dc:creator>TimN</dc:creator>
      <dc:date>2019-09-06T22:35:13Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/641735#M146832</link>
      <description>&lt;P&gt;How would you then revert back to an older file before the latest commit? Copy and paste the xml string into notepad and save it as yxmd?&lt;/P&gt;</description>
      <pubDate>Tue, 29 Sep 2020 13:59:33 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/641735#M146832</guid>
      <dc:creator>Inactive User</dc:creator>
      <dc:date>2020-09-29T13:59:33Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/700158#M162985</link>
      <description>&lt;P&gt;THIS IS AWESOME! I MEAN, REALLY AWESOME!&lt;/P&gt;&lt;P&gt;There is no way Alteryx thought this could happen &lt;span class="lia-unicode-emoji" title=":slightly_smiling_face:"&gt;🙂&lt;/span&gt;&lt;/P&gt;</description>
      <pubDate>Tue, 05 Jan 2021 21:50:29 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/700158#M162985</guid>
      <dc:creator>David_Mosk</dc:creator>
      <dc:date>2021-01-05T21:50:29Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/703998#M164211</link>
      <description>&lt;P&gt;Tim,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I looked at some of my files in a text editor that uses database connections around my company and mine didn't have credentials in the XML. I did some further digging and it seems like if you have a connection on the server and when adding it to your workflow you use that "Gallery" connection, it just puts the name of the connection in the XML.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If you manually configure the connection it places the Encoded password in the XML. I assume this "encoding" is probably pretty easy to reverse engineer. Doesn't look to be some sort of really sophisticated encryption.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;My #1 recommendation would be to use server configuration for database connections and train users to not use local db connections for checked-in workflows.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The more complicated alternative would be to setup a pre-commit routine in GIT that would find and remove these passwords from the XML and then put them back when you run your production pipeline. So you could do something like find all XML in &amp;lt;password&amp;gt; brackets and replace with something like {PASSWORD REMOVED}. Then, assuming you are automating deployment with git, you could have it add that back to the XML before deployment.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Option 2 seems overly complicated to me, but might be helpful if you just want to wipe out those credentials because you have users that won't know any better.&amp;nbsp;&lt;A href="https://medium.com/@ripoche.b/using-global-pre-commit-hook-to-prevent-committing-unwanted-code-edbbf957ad12" target="_blank"&gt;Using global pre-commit hook to prevent committing unwanted code | by Benoît Ripoche | Medium&lt;/A&gt;&lt;/P&gt;</description>
      <pubDate>Wed, 13 Jan 2021 21:51:53 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/703998#M164211</guid>
      <dc:creator>SideOfRanch</dc:creator>
      <dc:date>2021-01-13T21:51:53Z</dc:date>
    </item>
    <item>
      <title>Re: Alteryx Workflow Version Control</title>
      <link>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/806654#M198228</link>
      <description>&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;Thanks for the reply!&amp;nbsp; We are going with your Option #1.&amp;nbsp; We don't think Github (we use a product called BitBucket)&amp;nbsp; is a perfect solution but it's definitely provided a few Compliance enforced needs.&amp;nbsp; Now all of our Alteryx Community puts their code into Bitbucket when they have satisfied certain criteria.&amp;nbsp; We then migrate ultimately to Production.&amp;nbsp; We have two test envs Sandbox =&amp;gt; UAT =&amp;gt; Prod.&amp;nbsp; Assets go into Bitbucket from RD.&amp;nbsp; Our next desire is to automate the Prod implementation using Bitbucket and Alteryx Admin API if that is possible.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Tim&lt;/P&gt;</description>
      <pubDate>Wed, 25 Aug 2021 17:17:08 GMT</pubDate>
      <guid>https://community.alteryx.com/t5/Alteryx-Designer-Desktop-Discussions/Alteryx-Workflow-Version-Control/m-p/806654#M198228</guid>
      <dc:creator>TimN</dc:creator>
      <dc:date>2021-08-25T17:17:08Z</dc:date>
    </item>
  </channel>
</rss>

