<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Versioning Radicale data with git?]]></title><description><![CDATA[<p dir="auto">The Radicale documentation describes how to <a href="https://radicale.org/v3.html#versioning-with-git" target="_blank" rel="noopener noreferrer nofollow ugc">use git to track changes to its calendars and address books</a>. I realize that using this functionality would require forking the <a href="https://git.cloudron.io/cloudron/radicale-app" target="_blank" rel="noopener noreferrer nofollow ugc">Cloudron Radicale app</a> so that I could modify the config file, but my use case is actually somewhat different. Instead, I was hoping to use the Radicale app's <code>cron</code> settings to periodically run a <code>git pull </code> for changes made elsewhere, overwriting changes made by my WebDAV clients.</p>
<p dir="auto">In either case, I need a git repository initialized inside Radicale's data folder. I ran <code>git init</code> in <code>/app/data/collections</code> in the container, but subsequent commands fail with this error:</p>
<pre><code>root@[app id]:/app/data/collections# git status
fatal: detected dubious ownership in repository at '/app/data/collections'
To add an exception for this directory, call:

        git config --global --add safe.directory /app/data/collections
root@[app id]:/app/data/collections# git config --global --add safe.directory /app/data/collections
error: could not lock config file /root/.gitconfig: Read-only file system
root@[app id]:/app/data/collections# git config --system --add safe.directory /app/data/collections
error: could not lock config file /etc/gitconfig: Read-only file system
</code></pre>
<p dir="auto">I don't really want to start messing with file permissions anywhere, but then this fails too, even though it is definitely a git repository:</p>
<pre><code>root@[app id]:/app/data/collections#  git config  --local -l
fatal: --local can only be used inside a git repository
</code></pre>
<p dir="auto">Setting the flag just for that one command doesn't work either:</p>
<pre><code>root@[app id]:/app/data/collections# git -c safe.directory=/app/data/collections status
fatal: detected dubious ownership in repository at '/app/data/collections'
To add an exception for this directory, call:

        git config --global --add safe.directory /app/data/collections
</code></pre>
<p dir="auto">I was able to get everything working by logging into the host :</p>
<pre><code>root@[host]:/# cd /home/yellowtent/appsdata/[app id]/data/collections
root@[host]:/home/yellowtent/appsdata/[app id]/data/collections# git status
On branch main
Untracked files:
  (use "git add &lt;file&gt;..." to include in what will be committed)
	[collection id]
nothing added to commit but untracked files present (use "git add" to track)
</code></pre>
<p dir="auto">So I think I have a path forward, even though it's less than ideal. I'm just starting out with Cloudron though — is there anything I'm missing?</p>
]]></description><link>https://forum.cloudron.io/topic/12052/versioning-radicale-data-with-git</link><generator>RSS for Node</generator><lastBuildDate>Tue, 08 Sep 2026 19:25:53 GMT</lastBuildDate><atom:link href="https://forum.cloudron.io/topic/12052.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 07 Jul 2024 06:49:47 GMT</pubDate><ttl>60</ttl></channel></rss>