4.0.5 Bug report: File Encoding changes after Merge Branches
Moderator: SourceGear
4.0.5 Bug report: File Encoding changes after Merge Branches
We have problems with file encodings after using the "Tools->Merge Branches..." function from within the Vault client 4.0.5.
After merging visual studio project files, sql files and resources files the merged files have different encodings than the original files.
The problem can be reproduced as an example as follows:
1. In a branched visual studio project add a new file to the project
2. Commit changes to Vault
3. In Tools->Merge Branches... choose the changeset from step 2.
4. Result: The project file in the branch has now the encoding "Western European (Windows) - Codepage 1252" and can't be openend with visual studio 2005. The original file
has the encoding "Unicode (UTF-8 signature) - Codepage 65001"
When merging resource files encoding is changed from "Unicode (UTF-8 signature) - Codepage 65001" to "Unicode (UTF-8 with signature) - Codepage 65001" and special characters like ö,ä,ü are replaced with cryptic characters.
Our workaround is at the moment that we merge changes manually when we add or change the mentioned file types.
We had similar problems when merging changes in source code files in Vault 4.0.x. This was fixed in Vault 4.0.5.
Are you working on this?
After merging visual studio project files, sql files and resources files the merged files have different encodings than the original files.
The problem can be reproduced as an example as follows:
1. In a branched visual studio project add a new file to the project
2. Commit changes to Vault
3. In Tools->Merge Branches... choose the changeset from step 2.
4. Result: The project file in the branch has now the encoding "Western European (Windows) - Codepage 1252" and can't be openend with visual studio 2005. The original file
has the encoding "Unicode (UTF-8 signature) - Codepage 65001"
When merging resource files encoding is changed from "Unicode (UTF-8 signature) - Codepage 65001" to "Unicode (UTF-8 with signature) - Codepage 65001" and special characters like ö,ä,ü are replaced with cryptic characters.
Our workaround is at the moment that we merge changes manually when we add or change the mentioned file types.
We had similar problems when merging changes in source code files in Vault 4.0.x. This was fixed in Vault 4.0.5.
Are you working on this?
This should have been fixed in 4.0.5, so what you're reporting surprises me. Are you sure that all your users are on the 4.0.5 client? Were the files Needs Merge, and you clicked Resolve Merge on them? Does this happen outside merge branches? Can you get this to happen in an Attempt Automatic Merge get latest operation?
Yes, we are all using the 4.0.5 client.
- Were the files Needs Merge, and you clicked Resolve Merge on them?
I just clicked next, next, next in the wizard. I didn't have to click Resolve Merge.
- Does this happen outside merge branches? Can you get this to happen in an Attempt Automatic Merge get latest operation?
We just noticed it in merge branches
- Were the files Needs Merge, and you clicked Resolve Merge on them?
I just clicked next, next, next in the wizard. I didn't have to click Resolve Merge.
- Does this happen outside merge branches? Can you get this to happen in an Attempt Automatic Merge get latest operation?
We just noticed it in merge branches
Could you please send us the files to see if we can figure out what's going on?
We need:
1. The latest version in the branch.
2. The latest version in the trunk.
3. The version in the trunk where the file was branched.
Is it possible that the encoding of one of the files was messed up in 4.0.4 due to the old bug, and your merge problems are due to the fact that the files have different encodings?
We need:
1. The latest version in the branch.
2. The latest version in the trunk.
3. The version in the trunk where the file was branched.
Is it possible that the encoding of one of the files was messed up in 4.0.4 due to the old bug, and your merge problems are due to the fact that the files have different encodings?
Thanks for sending us the files, but we've been unable to reproduce this in a 4.0.5 client (either through merge branches or get latest). Can you please give us the steps to reproduce the error, given the files you sent?
Also, please check in your program files/Sourcegear/Vault Client directory that each of the .exes and .dlls have the 4.0.5 version number. Also, do you happen to be running the beta build of 4.0.5 (it's build number 15907)?
Also, please check in your program files/Sourcegear/Vault Client directory that each of the .exes and .dlls have the 4.0.5 version number. Also, do you happen to be running the beta build of 4.0.5 (it's build number 15907)?
To reproduce it you need just one of the files that I sent you. Follow these steps:
1. Checkin the file "Latest version in trunk.csproj"
2. Create a branch of the file from step 1
3. Edit and save the file in the trunk from step 1
4. Merge branches with the changes from step 3
5. Verify the changed encoding in the branched file
The .exes and .dlls in the vault directory all have the version 4.0.5.15922.
1. Checkin the file "Latest version in trunk.csproj"
2. Create a branch of the file from step 1
3. Edit and save the file in the trunk from step 1
4. Merge branches with the changes from step 3
5. Verify the changed encoding in the branched file
The .exes and .dlls in the vault directory all have the version 4.0.5.15922.
Similar problem with 4.0.6 merge branches
Did the fix for this problem make it into 4.0.6? I just encountered a similar problem doing a merge of a VS 2005 .xml RESOURCE file into a VS 2008 project tree, using the Vault client Merge Branches.jeremy_sg wrote:We've reproduced this bug, and will have a fix for it in 4.0.6. If you need a fix sooner, please email me using the button below this post.
If the fix is in 4.0.6, then I'll construct a specific example.
Well, here is an example of a problem in 4.0.6 (mergebranch)
Project1 contains a VS2005 project with a sample.resx file; This compiles in VS 2005.jeremy_sg wrote:Yes, that fix is in 4.0.6.
Project1Branch contains the BRANCHED version of Project1, opened with VS2008 (open from source) and originally able to compile after the VS 2008 conversion wizard ran.
Next, I made a CHANGE in sample.resx in Project1 and checked that in.
Then I did a MERGE Branch from project1 to project1branch of the sample.resx file.
The merged file no longer compiles in VS 2008.
The files uploaded are in the state after doing all the steps above. To reproduce, you could start with just Project1 in VS2005, put it in vault, branch it, open the branch from VS2008, convert it, compile it, check it in; edit the sample.resx file in Project1 (with XML editor) add some change to the comment, check it in; then merge that change to your branched version, etc.
- Attachments
-
- Project1.zip
- This is the VS2005 original source project
- (28.56 KiB) Downloaded 199 times
-
- Project1Branch.zip
- This is the VS 2008 branched version, and the sample.resx file MERGED from the Project1 version.
- (38.25 KiB) Downloaded 209 times