<p>I have a repo, where I develop 2 charts. Root chart and a sub-chart.</p>
<p>This is a root chart's <code>chart.lock</code></p>
<pre><code>apiVersion: v2
name: tolgee
description: A Helm chart to deploy Tolgee

type: application
version: 0.1.0
appVersion: 1.16.0

dependencies:
  - name: tolgee
    version: 0.1.0
    repository: &quot;file://../tolgee&quot;
    alias: tolgee
</code></pre>
<p>I am using this chart to actually deploy the thing to my cluster.</p>
<p>While I am working on the project, I am often also changing the sub-chart stored in <code>../tolgee</code>. Every time I make a change I need to run <code>helm dep update</code>. To get the updated version. I wonder, why the subchart has to be stored as <code>.tgz</code>, when it might simply be a link.</p>
<p>Am I doing something wrong?</p>

Jan Cizmar
<p>If one chart depends on another, you can <a href="https://docs.helm.sh/docs/topics/charts/#managing-dependencies-manually-via-the-charts-directory" rel="nofollow noreferrer">put an unpacked copy of the dependency</a> into the parent chart's <code>charts</code> subdirectory.</p>
<p>This should work with a symlink, too.  So if you're actively working on the subchart but need to install it via the parent, you should be able to</p>
<pre class="lang-bash prettyprint-override"><code>mkdir charts
cd charts
ln -s ../../tolgee tolgee
</code></pre>
<p>If you watch carefully what <code>helm dep up</code> does, it copies in an archive file <code>charts/tolgee-0.1.0.tgz</code>.  While the dependency is in that compressed form, you do in fact need to run <code>helm dep up</code> if you make any change.</p>
