On 26 March 2015 at 02:06, Marc Herbert <[email protected]> wrote:
>  git clone & fetch is a very specialized but also very efficient backup
> tool, so I just tried to use it to backup and restore[*] Stacked Git patch
> series.
>
> A git clone --mirror; git fetch seems to backup Stacked Git internals,
> however I cannot tell for 100% sure that everything is there since I could
> not yet find the magic command(s) to restore/reinit the patch series from
> the backup mirror.
>
> Long story short, after cloning the backup: "master.stgit: branch not
> initialized". Any clue?

"master" is the main branch containing your applied patches.
"master.stgit" is the StGit metadata branch with information about
unapplied patches, branch history. While all the metadata you need is
in the *.stgit branches, StGit hasn't been fully updated to use the
metadata branches. I think about half of the commands have been
converted to the new lib infrastructure (under stgit/lib/) but
the rest still rely on files under .git/patches/. You can checkout
origin/master.stgit for example and see what's stored in there. The
log of the metadata branch history is a bit more complicated to avoid
garbage collecting unapplied patches (described in stgit/lib/log.py).

So, the two options are: (1) we finish updating all the commands to
the lib infrastructure (preferred option since it allows one to
publish stgit metadata) or (2) get something like
stackupgrade.update_to_current_format_version() to generate the old
format metadata from the *.stgit branches.

Maybe some shell script could replace option (2) more easily. I'd
really like to finish (1) but not enough spare time.

Catalin

_______________________________________________
stgit-users mailing list
[email protected]
https://mail.gna.org/listinfo/stgit-users

Reply via email to