domino logo
Tech Ecosystem
Get started with Python
Step 0: Orient yourself to DominoStep 1: Create a projectStep 2: Configure your projectStep 3: Start a workspaceStep 4: Get your files and dataStep 5: Develop your modelStep 6: Clean up WorkspacesStep 7: Deploy your model
Get started with R
Step 0: Orient yourself to Domino (R Tutorial)Step 1: Create a projectStep 2: Configure your projectStep 3: Start a workspaceStep 4: Get your files and dataStep 5: Develop your modelStep 6: Clean up WorkspacesStep 7: Deploy your model
Get Started with MATLAB
Step 1: Orient yourself to DominoStep 2: Create a Domino ProjectStep 3: Configure Your Domino ProjectStep 4: Start a MATLAB WorkspaceStep 5: Fetch and Save Your DataStep 6: Develop Your ModelStep 7: Clean Up Your Workspace
Step 8: Deploy Your Model
Scheduled JobsLaunchers
Step 9: Working with Domino Datasets
Domino Reference
Projects
Projects Overview
Revert Projects and Files
Revert a ProjectRevert a File
Projects PortfolioReference ProjectsProject Goals in Domino 4+
Git Integration
Git Repositories in DominoGit-based Projects with CodeSyncWorking from a Commit ID in Git
Jira Integration in DominoUpload Files to Domino using your BrowserCopy ProjectsFork and Merge ProjectsSearchSharing and CollaborationCommentsDomino Service FilesystemCompare File RevisionsArchive a Project
Advanced Project Settings
Project DependenciesProject TagsRename a ProjectSet up your Project to Ignore FilesUpload files larger than 550MBExporting Files as a Python or R PackageTransfer Project Ownership
Domino Runs
JobsDiagnostic Statistics with dominostats.jsonNotificationsResultsRun Comparison
Advanced Options for Domino Runs
Run StatesDomino Environment VariablesEnvironment Variables for Secure Credential StorageUse Apache Airflow with Domino
Scheduled Jobs
Domino Workspaces
WorkspacesUse Git in Your WorkspaceUse Visual Studio Code in Domino WorkspacesPersist RStudio PreferencesAccess Multiple Hosted Applications in one Workspace Session
Spark on Domino
On-Demand Spark
On-Demand Spark OverviewValidated Spark VersionConfigure PrerequisitesWork with your ClusterManage DependenciesWork with Data
External Hadoop and Spark
Hadoop and Spark OverviewConnect to a Cloudera CDH5 cluster from DominoConnect to a Hortonworks cluster from DominoConnect to a MapR cluster from DominoConnect to an Amazon EMR cluster from DominoRun Local Spark on a Domino ExecutorUse PySpark in Jupyter WorkspacesKerberos Authentication
On-Demand Ray
On-Demand Ray OverviewValidated Ray VersionConfigure PrerequisitesWork with your ClusterManage DependenciesWork with Data
On-Demand Dask
On-Demand Dask OverviewValidated Dask VersionConfigure PrerequisitesWork with Your ClusterManage DependenciesWork with Data
Customize the Domino Software Environment
Environment ManagementDomino Standard EnvironmentsInstall Packages and DependenciesAdd Workspace IDEsAdding Jupyter Kernels
Partner Environments for Domino
Use MATLAB as a WorkspaceUse Stata as a WorkspaceUse SAS as a WorkspaceNVIDIA NGC Containers
Advanced Options for Domino Software Environment
Install Custom Packages in Domino with Git IntegrationAdd Custom DNS Servers to Your Domino EnvironmentConfigure a Compute Environment to User Private Cran/Conda/PyPi MirrorsUse TensorBoard in Jupyter Workspaces
Publish your Work
Publish a Model API
Model Publishing OverviewModel Invocation SettingsModel Access and CollaborationModel Deployment ConfigurationPromote Projects to ProductionExport Model Image
Publish a Web Application
App Publishing OverviewGet Started with DashGet Started with ShinyGet Started with FlaskContent Security Policies for Web Apps
Advanced Web Application Settings in Domino
App Scaling and PerformanceHost HTML Pages from DominoHow to Get the Domino Username of an App Viewer
Launchers
Launchers OverviewAdvanced Launcher Editor
Assets Portfolio Overview
Model Monitoring
Model Monitoring APIsAccessing The Model MonitorGet Started with Model MonitoringModel Monitor DeploymentIngest Data into The Model MonitorModel RegistrationMonitoring Data DriftMonitoring Model QualitySetting Scheduled Checks for the ModelConfigure Notification Channels for the ModelUse Model Monitoring APIsProduct Settings
Connect to your Data
Data in Domino
Datasets OverviewDatasets Best Practices
Data Sources Overview
Connect to Data Sources
External Data Volumes
Work with Data Best Practices
Work with Big Data in DominoWork with Lots of FilesMove Data Over a Network
Advanced User Configuration Settings
User API KeysDomino TokenOrganizations Overview
Use the Domino Command Line Interface (CLI)
Install the Domino Command Line (CLI)Domino CLI ReferenceDownload Files with the CLIForce-Restore a Local ProjectMove a Project Between Domino DeploymentsUse the Domino CLI Behind a Proxy
Browser Support
Get Help with Domino
Additional ResourcesGet Domino VersionContact Domino Technical SupportSupport Bundles
domino logo
About Domino
Domino Data LabKnowledge BaseData Science BlogTraining
User Guide
>
Domino Reference
>
Domino Workspaces
>
Use Git in Your Workspace

Use Git in Your Workspace

Domino workspaces support Git in Git-based projects with CodeSync and imported Git repositories. You can use Git workflows like creating branches, committing your code, and pushing or pulling changes in a workspace.

Work with Git

You can use Git in a Git-based project with CodeSync in the following ways:

Git service provider and workspace navigation pane

You can use your Git service provider’s user interface (such as GitHub) with Domino’s navigation pane actions such as Sync to Git, Sync to Domino, and Pull in a workspace. Domino recommends that you use Git in your project if you don’t have much experience using Git with a terminal and prefer a user interface. The rest of the screenshots in this topic demonstrates this method.

gbp 6 1

A terminal in a Domino workspace

Start a terminal in your workspace and use Git just like you would on a local environment. For common workflows with Git, see the Git cheatsheet.

gbp 4

Git plugins

Many IDEs integrate with Git or have plugins or extensions for Git.

R git plugin

These features are fully supported in Git-based projects through CodeSync technology and you can use them to interact with Git in Domino. See the following resources for information about how to use Git version control with your IDE:

  • Jupyter – Version control for Jupyter notebooks

  • RStudio – Managing GitHub and RStudio

  • VS Code – Version control in VS Code

Commit code and push changes

Note
Commit changes to your code and push them to your repository:
  1. Click File Changes in the navigation pane of your workspace.

  2. Under Code, expand Uncommitted Changes to view changes.

    The up (↑) arrow in the Code section indicates the number of commits that your branch is ahead of the upstream branch, while the down (↓) arrow indicates the number of commits that your branch is behind the upstream branch.

  3. Enter a commit message.

  4. Click Sync to Git.

    Domino syncs and pushes your changes to the Git repository you’re using for your code.

    gbp 6

Important

Commit all work

  1. Click File Changes in the navigation pane of your workspace.

  2. Under All Changes, enter a commit message.

  3. Click Sync All Changes. Domino commits changes to your code and syncs them to your Git repository, as well as commits changes to artifacts and syncs them to the Domino File System (DFS).

Note

gbp 12

Pull the latest changes

If you’re collaborating with others in a Git-based project with CodeSync, then you must pull the latest changes to your code from time to time.

Pull the latest changes from your Git repo:
  1. Click File Changes in the navigation pane of your workspace.

  2. Under the Code section, click Pull. Domino pulls the latest changes into your workspace.

Note

gbp 7

Important

Resolve merge conflicts

You might encounter merge conflicts in your code when collaborating with colleagues. You can resolve merge conflicts in one of the following ways.

Git service provider and workspace navigation pane

When merge conflicts arise, Domino will create a new branch with the conflicts in your repository and push them up to your Git service provider (that is, Github, Bitbucket, etc.). To resolve the conflicts:

  1. Go to your Git service provider.

  2. Using your Git service provider’s user interface, create a pull request between the newly created branch and your original branch.

  3. Using your Git service provider’s user interface, merge the pull request.

  4. Go back to Domino. Do not pull any changes.

  5. Start a workspace terminal and reset the branch using git reset --hard origin/name-of-branch, where name-of-branch is the name of your original branch.

  6. Click Pull in the sidebar menu in your workspace. Domino will pull all the latest changes (that is, the resolved merge conflicts). Your branch should now be free of merge conflicts.

    A terminal in your workspace

    If you prefer to work in a terminal, you can resolve merge conflicts from within a workspace terminal. If you’re not familiar with the typical Git workflow to resolve merge conflicts, Domino recommends Git merge conflicts.

Domino Data LabKnowledge BaseData Science BlogTraining
Copyright © 2022 Domino Data Lab. All rights reserved.