开发者

TortoiseSVN - "you have to update your working copy first"

When I trying to commit I get this error. What that was done, I think 开发者_C百科is a rename of the folder. I tried already rename / move the folder. But I continue to get the error.

Command: Commit  
Error: Commit failed (details follow):  
Error: File 'Page.aspx' is out of date  
Error: File not found: transaction '99-4a', path '/trunk/src/Solution.UI/Views/ViewName/Page.aspx'  
Error: You have to update your working copy first.  

I do try to update, but unfortunately is doesn't solved the problem.

Command: Update  
Completed: At revision: 99  

Edit: after the deleted the files from the folder, do update to restore them, and replace the restored files with the originals I get this error:

Error: Commit failed (details follow):  
Error: Base checksum mismatch on '/trunk/src/Solution.UI/Views/ViewName/Page.aspx':  
Error:    expected:  ed3bc4a70ee4256bd2f7cf8c57f29a1f  
Error:      actual:  b8a2797dc262dc714fae6dc897b5ebd2  


SVN knows that there was a change in the repository, but it does not know what that changes was. You might have made exactly the same change on your working copy, but unless you actually try to do update so that SVN can run the resolve, it won't check that your local change is the same as the repo change.

Do an svn update and the conflict resolution should be automatic. Though, if you've made changes to the same files, it might ask you to manually resolve even if it's exactly the same change (Even more likely if the change was a folder rename)

You might have to do also an svn resolved to enforce the manual conflict resolution.

Worst come to worst, you can always copy the files you've changed, revert local changes, update and replace the files in the new folder.


I'm using TortiseSVN, and encountered the problem you're having.

Attempted effort: Delete a directory and the files in it.

My resolution path (entire effective procedure)

  1. Select relevant files. Right-click | TortiseSVN | Delete

    Response: Files marked for deletion.

  2. Right-click on containing directory | TortiseSVN | Commit

    Response: Files Deleted.

  3. Right-click on the next-higher directory from the aforementioned containing directory | SVN Update

    Response: Update complete.

  4. Right-click on the directory I wish to delete | TortiseSVN | Delete

    Response: Directory marked for deletion.

  5. Right-click on the next-higher directory from the aforementioned directory-to-delete | SVN Commit

    Response: Directory Deleted

Process Complete.


Do an "SVN Cleanup", then do an update


It looks like you have Page.asx in you working copy and it doesn't exist in repository anymore?

maybe try deleting it physically from your drive or if it's still needed just move it away to different location, try commiting and then add it again?


Sometimes you can get these strange broken working copy issues and despite trying everything, you can't get it to work again and you're completely unable to commit your work. One way to get out of this situation is to do the following:

  • Check out your project to a new folder.
  • Copy the modified files only from your old working copy to your new working copy. If you commit often this shouldn't take long. If you commit once a month, this could take some time...
  • Double check that the modifications list is the same on both working copies.
  • Commit from your new working copy.
  • Delete your old working copy and check it out again.

It's not very satisfying to do it this way as it doesn't show you what went wrong and why, but if you just want to get on with your work, then it's nice to know that there's a quick fix.


You have to update your working copy.

That is, perform an "SVN Update" in order to get the latest revision, and check to make sure your changes don't conflict.


I tried this solution and it works perfect for me . 1-Export the working copy to another Temp directory . 2-Delete all the files in your working directory 3-Check out in the working directory 4-copy the Files in the Temp directory to the working directory overwriting all existing files 5- Commit


You should just uncheck deleted or missing files when doing svn commit

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜