Software Version Control

This repository utilizes Git for version control. Git is a distributed version control system that allows developers to track changes to code, collaborate on projects, and revert to previous versions as needed.

Git Commands

The following Git commands are commonly used when working with this repository:

  • git clone: Creates a local copy of the repository on your machine.

    git clone https://github.com/moj-analytical-services/splink_demos.git
              
  • git pull: Fetches and merges changes from the remote repository into your local branch.

    git pull origin main
              
  • git add: Stages changes to be committed.

    git add . 
              
  • git commit: Creates a snapshot of the changes in your local repository.

    git commit -m "Descriptive commit message" 
              
  • git push: Uploads your local commits to the remote repository.

    git push origin main
              
  • git branch: Creates, lists, or switches between branches.

    git branch new-feature # Create a new branch
              git checkout new-feature # Switch to the new branch
              git branch # List all branches
              
  • git merge: Merges changes from one branch into another.

    git checkout main # Switch to the main branch
              git merge new-feature # Merge the new-feature branch into main
              
  • git log: Displays the commit history of the repository.

    git log
              

Collaboration

To collaborate on this project, follow these steps:

  1. Fork the repository on GitHub.
  2. Clone your forked repository to your local machine.
  3. Create a new branch for your changes.
  4. Make your changes and commit them to your local branch.
  5. Push your local branch to your forked repository on GitHub.
  6. Submit a pull request to the main repository.

Contributing

Contributions to the repository are welcome. To contribute, please follow the guidelines outlined in the “CONTRIBUTING.md” file.

Resources

Top-Level Directory Explanations

examples/ - This directory likely contains examples or sample code for using the project’s components.

examples/athena/ - This subdirectory may contain examples using Amazon Athena, an interactive query service for analyzing data in Amazon S3 using standard SQL.

examples/athena/dashboards/ - This subdirectory may contain Athena dashboard files.

examples/duckdb/ - This subdirectory may contain examples using DuckDB, an open-source in-memory analytic database.

examples/duckdb/dashboards/ - This subdirectory may contain DuckDB dashboard files.

examples/sqlite/ - This subdirectory may contain examples using SQLite, a popular open-source database management system.

examples/sqlite/dashboards/ - This subdirectory may contain SQLite dashboard files.

tutorials/ - This directory may contain tutorials or guides for using the project.