Re: 2.10.0: git log --oneline prints gpg signatures in 4 lines

2016-09-21 Thread Leandro Lucarella
On Tue, 20 Sep 2016 19:15:33 -0400
Jeff King <p...@peff.net> wrote:

> On Tue, Sep 20, 2016 at 05:09:54PM +0200, Leandro Lucarella wrote:
> 
> > Hi, starting from 2.10.0 I noticed that when using git log
> > --oneline, if commits are signed with GPG, now the signatures are
> > printed too, and it takes 3 lines for the signature information + 1
> > line for the title of the commit, so suddenly --oneline became
> > --fourline :)
> > 
> > Is this really intended?
> 
> I don't think anything has changed here in 2.10. Running "git log
> --oneline --show-signature" has _always_ been horribly ugly. However,
> 2.10 did introduce the "log.showsignature" config, which makes "git
> log --oneline" pretty unusable when it is enabled. Ditto for
> one-liner uses of "--format".
> 
> I think we should probably ignore the config entirely when using any
> of the one-liner formats (and I'd include --format, too, even though
> it can sometimes be multi-line; it already has %GG to include that
> information as appropriate).

Woops! Definitely it shouldn't be added when --format is used, this is
also breaking some scripts I have using git log --format to get some
information about commits, and GPG information is being output even
when there is anything about GPG requested in the chosen format.

I guess I will disable log.showsignatures for now... :(

-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>


Re: 2.10.0: git log --oneline prints gpg signatures in 4 lines

2016-09-21 Thread Leandro Lucarella
On Tue, 20 Sep 2016 19:15:33 -0400
Jeff King <p...@peff.net> wrote:

> On Tue, Sep 20, 2016 at 05:09:54PM +0200, Leandro Lucarella wrote:
> 
> > Hi, starting from 2.10.0 I noticed that when using git log
> > --oneline, if commits are signed with GPG, now the signatures are
> > printed too, and it takes 3 lines for the signature information + 1
> > line for the title of the commit, so suddenly --oneline became
> > --fourline :)
> > 
> > Is this really intended?
> 
> I don't think anything has changed here in 2.10. Running "git log
> --oneline --show-signature" has _always_ been horribly ugly. However,
> 2.10 did introduce the "log.showsignature" config, which makes "git
> log --oneline" pretty unusable when it is enabled. Ditto for
> one-liner uses of "--format".

Right! Now I remember, I changed my configuration when I read the
release notes, before I upgraded. Now that I did upgrade I'm seeing the
results.

Anyway, yeah, using the new configuration makes --oneline pretty
unusable, so ignoring that option for --oneline seems like a good idea.

> I think we should probably ignore the config entirely when using any
> of the one-liner formats (and I'd include --format, too, even though
> it can sometimes be multi-line; it already has %GG to include that
> information as appropriate).
> 
> Another option would be to somehow represent the signature information
> in the --oneline output, but I think I'd rather leave that for people
> to experiment with using "--format".

I think it might be nice to show the information in one line in a ver
succinct way, like just showing a green unicode check mark (✓) or a red
cross mark (❌) if it failed (or just colour the commit subject in
green/red if a signature is present and is passing/failing).

Thanks!

-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>


2.10.0: git log --oneline prints gpg signatures in 4 lines

2016-09-20 Thread Leandro Lucarella
Hi, starting from 2.10.0 I noticed that when using git log --oneline,
if commits are signed with GPG, now the signatures are printed too, and
it takes 3 lines for the signature information + 1 line for the title
of the commit, so suddenly --oneline became --fourline :)

Is this really intended?

-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>


Re: [PATCH] transport: report missing submodule pushes consistently on stderr

2016-08-24 Thread Leandro Lucarella
On Tue, 23 Aug 2016 14:40:08 -0700
Stefan Beller <sbel...@google.com> wrote:
> The surrounding advice is printed to stderr, but the list of
> submodules is not. Make the report consistent by reporting everything
> to stderr.
> 
> Signed-off-by: Stefan Beller <sbel...@google.com>
> ---
> 
>   This fixes one of the bugs mentioned in
>   
> https://public-inbox.org/git/cagz79kbkyupbjfvyx3hj_r5zw36+3ufonnlc-dpic40npja...@mail.gmail.com/T/#t
>   
>   How to fix the other was not as obvious to me as I do not
> understand the philosophy on verbosity in the transport code.

I had a look and I would say just enclose all the fprintf() inside a:

if (transport->verbose > 0)

But then this is the first time I look at the code. I was about to send
a patch too but it will conflict with this one :)

Anyway, thanks for the quick fix to the inconsistent printing with
--quiet.


-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: Getting "The following submodule paths contain changes that can not be found on any remote" when they are in the remote

2016-08-23 Thread Leandro Lucarella
On Tue, 23 Aug 2016 20:34:46 +0200
Leandro Lucarella <leandro.lucare...@sociomantic.com> wrote:
> This even happens after doing a:
> 
> git submodule deinit 
> rm -fr 
> rm -fr .git/modules/
> git submodule update --init

One more thing, doing a clean new clone seems to work, but I have this
issue in many many repos, which are old clones, from before Git had the
ability to check for submodules. Could it be some incompatibility in
old clones with this? Is there anything I can look for in the .git/
directory or elsewhere to fix them?

Thanks again!

-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Getting "The following submodule paths contain changes that can not be found on any remote" when they are in the remote

2016-08-23 Thread Leandro Lucarella
Hi, I'm getting very often, but not always, with many different
projects using submodules, the message:

  The following submodule paths contain changes that can
  not be found on any remote:


  Please try

git push --recurse-submodules=on-demand

  or cd to the path and use

git push

  to push them to a remote.

  fatal: Aborting.

This even happens after doing a:

git submodule deinit 
rm -fr 
rm -fr .git/modules/
git submodule update --init

So I am getting the reference from the remote, but when pushing a new
change (that doesn't touch the submodules) I keep getting this error.

I tried to get more information about why this is happening but I
couldn't. Googling didn't help either, so I'm resorting to ask here.

I would also like to report a tiny bug, when using push --quiet, I do
get all the message above except for the  name, which is quite
confusing.

$ git --version
git version 2.9.3

(running under Ubuntu 14.04)

Please CC me, and thanks a lot in advance!

-- 
Leandro Lucarella
Technical Development Lead
Sociomantic Labs GmbH <http://www.sociomantic.com>
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


branch.name.pushremote not working with push.default simple or upstream

2013-06-07 Thread Leandro Lucarella
Hi, I tried to use the new Git feature to push by default to a different
remote you normally pull but I had some problems. I asked in the #git
IRC channel and been told it looks like a bug and to report it here.

I have 2 remotes, origin and upstream. origin is my private fork (and I
can push to it) while upstream is read-only for me. I have only one
branch, 'master' (present in all the remotes), originally tracking
origin/master.

I changed branch.master.remote to upstream and set
branch.master.pushremote to origin, but when I do I git push I get an
error:

$ git push --dry-run --verbose
fatal: You are pushing to remote 'origin', which is not the upstream of
your current branch 'master', without telling me what to push
to update which remote branch.

I'm using push.default 'simple' to stay forward compatible with Git 2.0.
In the IRC channel they suggested to try with other push.default
settings and I did. 'matching' and 'current' works, but 'simple' and
'upstream' fail with the error message above.

Thank you.

-- 
Leandro Lucarella
Senior RD Developer
sociomantic labs GmbH http://www.sociomantic.com
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: branch.name.pushremote not working with push.default simple or upstream

2013-06-07 Thread Leandro Lucarella
On Fri, Jun 07, 2013 at 08:47:59AM -0700, Junio C Hamano wrote:
 When branch.$name.push mechanism is introduced and the user uses it,
 then upstream, simple, or any other setting for that matter
 would be ignored.  With
 
   [branch master]
   remote = upstream
 merge = refs/heads/master
 pushremote = origin
   push = refs/heads/master
 
 it is clear that git push while on 'master' should push to origin
 to update its master branch.

Thanks for the detailed explanations, I think this would cover my use
case. Just for clarification, here are some more details on this use
case, which I think is becoming very popular among github users.
We have a blessed repository (upstream in my case) and only a few
people is able to push to it (let's call them maintainers). Every
developer, including the ones with push access, have to go through peer
reviewing and are not allowed to push their own commits to upstream. For
peer reviewing, each have it's own public fork, that other people can
review and merge/push if is good.

In this scheme, you always pull from the blessed repository and only
push to your personal fork, with the exceptions of the maintainers that
need to push from time to time other people pull requests.

My ideal would be to be able to just do 'git pull' to get the new stuff
and 'git push' to push to my fork. Since pushing to the blessed
repository is more critical, is perfect that I need to explicitly push
to it with 'git push upstream master'.

Thank you.

-- 
Leandro Lucarella
Senior RD Developer
sociomantic labs GmbH http://www.sociomantic.com
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: branch.name.pushremote not working with push.default simple or upstream

2013-06-07 Thread Leandro Lucarella
On Fri, Jun 07, 2013 at 10:27:58PM +0530, Ramkumar Ramachandra wrote:
 Leandro Lucarella wrote:
  Thanks for the detailed explanations, I think this would cover my use
  case. Just for clarification, here are some more details on this use
  case, which I think is becoming very popular among github users.
  We have a blessed repository (upstream in my case) and only a few
  people is able to push to it (let's call them maintainers). Every
  developer, including the ones with push access, have to go through peer
  reviewing and are not allowed to push their own commits to upstream. For
  peer reviewing, each have it's own public fork, that other people can
  review and merge/push if is good.
 
 Yes, and I wrote it precisely to address this itch.  git/git is
 origin, and artagnon/git is ram.  I just set remote.pushdefault to ram
 and continue working as usual.
 
 I apologize for not having thought hard enough about other
 push.default modes: I personally use current, and like it very much.
 As an added bonus, even new branches created with git checkout -b
 hot-branch will get push to go to the right place; no need to set
 upstream before pushing.

I might try to just switch to current, I feel more comfortable with
simple because I feel is safer to explicitly set the upstream branch,
but is true that most of the time is not necessary.

-- 
Leandro Lucarella
Senior RD Developer
sociomantic labs GmbH http://www.sociomantic.com
--
To unsubscribe from this list: send the line unsubscribe git in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html