Version: 3.0.1 (using KDE KDE 3.2.1KDE 1.2) Installed from: Unlisted Binary PackageUnlisted Binary Package Compiler: gcc version 3.3.2 Configured with: /var/uhubuild/work/compile/configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --enable-languages=c,c++,objc,java,f77,pascal --enable-shared --with-gnu-as --with-gnu-ld --with-system-zlib --host=i386-pc-linux-gnu OS: Linux I tried to create a c++ console project with cvs. The cvs was initialized (as I see) correctly, but then when I tried to commit using Tools -> Version control -> CVS -> Commit this was appeared in the cvs log: cd '/tmp/probacvs' && cvs -f commit -m 'boo ;) ' 'src/probacvs.cpp' cvs commit: in directory .: cvs commit: ignoring CVS/Root because it does not contain an absolute pathname. cvs commit: No CVSROOT specified! Please use the `-d' option cvs [commit aborted]: or set then CVSROOT environment variable. *** Exited with status: 1 *** And as I said it succeeded to initialize CVS at the beginning, when created the project I gave an absolute path as a CVS root.
Hi Péntek, Could you please add the content of the Root file in the CVS directory to this report? Thanks! Christian
Hello Christian, My first name is Imre. Which one is the root file? But anyway download this: http://people.inf.elte.hu/pentek_i/hello.tar.bz2
The root file is located in your src directory, like this: src/CVS/Root Inside that file should be something like: user@host:/path/to/cvs
This file contains only one \n but it isn't my fault, this file was created by KDEvelop.
I could reproduce it with the following steps: a. Create a repository in your home directory with cvs init. (e.g. /home/user/cvsroot) b. Create a new project in KDevelop with the location on the same level as the CVS repository. (e.g. /home/user/project_name) c. Choose 'CvsService' as version control system d. The field 'server path' should contain the path of the CVS repository. (e.g. /home/user/cvsroot) e. The field 'module' should be empty. The module field on the VCS page seems to be a mandatory field. Creating several projects with an empty module field will result in a messed up CVS repository where several files from different projects will be in the same subdirectory (e.g. src)
Check out for the link posted by me some days before. It contains both the source and both the cvs root. Do that: cd /tmp tar -xvjf filename.tar.bz and what you get is exactly the state when I compressed them (from the /tmp)
I've tried #5's steps and got to the same solution: I've locally replaced the current CvsPartImpl::createNewProject() code with something using cervisia's import() method and got a similar error: Started job: cd /home/mario/helloprova && cvs -f -d /home/mario/cvsroot import -m "new project" vendor start Usage: cvs import [-d] [-k subst] [-I ign] [-m msg] [-b branch] [-W spec] repository vendor-tag release-tags... -d Use the file's modification time as the time of import. -k sub Set default RCS keyword substitution mode. -I ign More files to ignore (! to reset). -b bra Vendor branch id. -m msg Log message. -W spec Wrappers specification line. (Specify the --help global option for a list of other help options) Job finished with exitCode == 1 (No scattered files though ;-)) So I think that the simplest solution is to make the module field mandatory and to fill it with the project name, just for user convenience. Better ideas?
This is fixed as far as KDevelop is concerned, the module field is pre-populated. If you purposefully clear the module line you should know what you do.