Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Version control system which keeps track of individual files

Up to now I used git to manage my latex-files. However git manages all latex-files in a folder at once.

What I want is a version control system which

  • gives me a history for each file separately
  • lets me checkout old versions of individual files without affecting the other ones
  • lets me make branches for each individual file withoud affecting the other ones
  • gives tags to versions of individual files

Perhaps it is possible to do it with git, but I don't know how to do it. So is there any good, handy version control system for this purpose?

Perhaps I should add that I use linux as os and emacs as latex-editor.

like image 216
student Avatar asked Nov 05 '11 19:11

student


2 Answers

Previous answers are totally FUD:

  • All and any current VCS works with full set of files in repository (name it as changeset or revision or...), thus your reqs 3-4 aren't satisfied as is - branches and tags are global
  • Only CVS (if we don't recall ancient VCS) works with single file as object of management, but I strongly do not recommend even thinking about using CVS today

but

  • If all your projects are single-file ???.tex, you can use any VCS - you'll not see any difference for your use-case (it seems so)
  • Incremental versioning of entire repo in case of single-file change isn't so bad thing and really make life easy - nobody worry about "which version of file B I have to use with version N of file A"
like image 190
Lazy Badger Avatar answered Nov 02 '22 14:11

Lazy Badger


RCS still available and still works fine (and I still use it) Use case is for example a 'posters' directory (with svg, not so great with binary format) where every file is big so don't want to lump them into a single hg or git dir where will become enormous.

I used to use SCCS btw but RCS much better

like image 27
nuer Avatar answered Nov 02 '22 15:11

nuer