push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
Looks like push can't resolve tags to commits.
Why is that?

linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next
error: Trying to write non-commit object
a8c6d53c4d84b3a5eb182758a9cdceceba4691da to branch refs/heads/vhost-next
To /scm/linux
 ! [remote rejected] v3.10-rc2 - vhost-next (failed to write)
error: failed to push some refs to '/scm/linux'

linux$ git log v3.10-rc2|head -5
commit c7788792a5e7b0d5d7f96d0766b4cb6112d47d75
Author: Linus Torvalds torva...@linux-foundation.org
Date:   Mon May 20 14:37:38 2013 -0700

Linux 3.10-rc2


linux$ $ git push -f $PWD
c7788792a5e7b0d5d7f96d0766b4cb6112d47d75:refs/heads/vhost-next
Everything up-to-date



--
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: push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
On Thu, May 23, 2013 at 01:53:10PM +0300, Michael S. Tsirkin wrote:
 Looks like push can't resolve tags to commits.
 Why is that?
 
 linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next
 error: Trying to write non-commit object
 a8c6d53c4d84b3a5eb182758a9cdceceba4691da to branch refs/heads/vhost-next
 To /scm/linux
  ! [remote rejected] v3.10-rc2 - vhost-next (failed to write)
 error: failed to push some refs to '/scm/linux'
 
 linux$ git log v3.10-rc2|head -5
 commit c7788792a5e7b0d5d7f96d0766b4cb6112d47d75
 Author: Linus Torvalds torva...@linux-foundation.org
 Date:   Mon May 20 14:37:38 2013 -0700
 
 Linux 3.10-rc2
 
 
 linux$ $ git push -f $PWD
 c7788792a5e7b0d5d7f96d0766b4cb6112d47d75:refs/heads/vhost-next
 Everything up-to-date
 
 

Forgot to say - this is recent git.git master:

1.8.3.rc3.8.g5e49f30
--
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: push not resolving commit-ish?

2013-05-23 Thread Felipe Contreras
On Thu, May 23, 2013 at 5:53 AM, Michael S. Tsirkin m...@redhat.com wrote:
 Looks like push can't resolve tags to commits.
 Why is that?

 linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next

Perhaps v3.10-rc2^{}. Yeah, totally and completely not-user-friendly,
I already complained about it to no avail.

-- 
Felipe Contreras
--
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: push not resolving commit-ish?

2013-05-23 Thread Junio C Hamano
Michael S. Tsirkin m...@redhat.com writes:

 Looks like push can't resolve tags to commits.
 Why is that?

How else would you push a tag out?
--
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: push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
On Thu, May 23, 2013 at 11:10:32AM -0700, Junio C Hamano wrote:
 Felipe Contreras felipe.contre...@gmail.com writes:
 
  On Thu, May 23, 2013 at 5:53 AM, Michael S. Tsirkin m...@redhat.com wrote:
  Looks like push can't resolve tags to commits.
  Why is that?
 
  linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next
 
  Perhaps v3.10-rc2^{}. Yeah, totally and completely not-user-friendly,
 
 More commonly v3.10-rc2^0:vhost-next, if you are truly pushing it
 out to a remote repository, but then it invites a puzzlement What
 do you plan to do next after pushing?  The only reason v3.10-rc2 is
 used is because there is not yet a local branch that will host the
 vhost-next changes that is built on top of that tag (otherwise you
 would be pushing that branch to vhost-next).
 
 But in this particular case, you are force-pushing into the current
 repository, and it is spelled much more commonly
 
 git branch -f vhost-next v3.10-rc2
 
 I would think.

That was just a bad example though, I really use it for
push to remove.
--
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: push not resolving commit-ish?

2013-05-23 Thread Junio C Hamano
Michael S. Tsirkin m...@redhat.com writes:

 On Thu, May 23, 2013 at 11:10:32AM -0700, Junio C Hamano wrote:
 Felipe Contreras felipe.contre...@gmail.com writes:
 
  On Thu, May 23, 2013 at 5:53 AM, Michael S. Tsirkin m...@redhat.com 
  wrote:
  Looks like push can't resolve tags to commits.
  Why is that?
 
  linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next
 
  Perhaps v3.10-rc2^{}. Yeah, totally and completely not-user-friendly,
 
 More commonly v3.10-rc2^0:vhost-next, if you are truly pushing it
 out to a remote repository, but then it invites a puzzlement What
 do you plan to do next after pushing?  The only reason v3.10-rc2 is
 used is because there is not yet a local branch that will host the
 vhost-next changes that is built on top of that tag (otherwise you
 would be pushing that branch to vhost-next).
 
 But in this particular case, you are force-pushing into the current
 repository, and it is spelled much more commonly
 
 git branch -f vhost-next v3.10-rc2
 
 I would think.

 That was just a bad example though, I really use it for
 push to remove.

Then it invites a puzzlement as you can see above.
--
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: push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
On Thu, May 23, 2013 at 11:05:00AM -0700, Junio C Hamano wrote:
 Michael S. Tsirkin m...@redhat.com writes:
 
  Looks like push can't resolve tags to commits.
  Why is that?
 
 How else would you push a tag out?

Well my reaction is, it seems to figure out it needs a commit and then
instead of just getting it, it errors out.  Why not just DWIM?

But at least I see the reason now, thanks.
-- 
MST
--
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: push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
On Thu, May 23, 2013 at 11:10:32AM -0700, Junio C Hamano wrote:
 Felipe Contreras felipe.contre...@gmail.com writes:
 
  On Thu, May 23, 2013 at 5:53 AM, Michael S. Tsirkin m...@redhat.com wrote:
  Looks like push can't resolve tags to commits.
  Why is that?
 
  linux$ git push -f $PWD v3.10-rc2:refs/heads/vhost-next
 
  Perhaps v3.10-rc2^{}. Yeah, totally and completely not-user-friendly,
 
 More commonly v3.10-rc2^0:vhost-next, if you are truly pushing it
 out to a remote repository, but then it invites a puzzlement What
 do you plan to do next after pushing?  The only reason v3.10-rc2 is
 used is because there is not yet a local branch that will host the
 vhost-next changes that is built on top of that tag (otherwise you
 would be pushing that branch to vhost-next).

This was just a bad example.
The real reason is this:

I have a development branch, vhost-next. I have a tag there
like for_linus for things that are ready to go out.
I don't always point it at the tip of the branch
since I might want to rebase/amend X last commits.

It's a tag and not a branch since I need to sign the tag.
I push to a branch and not just the tag since this way
people can track it and do downstream development on top.
So pushing the tag to branch would save me some churn.


 But in this particular case, you are force-pushing into the current
 repository, and it is spelled much more commonly
 
 git branch -f vhost-next v3.10-rc2
 
 I would think.
--
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: push not resolving commit-ish?

2013-05-23 Thread Junio C Hamano
Michael S. Tsirkin m...@redhat.com writes:

 On Thu, May 23, 2013 at 11:05:00AM -0700, Junio C Hamano wrote:
 Michael S. Tsirkin m...@redhat.com writes:
 
  Looks like push can't resolve tags to commits.
  Why is that?
 
 How else would you push a tag out?

 Well my reaction is, it seems to figure out it needs a commit and then
 instead of just getting it, it errors out.  Why not just DWIM?

Ahh, that one.

The local branch name hierarchy refs/heads/ is special in that you
cannot have a tag sitting at the tip, so when push decides to
update something under refs/heads/ on the receiving end, it may not
be a bad idea to peel it to a commit (and fail if it does not)
before creating a pack and telling the other end what the value of
the updated tip should be, and I do not think it will hurt anybody.

Restriction in the other direction (i.e. if push does not go to
refs/tags/, unconditionally unwrap) is a no-no, though.

--
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: push not resolving commit-ish?

2013-05-23 Thread Junio C Hamano
Michael S. Tsirkin m...@redhat.com writes:

 It's a tag and not a branch since I need to sign the tag.
 I push to a branch and not just the tag since this way
 people can track it and do downstream development on top.
 So pushing the tag to branch would save me some churn.

It seems our messages crossed.

Everything you said before the last sentence makes sense to me, and
if the last sentence were pushing the commit that is tagged to
branch, it also makes sense to me.

--
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: push not resolving commit-ish?

2013-05-23 Thread Michael S. Tsirkin
On Thu, May 23, 2013 at 02:19:40PM -0700, Junio C Hamano wrote:
 Michael S. Tsirkin m...@redhat.com writes:
 
  On Thu, May 23, 2013 at 11:05:00AM -0700, Junio C Hamano wrote:
  Michael S. Tsirkin m...@redhat.com writes:
  
   Looks like push can't resolve tags to commits.
   Why is that?
  
  How else would you push a tag out?
 
  Well my reaction is, it seems to figure out it needs a commit and then
  instead of just getting it, it errors out.  Why not just DWIM?
 
 Ahh, that one.
 
 The local branch name hierarchy refs/heads/ is special in that you
 cannot have a tag sitting at the tip, so when push decides to
 update something under refs/heads/ on the receiving end, it may not
 be a bad idea to peel it to a commit (and fail if it does not)
 before creating a pack and telling the other end what the value of
 the updated tip should be, and I do not think it will hurt anybody.

Yes, that would help my case.

 
 Restriction in the other direction (i.e. if push does not go to
 refs/tags/, unconditionally unwrap) is a no-no, though.
--
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