[cvsnt] How to shrink big binary file?

Glen Starrett glen.starrett at march-hare.com
Thu May 22 18:41:41 BST 2008


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.


Hi Bo,

Bo Berglund wrote:
> Is there another way?

If you want to keep the history around then none that I can think of. 
The disadvantage is that the history isn't contiguous (e.g. Tortoise 
won't see the full concatenated history for the file).

> 
> Could we use a cvsnt rename command to rename the file to main.old1.exe
> from the client and then cvs add a new main.exe thus getting a small RCS
> file?

Yes.  Be sure to use the latest available, we've fixed some issues in 
the rename code working toward our new commercial release.  You might 
not be affected by those cases, and I don't think any caused anything 
serious as data loss at any rate.

> 
> Is it possible to cvs add a file in a module where there has once lived
> a file by the same name, which has later been cvs renamed to something
> else?

Yes.  The RCS file will get a slightly different name automagically. 
Run a quick test and you'll see how it works:

 >>>>
C:\My_Documents\Test\stanley-test2\junk\ren_test>echo Hi > Bo.txt

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs add Bo.txt
cvsnt server: scheduling file `Bo.txt' for addition
cvsnt server: use 'cvsnt commit' to add this file permanently

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs ci -m ""
cvs commit: Examining .
RCS file: /test2/junk/ren_test/Bo.txt,v
done
Checking in Bo.txt;
/test2/junk/ren_test/Bo.txt,v  <--  Bo.txt
initial revision: 1.1
done

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs ren Bo.txt Bo.old.txt
cvs rename: Warning: rename is still experimental and may not behave as 
you would expect

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs ci -m ""
cvs commit: Examining .
cvsnt server: Examining .
/test2/junk/ren_test/.directory_history,v  <--  directory update
new revision: 1.7; previous revision: 1.6
done

C:\My_Documents\Test\stanley-test2\junk\ren_test>echo New Hi > Bo.txt

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs add Bo.txt
cvsnt server: scheduling file `Bo.txt' for addition
cvsnt server: use 'cvsnt commit' to add this file permanently

C:\My_Documents\Test\stanley-test2\junk\ren_test>cvs ci -m ""
cvs commit: Examining .
RCS file: /test2/junk/ren_test/Bo.txt_1,v
done
Checking in Bo.txt;
/test2/junk/ren_test/Bo.txt_1,v  <--  Bo.txt
initial revision: 1.1
done
<<<<

Note that "Bo.txt_1,v" is the new "Bo.txt" RCS file.  Also note that I'm 
using the latest commercial beta -- I think the recommendation with 2382 
is that you go to the parent directory and commit the directory with the 
renamed file in it.

Regards,


-- 
Glen Starrett
Technical Account Manager, North America
March Hare Software, LLC

http://march-hare.com/cvspro/


More information about the cvsnt mailing list
Download the latest CVSNT, TortosieCVS, WinCVS etc. for Windows 8 etc.
@CVSNT on Twitter   CVSNT on Facebook