質問

Does SVN keep a log for the failed commits sent its way, and if so is there some special "svn log" command I can issue that would print all of those failed commit attempts for a given user? Perhaps this information might only be accessible to a server admin?

役に立ちましたか?

解決

No. Though you might end up having some of them laying around as transactions if things fail in such a way that the client ends up being unable to delete the transaction (which it always does immediately after the commit fails).

You can get a list of the uncommitted transactions with svnadmin lstxns command, which of course requires direct access to the repository. Some of these of course may be in the process of being committed. Some may be cruft due to the conditions I explained in the previous paragraph. You can use svnlook to poke into the transactions once you know the names.

Typically you can see that something failed from the server logs (error log for httpd). But it's not likely that the output is going to easily tie that to the transaction. And if the client can still talk to the server it's going to immediately delete that transaction like I mentioned above.

You could write a pre-commit hook and try to copy the transactions away for future review, but some transactions could fail prior to the finalization when pre-commit runs.

So ultimately, you can't really get what you want in a nice clean way in the abstract.

I'd suggest though that perhaps you should explain the problem you're trying to solve rather than asking questions about what you think you can do to solve it. Because someone (or myself) might have a much better suggestion in that case.

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top