Error Creating Git Repository in Fisheye 2.7.0

Msysgit is installed to 'C:\Git\bin\git.exe' and is set appropriately in Fisheye administration menu.

Any thoughts on how to correct this? Looks like a path issue but what is passing this path as a param? How can I enclose this and/or correct the Fisheye configuration?

4 answers

1 accepted

Sorry for not updating this question sooner but I wanted to offer the solutions that eventually resolved my issue.

1. Fisheye was installed to 'C:\Program Files' in the Windows environment. This was ultimately the issue. I ended up moving the installation to 'C:\Fisheye'. My Git installation was not an issue. I made no changes to this aspect.

2. When adding a repostory url I also needed to add a path of '/'. I could not indicate Fisheye to index at the root without placing this value in the path field.

That's it. I hope this helps some of the windows users out there.

1 vote

Nick,

This definitely looks like a path problem. FishEye should be able to cope with paths with spaces in them though, so I'll investigate and try to reproduce the issue locally. In the meantime, you could check the following and see whether this resolves the issue for you. When executing git commands, any of the following could be involved:

  • the git.exe itself.
  • FISHEYE_HOME/bin/fe_ssh.bat if the git repository url is ssh-based (ssh://..)
  • the openssh executable, again if the git repository url is ssh-based (ssh://..)

Also, if you turn on DEBUG logging in the FishEye administration, the git commands that are executed will be logged in the fisheye-debug.log. This might give you a hint. If all this doesn't resolve the issue for you, please head over to http://support.atlassian.com and open a support ticket.

Cheers,

Michael

I was able to turn on the debug logging and it definitely shed some light on this. This is the message I found..

Error executing command "C:\Git\bin\git.exe ls-remote -h ssh://git@[SERVER]:testing ": 'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
fatal: The remote end hung up unexpectedly

The git command seems appropriate but the message makes no sense. How could executing a command on 'C:\Git' have anything to do with 'C:\Program'??

I am also seeing..

Exception executing command "C:\Git\bin\git.exe ls-remote -h ssh://git@nyobgtppncl1vsa:testing " Non-zero exit code: 128 com.atlassian.utils.process

listed in green above my previous red error message as in the image in my question. I have see the confluence troubleshooting article on exit code 138. Any ideas on code 128?

I was able to turn on the debug logging and it definitely shed some light on this. This is the message I found..

Error executing command "C:\Git\bin\git.exe ls-remote -h ssh://git@[SERVER]:testing ": 'C:\Program' is not recognized as an internal or external command,
operable program or batch file.
fatal: The remote end hung up unexpectedly

The git command seems appropriate but the message makes no sense. How could executing a command on 'C:\Git' have anything to do with 'C:\Program'??

I am also seeing..

Exception executing command "C:\Git\bin\git.exe ls-remote -h ssh://git@[SERVER]:testing " Non-zero exit code: 128 com.atlassian.utils.process

listed in green above my previous red error message as in the image in my question. I have see the confluence troubleshooting article on exit code 138. Any ideas on code 128?

0 vote

As far as I can tell, exit code 128 means 'Errors already reported', which would refer to the earlier errors that are reported.

You may want to check where ssh.exe is installed. FishEye searches for ssh.exe on the path and also reports the ssh.exe that it is using in the logs. Look for the the following in the fisheye-debug.log: "FishEye is using '<some-path>' to authenticate with SSH authenticated repositories.". If this is somewhere in C:\Program Files\..., please move it to a path without spaces.

My issue yet still unresolved. However, there are three things that i've discovered. I thought I might add this here to help anyone in the future.

1. I had to move my FISHEYE_HOME to a higher level directory (ex. C:\Fisheye). This eliminated the error "C:\Program is not recognized". Obviously there is some element within the application which cannot handle paths with spaces.

2. FISHEYE_HOME/bin/fe_ssh.bat contains 2 environment variables that you must specify in windows. %SSH_EXEC% & %FE_SSH_KEY%" which are the path to the ssh executable and path to the fisheye private key respectively. Adding ssh to %PATH% did not work.

3. If you have an environment variable called %HOME% (or must have one by default) make sure its set to a location that fisheye's process has permissions to. It must create a ".ssh" directory for configuration files.

I also had this problem and resolved it by going to Admin settings -> Global settings -> Server page. Then scroll down to 'Git Executable' and enter the path to your executable. The caveat is that your git exe has to be somewhere where there is no space in path, otherwise tool will fail. It is a bug but Atlassian is considering it low priority I guess.

Suggest an answer

Log in or Sign up to answer
How to earn badges on the Atlassian Community

How to earn badges on the Atlassian Community

Badges are a great way to show off community activity, whether you’re a newbie or a Champion.

Learn more
Community showcase
Published Thursday in Confluence

Color tables for a shiny Confluence page

...; ## Developed by: Alana Fernando ## Shared with love ## @param style:title=style type|type=enum|required=true|desc=Choose a style.|enumValues=Style1,Style2,Style3,Style4,Style5 ## @param alignment:title...

143 views 8 11
Read article

Atlassian User Groups

Connect with like-minded Atlassian users at free events near you!

Find a group

Connect with like-minded Atlassian users at free events near you!

Find my local user group

Unfortunately there are no AUG chapters near you at the moment.

Start an AUG

You're one step closer to meeting fellow Atlassian users at your local meet up. Learn more about AUGs

Groups near you