SYMBOL INDEX (24 symbols across 2 files) FILE: git-ftp-test.py class TestGitFtp (line 12) | class TestGitFtp(unittest.TestCase): method test_parse_ftpignore (line 14) | def test_parse_ftpignore(self): method test_split_pattern (line 35) | def test_split_pattern(self): method test_is_ignored (line 42) | def test_is_ignored(self): FILE: git-ftp.py class BranchNotFound (line 64) | class BranchNotFound(Exception): class FtpDataOldVersion (line 68) | class FtpDataOldVersion(Exception): class FtpSslNotSupported (line 72) | class FtpSslNotSupported(Exception): class SectionNotFound (line 76) | class SectionNotFound(Exception): function split_pattern (line 80) | def split_pattern(path): # TODO: Improve skeevy code function is_ignored (line 89) | def is_ignored(path, regex): function main (line 125) | def main(): function parse_ftpignore (line 188) | def parse_ftpignore(rawPatterns): function parse_args (line 198) | def parse_args(): function configure_logging (line 238) | def configure_logging(options): function format_mode (line 248) | def format_mode(mode): class FtpData (line 252) | class FtpData(): function get_ftp_creds (line 261) | def get_ftp_creds(repo, options): function get_empty_tree (line 336) | def get_empty_tree(repo): function upload_diff (line 340) | def upload_diff(repo, oldtree, tree, ftp, base, ignored): function is_ignored_path (line 437) | def is_ignored_path(path, patterns, quiet=False): function is_special_file (line 447) | def is_special_file(name): function upload_blob (line 452) | def upload_blob(blob, ftp, quiet=False): function boolish (line 473) | def boolish(s): function ask_ok (line 481) | def ask_ok(prompt, retries=4, complaint='Yes or no, please!'):