Requirements on the local configuration and directory layout:

a) there are only few strong requirements. You can use any type of
directory structure, it must just provide following paths:

 - a directory for upstream branch. It will contain upstream versions,
   tagged in directories names as versions 
   (recommendation: "branches/foo/upstream")
 - a directory for the most recent upstream branch in the same
   repository (recommendation: "branches/foo/upstream/current")
 - a working directory where you normally work 
   (recommendation: "trunk/foo")
 - a directory for the Debian tags (copies of released versions,
   recommendation: "branches/foo/tags")
 - (optional:) directory where you store the .orig tarballs

b) how svn-devscripts locate the data:

 - started from the trunk directory, they will look in the file
   .svn/deb-layout for configuration (see config.example). There you must
   specify the directory with .orig tarballs and either the local directories
   for the upstream data and Debian tags directory, OR the Subversion URLs for
   them.
 - if the .svn/deb-layout file is not found, svn-buildpackage will try to use
   debian/svn-deblayout as a seed for this information; if this file is not
   found, then it will try to import the information from the Subversion
   properties of the debian/ directory - any property of the form svn-bp:PROP
   will generate a layout information with the name PROP whose value will be
   set to the string represented on the first line of the property. If
   a full svn URL is not given, the repository root will be prepended
   to this value.
 - if the steps before fail to find useful information, the scripts will first
   look for the SVN urls of the local directories
   ../{branches/upstream{/current},tags[,tarballs]}, then
   in ../../{branches/upstream{/current},tags[,tarballs]}/foo/.
 - if the lookup in the local directories failed, the scripts will try the
   same in the repository tree.
