eGit / ZendStudio 9生成的Refspec HEAD:refs / for / refs / heads / master是什么意思? [英] What does the Refspec HEAD:refs/for/refs/heads/master generated by eGit/ZendStudio 9 mean?

查看:570
本文介绍了eGit / ZendStudio 9生成的Refspec HEAD:refs / for / refs / heads / master是什么意思?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述



它生成一个安静的正常fetch refspec:

 远程提取规范+ refs / heads / *:refs / remotes / original / * 

但是一个非常mysique push refspec:

 远程推送规范HEAD: refs / for / refs / heads / master 

在远程我可以看到git ls-remote 以下:

  8db575549dea67a45cea04358f902993c940c4d8 HEAD 
16f0939153e6ef12b4596f0d4fb43fa5b8b0246b refs / for / refs / heads / master
8db575549dea67a45cea04358f902993c940c4d8 refs / heads / master

我在本地机器上有git status的消息:

 在分支主管
您的分支超过原始/主5个提交。

所以,请注意,因为我的问题不是这是什么意思...



我的问题是:




  • 这个工作流是什么意思?什么是感官?

  • 这是什么产生的服务器上的参考refs / for ..为?

  • 不是更好在本地分支上工作,而不是在服务器上引用引用?



提前感谢

$ b $一个通常的Gerrit相关的refspec应该是(如 > jszakmeister Gerrit Code Review - 上传更改

  HEAD:refs / for / branchname 

所以,如果有的话,应该是

  HEAD:refs / for / master 

但在你的case,你不需要那种refspec(因为你没有Gerrit)


这是一种通常的提交方式,


不,不是。


这是一个不好的默认值,不值得吗?


在你的情况下,是的,这没有用。



这可能是一个副作用,这个线程提到:


的确,Gerrit与EGit功能集成并发货。目前没有办法从Zend Studio中禁用Gerrit。


bug 347077Make Gerrit features Optional仍然是开放的。






OP tweini 评论


为了摆脱这个陷阱,我必须意识到,这个参考是在远程上创建一个分支,而没有与之关联的远程跟踪分支



但是要摆脱它很简单:




  • 更改push refspec在 .git / config push = refs / heads / master:refs / heads / master

  • 将您的本地回购推送到远程 git push

  • 删除远程上的分支git push --delete origin refs / for / refs / heads / master



Is set up a Project from Git in ZendStudio 9. (basing on eclipse with eGit)

It generates a quiet normal fetch refspec:

Remote Fetch Specification  +refs/heads/*:refs/remotes/original/*

But a very mysique push refspec:

Remote Push Specification   HEAD:refs/for/refs/heads/master

In the remote i can see by "git ls-remote" the following:

8db575549dea67a45cea04358f902993c940c4d8        HEAD
16f0939153e6ef12b4596f0d4fb43fa5b8b0246b        refs/for/refs/heads/master
8db575549dea67a45cea04358f902993c940c4d8        refs/heads/master

And i have on local machine the message by "git status":

On branch master
Your branch is ahead of 'original/master' by 5 commits.

So, please pay Attention, because my Question is not "What does it means"...

My Question is:

  • What does this workflow means? What is the Sense?
  • What is this generated Ref on the Server "refs/for.." for?
  • Isn't it better to work on a local branch instead of having a ref on the server to push?

Thanks in advance.

解决方案

One, a usual Gerrit related refspec should be (as commented by jszakmeister in "Gerrit Code Review - Uploading Changes")

HEAD:refs/for/branchname

So, if anything, it should have been

HEAD:refs/for/master

But in your case, you don't need that kind of refspec (since you don't have Gerrit)

Is this a usual way to commit,

No, it is not.

is it a bad default, worth nothing?

In your case, yes, it isn't useful.

This could be a side effect of what this thread mentions:

Indeed, Gerrit is integrated and shipped together with EGit feature. Currently there is no way to disable Gerrit from within Zend Studio.

The bug 347077 "Make Gerrit features Optional" is still open.


the OP tweini comments:

To go out of this trap, iI had to realize, that this ref is creating a branch on remote without a remote tracking branch associated with it.

But to get rid of it is pretty easy:

  • Change push refspec in .git/config to push = refs/heads/master:refs/heads/master,
  • Push your local repo to remote git push
  • Delete the branch on remote git push --delete origin refs/for/refs/heads/master

这篇关于eGit / ZendStudio 9生成的Refspec HEAD:refs / for / refs / heads / master是什么意思?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆