threads / discuss / 3375

stGIT: commit vs export vs mail

Subject: stGIT: commit vs export vs mail

## tl;dr

4 messages between Feb 17, 2006 and Feb 18, 2006.

replies: 3people: 2as markdown or json

Jesse Brandeburg· Feb 17, 2006, 21:09 UTC · lore

So I am using stgit .8 right now, and I'm having a hard time figuring out what the correct workflow should be for using stg and then committing a change

Here is what I've been doing:
stg new test
  enter my short description on first line
  enter my long description on next lines.
vi file
stg refresh
stg mail <blah blah blah>
or
stg commit

Problem that I'm having right now is that the templates do the right thing for mail, but, the commit only puts in the "enter my..." text.

Is there a template based way to automatically append the author in the 
Signed-off-by: line when i do stg commit?

I realize that I could put Signed-off-by in the log by hand (or even in .git/patchdescr.tmpl which i just found) but it would be cool if the commit just had something like patchmail.tmpl (maybe call it commitdescr.tmpl or something?)

thanks for any opinions or instruction.
Jesse
Catalin Marinas· Feb 17, 2006, 22:12 UTC · re: Jesse Brandeburg · lore

Re: stGIT: commit vs export vs mail

Jesse Brandeburg wrote:
Show 13 quoted lines
> So I am using stgit .8 right now, and I'm having a hard time figuring
> out what the correct workflow should be for using stg and then
> committing a change
> 
> Here is what I've been doing:
> stg new test
>  enter my short description on first line
>  enter my long description on next lines.
> vi file
> stg refresh
> stg mail <blah blah blah>
> or
> stg commit

There is no "or" above but only "and maybe". The 'commit' command is only used to permanently store a set of patches into the repository. After that, you should not be able to change them anymore (well, someone just sent me a patch for an uncommit command). I only use this command when I work in the "maintainer" mode on StGIT. For contributing patches, you shouldn't need it since the base of the stack should usually be identical to the HEAD of the remote repository.

> Problem that I'm having right now is that the templates do the right
> thing for mail, but, the commit only puts in the "enter my..." text.
I don't fully understand this. Where does commit put the "enter my..." text?
> Is there a template based way to automatically append the author in the
> Signed-off-by: line when i do stg commit?

This can only be done when creating a patch. Commit doesn't modify the patches. I think you slightly misunderstood the commit command.

Catalin
Jesse Brandeburg· Feb 18, 2006, 02:11 UTC · re: Catalin Marinas · lore

Re: stGIT: commit vs export vs mail

On Fri, 17 Feb 2006, Catalin Marinas wrote:
Show 22 quoted lines
> Jesse Brandeburg wrote:
>> So I am using stgit .8 right now, and I'm having a hard time figuring
>> out what the correct workflow should be for using stg and then
>> committing a change
>>
>> Here is what I've been doing:
>> stg new test
>>  enter my short description on first line
>>  enter my long description on next lines.
>> vi file
>> stg refresh
>> stg mail <blah blah blah>
>> or
>> stg commit
>
> There is no "or" above but only "and maybe". The 'commit' command is
> only used to permanently store a set of patches into the repository.
> After that, you should not be able to change them anymore (well, someone
> just sent me a patch for an uncommit command). I only use this command
> when I work in the "maintainer" mode on StGIT. For contributing patches,
> you shouldn't need it since the base of the stack should usually be
> identical to the HEAD of the remote repository.

I'm trying to commit changes to a local repository so that the maintainer can do a "pull" off of my repository.

>> Problem that I'm having right now is that the templates do the right
>> thing for mail, but, the commit only puts in the "enter my..." text.
>
> I don't fully understand this. Where does commit put the "enter my..." text?

so I used stgit to commit this change. It puts it in the git log of checkins for the repository.

[jbrandeb@lindenhurst-2 e1000]$ git log | head -n 20
commit fb16b7111dae51b9a928aa7706d1cc022df8741d
Author: Jesse Brandeburg <jesse.brandeburg@intel.com>
Date:   Fri Feb 17 11:29:19 2006 -0800
     e1000: update readme
     Update the e1000 text to the latest version
     Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Show 5 quoted lines
>> Is there a template based way to automatically append the author in the
>> Signed-off-by: line when i do stg commit?
>
> This can only be done when creating a patch. Commit doesn't modify the
> patches. I think you slightly misunderstood the commit command.

the stgit command stg commit freezes patches that I've made into my repository. I think I get that, but I've been wrong before. Its just that I can template the Signed-off-by: line for emails, but when I do a stg commit I want the thing to have the Signed-off-by: line in the commit text (like above where I added it by hand)

I guess I'll just change my templates to not auto add the Signed-off-by line and then things will work okay, as I'll just add the line during stg new ...

Thanks for your reply, and the cool tool!
Jesse
Catalin Marinas· Feb 18, 2006, 08:30 UTC · re: Jesse Brandeburg · lore

Re: stGIT: commit vs export vs mail

On 18/02/06, Jesse Brandeburg <jesse.brandeburg@intel.com> wrote:
Show 9 quoted lines
> On Fri, 17 Feb 2006, Catalin Marinas wrote:
> > Jesse Brandeburg wrote:
> >> stg mail <blah blah blah>
> >> or
> >> stg commit
> >
>
> I'm trying to commit changes to a local repository so that the maintainer
> can do a "pull" off of my repository.

All the applied patches in your repository are visible via HEAD. There is no need to do a commit, unless you want to store them permanently. The way of using StGIT in contributor mode is to always have the base of the stack identical to the HEAD of the upstream repository.

I usually just mail the patches but the other way would be to apply the patches you want to be merged and ask the maintainer to pull from it. Once the changes were pulled, you could run 'stg pull' on your repository and StGIT should detect which patches were merged and whether there are any conflicts (patches modified upstream for example).

If you want to continue the work on your branch before the maintainer would pull the changes, you can create a separate "stable" branch for this. Either use 'stg branch --clone' or simply create it with 'stg branch --create base' and pick the patches you want merged.

Show 9 quoted lines
> the stgit command stg commit freezes patches that I've made into my
> repository.  I think I get that, but I've been wrong before.  Its just
> that I can template the Signed-off-by: line for emails, but when I do a
> stg commit I want the thing to have the Signed-off-by: line in the commit
> text (like above where I added it by hand)
>
> I guess I'll just change my templates to not auto add the Signed-off-by
> line and then things will work okay, as I'll just add the line during stg
> new ...

I got it now. You added Signed-off-by to the mail template. As I said above, commit should not be used to facilitate the maintainer pulling. It is already available since the patches are valid GIT commits.

-- Catalin

← back to recent threads