1

I apologize in advance for asking a question that is due to my being severely idiotic.. :)

Recently, I migrated my website hosting from one service to the other, including my databases and SVN repositories (I am not on a team, I am a self-employed contractor and I use SVN to do a backup of all the code I write).

Well, I messed up. And now I'm stuck. Brace yourself, this is pretty dumb.

  1. I backed up my SVN repos with this SSH command svnadmin dump path-to-repo | gzip > dumpfile.gz
  2. I did the domain migration
  3. Re-loaded my SVN repos with this SSH command gunzip -c home_dir/dumpfile.gz | svnadmin load svn/repository_id
  4. I did a "test commit" for each repo. Repo 1 wasn't working (some weird error), Repo 3 was.
  5. I uninstalled/deleted all my repos and reinstalled them

Repo 1 still wasn't working, so I went to bed. Today, it works... So something probably just needed to flush in the system. HOWEVER...

Now, my local version of Repo 3 is "newer" than the online version, because I committed, deleted the online repo, and reinstalled it. Now the local version has a higher number than the online version, and Netbeans gives me this error:

org.apache.subversion.javahl.ClientException: E160006: Commit failed (details follow):
E160006: No such revision 26
E175002: CHECKOUT of '/Proj3/!svn/ver/26/Proj3_test/src/mainpackage/Main.java': 500 Internal Server Error (http://www.mysite.com)

Anyone know what to do?

4

1 回答 1

1

通过删除您的 subversion 存储库并重新创建它,您基本上会丢失整个历史记录并从第一个修订版开始。您的工作副本(本地)仍处于修订版 26。

要与服务器同步,您只需备份您的工作副本并从服务器进行新的结帐。

如果您没有未提交的更改并且一切正常,您可以删除(现在是旧的)工作副本并使用刚刚签出的工作副本从修订版 1 继续工作。

如果您有未提交的更改,则将更改的文件(或所有文件)从备份的旧工作副本(在资源管理器或 cli 中)复制到新的签出并提交。

无论哪种方式,您都无法恢复以前的修订,因为这些修订与原始存储库一起被删除。

于 2013-11-24T15:08:12.980 回答