i am just trying to migrate a big CVS repository to Git with cvs2git (part of the cvs2svn 2.4.0 tooling). Therefore i migrate each project separately. The time consumption of each migration is still very high. The migration itself proceeds on a remote server to which i am connected via ssh. So the problem is if i disconnect from remote server without waiting for the end of the migration process, i have no idea whether the migration was successful or not.

Does cvs2git/cvs2svn log its migration status and error messages in a specific file? - I've already searched for it in the cvs2svn folder and also in /var/log...

有帮助吗?

解决方案

You could probably find out the migration status somehow from the temporary files that cvs2git leaves behind. But you are trying to solve your problem at the wrong level.

Instead of running cvs2git in a straight ssh session, you should, for example:

  1. Redirect its stdout and stderr to files, which you can view whenever you want:

    nohup cvs2git --OPTIONS ARGS >cvs2git.out 2>cvs2git.err &
    
  2. Run cvs2git within a screen session. screen(1) is a very handy program that allows you to detach from a terminal session while it is still running and reattached to later, even from a different computer. (It can also do many more things, like allow you to run multiple terminal settings through a single SSH connection.)

其他提示

If you have already run your process on linux use "strace -p process-id" to trace what is going on . Redirecting output instead is a good idea

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top