- Blog
- 04.12.2024
- Technically Speaking
Navigating Git In Matillion ETL
Git is a distributed version control system that enables software development teams to have multiple local copies of the project's codebase independent of each other. Matillion ETL's Git integration feature lets Matillion ETL users track a project’s changes for both small and large projects with speed and efficiency via Git source control management.
One of the biggest advances of Git is its branching capabilities. Unlike centralized version control systems, Git branches allow people to work in parallel thanks to their merge capabilities. This facilitates the feature branch workflow, which is popular with many Git users. Yet, like any sophisticated tool, there can be challenges. The purpose of this blog is to prepare you for these by providing you with some common stumbling blocks users face and how to address them.
- Tackling the Challenge of Missing Branch Names
- Resolving the Loading Screen Challenge
- Navigating Git Walk Issues
Tackling the Challenge of Missing Branch Names
You’re all set to commit your latest changes, but the branch name cannot be found on the Git commit screen. It’s an unexpected snag, but fear not; there is a straightforward solution.
The green and blue colors likely represent local and remote branches. A local branch exists only on your local machine, while a remote branch exists on a remote repository (like GitHub). If you have changes on your local branch that you want to share with others, you’ll need to push your local branch to the remote repository.
If Git branches fail to appear on your screen, it’s likely due to the Git header pointer (a hollow circle in the image) not pointing to a local Git branch but instead pointing to a commit or a remote branch (blue color code). In that case the Git UI screen won't be able to list the branch names.
Here is how to overcome this:
- Secure your work: Before troubleshooting, ensure your project is backed up using the Export utility.
- Create a New Branch: Create a fresh branch from the most up-to-date source and commit your changes there.
- Merge for progress: Once your changes are safely housed in the new branch, merge it back into the main tree as needed.
Resolving the Loading Screen Challenge
The loading screen can be a blocker frustration in some cases. When Matillion’s UI gets stuck with the “Loading please wait…” message. There could be a few reasons for this:
- The Git repository was corrupt
- SCM folder permissions change
- Something else
Right now, it is time to take action.
- The Git repository was corrupt
Run git fsck to scan your local repository for any signs of corruption, and deal with them appropriately
2. SCM folder permissions change.
Usually, we capture this error message in the server log file (catalina.out). Look for the following exception message in the server log lines - “SCMException: Unable to download file ”
Full log error message -
com.matillion.bi.emerald.server.scm.SCMException: Unable to download file [xxxxx,.git/objects/pack/pack-xxxxxxxxxxxxxxxxx.pack]
To resolve this issue you need to make sure that the SCM folder permission is correctly set.
SSh to Matillion instance and run the following commands
find /usr/share/tomcat8/scm -type d -exec chmod 750 {} +
find /usr/share/tomcat8/scm -type f -exec chmod 640 {} +
chown -R tomcat:tomcat /usr/share/tomcat8/scm
3. Something else
There can be other causes, for example a NULL pointer exception. In cases like these, please reach out to the Matillion support team
Navigating Git Walk Issues
During project migration, Git may stumble, resulting in a "Git Walk Failure." But don't panic – there's a clear path forward.
Our recommendation is to remove Git from the project and start fresh once the migration process is completed, then clone the remote repository from the Project → Git.
Please refer to this link for How to remove GIT from a project
Git integration in Matillion ETL opens doors to enhanced collaboration and streamlined version control, empowering teams to navigate projects with efficiency. While Git offers robust branching capabilities and facilitates workflows, encountering challenges is inevitable. By addressing common stumbling blocks such as missing branch names, loading screen delays, and Git walk issues, users can navigate these hurdles with ease.
Note that this article is for Matillion ETL and does not reflect our current generation product, the Data Productivity Cloud. Book a demo for the Data Productivity Cloud
Amin Shah
Solution Architect - Customer Support (GTM)
Featured Resources
What Are Feature Flags?
Feature flags are a software development tool that has the capability to control the visibility of any particular feature. ...
BlogHow Your Data Teams Can Do More With Marketing Analytics
Improve your marketing analytics with Matillion Data Productivity Cloud that enables businesses to centralize and integrate ...
BlogThe Importance of Data Classification in Cloud Security
Data classification enables the targeted protection and management of sensitive information. Personally Identifiable ...
Share: