CVS update does not mark two binary files as modified

manfer - September 18, 2009 - 20:58
Project:Drupal.org webmasters
Component:Other
Category:support request
Priority:normal
Assigned:Unassigned
Status:closed
Description

First, sorry if this is not the correct place but for some questions It is not easy for me to find the correct place to post.

I'm trying to commit some changes to CVS and after updating all files and doing a cvs update -dPA (I'm commiting to HEAD) to confirm CVS knows what it has to update, two binary files (.fla files) are not marked as modified and I know they are. I think on previous commits all was going fine and CVS knew correctly when those binary files where modified but not in this one. Other binary files (.as files) are correctly marked as modified.

Is there any way to force cvs to see a file as modified so it uploads new version?

Thanks in advance.

#1

manfer - September 18, 2009 - 21:52
Title:CVS update that not mark two binary files as modified» CVS update does not mark two binary files as modified

#2

manfer - September 18, 2009 - 22:37

Ok as this was very strange I just added a dummy clip to both fla files to totally be sure they were modified files and cvs update still don't mark them as modified.

If there is not a CVS command to force to mark them as modified I don't know what to do.

#3

manfer - September 20, 2009 - 00:28

I just commited and I suppose those two files where not updated.

Is there any solution for next time? Or my only solution is to remove and readd them?

#4

kiamlaluno - September 20, 2009 - 06:16

I hope there is another solution, rather than deleting, and adding them again.
Could Working with Binary Files within CVS be of any help for you?

#5

manfer - September 20, 2009 - 10:42

I added all files without the kb argument because I thought it was added to binary files taking into account file extension. I thought I had confirmed the kb flag was present with a CVS command that showed me many information about files (its branch, its tag if present, its flags, its name, ...). Those files were working fine till that last commit. The update flag was being set properly by every cvs update.

I don't remember which command I used to see the more verbose output that showed me the binary flag if present. Maybe was some parameter to cvs update. I'll try to find that command again to check the files and if they dont have the binary flag I'll add it and check if that solves the problem.

Thanks for the howto link.

#6

manfer - September 20, 2009 - 10:54

Ok I found the command:

CVS status

Confirmed the kb flag is not present on .fla files. I'm going to try to add that flag with CVS admin.

The files that were added correctly with kb flag were .jpg, .mp3, .swf files.

#7

manfer - September 20, 2009 - 11:35

I think it is fixed.

Thanks a lot.

I'm going to take the opotunity to ask two not very important questions:

  • Every time I update a text file, for example the .module file, I edit the line
    $Id: blablablablabla Exp $
    to
    $Id$
    Is that necesary or that line would be updated no matter if I restore it to $Id$ or not?
  • Is there a way to edit a commit message?

#8

kiamlaluno - September 20, 2009 - 12:06

Every time I update a text file, for example the .module file, I edit the line

$Id: blablablablabla Exp $

to

$Id$

You can leave the CVS ID tag as it is, and CVS will change it automatically. So far, I have never edited the CVS tag, and I always got that correctly changed.

Is there a way to edit a commit message?

cvs commit -m "Commit message.".

#9

manfer - September 20, 2009 - 12:22

I didnt understood the commit edit exactly. You mean if I go to a specific tag version or branch version I can update the commit message just doing a commit and as there are no changes on files the only change would be the commit message?

Or for example if I commit and the message has an error, and inmediatly new commit with the corrected message would update the message?

#10

kiamlaluno - September 20, 2009 - 12:48

I didnt understood the commit edit exactly.

Or maybe I didn't understand what you were asking. If you meant to change a commit message (the same that appear in CVS log messages) after you already committed the code changes, then there is no way to change it.
What I reported is how to set a log message while committing the code changes.

#11

manfer - September 20, 2009 - 15:56
Status:active» fixed

#12

System Message - October 4, 2009 - 16:00
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

#13

manfer - November 8, 2009 - 02:23
Status:closed» active

I have to reopen this issue because I'm again on same problem.

Now is only one binary file that I'm sure I have modified but CVS refuse to see it so. The sticky for binary file now is not a solution because the file has it.

So, I would like to ask if someone knows what exactly CVS uses to check if a binary file is locally modified, maybe the file size?. I ask this to try to investigate why it is happening, the change is minor and it is possible the file sizes being the same because really the changes in the file are two objects that has new values on its x,y,rotation parameters, and maybe that kind of binary files (fla files) uses the exactly same num of bytes for those values and the change is not making any file size difference. I haven't confirmed same file sizes yet but I would like to know if that is a possibility.

If it is so I could try to include a dummy comment text on one frame (maybe just the next version that is going to have the file on HEAD would make the trick).

#14

kiamlaluno - November 8, 2009 - 10:15

The help for the command line reports this text:

sunradio:~ Kiam$ cvs -H commit
Usage: cvs commit [-cRlf] [-m msg | -F logfile] [-r rev] files...
    -c          Check for valid edits before committing.
    -R          Process directories recursively.
    -l          Local directory only (not recursive).
    -f          Force the file to be committed; disables recursion.
    -F logfile  Read the log message from file.
    -m msg      Log message.
    -r rev      Commit to this branch or trunk revision.
(Specify the --help global option for a list of other help options)

Maybe in your case, the option -f could be of any help. Just commit each binary file in a single invocation of the command, and you would get the file updated.

I am not sure if binary files should be automatically added in CVS when modified. Looking at the file Entries contained in the directory CVS of a project, I notice the following text (the file is for Nodewords):

/nodewords.info/1.3.2.8/Sun Oct 25 10:27:06 2009//TDRUPAL-6--1
/README.txt/1.27.2.13/Wed Nov  4 18:45:40 2009//TDRUPAL-6--1

The only data recorded for a file are the file revision, the last modification date, and the tag associated with the file.
I am not sure if that answer to your question.

#15

manfer - November 8, 2009 - 11:19

Thanks KiamLaLuno again for your help.

About if binary files are automatically marked as modified I think they are, swf files work fantastic and are binary ones, every time they change they are marked as locally modified.

That data record makes me think of the last modification date as the proper data to be checked by CVS to know if a file has been changed locally. So the problematic file should have been marked as modified. Maybe the problem is the type of those binary files, they where the only ones I had to put the binary sticky myself. So probably the force is the only solution for those type of files.

I'm curious to know the CVS data for those specific files, so I'm going to have a look.

Thanks.

#16

manfer - November 8, 2009 - 11:48
Status:active» fixed

My fault my fault and only my stupid fault.

Many thanks to point me to the data record. That confirmed the dates where the same so pointed me to my stupid fault. Just a mistake when saving file that saved the new one in a different folder (not overriden the old one). I thought I was copying the modified file to the checkout folders but I was copying the older file that hadn't been overriden with new version.

Thanks again it is fixed and without the need of force.

#17

System Message - November 22, 2009 - 12:40
Status:fixed» closed

Automatically closed -- issue fixed for 2 weeks with no activity.

 
 

Drupal is a registered trademark of Dries Buytaert.