Hi, I need a little help with commit and update pipes. I want to have a group pattern which do following things: 1) commit only meta data - reasons: history of meta data changes, do not commit useless file and prevent repository grow 2) log names (of useful) files - reason: using the log I could tar (archive) these files
Philipp, thank you for your answer about "ignore per url". About my other email - I think *part* of my problems can be solved using commit/update pipe scripts and skip the file content. Please check the attached archive 'meta.tar.bz2'. Inside the archive: commit-pipe script, update-pipe script, 3 group files: Group 'meta': 1) commit is not changed 2.1) if file does not exists - update is not changed 2.2) if file exists - update only meta data Example how do I plan to use this group. Ignore dump: << group:meta,./dev/** ... >> Group 'mign' and 'mtar_data_mail': 1) do not commit file content 2) update only meta data if file exists 3) log the file from this group, after commit with message "full backup", create a tar archives. Example how do I plan to use these groups. Ignore dump: << group:mign,./dev/** group:mtar_data_mail,./home/*/.mozilla-thunderbird/*/ImapMail/*/** ... >> I wrote these files, but I did not test it yet. Few questions: 1.1) I do not understand, it is a 'pipe' (commit) or scripts are called for every file (update)? 1.2) Commit-pipe script is maybe wrong. I am using the same variables like in update-pipe. Fsvs docs does not say anything about variables in commit-pipe script. 2) I check the fsvs docs. I am not using '/usr/bin/install'. I am using chmod, chown, touch and mv (because docs say: "more or less equivalent operation"). I added '--force' parameter to 'mv'. Is it ok? 3) In update-pipe script I am using '$$' (process id) because I need to create unique file name. And because we do not have env variable like $revision. Little more about my troubles. I am not linux expert and I can't find (or make) a good backup solution (except backup the partition from time to time). Fsvs is nice and the only one (version control, history log, status report). Maybe it is mostly back end tool - no GUI, no wizards, it is not 'plug&play', it is not 'single click backup', it is not 'install and backup', one say ignore /dev, other say you need /dev for full restore. (it is not complain, it is just opinion). My fsvs working copy is '/' - I backup all files. My repository is a little mess because: 1. when I commit 'install and setup program XYZ' it commit 1000 other files. The history become useless and unreadable. Example: 1) install program XYZ; 2) search google, read and setup program XYZ; 3) commit program XYZ, config files and extra files. As minimum it will commit files changed by firefox. 2. If you want to keep the history forever, then you must ignore (not commit) all useless data, or your repository will grow very quickly. 2.1. What to do with big size binary files which are changed very often. Some are "cache files" and I understand they are "cache files", so I can ignore. Some files I do not understand or they are binary settings/config files and I have to commit - in case of crash, I must be able to do full restore. 2.2. What to do with /dev. If I ignore it, I will miss the history. I need at least the meta data (permissions). If I keep /dev, then it will be commited after every reboot. Example: when installed VirtualBox there was an issue and google told: change /dev/disk permissions. It is just example, but in all similar cases, I want to keep history of these changes. 2.3. What about my thunderbird mail file - ignore because it is 300 MB, but if possible I will "commit only meta data". 3. In case of crash, if you want to do full restore, then you have to commit everything. This will create a big repository. One day you have to delete all history and create a new repository (bye bye history). Or you have to analyze every "often changed binary file" and write 100 ignores. New installed programs -> new ignores. If /var/cache was used like /var/tmp it will be very easy. Anyone who share the same problems? Any solutions? Or any advice like ignore (or commit) and do not bother? Is it crazy or/and stupid solution (commit only meta data)? Thank you in advance, Plamen. ------------------------------------------------------ http://fsvs.tigris.org/ds/viewMessage.do?dsForumId=3928&dsMessageId=1261720 To unsubscribe from this discussion, e-mail: [[email protected]].
meta.tar.bz2
Description: application/bzip
