This is my submodule redmine_dashboard config file:
[core]
repositoryformatversion = 0
filemode = true
Yes, you should be able to update the config file with a relative path. You should also update the worktree dir in the .git file in the submodule root to be a relative path back to that module.
I believe this is fixed in (at least) the most current version of git (1.7.10.1). I can't seem to find a changelog, so I have no idea when it got fixed. I was able to have git fix the issue by deleting both the submodule and the folder in the .git/modules folder and then redoing git submodule init and git submodule update.
Why are you setting worktree at all? By default, the work tree is where you run your commands from, where the .git directory is. See this question for more information.
Note that the git config man page mentions:
core.worktree
Set the path to the root of the work tree. This can be overridden by the
GIT_WORK_TREEenvironment variable and the--work-treecommand line option.
It can be an absolute path or a relative path to the.gitdirectory, either specified by--git-dirorGIT_DIR, or automatically discovered.
If--git-dirorGIT_DIRare specified but none of--work-tree,GIT_WORK_TREEandcore.worktreeis specified, the current working directory is regarded as the root of the work tree.