Jump to content
  • Advertisement

Archived

This topic is now archived and is closed to further replies.

rsegal

CVS and binary files

This topic is 5561 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Anyone have a large amount of experience using CVS and binary files? My main concern is, is it reliable? It handles text files no problem but I''m not so sure about binaries. We''re thinking of using it at my work but I wonder if it''s the best solution for versioning a large amount of binary files.

Share this post


Link to post
Share on other sites
Advertisement
There are no problems with have binary files in CVS if you understand a couple of things:

1) Make sure to mark them as binary ( using -kb )
2) They cannot do diffs. So if two people are working on a binary file concurrently then there is no way CVS can merge the two together. This is because cvs would have to know and understand the binary format for your binary file.

Depending on your situation, #2 may be a problem. If you just want to use it as a versioning tool then there should be no major problems. Check out the FAQ on http://www.cvshome.org/ for more info on binaries in CVS.



-------
Andrew
PlaneShift - A MMORPG in development.

Share this post


Link to post
Share on other sites
Also, CVS stores the full text of each revision of a binary file in the repository, as opposed to text files, for which only the differences between each revision is stored. This means that your repository can get very big very fast if you do lots of commits on a large binary file(and binaries often are).

Solution: Use Subversion[1] instead. It stores both binary and text files as deltas in the repository.

[1]subversion.tigris.org

--
AnkhSVN - A Visual Studio .NET Addin for the Subversion version control system.
[Project site] [Blog] [RSS] [Browse the source] [IRC channel]

Share this post


Link to post
Share on other sites
Thanks for the replies. I have checked out the details of using binary files in CVS at their home page as you mentioned acraig. It was informative but I didn''t notice any special situations to watch out for. At my work we currently use CVS for versioning certain executables but sometimes the executables don''t seem to commit to CVS.

I will go to commit a file and the action seems to have completed but the file is not committed to the CVS server. Mind you we are using WinCVS which maybe is a reason for this? Is it possible CVS (or maybe WinCVS) can detect whether a binary file has changed or not and if nothing has changed then don''t commit the file? This seems unlikely as CVS cannot do diffs, so maybe it''s a config problem?

I''ve looked at subversion briefly but I get the impression it''s still in a developmental stage. Hav you actually used subversion with binary files Arild? I gather from your sig that you have.

Share this post


Link to post
Share on other sites
quote:
Original post by rsegal
I've looked at subversion briefly but I get the impression it's still in a developmental stage.


It is very stable for alpha software, and I've been using it for over 18 months now without any major problems. I wouldn't be scared of the version number if I were you. It's been in development for over 3 years now. They expect to release a 1.0 by the end of this year, from what I gather, with a beta coming out in october.
Also keep in mind that Subversion is written by some of the same people that originally wrote CVS.

quote:

Hav you actually used subversion with binary files Arild? I gather from your sig that you have.

Yes, I have(there are quite a few binaries in there if you try the "Browse the source" link. Try the src/lib directory). It works just fine, although, as acraig said about CVS, you miss out on the automatic merging you get with plain text files. But at least you don't get that explosion in repository size due to the binaries.

[edited by - Arild Fines on September 23, 2003 10:20:42 AM]

Share this post


Link to post
Share on other sites
quote:
Original post by Arild Fines
I wouldn''t be scared of the version number if I were you.


Fair enough, I will look into subversion a bit further, I definitely don''t really know that much about it. Subversion definitely sounds more attractive than CVS for handling binary files I just want to be absolutely sure of it''s reliability. It''s new territory for me so obviously I have some skepticism.

quote:
Original post by Arild Fines
Also keep in mind that Subversion is written by some of the same people that originally wrote CVS.


I didn''t know that, thanks for the info.

Share this post


Link to post
Share on other sites

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!