Search Unity

  1. We are migrating the Unity Forums to Unity Discussions. On July 12, the Unity Forums will become read-only. On July 15, Unity Discussions will become read-only until July 18, when the new design and the migrated forum contents will go live. Read our full announcement for more information and let us know if you have any questions.

UnityYAMLMerge can't locate tool for extension tmp

Discussion in 'Editor & General Support' started by jtsmith1287, Aug 31, 2015.

  1. jtsmith1287

    jtsmith1287

    Joined:
    Aug 3, 2014
    Posts:
    787
    I have a merge conflict with a single scene. I manually initiated the unityyamlmerge tool for that file but I'm getting the error:

    Couldn't locate merge tool to handle extension tmp in \my\path\to\mergespecfile.txt

    I figure I just need to add a fallback tool but I don't actually know what the tmp extension is for. I'm not sure why it's trying to merge what appears to be a temporary file anyway. I can't seem to ignore it though and it's preventing me from accomplishing a clean merge.
     
    JustASloth13 likes this.
  2. jtsmith1287

    jtsmith1287

    Joined:
    Aug 3, 2014
    Posts:
    787
    Meh, it was a typo on my part. There was a character hidden next to %programs%.
     
    JustASloth13 likes this.
  3. sanchoflat

    sanchoflat

    Joined:
    Jun 9, 2013
    Posts:
    14
    Hello, jtsmith1287. I have the same problem. Can you explain please, how did you resolve it?
     
  4. jtsmith1287

    jtsmith1287

    Joined:
    Aug 3, 2014
    Posts:
    787
    This answer is going to be vague because this is an old-ish post and I don't have that set up anymore. Somewhere there's mergespec file (should be in with the unityyamlemerge.exe) and you have to specify the paths for the various tools. By default it's just some pseudo code. That's about as far as I can help. Take a look in that file and it should hopefully be pretty clear what needs to be changed. And like my response in #2, don't have any typos! haha.
     
    JustASloth13 likes this.
  5. sanchoflat

    sanchoflat

    Joined:
    Jun 9, 2013
    Posts:
    14
    Big thanks for answer! You helped me:)
     
  6. idbrii

    idbrii

    Joined:
    Aug 18, 2014
    Posts:
    51
    I ran into this today.

    None of the lines in Editor\Data\Tools\mergespecfile.txt matched a program on your computer (absolute paths are required and environment variables are not supported.

    For example, to open all the files in vim, use the line:

    Code (csharp):
    1. * use "C:\Users\idbrii\scoop\apps\vim-nightly\current\gvim.exe" "%d" "%b" "%l" "%r"
    The `*` means it matches any file, so it will match tmp.
     
    JustASloth13 and sbrodie like this.
  7. RuneLoon

    RuneLoon

    Joined:
    Jul 23, 2020
    Posts:
    1
    Wow, this is not a helpful thread
     
  8. afernandez_unity16

    afernandez_unity16

    Joined:
    Aug 10, 2023
    Posts:
    1
    For people running into this problem in the future, a colleague of mine at work ran into this same problem, the problem was the fact that they had Plastic installed in a separate hard drive, as the doc says:
    Code (CSharp):
    1. # On Windows %programs% is replaced with "C:\Program Files" and "C:\Program Files (x86)" there by resulting in two entries to try out
    They had Plastic installed in their D: drive, and thus this error appeared. The solution was just to change
    Code (CSharp):
    1. * use "%programs%\PlasticSCM5\client\mergetool.exe" -b=%b -s=%l -d=%r -r=%d
    2. * use "%programs%\PlasticSCM4\client\mergetool.exe" -b=%b -s=%l -d=%r -r=%d
    3. * use "%programs%/PlasticSCM/client/mergetool" -b=%b -s=%l -d=%r -r=%d
    to the actual absolute paths where mergetool.exe was installed (this is usually inside the plastic client folder)