anchor.diff:  
   This section explains how to describe optional application attributes in manifests. Each of these attributes can also be specified by a command line option. Command line options override the manifest.
   
  -###<a id='buildpack'></a>The buildpack attribute ###
  +###<a id='buildpack'></a>buildpack ###
   
   If your application requires a custom buildpack, you can use the `buildpack` attribute to specify it in one of three ways:
   
  
positive.code: 
  * When you stop and then restart an application, its environment variables persist.
  
  ###<a id='services-block'></a>Services ###
  
  Applications can bind to services such as databases, messaging, and key-value stores.
  
  
negative.code: 
  The command line option that overrides this attribute is `-n`.
  
  ###<a id='instances'></a>instances ###
  
  Use the `instances` attribute to specify the number of app instances that you want to start upon push:
  
  <pre>
  ---
    ...
    instances: 2
  </pre>
  
  We recommend that you run at least two instances of any apps for which fault tolerance matters.
  
  The command line option that overrides this attribute is `-i`.
  
  ###<a id='memory'></a>memory ###
  
  Use the `memory` attribute to specify the memory limit for all instances of an app. This attribute requires a unit of measurement: `M`, `MB`, `G`, or `GB`, in upper case or lower case. For example:
  
  <pre>
  ---
    ...
    memory: 1024M
  </pre>
  
  The default memory limit is 1G. You might want to specify a smaller limit to conserve <%=vars.quota_resource%> if you know that your app instances do not require 1G of memory.
  
  The command line option that overrides this attribute is `-m`.
  
  ###<a id='nohosts'></a>no-hostname ###
  
  By default, if you do not provide a hostname, the URL for the app takes the form of `APP-NAME.DOMAIN`. If you want to override this and map the root domain to this app then you can set no-hostname as true.
  
  