Eddy Petrişor wrote: > Well, I guess using that simple method with replace is nice. > > There is a catch, if > - the remote tags directory doesn't exist > - it was heuriticly detected > - a write in the tags directory is pending > > then what should happen? Create the tags remote directory?
Right, in that case, that's what debcommit does when tagging, it creates
the tags directory. (Or tries to; it only does one svn mkdir, and svn
mkdir -p is not implemented yet (though pending, IIRC), so the mkdir
might still fail and the tag fail.)
if (! action($prog, "copy", $svnpath, "$tagpath/$tag",
"-m", "tagging version $tag")) {
if (! action($prog, "mkdir", $tagpath,
"-m", "create tag directory") ||
! action($prog, "copy", $svnpath, "$tagpath/$tag",
"-m", "tagging version $tag")) {
die "debcommit: failed tagging with $tag\n";
}
}
> I am thinking about repos without the tagsUrl property explicitly set
> and a non-standard tags location. Should I change the code to offer
> support for this use case?
>
> The code will be a lot simpler if I follow the scenario:
> if no explict tagsUrl
> detect tagsUrl with s/trunk/tags/ (or svnpath)
>
> if tagsUrl does not exist
> create it
> tag
>
> Note that this bug (my scenario, to be specific) is somewhat related
> to #429024 and #408690.
I'm don't have any experience with the tagsUrl property, but it sounds
like it makes sense to prefer it to any svnpath like heuristics.
Note that svnpath also has a config file that can be used to make it
emit non-standard tag locations etc for specific repos.
--
see shy jo
signature.asc
Description: Digital signature

