git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jelmer Vernooij <jelmer@samba.org>
To: Dmitry Potapov <dpotapov@gmail.com>
Cc: Jeff King <peff@peff.net>, Avery Pennarun <apenwarr@gmail.com>,
	Ben Gamari <bgamari@gmail.com>, git <git@vger.kernel.org>
Subject: Re: Storing (hidden) per-commit metadata
Date: Mon, 22 Feb 2010 12:59:32 +0100	[thread overview]
Message-ID: <1266839972.4575.38.camel@ganieda> (raw)
In-Reply-To: <20100222112845.GE10191@dpotapov.dyndns.org>

[-- Attachment #1: Type: text/plain, Size: 2573 bytes --]

On Mon, 2010-02-22 at 14:28 +0300, Dmitry Potapov wrote:
> On Mon, Feb 22, 2010 at 10:56:47AM +0100, Jelmer Vernooij wrote:
> > 
> > There is no need for that data to be added later for revisions that did
> > not originate from Bazaar. All of the metadata that has to be stored
> > will be known at the time the commit is created. Those commits that were
> > made in Git later will not have any metadata that can not be represented
> > in Git (they were made with Git, after all).
> If so, I do not see why any metadata should be stored in Git at all. If
> you can work without them then why do you want to add to Git? And then
> how about commit that originated in Git then exported to Bazaar and then
> imported back at Git? It is still originated in Git and thus should not
> have any metadata despite being imported from Bazaar.
Commits that originated in Git do not contain any Bazaar-specific
metadata, even if they also lived in Bazaar at some point, because they
could not have been set by Git at commit time. 

We would only add the metadata for revisions that did not come out of
Git originally. 

We'd like to have the extra metadata in Git so that we can push Bazaar
commits into a Git repository losslessly. If we can't do this losslessly
then the identity of the commit changes just like it does in git if you
aren't able to produce the same tree, blob and commit objects.

> > Having a bzr/master ref means that the extra metadata will not always be
> > copied around (unless git is patched), so if I push my work from Bazaar
> > into Git, somebody works on it in Git and pushes a derived branch and
> > then somebody else clones that derived Git branch into Bazaar again, I
> > will not be able to communicate with that person's branch.
> No matter how many times a branch was cloned, it is exactly same branch
> (i.e. it consists of commits having exactly the same id). So, if you can
> work with the original branch, you can work with any cloned branch. So,
> I see no need to copy this data around for people who do not work with
> Bazaar directly.
The original branch is a Bazaar branch here, so that's not true. You can
only work with any cloned branch if the matching bzr/ branch is also
around. If it isn't then you won't be able to find the original commit. 

hg-git already does something similar by putting a --HG-- line followed
by hg-git specific metadata in the commit message when it pushes into
Git. I'd like to find a place to put this data that's not as intruisive
for users.

Cheers,

Jelmer

[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  reply	other threads:[~2010-02-22 11:59 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-02-19 17:11 Storing (hidden) per-commit metadata Jelmer Vernooij
2010-02-20 17:41 ` Ben Gamari
2010-02-20 18:57   ` Avery Pennarun
2010-02-21  6:34     ` Jeff King
2010-02-21  8:49       ` Johannes Schindelin
2010-02-21  8:52         ` Jeff King
2010-02-21 12:17       ` Jelmer Vernooij
2010-02-22  5:17         ` Dmitry Potapov
2010-02-22  9:56           ` Jelmer Vernooij
2010-02-22 11:28             ` Dmitry Potapov
2010-02-22 11:59               ` Jelmer Vernooij [this message]
2010-02-22 13:08                 ` Dmitry Potapov
2010-02-22 13:44                   ` Jelmer Vernooij
2010-02-22 14:20                     ` Dmitry Potapov
2010-02-22 19:13                       ` Jelmer Vernooij
2010-02-22 14:57       ` Jelmer Vernooij
2010-02-22  5:11 ` Gabriel Filion
2010-02-22  9:49   ` Jelmer Vernooij
2010-02-22 22:13 ` "Alejandro R. Sedeño"

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1266839972.4575.38.camel@ganieda \
    --to=jelmer@samba.org \
    --cc=apenwarr@gmail.com \
    --cc=bgamari@gmail.com \
    --cc=dpotapov@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).