[java]
    # Indicates that any folder named src or test
    # are folders that contain Java code.
    src_roots = src, test
[alias]
    buck = //src/com/facebook/buck/cli:cli
[buildfile]
    includes = //DEFS
[project]
    ignore = \
      .git, \
      .buckd, \
      build, \
      src/com/facebook/buck/cli/quickstart, \
      test/com/facebook/buck/cli/testdata, \
      test/com/facebook/buck/java/testdata, \
      test/com/facebook/buck/junit/testdata, \
      test/com/facebook/buck/parser/testdata, \
      test/com/facebook/buck/shell/testdata,

    # Common temp file patterns:
    # .*\.swp$ (vim)
    # ^#.*#$, .*~$ (emacs)
    # .*___jb_bak___$, .*___jb_old___$ (intellij idea)
    temp_files = \
      .*\.swp$, \
      ^#.*#$, .*~$, \
      .*___jb_bak___$, .*___jb_old___$,
[test]
    # Maximum timeout of 1 minute per test.
    timeout = 60000
