<p>It looks like Helm 3 is making this more difficult: <a href="https://github.com/databus23/helm-diff/issues/176" rel="nofollow noreferrer">https://github.com/databus23/helm-diff/issues/176</a></p>
<p>But I'm finding that using the helm-diff plugin OR just doing this: <code>helm template releaseName chart | kubectl diff -f - | bat -l diff -</code> I'm seeing ALL resources as new with &quot;+&quot; next to them. Why is this?</p>
<p>I'm running these commands:</p>
<pre><code># upgrade
helm upgrade --install --create-namespace \
    --namespace derps -f helm/deploy-values.yaml \
    --set 'parentChart.param1=sdfsdfsdfdsf' \
    --set 'parentChart.param2=sdfsdfsdfdsf' \
    --set 'parentChart.param3=sdfsdfsdfdsf' \
    --set 'parentChart.param4=sdfsdfsdfdsf' \
    --set 'parentChart.param5=sdfsdfsdfdsf' \
    myapp helm/mychart

# make no changes and try to diff
helm template \
    --namespace derps -f helm/deploy-values.yaml \
    --set 'parentChart.param1=sdfsdfsdfdsf' \
    --set 'parentChart.param2=sdfsdfsdfdsf' \
    --set 'parentChart.param3=sdfsdfsdfdsf' \
    --set 'parentChart.param4=sdfsdfsdfdsf' \
    --set 'parentChart.param5=sdfsdfsdfdsf' \
    myapp helm/mychart | kubectl diff -f - | bat -l diff -
</code></pre>
<p>I get output that shows the ENTIRE manifest is new- why is this?</p>

<p>did you try:</p>
<pre class="lang-sh prettyprint-override"><code>helm template \
    --namespace derps --no-hooks --skip-tests \
    -f helm/deploy-values.yaml \
    --set 'parentChart.param1=sdfsdfsdfdsf' \
    --set 'parentChart.param2=sdfsdfsdfdsf' \
    --set 'parentChart.param3=sdfsdfsdfdsf' \
    --set 'parentChart.param4=sdfsdfsdfdsf' \
    --set 'parentChart.param5=sdfsdfsdfdsf' \
    myapp helm/mychart | kubectl diff --namespace derps -f - | bat -l diff -

</code></pre>
