The command “eval git fetch origin +refs/pull/8/merge:” failed

Full article

Like any decent dev shop, we employ continuous builds for our projects. I even use it for one-off projects like GhostSharp, to make sure any code I'm committing compiles correctly (when applicable) and that the tests all pass (always applicable).

Awhile back, I got an unexpected error from a Travis CI build that threw me a bit. It was trying to build my branch, for which there had been a PR, but it failed:

The command "eval git fetch origin +refs/pull/8/merge:" failed 3 times.

The full trace of the error was similar to this:

$ git fetch origin +refs/pull/8/merge:

fatal: Couldn't find remote ref refs/pull/8/merge
Unexpected end of command stream
The command "eval git fetch origin +refs/pull/8/merge:" failed. Retrying, 2 of 3.

fatal: Couldn't find remote ref refs/pull/8/merge
Unexpected end of command stream
The command "eval git fetch origin +refs/pull/8/merge:" failed. Retrying, 3 of 3.

fatal: Couldn't find remote ref refs/pull/8/merge
Unexpected end of command stream
The command "eval git fetch origin +refs/pull/8/merge:" failed 3 times.

The command "git fetch origin +refs/pull/8/merge:" failed and exited with 128.

Your build has been stopped.

What I eventually realized was that Travis CI (apparently) kicked off the job based on the PR that I had created against the branch (the pull/8 part in the above error), and I had just merged the PR into master. The branch wasn't deleted, but the PR was merged and closed.

Unfortunately, it was quite a while ago and I can't remember exactly what I did to fix it, but I either reopened the PR through GitHub and kicked off a build, or just kicked off a build against the (still-open) branch manually.

Author

Grant Winney

I write when I've got something to share - a personal project, a solution to a difficult problem, or just an idea. We learn by doing and sharing. We've all got something to contribute.


Comments / Reactions