  [[title
                 /6.3/ Adding a New File or Directory
  ]]

 <"*(prev)*" -- $/treedelta/naming-conventions.html> <"*(next)*" -- $/treedelta/delete.html>


  The procedure for adding a file or directory varies depending
  on the <"`id-tagging-method'" -- ./naming-conventions.html> 
  of the tree and the nature of the file.

  All file and directory additions should usually be followed by a run
  of <"`tree-lint'" -- ./naming-conventions.html> to ensure that
  naming conventions and id tagging requirements have been properly
  followed.


* Adding a Directory

  Create the directory as usual, using `mkdir'.

  If the `id-tagging-method' is /`names'/, you are done.

  For all other `id-tagging-method' values, you must 
  run:

  [[blockquote
    `% tla add-id' *DIR*
  ]]



* Adding a Binary File or Symbolic Link

  To add a binary file (one not suitable for use with text tools such
  as /GNU diff/) or symbolic link:

  Create the file or link as usual.

  If the `id-tagging-method' is /`names'/, you are done.

  For all other `id-tagging-method' values, you must
  run 

  [[blockquote
    `% tla add-id' *FILE*
  ]]



* Adding a Text File

  To add a regular text file:

  Create the file as usual.

  If the `id-tagging-method' is /`names'/, you are done.

  For all other `id-tagging-method' values, you */may/*
  run 

  [[blockquote
    `% tla add-id' *FILE*
  ]]

  For `tagline' method trees, you */may/* set a file id
  by adding a line near the bottom of the file itself,
  containing:

  [[blockquote
    *PUNCT* `arch-tag:' *UID*
  ]]

  (Substitute a non-zero amount of punctuation and any amount of
  whitespace for *PUNCT*; substitute a unique-to-this tree string for
  *UID*.  *UID* is mangled to form the actuall inventory id,
  discarding leading and trailing whitespace, and coallescing all
  substrings of whitespace and punctuation into single `_'
  characters.)

  For `implicit' method trees, you */may/* set a file id
  by adding a line near the bottom of the file itself,
  containing:

  [[blockquote
    *PUNCT* `tag:' *UID*
  ]]

  When more than one method of tagging a file is permitted by
  these rules, it is typically a matter of project policy which
  should be used.
  

* Commands Discussed

  [[tty
    % tla add-id -H
  ]]

 <"*(prev)*" -- $/treedelta/naming-conventions.html> <"*(next)*" -- $/treedelta/delete.html>

* Copyright

  Copyright /(C)/ 2005 Tom Lord (`lord@emf.net')

  This program is free software; you can redistribute it and/or modify
  it under the terms of the /GNU General Public License/ as published by
  the Free Software Foundation; either version 2, or (at your option)
  any later version.

  This program is distributed in the hope that it will be useful,
  but \\/WITHOUT ANY WARRANTY/\\; without even the implied warranty of
  \\/MERCHANTABILITY/\\ or \\/FITNESS FOR A PARTICULAR PURPOSE/\\.  See the
  /GNU General Public License/ for more details.

  You should have received a copy of the /GNU General Public License/
  along with this software; see the file <"`COPYING'" --
  $/COPYING.html>.  If not, write to the Free Software Foundation, 675
  Mass Ave, Cambridge, MA 02139, USA.

 <"*(prev)*" -- $/treedelta/naming-conventions.html> <"*(next)*" -- $/treedelta/delete.html>

 [[null
   ; arch-tag: Tom Lord Thu Mar 31 11:38:51 2005 (add.txt)
 ]]
