Re: [StGIT RFC] Changing patch@branch syntax

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 22/06/07, Yann Dirson <ydirson@xxxxxxxxxx> wrote:
On Fri, Jun 22, 2007 at 04:59:05PM +0100, Catalin Marinas wrote:
> I also don't think we need to make this distinction in the names as
> different commands or options take different type of arguments:
>
> stg show <patch>
> stg series --branch <stack>

Currently, "stg show HEAD" or any other git ref does work, except when
there are name clashes.

But the argument to 'show' here is either a patch or a git ref (not a
stack or a pool). It first tries to find a patch and fall back to a
git ref. You don't specify a stack to 'show'. 'git show' is also able
to take a commit or a tag object without clearly specifying the
difference.

What might be easier with a complete spec is bash completion. I find
this mandatory precise description similar to the Hungarian notation.
Since most of the time I work with push/pop commands, I don't like
always putting a ":" for every patch (BTW, what about patch ranges, I
don't think they can go across multiple stacks).

And since we're going to have all of patches, stacks, and pools in the
same "stackable" family, we're going to use them interchangeably in
more and more places.  But there are also places where we can use at
will stack names and generic git heads (eg. "stg branch X").

Currently, stack names and git branches are the same. Would this
change with hydra? I use StGIT to maintain my branches on
http://www.linux-arm.org/git?p=linux-2.6.git;a=heads and I find the
stack name == git branch simplification pretty useful.

What commands/options would we have where we need to distinguish
between stack and patch names?

I'd rather having a single name-resolution mechanism, instead of one
for patches and one for branches.

I don't see why we couldn't have a single name resolution but without
the mandatory ":". An example (but in reverse order) is internet
names. I only type "intranet" rather than "intranet." in a browser. To
fully qualify, I type "intranet.arm.com".

> I would introduce a <repo> in front of all the above (for which we
> don't have any support)

Yes - URLs could do the work, with a '#' to use the stackable as URL
fragment.

OK, you mentioned this in the past.

Now for technical details.  I have a prototype hydra mechanism that
demonstrates that we can create such a beast without having everything
breaking all around.  However, it does not use the model described in
this thread, but rather links to stacks which exist independantly - I
want to keep that as a possibility, by using some symlink-like
mechanism, but the current prototype will not live, although I may
experiment a bit more with it.  BTW, we should probably name the final
beast "pool" and not "hydra", so users have a better idea of how to
use it :)

Yes, "pool" sounds better (though I didn't get the full idea of how
things work).

However, the various refactorings and fixes I have done should be
quite ready for inclusion (modulo dispatching recent fixes down to the
relevant patch).  Here I need to know your plans for 0.13: if the
refactoring would go in, I just have to polish things as they are; if
you prefer to keep this for 0.14, I'll sink the bugfixes down my stack
so they can be in 0.13 at least.

I plan to do a 0.13 release pretty soon. I want to clear some of the
logged bugs and release it as it seems to be pretty stable. It's
better to keep this refactoring for 0.14.

If it is easier for you, you could create a branch (for-upstream etc.)
and just send me an email to merge it.

Did you have time to look at the various refactorings at
http://repo.or.cz/w/stgit/ydirson.git ?

I had a quick look (not much though, moving house and a lot of FYI).
They look OK, but just a few comments:

- concreteCommand, I would write classes with capital first letter
(unwritten convention in StGIT)

- why the Repository class definition in stgit/__init__.py? Can it not
be in a different file? Also, shourt stgit/git.py be aware of the
repository?

Regards.

--
Catalin
-
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux