Generating a tarball of your project
Every good version-control system has this as a built-in feature.
In the below, $TMP
is a staging directory, such as “build”, “/tmp”, or “/Volumes/RAM Disk”. It’s also where the final archive will end up.
- svn: Sort of. svn export $TMP/MyProject && cd $TMP && tar cjf MyProject.tbz MyProject
- darcs: darcs dist (outputs a .tar.gz file in the current working directory)
- bzr: bzr export --format=tbz2 $TMP/MyProject.tbz
- git: git archive --format=tar master | bzip2 > $TMP/MyProject.tbz
- hg: hg archive -p MyProject -t tbz2 $TMP/MyProject.tbz