…cy overridden by newer version
… first part of fix for #329
Old implementation of the local resolver did not copy directory if it was writable. This optimization can lead to some potential problems if the directory is writable, but its subdirectories aren't. New implementation of the local resolver does not have this optimization and it always copies the directory into staging area.
Non-standard git URIs are ones that do not start with 'git:' nor end with '.git'. An example of non-standard git URI is 'ssh://server/home/user/repo'. The mechanism for specifying a non-standard git URI is done by prefixing the whole URI with 'git:' to signify that it should be handled with the git resolver. For example, non-standard git URIs like 'git:ssh://server/user/repo' and 'git:https://server/user/repo' can now be used.
Instead of cloning from a remote git repository for each branch, revision or tag separately, the git resolver locally clones only once the remote git repository and then creates further local clones from this local copy of the remote repository. First, optimization, of course, is execution speed, because cloning local repository is much faster than remote repository. Furthermore, because git uses hard-linking when a clone of local repository is created, the second optimization is in space consumption. For example, if we have one project that uses https://github.com/harrah/xsbt.git#v0.11.1 and second project that uses https://github.com/harrah/xsbt.git#v0.11.2, in previous git resolver implementation it would require two separate clones of the remote git repository at https://github.com/harrah/xsbt.git. But, the new git resolver requires only one clone of the remote git repository and two local clones which take no space because of hard-linking.
if sbt allowed to show all paths in a DAG between 2 given vertices.
…ting in a properties file fixes #354