[
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