{"id":16488,"date":"2023-06-26T17:39:48","date_gmt":"2023-06-26T21:39:48","guid":{"rendered":"https:\/\/www.iri.com\/blog\/?p=16488"},"modified":"2023-06-28T15:43:13","modified_gmt":"2023-06-28T19:43:13","slug":"sharing-iri-data-management-jobs-via-git","status":"publish","type":"post","link":"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/sharing-iri-data-management-jobs-via-git\/","title":{"rendered":"Sharing IRI Data Management Jobs via Git"},"content":{"rendered":"<p><b><i>Editor\u2019s Note: <\/i><\/b><i><span style=\"font-weight: 400;\">This article updates IRI\u2019s <\/span><\/i><a href=\"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/introduction-metadata-management-hub\/\"><i><span style=\"font-weight: 400;\">original series on managing metadata assets in Git<\/span><\/i><\/a><i><span style=\"font-weight: 400;\">, and covers project export and import, particularly for use in enterprise data anonymization and test data management scenarios. A future article will cover the use and integration of Git\u2019s Large File System (LFS) for provisioning big Voracity job data targets like CoSort-wrangled subsets or RowGen test files.<\/span><\/i><\/p>\n<h4><b>Abstract<\/b><\/h4>\n<p><i><span style=\"font-weight: 400;\">Maintaining consistency and control of data processing jobs are essential in multi-application, multi-user production and development environments which rely on data and referential integrity, golden copies of master data and test data, and the reusability of complex tasks. This article describes how <\/span><\/i><a href=\"https:\/\/www.iri.com\/products\/voracity\"><i><span style=\"font-weight: 400;\">IRI Voracity<\/span><\/i><\/a><i><span style=\"font-weight: 400;\"> data management, protection, and prototyping projects \u2013 and the common data class and function rule artifacts used in multi-source data masking and synthesis jobs \u2013 can be shared with enterprise users through Git architecture. Packaged and integrated in the graphical job design IDE built on Eclipse called <\/span><\/i><a href=\"https:\/\/www.iri.com\/products\/workbench\"><i><span style=\"font-weight: 400;\">IRI Workbench<\/span><\/i><\/a><i><span style=\"font-weight: 400;\">, Git can submit, store, and provide these artifacts securely to manage their access and change.<\/span><\/i><\/p>\n<h4><b>Introduction<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">IRI software is architected to run in distributed fashion on a client-server network, where most jobs are designed in <\/span><a href=\"https:\/\/www.iri.com\/products\/workbench\"><span style=\"font-weight: 400;\">IRI Workbench<\/span><\/a><span style=\"font-weight: 400;\"> and executed by the backend IRI executable called <\/span><a href=\"https:\/\/www.iri.com\/products\/cosort\/sortcl\"><span style=\"font-weight: 400;\">SortCL<\/span><\/a><span style=\"font-weight: 400;\">. Unlike a web application or cloud-based SaaS, Workbench and SortCL can run anywhere on your network, private cloud, or public cloud infrastructure (which you, not we, manage). SortCL can also run on the same system (Linux, Windows or MacOS) running Workbench, too.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Beyond this flexibility, and the independent operation of IRI client and server components, comes the security of maintaining full control of the software, your data and infrastructure. This is an especially valuable paradigm in the data breach and privacy law compliance era, and one that a SaaS solution cannot provide. Similarly no affordable web application can match the data discovery, integration, migration, governance, and analytic <\/span><a href=\"https:\/\/www.iri.com\/products\/voracity\/technical-details#capabilities\"><span style=\"font-weight: 400;\">functional breadth<\/span><\/a><span style=\"font-weight: 400;\"> of Voracity.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">That said, cloud-based SaaS and\/or web applications offer remote, centralized access to the job design and asset environment, lending a (at least perceived) level of convenience in configuring jobs and hardware resources. The question then becomes, \u201cHow can I have the best of those worlds with a software platform like Voracity where my development and production jobs are distributed in my own domain(s) for direct control, wider capability, and regulatory compliance?\u201d<\/span><\/p>\n<h4><b>SaaS \/ Web-like Deployment without the Risk \/ Costs<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">Given the considerations and question above, IRI has these suggestions:<\/span><\/p>\n<p><span style=\"font-weight: 400;\">1.\u00a0 Operate on-premise or in your private\/public cloud infrastructure, and\/or on one or more VMs, where Workbench and SortCL may even be collocated. <\/span><a href=\"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/running-iri-software-in-a-browser-chrome-remote-desktop\/\"><span style=\"font-weight: 400;\">Log-in remotely\/centrally to IRI Workbench workspace(s)<\/span><\/a><span style=\"font-weight: 400;\"> via VNC, RDP, or web browser (virtual desktop) for web-app-like convenience but with an encrypted connection to a more private node;<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16496 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/Operating-IRI-Workbench-in-Chrome-300x178.png\" alt=\"\" width=\"640\" height=\"380\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Operating-IRI-Workbench-in-Chrome-300x178.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Operating-IRI-Workbench-in-Chrome-1024x607.png 1024w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Operating-IRI-Workbench-in-Chrome-768x455.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Operating-IRI-Workbench-in-Chrome.png 1294w\" sizes=\"(max-width: 640px) 100vw, 640px\" \/><\/p>\n<p style=\"text-align: center;\"><i><span style=\"font-weight: 400;\">Operating IRI Workbench (Voracity IDE) via RDP in Chrome Browser<\/span><\/i><i><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/i><\/p>\n<p><span style=\"font-weight: 400;\">2.\u00a0 <\/span><span style=\"font-weight: 400;\">License Voracity like a SaaS, via subscription, to leverage OpEx pricing, multi-node deployment, multi-discipline <\/span><a href=\"https:\/\/www.iri.com\/products\/voracity\/technical-details#capabilities\"><span style=\"font-weight: 400;\">capabilities<\/span><\/a><span style=\"font-weight: 400;\">, and included technical support \u2026 but without CSI-driven source, volume, core, or I\/O metering or SSO security\/compliance issues;<\/span><\/p>\n<p><span style=\"font-weight: 400;\">3.\u00a0 <\/span><span style=\"font-weight: 400;\">Share projects and job artifacts securely through Git, whether you operate in the cloud (see above), or on-premise, following the steps in this article below. By submitting these artifacts to an online or LAN Git repository integrated directly with your Workbench, you can assign access rights, and later (or have others) download job assets for (re)use.<\/span><\/p>\n<h4><b>IRI Workbench &#8211; Git Use Prerequisites<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">Whether you are a project creator, a project user, or both, you must connect your IRI Workbench instance to a remote Git repository (<\/span><a href=\"https:\/\/docs.github.com\/en\/repositories\/creating-and-managing-repositories\/creating-a-new-repository\"><span style=\"font-weight: 400;\">which you created<\/span><\/a><span style=\"font-weight: 400;\"> or need access to). Also to use Git, you also need a local Git repository in your file system with which the remote repository (e.g., GitHub) can interact.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If you are using SSH with your remote Git repository, make sure that the SSH key is accessible (to add) to the Workbench (see the steps on adding an SSH key further below). Once you have completed these tasks, connecting Workbench to Git is very simple.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Before going over the steps to connect Git to the Workbench, it is important to understand what a workspace is. Workbench uses workspaces to store information such as projects, files, and even database connections. This means you can have several workspaces that are completely different from one another but use one Workbench (which is the actual application).<\/span><\/p>\n<p><span style=\"font-weight: 400;\">By way of further clarification, your local Git repository is just a directory in your file system. A workspace is the same thing; it too is just a directory where projects are stored. If you want to create projects and have them ready to push to the remote repository then you need to use the local repository.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">And, if you use the local repository as your workspace, your IRI Workbench projects will already be in the local repository, so it will be easier to simply push (or pull) changes through Git that way. If you do not use the local repository as the workspace location, that\u2019s OK, but you will then have to move those projects to the local repository in order to share them through Git; that option is more prone to errors due to full file pathing conflicts; see the recommendations below.<\/span><\/p>\n<h4><span style=\"font-weight: 400;\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16497 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/DiagramWorkspace-300x206.png\" alt=\"\" width=\"536\" height=\"368\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/DiagramWorkspace-300x206.png 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/DiagramWorkspace-768x526.png 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/DiagramWorkspace.png 954w\" sizes=\"(max-width: 536px) 100vw, 536px\" \/><\/span><\/h4>\n<h4><b>Recommendations<\/b><\/h4>\n<p><span style=\"font-weight: 400;\"><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16498 alignright\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/workspace_in_workbench-176x300.jpg\" alt=\"\" width=\"165\" height=\"281\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/workspace_in_workbench-176x300.jpg 176w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/workspace_in_workbench.jpg 202w\" sizes=\"(max-width: 165px) 100vw, 165px\" \/>We recommend that you connect your Workbench to Git before creating or using any projects. You can run into issues if you create projects first and then connect Workbench to Git, such as broken rules or scripts because they might use a full pa<\/span><span style=\"font-weight: 400;\">th to a file and changing its location can cause the job scripts to fail.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Another recommendation is to not use the default workspace location for y<\/span><span style=\"font-weight: 400;\">our local Git repository. The default location is located inside of the Workbench (shown here right) and can cause issues in the future if you need to delete Workbench for any reason but want to keep your workspace that contains all your projects.<\/span><\/p>\n<h4><b>New Workspace<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">If you have not created any projects and are just starting to use Workbench, the easiest option is to change the default workspace to your local Git repository. There are two options to change your workspace.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In the first option, when you first start Workbench, a dialog will appear asking you which workspace you would like to use. On the right side of the dialog, there is a <\/span><i><span style=\"font-weight: 400;\">browse <\/span><\/i><span style=\"font-weight: 400;\">button that will allow you to select a different folder with your workspace. Navigate to your local repository, click <\/span><i><span style=\"font-weight: 400;\">Select Folder<\/span><\/i><span style=\"font-weight: 400;\">, and click <\/span><i><span style=\"font-weight: 400;\">Launch<\/span><\/i><span style=\"font-weight: 400;\"> to open Workbench using that workspace.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16499 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/changeWorkspace-300x130.jpg\" alt=\"\" width=\"508\" height=\"220\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/changeWorkspace-300x130.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/changeWorkspace.jpg 610w\" sizes=\"(max-width: 508px) 100vw, 508px\" \/><br \/>\n<span style=\"font-weight: 400;\">The second option opens inside Workbench. From the <\/span><i><span style=\"font-weight: 400;\">File<\/span><\/i><span style=\"font-weight: 400;\"> menu, select <\/span><i><span style=\"font-weight: 400;\">Switch Workspace <\/span><\/i><span style=\"font-weight: 400;\">(the third option from the bottom).\u00a0 Any workspace you have used with Workbench will appear as an option. To open another workspace for the first time, select the option <\/span><i><span style=\"font-weight: 400;\">Other\u2026<\/span><\/i><\/p>\n<p><i><\/i><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16500 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/otherWorkSpace-300x244.jpg\" alt=\"\" width=\"462\" height=\"375\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/otherWorkSpace-300x244.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/otherWorkSpace.jpg 664w\" sizes=\"(max-width: 462px) 100vw, 462px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">After selecting <\/span><i><span style=\"font-weight: 400;\">Other\u2026<\/span><\/i><span style=\"font-weight: 400;\"> the same dialog from the first option will appear allowing you to select another workspace.\u00a0<\/span><span style=\"font-weight: 400;\">Now that Workbench is using your local repository as the workspace; any projects and files created will be available to push to your remote repository.<\/span><\/p>\n<h4><b>Adding an SSH Key<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">IRI Workbench uses <\/span><a href=\"https:\/\/docs.github.com\/en\/authentication\/connecting-to-github-with-ssh\/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent\"><span style=\"font-weight: 400;\">SSH keys<\/span><\/a><span style=\"font-weight: 400;\"> to connect and adhere to permissions set by the owner of the repository <span id='easy-footnote-1-16488' class='easy-footnote-margin-adjust'><\/span><span class='easy-footnote'><a href='https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/sharing-iri-data-management-jobs-via-git\/#easy-footnote-bottom-1-16488' title='&lt;span class=&quot;c24&quot;&gt;Note that the project owner, or data governor responsible for the project rules, creates the keys and defines the repository permissions in Github. IRI W&lt;\/span&gt;&lt;span class=&quot;c17&quot;&gt;orkbench does not manage those permissions, but must present the SSH key to identify the user so GitHub can determine what someone can (or cannot) do.&lt;\/span&gt;'><sup>1<\/sup><\/a><\/span>. <\/span><span style=\"font-weight: 400;\">The owner of the remote repository can make the repository public for anyone to access, or make it private and control who has read or read-write permissions for the whole repository or specific projects or files. If you do not have an SSH key to access the repository, you will not be able to connect let alone make changes to the remote repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Since data classes and their rules are saved to a file, the <\/span><a href=\"https:\/\/docs.github.com\/en\/repositories\/managing-your-repositorys-settings-and-features\/managing-repository-settings\/managing-teams-and-people-with-access-to-your-repository\"><span style=\"font-weight: 400;\">owner can give users read-only permissions<\/span><\/a><span style=\"font-weight: 400;\"> to these files so anyone in the team can use the files for their jobs but they can\u2019t push changes to the repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Of course, those with read-write permissions can use the data classes and rules, make changes, and share those changes with the team that is using the remote repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">For Workbench to adhere to the permissions, we need to add the location of the .ssh folder and the SSH key that relates to the repository. Inside Workbench, click on the <\/span><i><span style=\"font-weight: 400;\">Window<\/span><\/i><span style=\"font-weight: 400;\"> tab at the top and select <\/span><i><span style=\"font-weight: 400;\">Preferences<\/span><\/i><span style=\"font-weight: 400;\">.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">The preferences dialog will open and in the search text box type SSH. This will filter out the options and show you <\/span><i><span style=\"font-weight: 400;\">SSH2 <\/span><\/i><span style=\"font-weight: 400;\">which is where we need to add the keys.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16504 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/sshKeys-300x114.jpg\" alt=\"\" width=\"547\" height=\"208\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/sshKeys-300x114.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/sshKeys-768x293.jpg 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/sshKeys.jpg 861w\" sizes=\"(max-width: 547px) 100vw, 547px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">To designate SSH2 home, browse to your .ssh folder located by default in the users folder. Once you select that folder, add the private key used for the repository. Next to the private keys label there is a button called <\/span><i><span style=\"font-weight: 400;\">Add Private Key\u2026 <\/span><\/i><span style=\"font-weight: 400;\">that will browse your .ssh folder for the keys that are available. Once you have selected the private key click <\/span><i><span style=\"font-weight: 400;\">Apply and Close<\/span><\/i><span style=\"font-weight: 400;\"> to save the changes to Workbench.<\/span><\/p>\n<h4><b>Git Perspective in Workbench<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">IRI Workbench includes Git functionality so you can run Git tasks without having to use the command line or Git bash. All you need to do is open the <\/span><i><span style=\"font-weight: 400;\">Git perspective<\/span><\/i><span style=\"font-weight: 400;\"> inside of Workbench.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">At the top right corner, click the button called <\/span><i><span style=\"font-weight: 400;\">Open Perspective <\/span><\/i><span style=\"font-weight: 400;\">next to the IRI default perspective (see image below).<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16505 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/openPerspective.jpg\" alt=\"\" width=\"185\" height=\"166\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The <\/span><i><span style=\"font-weight: 400;\">Open Perspective<\/span><\/i><span style=\"font-weight: 400;\"> dialog will appear and present all the perspectives available with Workbench. Select <\/span><i><span style=\"font-weight: 400;\">Git<\/span><\/i><span style=\"font-weight: 400;\"> and click <\/span><i><span style=\"font-weight: 400;\">Open<\/span><\/i><span style=\"font-weight: 400;\">. You will then have two perspectives available next to the <\/span><i><span style=\"font-weight: 400;\">Open Perspective<\/span><\/i><span style=\"font-weight: 400;\"> button: the default IRI perspective and the Git perspective. To change from one perspective to another, click on its icon.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16506 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/selectPerspectives-247x300.jpg\" alt=\"\" width=\"314\" height=\"381\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/selectPerspectives-247x300.jpg 247w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/selectPerspectives.jpg 409w\" sizes=\"(max-width: 314px) 100vw, 314px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Once the Git perspective is open, in the far left section of Workbench there are three options to add a repository. Since you already created a local repository, click <\/span><i><span style=\"font-weight: 400;\">Add an existing local Git repository<\/span><\/i><span style=\"font-weight: 400;\"> option.<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16507\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/addLocalRepository-300x86.jpg\" alt=\"\" width=\"461\" height=\"132\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/addLocalRepository-300x86.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/addLocalRepository.jpg 455w\" sizes=\"(max-width: 461px) 100vw, 461px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">A dialog called <\/span><i><span style=\"font-weight: 400;\">Search and select Git repositories on your local file system<\/span><\/i><span style=\"font-weight: 400;\"> will appear asking you to browse for the directory of your local repository. Select your local repository and OK. At this point, the <\/span><i><span style=\"font-weight: 400;\">Search results<\/span><\/i><span style=\"font-weight: 400;\"> section shows which Git repository is available in this directory.<\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><\/p>\n<p style=\"text-align: center;\"><img loading=\"lazy\" decoding=\"async\" class=\"alignnone wp-image-16508\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/selectingLocalRepository-300x263.jpg\" alt=\"\" width=\"442\" height=\"387\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/selectingLocalRepository-300x263.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/selectingLocalRepository.jpg 497w\" sizes=\"(max-width: 442px) 100vw, 442px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Check which Git repository you wish to add and click <\/span><i><span style=\"font-weight: 400;\">Add<\/span><\/i><span style=\"font-weight: 400;\"> at the bottom of the dialog. This will connect Workbench to your local repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Now you can see any changes in the repository and run commands like pull and\/or push if you have read and\/or write permissions on the remote repository. The image below shows Workbench connected to a Git repository and with some changes in projects that can be pushed to the remote repository.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16509 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/exampleGitPerspective-300x166.jpg\" alt=\"\" width=\"611\" height=\"338\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/exampleGitPerspective-300x166.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/exampleGitPerspective-768x425.jpg 768w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/exampleGitPerspective.jpg 1001w\" sizes=\"(max-width: 611px) 100vw, 611px\" \/><\/p>\n<h4><b>Previously Created Workspaces<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">If you already have projects and wish to have them in your repository, you will still need to follow the instructions from the previous section on <\/span><i><span style=\"font-weight: 400;\">Git Perspective<\/span><\/i><span style=\"font-weight: 400;\">. After following those steps, your Workbench will be connected to the repository but projects that you already have will not be associated with the repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">To have your existing projects become part of the repository, you will need to move those projects from where they are stored in the file system and put them into your local repository.<\/span><\/p>\n<h4><b>Move Your Projects to Your Local Git Repo<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">To move existing \/ previous projects to your local Git repository, select the IRI perspective to see the Project Explorer which contains all of your projects. Right-click any project you wish to move and a menu will appear. Hover over the <\/span><i><span style=\"font-weight: 400;\">Team<\/span><\/i><span style=\"font-weight: 400;\"> option and a small menu will appear on the right side. Select <\/span><i><span style=\"font-weight: 400;\">Share Project\u2026<\/span><\/i><span style=\"font-weight: 400;\"> and a dialog called<\/span><i><span style=\"font-weight: 400;\"> Configure Git Repository<\/span><\/i><span style=\"font-weight: 400;\"> will appear.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16510 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/shareProject-246x300.jpg\" alt=\"\" width=\"378\" height=\"461\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/shareProject-246x300.jpg 246w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/shareProject.jpg 507w\" sizes=\"(max-width: 378px) 100vw, 378px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">In that dialog, you will need to specify the repository to which you want to move your project. Since Workbench is already connected to the local repository, click the drop-down menu next to the <em>Repository<\/em> label, and your local repository should appear<\/span><span style=\"font-weight: 400;\">\u00a0as an option.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">In the middle of the dialog, you should see your project, its current location, and the target location (where your local repository is). Click Finish to move your project to your local repository.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16511 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/moveProject-300x185.jpg\" alt=\"\" width=\"498\" height=\"307\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/moveProject-300x185.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/moveProject.jpg 597w\" sizes=\"(max-width: 498px) 100vw, 498px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">At this point, your Workbench is connected to your Git repository and you now know how to move your project from your workspace to your local repository. The last thing you need to do is to change the workspace of your Workbench to your local repository.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">If you were to create a new project without changing the workspace to your local repository, then all your new projects will not appear in your repository and you would have to manually import them over.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Before changing your workspace, ensure that all the projects you want are imported into your local repository. Once that is completed follow the steps from the <\/span><i><span style=\"font-weight: 400;\">New Workspace<\/span><\/i><span style=\"font-weight: 400;\"> (second option) which goes over how to change from one workspace to another.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Now you should have your repository connected to Workbench, your projects imported into your repository, and your local repository is your current workspace.<\/span><\/p>\n<h4><b>Push (Upload) Projects\/Changes to the Shared Repository (Hub)\u00a0<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">\u00a0<\/span><span style=\"font-weight: 400;\">Once you created any new projects or edited existing projects, you can push those changes up to the remote Git repository (e.g., GitHub) if you have write permissions for the remote repository. Go to the Git perspective inside of Workbench and Select the <\/span><i><span style=\"font-weight: 400;\">Git Staging <\/span><\/i><span style=\"font-weight: 400;\">tab:<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16512 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/pushChanges-300x160.jpg\" alt=\"\" width=\"616\" height=\"329\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/pushChanges-300x160.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/pushChanges.jpg 959w\" sizes=\"(max-width: 616px) 100vw, 616px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Inside the Git staging tab, you can see the unstaged changes, the staged changes, and to the right of them the commit message. Select the green plus sign to move all or one of the files to the staged changes section.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Add a commit message and select <\/span><i><span style=\"font-weight: 400;\">Commit and Push<\/span><\/i><span style=\"font-weight: 400;\"> to send your changes to the remote repository or <\/span><i><span style=\"font-weight: 400;\">Commit<\/span><\/i><span style=\"font-weight: 400;\"> to save the change to the repository.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16513 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/gitStage-300x132.jpg\" alt=\"\" width=\"535\" height=\"235\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/gitStage-300x132.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/gitStage.jpg 718w\" sizes=\"(max-width: 535px) 100vw, 535px\" \/><\/p>\n<h4><b>Import Project(s) from a Shared Git Repository (Hub)<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">To import projects or their artifacts (job scripts, data class mappings, etc.) from a shared Git repository into your workspace, open the Git perspective again. In the far left corner under <\/span><i><span style=\"font-weight: 400;\">Git Repositories <\/span><\/i><span style=\"font-weight: 400;\">you will see the Git branch connected to your Workbench. If you do not have a repository showing, see the <\/span><i><span style=\"font-weight: 400;\">Git Perspective <\/span><\/i><span style=\"font-weight: 400;\">section of this blog.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16514 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/gitRepository-300x73.jpg\" alt=\"\" width=\"468\" height=\"114\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/gitRepository-300x73.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/gitRepository.jpg 488w\" sizes=\"(max-width: 468px) 100vw, 468px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">Ensure that your local repository is up to date with the remote repository. To do this, right-click on the repository and select <\/span><i><span style=\"font-weight: 400;\">Pull <\/span><\/i><span style=\"font-weight: 400;\">from the menu that appears. This will update your local repository with any new or edited projects.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Now to import the projects, right-click on the repository and a menu will appear. Click on the <\/span><i><span style=\"font-weight: 400;\">Import Projects <\/span><\/i><span style=\"font-weight: 400;\">option. A dialog called <\/span><i><span style=\"font-weight: 400;\">Import Projects from File System or Archive<\/span><\/i><span style=\"font-weight: 400;\"> will appear to automatically check the projects in the repository, and confirm they are in your workspace.<\/span><\/p>\n<p><img loading=\"lazy\" decoding=\"async\" class=\" wp-image-16515 aligncenter\" src=\"\/blog\/wp-content\/uploads\/2023\/06\/importProjects-300x243.jpg\" alt=\"\" width=\"590\" height=\"478\" srcset=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/importProjects-300x243.jpg 300w, https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/importProjects.jpg 723w\" sizes=\"(max-width: 590px) 100vw, 590px\" \/><\/p>\n<p><span style=\"font-weight: 400;\">The section in the middle of the dialog will allow you to either import all the projects or to select individual projects to be imported into your workspace. Click <\/span><i><span style=\"font-weight: 400;\">Finish<\/span><\/i><span style=\"font-weight: 400;\"> and all the projects will be imported and ready to be used by Workbench. If the finish button is not enabled (grayed out), that means that all the projects that are located in the repository are also in your workspace <\/span><span style=\"font-weight: 400;\"><br \/>\n<\/span><span style=\"font-weight: 400;\">(so there is nothing to import).<\/span><\/p>\n<h4><b>Benefits of Connecting<\/b><\/h4>\n<p><span style=\"font-weight: 400;\">There are major benefits to connecting Git with IRI Workbench, even if you never plan to share your files and projects with someone else. The first benefit is being able to revert changes. IRI data classes and rules library are now stored in one file (<\/span><i><span style=\"font-weight: 400;\">iriLibrary.dcrlib<\/span><\/i><span style=\"font-weight: 400;\">).\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">This file interacts with several wizards within Workbench and an accidental deletion of this file can cause you a lot of work recreating custom data classes and rules. With Git you\u2019ll be able to simply restore prior changes, or back off errant changes done, to the project.<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Another major benefit is being able to easily share projects, database connections, job scripts, etc. Data governors can define data classes with the rules that are needed and share them with your team and give certain users permission to read and write to the files or just read. You\u2019ll be able to see any changes, who committed them, and if authorized, use version control to revert a project to a prior version before any commits.\u00a0<\/span><\/p>\n<p><span style=\"font-weight: 400;\">Finally, and as importantly, when sharing IRI data masking projects using Git, team members anywhere in the world can be sure PII will be found and remediated consistently using the same data classes and masking rules. This consistency is central to maintaining data and referential integrity in either production or test environments across data sources and silos. And multi-silo discovery reliability is also required to comply with <\/span><a href=\"https:\/\/www.iri.com\/solutions\/data-masking\/gdpr\"><span style=\"font-weight: 400;\">GDPR<\/span><\/a><span style=\"font-weight: 400;\"> data erasure, portability and rectification guarantees.<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Editor\u2019s Note: This article updates IRI\u2019s original series on managing metadata assets in Git, and covers project export and import, particularly for use in enterprise data anonymization and test data management scenarios. A future article will cover the use and integration of Git\u2019s Large File System (LFS) for provisioning big Voracity job data targets like<\/p>\n<div><a class=\"btn-filled btn\" href=\"https:\/\/www.iri.com\/blog\/iri\/iri-workbench\/sharing-iri-data-management-jobs-via-git\/\" title=\"Sharing IRI Data Management Jobs via Git\">Read More<\/a><\/div>\n","protected":false},"author":160,"featured_media":16495,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_exactmetrics_skip_tracking":false,"_exactmetrics_sitenote_active":false,"_exactmetrics_sitenote_note":"","_exactmetrics_sitenote_category":0,"footnotes":""},"categories":[91],"tags":[328,1546,850],"class_list":["post-16488","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-iri-workbench","tag-data-management","tag-git","tag-iri-workbench"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v23.4 (Yoast SEO v23.4) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Sharing IRI Data Management Jobs via Git - IRI<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Sharing IRI Data Management Jobs via Git\" \/>\n<meta property=\"og:description\" content=\"Editor\u2019s Note: This article updates IRI\u2019s original series on managing metadata assets in Git, and covers project export and import, particularly for use in enterprise data anonymization and test data management scenarios. A future article will cover the use and integration of Git\u2019s Large File System (LFS) for provisioning big Voracity job data targets likeRead More\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\" \/>\n<meta property=\"og:site_name\" content=\"IRI\" \/>\n<meta property=\"article:published_time\" content=\"2023-06-26T21:39:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-06-28T19:43:13+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"768\" \/>\n\t<meta property=\"og:image:height\" content=\"368\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Kevin Roldos\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Kevin Roldos\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\"},\"author\":{\"name\":\"Kevin Roldos\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/03b00a019a87dc6f63f49782a08467a0\"},\"headline\":\"Sharing IRI Data Management Jobs via Git\",\"datePublished\":\"2023-06-26T21:39:48+00:00\",\"dateModified\":\"2023-06-28T19:43:13+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\"},\"wordCount\":2784,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png\",\"keywords\":[\"data management\",\"Git\",\"IRI Workbench\"],\"articleSection\":[\"IRI Workbench\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\",\"url\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\",\"name\":\"Sharing IRI Data Management Jobs via Git - IRI\",\"isPartOf\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png\",\"datePublished\":\"2023-06-26T21:39:48+00:00\",\"dateModified\":\"2023-06-28T19:43:13+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png\",\"width\":768,\"height\":368},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.iri.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Sharing IRI Data Management Jobs via Git\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.iri.com\/blog\/#website\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"name\":\"IRI\",\"description\":\"Total Data Management Blog\",\"publisher\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.iri.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.iri.com\/blog\/#organization\",\"name\":\"IRI\",\"url\":\"https:\/\/www.iri.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"contentUrl\":\"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png\",\"width\":750,\"height\":206,\"caption\":\"IRI\"},\"image\":{\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/03b00a019a87dc6f63f49782a08467a0\",\"name\":\"Kevin Roldos\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/a592c9c38829637b969040dd5247c4be?s=96&d=blank&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/a592c9c38829637b969040dd5247c4be?s=96&d=blank&r=g\",\"caption\":\"Kevin Roldos\"},\"url\":\"https:\/\/www.iri.com\/blog\/author\/kevinr\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Sharing IRI Data Management Jobs via Git - IRI","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/","og_locale":"en_US","og_type":"article","og_title":"Sharing IRI Data Management Jobs via Git","og_description":"Editor\u2019s Note: This article updates IRI\u2019s original series on managing metadata assets in Git, and covers project export and import, particularly for use in enterprise data anonymization and test data management scenarios. A future article will cover the use and integration of Git\u2019s Large File System (LFS) for provisioning big Voracity job data targets likeRead More","og_url":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/","og_site_name":"IRI","article_published_time":"2023-06-26T21:39:48+00:00","article_modified_time":"2023-06-28T19:43:13+00:00","og_image":[{"width":768,"height":368,"url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","type":"image\/png"}],"author":"Kevin Roldos","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Kevin Roldos","Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#article","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/"},"author":{"name":"Kevin Roldos","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/03b00a019a87dc6f63f49782a08467a0"},"headline":"Sharing IRI Data Management Jobs via Git","datePublished":"2023-06-26T21:39:48+00:00","dateModified":"2023-06-28T19:43:13+00:00","mainEntityOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/"},"wordCount":2784,"commentCount":0,"publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","keywords":["data management","Git","IRI Workbench"],"articleSection":["IRI Workbench"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/","url":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/","name":"Sharing IRI Data Management Jobs via Git - IRI","isPartOf":{"@id":"https:\/\/www.iri.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage"},"image":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage"},"thumbnailUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","datePublished":"2023-06-26T21:39:48+00:00","dateModified":"2023-06-28T19:43:13+00:00","breadcrumb":{"@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#primaryimage","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","width":768,"height":368},{"@type":"BreadcrumbList","@id":"https:\/\/www.iri.com\/blog\/data-transformation2\/sharing-iri-data-management-jobs-via-git\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.iri.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Sharing IRI Data Management Jobs via Git"}]},{"@type":"WebSite","@id":"https:\/\/www.iri.com\/blog\/#website","url":"https:\/\/www.iri.com\/blog\/","name":"IRI","description":"Total Data Management Blog","publisher":{"@id":"https:\/\/www.iri.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.iri.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.iri.com\/blog\/#organization","name":"IRI","url":"https:\/\/www.iri.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","contentUrl":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2019\/02\/iri-logo-total-data-management-small-1.png","width":750,"height":206,"caption":"IRI"},"image":{"@id":"https:\/\/www.iri.com\/blog\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/03b00a019a87dc6f63f49782a08467a0","name":"Kevin Roldos","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.iri.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/a592c9c38829637b969040dd5247c4be?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/a592c9c38829637b969040dd5247c4be?s=96&d=blank&r=g","caption":"Kevin Roldos"},"url":"https:\/\/www.iri.com\/blog\/author\/kevinr\/"}]}},"jetpack_featured_media_url":"https:\/\/www.iri.com\/blog\/wp-content\/uploads\/2023\/06\/Blog-Image-Feature-3.png","_links":{"self":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16488"}],"collection":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/users\/160"}],"replies":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/comments?post=16488"}],"version-history":[{"count":10,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16488\/revisions"}],"predecessor-version":[{"id":16520,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/posts\/16488\/revisions\/16520"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media\/16495"}],"wp:attachment":[{"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/media?parent=16488"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/categories?post=16488"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.iri.com\/blog\/wp-json\/wp\/v2\/tags?post=16488"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}