<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f" -->

---
title: Hide Code in a Repo Using Git Submodules | daily.dev
description: Git submodules allow you to include code from one repository inside another while maintaining independent access control. The parent repo stores only a pointer...
canonical: https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Hide Code in a Repo Using Git Submodules | daily.dev
og:description: Git submodules allow you to include code from one repository inside another while maintaining independent access control. The parent repo stores only a pointer...
og:url: https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f
og:image: https://api.daily.dev/og/posts/4d9fL7F0f.png
og:image:alt: Hide Code in a Repo Using Git Submodules
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Hide Code in a Repo Using Git Submodules

**[Atomic Spin](https://daily.dev/sources/atomicobject)** · 4 min read · 0 upvotes · 0 comments

## Summary

Git submodules allow you to include code from one repository inside another while maintaining independent access control. The parent repo stores only a pointer to a specific commit in the child repo, so users without access to the submodule can still clone and use the parent repo normally. This is useful for hiding reference implementations, sharing private code across projects, or restricting visibility of sensitive components. The tradeoff is added complexity: submodules require extra clone steps and manual updates when the child repo changes.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://spin.atomicobject.com/repo-git-submodules/>

## Similar posts on daily.dev

- [How to Manage Open Source & Closed Source Code in One Android Project Using Multi-Modules & Git Submodules](https://daily.dev/posts/how-to-manage-open-source-closed-source-code-in-one-android-project-using-multi-modules-git-subm-2wtu9lfhm) · ProAndroidDev · 0 upvotes · 0 comments
- [Git Submodules as a Package Manager](https://daily.dev/posts/git-submodules-as-a-package-manager-fzqeapzhp) · Andrew Nesbitt · 0 upvotes · 0 comments
- [Merging GitHub Repositories](https://daily.dev/posts/merging-github-repositories-a4bvbgvww) · Kitty says hi. · 1 upvotes · 0 comments

---

Tags: [#git](https://daily.dev/tags/git), [#version-control](https://daily.dev/tags/version-control)

[View this post on daily.dev](https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Hide Code in a Repo Using Git Submodules","url":"https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f"},"datePublished":"2026-02-13T13:03:46.001Z","dateModified":"2026-02-13T13:04:06.606Z","description":"Git submodules allow you to include code from one repository inside another while maintaining independent access control. The parent repo stores only a pointer...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/103a47c9c6b3c03a03513e26d3a7b1d7?_a=AQAEunF","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/103a47c9c6b3c03a03513e26d3a7b1d7?_a=AQAEunF","isAccessibleForFree":true,"articleSection":"Atomic Spin","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Atomic Spin","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/e2af5ce3adaa403a8cf029268b62419f","url":"https://daily.dev/sources/atomicobject"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/hide-code-in-a-repo-using-git-submodules-4d9fl7f0f","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"git,version-control","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Atomic Spin","item":"https://daily.dev/sources/atomicobject"},{"@type":"ListItem","position":3,"name":"Hide Code in a Repo Using Git Submodules"}]}
```

