[PATCH] NEWS: Document the recent 'nmbug clone' and @{upstream} changes
W. Trevor King
wking at tremily.us
Wed Apr 9 14:01:08 PDT 2014
On Wed, Apr 09, 2014 at 08:22:26AM -0300, David Bremner wrote:
> W. Trevor King writes:
>
> > The changes just landed with c200167 (nmbug: Add 'clone' and replace
> > FETCH_HEAD with @{upstream}, 2014-03-09).
> >
> > The preferred markup language for NEWS seems to be Markdown, which is
> > parsed by devel/news2wiki.pl into Markdown chunks for rendering by
> > ikiwiki [1].
> >
> > [1]: http://notmuchmail.org/news/
> > ---
> > NEWS | 20 ++++++++++++++++++++
> > 1 file changed, 20 insertions(+)
> >
> > diff --git a/NEWS b/NEWS
> > index d4f4ea4..e26fa0a 100644
> > --- a/NEWS
> > +++ b/NEWS
> > @@ -20,6 +20,26 @@ Bug fix for saved searches with newlines in them.
> > Split lines confuse `notmuch count --batch`, so we remove embedded
> > newlines before calling notmuch count.
> >
> > +nmbug
> > +-----
> > +
> > +nmbug adds a `clone` command for setting up the initial repository and
> > +uses `@{upstream}` instead of `FETCH_HEAD` to track upstream changes.
> > +
> > + The `@{upstream}` change reduces ambiguity when fetching multiple
> > + branches, but requires existing users update their bare `NMBGIT`
> > + repository (usually `~/.nmbug`) to a non-bare repository. The
> > + easiest way to do this is:
>
> That bit about non-bare seems to be untrue/misleading?
The old repositories were bare [1]:
git clone --bare http://nmbug.tethera.net/git/nmbug-tags.git $HOME/.nmbug
the new repositories are not [2]:
system ('git', 'clone', '--no-checkout', '--separate-git-dir', $NMBGIT,
$repository, $tempwork) == 0
We need non-bare repositories to have remote-tracking branches
(distinct from local branches) [3], and we need remote-tracking
branches to have working @{upstream}.
I think that's reasonable support for my claim (and most of it is in
the original c200167 commit message), but maybe not?
> As a step 0, I guess commit any tag changes to nmbug?
> > +
> > + 1. Push any local commits to a remote repository.
> > + 2. Remove your `NMBGIT` repository (e.g. `mv .nmbug .nmbug.bak`).
> > + 3. Use the new `clone` command to create a fresh clone:
> > +
> > + nmbug clone nmbug at nmbug.tethera.net:nmbug-tags
> > +
>
> Jani mentioned on IRC that some people might track nmbug in a read only
> way via git://
Sure. The current docs suggest HTTP [1], so I'm fine changing this to
the HTTP URL (or the Git URL). I think folks will get the idea
regardless. I can resubmit v2 with this update, or you can just
squash it in if/when this patch lands in master, whatever is easiest.
> > + 4. If you had local commits in step 1, add a remote for that
> > + repository and fetch them into the new repository.
>
> Is the "remote repository" in step 1 meant to be the central repo? or
> just a backup?
The backup. If you have nothing to backup, you already got everything
back after cloning the central repo.
Cheers,
Trevor
[1]: http://notmuchmail.org/nmbug/
[2]: http://git.notmuchmail.org/git/notmuch/blob/c20016742681e1ed48c83de32639e10507ffa14d:/devel/nmbug/nmbug#l133
[3]: http://git.kernel.org/cgit/git/git.git/tree/Documentation/git-clone.txt
--bare::
Make a 'bare' Git repository…
Also the branch heads at the remote are copied directly
to corresponding local branch heads, without mapping
them to `refs/remotes/origin/`. When this option is
used, neither remote-tracking branches nor the related
configuration variables are created.
--
This email may be signed or encrypted with GnuPG (http://www.gnupg.org).
For more information, see http://en.wikipedia.org/wiki/Pretty_Good_Privacy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: OpenPGP digital signature
URL: <http://notmuchmail.org/pipermail/notmuch/attachments/20140409/4a292b62/attachment.pgp>
More information about the notmuch
mailing list