Tar hints for Mac OS X users

From OpenHatch wiki
Revision as of 22:34, 22 December 2011 by imported>Paulproteus (→‎Creating a tar file without ._ files)
Jump to navigation Jump to search

Special information for using tar on Mac OS X

You've probably found this page because you created a tar file on your Mac machine, and it contained extra files.

Creating a tar file without ._ files

On Mac OS X, sometimes the operating system creates hidden files whose names start with a period and an underscore. For example, if you have these files:

  • Makefile
  • hello.c

Mac OS will sometimes create extra files alongside them in the same directory named:

  • ._Makefile
  • ._hello.c

They are a special file generated by Mac OS. Most hidden files can be seen using this command from a Terminal (the hyphen-a stands for "all"):

ls -a

If you were creating a tarball of your own code to distribute, you should avoid distributing these extraneous files. The simplest way to create a tar file without these files is to ask tar to exclude them when creating the tar file. So if you would have run this command:

tar zcvf myproject-0.1.tar.gz myproject-0.1/ 

instead you need to pass a special set of environment variables to tar. So run it as follows:

COPYFILE_DISABLE=true tar zcvf myproject-0.1.tar.gz myproject-0.1/

Because you pass the v flag to tar, causing it to operate in verbose mode, you can see which files will be added to the resulting tarball.

References