Community technical support mailing list was retired 2010 and replaced with a professional technical support team. For assistance please contact: Pre-sales Technical support via email to sales@march-hare.com.
I think that the way you do this tracking stuff is this: 1) Get the sources from the vendor for version 1.0 and create a tree on your disk. 2) Use cvs import to create the module with its branch (use a descriptive branch name) 3) Check out the module, update to the branch set above and set a tag on it (Ver_1-0) Later when you get the update form the vendor: 1) Check out the module from cvs 2) Update to the *branch* so that you are positioned correctly 3) Unpack the new vendor sources on top of your sandbox 4) Many files are now colored in WinCvs 5) Do a cvs update. Now all files that have the same contents will revert to the normal icon 6) Do a cve commit on the remaining colored files 7) Set a tag on your sandbox (all files) with the tag name being the new version (Ver_1-1) Problem with removed files: If the vendor sources turn out to have deleted a source file that was there before in the original import, then the steps above will not work. In that case maybe this strategy might work instead: 1) Check out the module from cvs 2) Update to the *branch* so that you are positioned correctly 3) Now use Windows explorer and erase all files in the module sandbox (except the CVS subdirs with the control files). All files now are shown "missing" 4) Unpack the new vendor sources on top of your sandbox 5) All files are now colored in WinCvs, but there are also some that are still missing 6) Use cvs remove on these missing files. 7) Select these missing files that are now scheduled for removal (use WinCvs flat view) 8) Commit the changes (the removal) 9) Do a cvs update. Now all files that have the same contents will revert to the normal icon and the removed files will be gone. 10) Do a cve commit on the remaining colored files 11) Set a tag on your sandbox (all files) with the tag name being the new version (Ver_1-1) I don't really know if this would work but I think so. Can be worth testing. /Bo -----Original Message----- From: Paul Russell [mailto:paul_newsgroups at yahoo.ca] Sent: den 10 mars 2003 05:00 To: zhuyunchuan; cvsnt at cvsnt.org cvsnt downloads at march-hare.com @CVSNT on Twitter CVSNT on Facebook Subject: Re: [cvsnt] import the same module Use the "CVS Add Contents" on the Right Click Menu. Hope you have a recent version of Tortoise (we're using 1.2.2). You don't have to choose to add which files are different. Just commit them all and let CVS work it out. If files have been removed... I hadn't thought of that - you caught me there - oops. You could just remove everything (Recursive script or batch file on the module tree?), then commit/add everything that's in the new release. CVS will automatically put things into or bring them out of the attic as needed. Then just apply a new tag. -Paul zhuyunchuan <zhuyunchuan at 263.net> wrote:But it's not convinient when there are some files adding or removing. It's not easy to compare to find the files adding or removing when lots files have changed. And how to add the whole directory trees by toitoiseCVS? Paul Russell : > To save multiple versions of 3rd party code in CVS, besides import you can also use add/commit - just as if you has made the changes yourself. > Add the first version of the module you have, and tag it with the version info. When you get an update, simply commit it as if you had typed the changes, and then apply another tag with the new version info. Unchanged files will be only a single revision in the repository, but will have all the tags for the versions you have committed. > Branches, diffs, etc, all handled as if it was your own project. > If you want to recursively add whole directory trees, try using TortoiseCVS. > -Paul