[
Date Prev][
Date Next][
Thread Prev][
Thread Next][
Date Index][
Thread Index]
[
List Home]
| Re: [egit-dev] Using EGit to Push to Gerrit | 
Marek Zawirski wrote:
My guess?  EGit is actually behaving like this on the command line:
  git push URL refs/heads/releng-experiment:refs/heads/refs/for/master
Yep, from the quick look at jgit's Transport class it looks like 
findRemoteRefUpdatesFor() method may be found guilty.
There is a dumb rule - prefix destination ref with "refs/heads/" if only 
source ref starts with that prefix and destination does not (it was 
discussed for a while if I recall correctly).
Eee... I was way too fast with that judgment. Apparently that's not 
true, and mentioned rule is not looking like that. It seems to be ok.
Which has just happened in that case.
Which is neither true, sorry. The destination ref stayed properly untouched.
But I can't be sure.  We'd have to throw logging or a break point
into PushProcess and see what the RefSpec was that was actually
fed into the process.
Actually, RefSpec is ok, but RefSpec to RemoteRefUpdate conversion 
fails.
Same as above. Which can be also observed in Chris' screenshot - results 
table shows RemoteRefUpdate not RefSpec, so these are exact refs names, 
without any further expansion.
Evil error message "[remote rejected]" stands for: remote rejected for 
other reason. You should get more details in tooltip text, by putting 
mouse over "[remote rejected]" string. I am curious what caused that.
I may try it on my own, but is there some gerrit test environment where 
I could try submitting some dummy patch, or should I try to put some 
garbage on egit's gerrit (in case it works for me)?
Anyway, logging is obviously a good idea, but is there some 
logging mechanism at jgit's level already?
This analysis was brought to you with without Shawn's carrier pigeon 
logging technique  ;)
Marek