I've just recently started learning about git and other version control
systems. What I have done in the past is use "tar" to take a "checkpoint"
of the files in my project subdirectory. So the project subdirectory is
equivalent to the "working directory" in git. And each tar back is kind of
like a commit. Well, I now want to start using git for this. What I have
thought to do is the following for each tar backup, starting with the
oldest and going in time order to the newest backup.
1) take a tar of the current project before I do a "git init" so that I
have a "now" time backup.
2) rm (delete) all the files in the project subdirectory
3) do a "git init" in the project subdirectory.
4) for each tar backup, in order from oldest to newest, do:
4a) rm (delete) all files in the subdirectory - to remove all files
from previous restore
4b) "tar xf" to restore the contents to the project subdirectory for
the tar file's "point in time" backup
4c) do a "git status" and for each file marked as "removed", do a "git
rm" to remove it from the index
git status | awk '$2 = "deleted:" {print "git rm " $3;}' | sh
4d) "git add ." to add all the restored contents to the project
subdirectory. Picks up new and modified files.
4e) "git commit" to commit this time (version)
4f) "git tag ..." to tag this commit with a label meaningful to me
5) the project directory is now set up as well as I can.
I have done this already and it seems to have done what I am expecting: use
git and have a "commit" for each level of my "snapshot" backups which were
in tar files.
Any thoughts gratefully received.
--
John
--