pristine svn-base file missing

前端 未结 7 1377
野趣味
野趣味 2021-02-07 00:43

I\'m trying to svn update my SVN working copy with TortoiseSVN but the update fails, asking to perform the clean up first.

However, the svn cleanup

相关标签:
7条回答
  • 2021-02-07 01:11

    I solved this by

    1. Creating an empty file /workingdirectory/.svn/pristine/da/da39a3ee5e6b4b0d3255bfef95601800afd80009.svn-base

    2. Run svn cleanup

    0 讨论(0)
  • 2021-02-07 01:14

    This will do it too as a one-liner:

    while [ 1 ] ; do OUTPUT=`svn cleanup 2>&1 | sed 's/^.* open file //' | sed 's/:.*$//' | sed "s/'//g"`;if [ "X${OUTPUT}" == "X" ] ; then   break; fi; echo $OUTPUT;touch $OUTPUT;done
    
    0 讨论(0)
  • 2021-02-07 01:19

    This problem:

    cannot find the file .svn\pristine\24\24fd530d4bd82341fb514ab912c9e10adbc4ad89.svn-base

    I copied a svn-base from other file and renamed this with 24fd530d4bd82341fb514ab912c9e10adbc4ad89.svn-base. And perform a clean up operation. After that I met another file missing. Using the same way, and at last I fixed this problem.

    From a Windows command line with SilkSVN installed:

    cd project directory
    svn status
    

    This will generate an error. Select and copy the directory and filename text then paste:

    echo > .svn\pristine\<paste>
    

    For example:

    echo > 24\24fd530d4bd82341fb514ab912c9e10adbc4ad89.svn-base
    

    With this knowledge in hand, it would be reasonably trivial to write a batch file that can fix these problems automatically for everyone. The svn command will generate an %ERRORLEVEL% value that can be checked for failure.

    0 讨论(0)
  • 2021-02-07 01:23

    I got away by replacing the .svn directory with the same from a freshly checked-out copy. Fortunately for me, the local copy was on the same revision as the repo. Not sure what the implications would be if it was not the case.

    0 讨论(0)
  • 2021-02-07 01:29

    For me the file was there but had (1) appended to the name. (A copy) ff4c7be3da460bb91144d6761cc5743536c983f4 (1).svn-base

    I removed the "(1)" and cleanup ran fine ff4c7be3da460bb91144d6761cc5743536c983f4.svn-base

    0 讨论(0)
  • 2021-02-07 01:34

    You can use SmartSVN to restore lost pristine file.
    Download and install it. It's not free but 30 days free trial should be enough to repair your repository.
    Open your working copy in SmartSVN. To repair, select Modify > Validate Admin Area...
    Enjoy!

    0 讨论(0)
提交回复
热议问题