ohloh_scm 2.5.1 → 3.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/{bin → .bin}/accept_svn_ssl_certificate +0 -0
- data/.bin/check_scm_version +28 -0
- data/.bin/run-test +3 -0
- data/.bin/run-tests +3 -0
- data/{bin → .bin}/string_encoder +0 -0
- data/.git_hooks/pre-commit +20 -0
- data/.gitignore +1 -4
- data/.rubocop.yml +13 -0
- data/.ruby-version +1 -2
- data/.travis.yml +3 -2
- data/Dockerfile +8 -4
- data/Gemfile +14 -0
- data/Gemfile.lock +54 -0
- data/{COPYING → LICENSE.txt} +0 -0
- data/README.md +52 -116
- data/Rakefile +7 -29
- data/lib/ohloh_scm.rb +26 -32
- data/lib/ohloh_scm/activity.rb +38 -0
- data/lib/ohloh_scm/bzr.rb +12 -0
- data/lib/ohloh_scm/bzr/activity.rb +191 -0
- data/lib/ohloh_scm/bzr/scm.rb +24 -0
- data/lib/ohloh_scm/bzr/status.rb +8 -0
- data/lib/ohloh_scm/bzr/validation.rb +18 -0
- data/lib/ohloh_scm/commit.rb +44 -41
- data/lib/ohloh_scm/core.rb +22 -0
- data/lib/ohloh_scm/cvs.rb +11 -0
- data/lib/ohloh_scm/cvs/activity.rb +149 -0
- data/lib/ohloh_scm/cvs/scm.rb +149 -0
- data/lib/ohloh_scm/cvs/status.rb +14 -0
- data/lib/ohloh_scm/cvs/validation.rb +106 -0
- data/lib/ohloh_scm/data/git_ignore_list.rb +29 -0
- data/lib/ohloh_scm/diff.rb +42 -39
- data/lib/ohloh_scm/factory.rb +11 -0
- data/lib/ohloh_scm/git.rb +11 -0
- data/lib/ohloh_scm/git/activity.rb +317 -0
- data/lib/ohloh_scm/git/scm.rb +137 -0
- data/lib/ohloh_scm/git/status.rb +13 -0
- data/lib/ohloh_scm/git/validation.rb +18 -0
- data/lib/ohloh_scm/git_svn.rb +11 -0
- data/lib/ohloh_scm/git_svn/activity.rb +84 -0
- data/lib/ohloh_scm/git_svn/scm.rb +91 -0
- data/lib/ohloh_scm/git_svn/status.rb +8 -0
- data/lib/ohloh_scm/git_svn/validation.rb +8 -0
- data/lib/ohloh_scm/hg.rb +12 -0
- data/lib/ohloh_scm/hg/activity.rb +188 -0
- data/lib/ohloh_scm/hg/scm.rb +51 -0
- data/lib/ohloh_scm/hg/status.rb +8 -0
- data/lib/ohloh_scm/hg/validation.rb +18 -0
- data/lib/ohloh_scm/parser.rb +30 -0
- data/lib/ohloh_scm/parser/array_writer.rb +15 -0
- data/lib/ohloh_scm/parser/branch_number.rb +63 -0
- data/lib/ohloh_scm/{parsers → parser}/bzr_xml_parser.rb +65 -55
- data/lib/ohloh_scm/parser/cvs_parser.rb +161 -0
- data/lib/ohloh_scm/parser/git_parser.rb +128 -0
- data/lib/ohloh_scm/parser/hg_parser.rb +78 -0
- data/lib/ohloh_scm/{parsers → parser}/hg_style +0 -0
- data/lib/ohloh_scm/{parsers → parser}/hg_verbose_style +0 -0
- data/lib/ohloh_scm/parser/svn_parser.rb +83 -0
- data/lib/ohloh_scm/py_bridge.rb +9 -0
- data/lib/ohloh_scm/py_bridge/bzr_client.rb +28 -0
- data/lib/ohloh_scm/{adapters/bzrlib/bzrlib_pipe_server.py → py_bridge/bzr_server.py} +1 -1
- data/lib/ohloh_scm/py_bridge/hg_client.rb +30 -0
- data/lib/ohloh_scm/{adapters/hglib/server.py → py_bridge/hg_server.py} +0 -0
- data/lib/ohloh_scm/py_bridge/py_client.rb +45 -0
- data/lib/ohloh_scm/scm.rb +26 -0
- data/lib/ohloh_scm/status.rb +24 -0
- data/lib/ohloh_scm/string_extensions.rb +11 -0
- data/lib/ohloh_scm/svn.rb +11 -0
- data/lib/ohloh_scm/svn/activity.rb +95 -0
- data/lib/ohloh_scm/svn/scm.rb +95 -0
- data/lib/ohloh_scm/svn/status.rb +8 -0
- data/lib/ohloh_scm/svn/validation.rb +56 -0
- data/lib/ohloh_scm/system.rb +44 -0
- data/lib/ohloh_scm/validation.rb +83 -0
- data/lib/ohloh_scm/version.rb +8 -1
- data/ohloh_scm.gemspec +18 -15
- data/spec/.rubocop.yml +22 -0
- data/spec/benchmarks/hg_bzr_bash_vs_py_api.rb +39 -0
- data/spec/benchmarks/process_spawn_benchmark.rb +133 -0
- data/spec/helpers/assert_scm_attr_helper.rb +31 -0
- data/spec/helpers/commit_tokens_helper.rb +26 -0
- data/spec/helpers/generic_helper.rb +5 -0
- data/spec/helpers/repository_helper.rb +36 -0
- data/spec/helpers/system_helper.rb +25 -0
- data/spec/ohloh_scm/bzr/activity_spec.rb +460 -0
- data/spec/ohloh_scm/bzr/scm_spec.rb +17 -0
- data/spec/ohloh_scm/bzr/validation_spec.rb +37 -0
- data/spec/ohloh_scm/cvs/activity_spec.rb +93 -0
- data/spec/ohloh_scm/cvs/scm_spec.rb +112 -0
- data/spec/ohloh_scm/cvs/validation_spec.rb +78 -0
- data/spec/ohloh_scm/factory_spec.rb +16 -0
- data/spec/ohloh_scm/git/activity_spec.rb +402 -0
- data/spec/ohloh_scm/git/scm_spec.rb +57 -0
- data/spec/ohloh_scm/git/status_spec.rb +11 -0
- data/spec/ohloh_scm/git/validation_spec.rb +57 -0
- data/spec/ohloh_scm/git_svn/activity_spec.rb +89 -0
- data/spec/ohloh_scm/git_svn/scm_spec.rb +22 -0
- data/spec/ohloh_scm/hg/activity_spec.rb +323 -0
- data/spec/ohloh_scm/hg/scm_spec.rb +23 -0
- data/spec/ohloh_scm/hg/status_spec.rb +12 -0
- data/spec/ohloh_scm/hg/validation_spec.rb +32 -0
- data/spec/ohloh_scm/parser/array_writer_spec.rb +29 -0
- data/spec/ohloh_scm/parser/branch_number_spec.rb +126 -0
- data/spec/ohloh_scm/parser/cvs_parser_spec.rb +77 -0
- data/spec/ohloh_scm/parser/git_parser_spec.rb +102 -0
- data/spec/ohloh_scm/parser/hg_parser_spec.rb +194 -0
- data/spec/ohloh_scm/svn/activity_spec.rb +55 -0
- data/spec/ohloh_scm/svn/scm_spec.rb +75 -0
- data/spec/ohloh_scm/svn/validation_spec.rb +89 -0
- data/spec/ohloh_scm/svn_parser_spec.rb +146 -0
- data/spec/ohloh_scm/system_spec.rb +32 -0
- data/spec/ohloh_scm/version_spec.rb +9 -0
- data/{test/data → spec/raw_fixtures}/basic.rlog +0 -0
- data/{test/data → spec/raw_fixtures}/file_created_on_branch.rlog +0 -0
- data/{test/data → spec/raw_fixtures}/invalid-utf-word +0 -0
- data/{test/data → spec/raw_fixtures}/multiple_revisions.rlog +0 -0
- data/{test/data → spec/raw_fixtures}/sample-content +0 -0
- data/{test/data → spec/raw_fixtures}/simple.ohlog +1 -1
- data/{test/data → spec/raw_fixtures}/simple.svn_log +0 -0
- data/{test/data → spec/raw_fixtures}/simultaneous_checkins.rlog +0 -0
- data/{test/data → spec/raw_fixtures}/simultaneous_checkins_2.rlog +0 -0
- data/spec/scm_fixtures/bzr.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/bzr_colon.tgz +0 -0
- data/spec/scm_fixtures/bzr_large.tgz +0 -0
- data/spec/scm_fixtures/bzr_with_authors.tgz +0 -0
- data/spec/scm_fixtures/bzr_with_branch.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/bzr_with_invalid_encoding.tgz +0 -0
- data/spec/scm_fixtures/bzr_with_nested_branches.tgz +0 -0
- data/spec/scm_fixtures/bzr_with_subdirectories.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/cvs.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_dupe_delete.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_svn.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_walk.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_with_invalid_encoding.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_with_master_tag.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_with_multiple_branch.tgz +0 -0
- data/spec/scm_fixtures/git_with_mv.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/git_with_null_merge.tgz +0 -0
- data/spec/scm_fixtures/git_with_submodules.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/hg.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/hg_dupe_delete.tgz +0 -0
- data/spec/scm_fixtures/hg_large.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/hg_walk.tgz +0 -0
- data/{test/repositories → spec/scm_fixtures}/hg_with_invalid_encoding.tgz +0 -0
- data/spec/scm_fixtures/svn.tgz +0 -0
- data/spec/scm_fixtures/svn_subdir.tgz +0 -0
- data/spec/spec_helper.rb +32 -0
- data/spec/string_encoder_spec.rb +32 -0
- metadata +224 -1052
- data/bin/ohlog +0 -152
- data/lib/ohloh_scm/adapters/abstract/misc.rb +0 -12
- data/lib/ohloh_scm/adapters/abstract/sha1.rb +0 -48
- data/lib/ohloh_scm/adapters/abstract/system.rb +0 -60
- data/lib/ohloh_scm/adapters/abstract/validation.rb +0 -77
- data/lib/ohloh_scm/adapters/abstract_adapter.rb +0 -32
- data/lib/ohloh_scm/adapters/bzr/cat_file.rb +0 -25
- data/lib/ohloh_scm/adapters/bzr/commits.rb +0 -100
- data/lib/ohloh_scm/adapters/bzr/head.rb +0 -19
- data/lib/ohloh_scm/adapters/bzr/misc.rb +0 -61
- data/lib/ohloh_scm/adapters/bzr/pull.rb +0 -22
- data/lib/ohloh_scm/adapters/bzr/push.rb +0 -51
- data/lib/ohloh_scm/adapters/bzr/validation.rb +0 -16
- data/lib/ohloh_scm/adapters/bzr_adapter.rb +0 -15
- data/lib/ohloh_scm/adapters/bzrlib/bzrlib_pipe_client.rb +0 -71
- data/lib/ohloh_scm/adapters/bzrlib/cat_file.rb +0 -9
- data/lib/ohloh_scm/adapters/bzrlib/head.rb +0 -9
- data/lib/ohloh_scm/adapters/bzrlib_adapter.rb +0 -25
- data/lib/ohloh_scm/adapters/cvs/commits.rb +0 -97
- data/lib/ohloh_scm/adapters/cvs/misc.rb +0 -212
- data/lib/ohloh_scm/adapters/cvs/validation.rb +0 -77
- data/lib/ohloh_scm/adapters/cvs_adapter.rb +0 -18
- data/lib/ohloh_scm/adapters/factory.rb +0 -38
- data/lib/ohloh_scm/adapters/git/cat_file.rb +0 -16
- data/lib/ohloh_scm/adapters/git/commit_all.rb +0 -141
- data/lib/ohloh_scm/adapters/git/commits.rb +0 -122
- data/lib/ohloh_scm/adapters/git/head.rb +0 -21
- data/lib/ohloh_scm/adapters/git/misc.rb +0 -107
- data/lib/ohloh_scm/adapters/git/patch.rb +0 -9
- data/lib/ohloh_scm/adapters/git/pull.rb +0 -124
- data/lib/ohloh_scm/adapters/git/push.rb +0 -39
- data/lib/ohloh_scm/adapters/git/token.rb +0 -53
- data/lib/ohloh_scm/adapters/git/validation.rb +0 -50
- data/lib/ohloh_scm/adapters/git_adapter.rb +0 -18
- data/lib/ohloh_scm/adapters/git_svn/cat_file.rb +0 -22
- data/lib/ohloh_scm/adapters/git_svn/commits.rb +0 -57
- data/lib/ohloh_scm/adapters/git_svn/head.rb +0 -9
- data/lib/ohloh_scm/adapters/git_svn/misc.rb +0 -24
- data/lib/ohloh_scm/adapters/git_svn/pull.rb +0 -80
- data/lib/ohloh_scm/adapters/git_svn_adapter.rb +0 -13
- data/lib/ohloh_scm/adapters/hg/cat_file.rb +0 -28
- data/lib/ohloh_scm/adapters/hg/commits.rb +0 -112
- data/lib/ohloh_scm/adapters/hg/head.rb +0 -29
- data/lib/ohloh_scm/adapters/hg/misc.rb +0 -40
- data/lib/ohloh_scm/adapters/hg/patch.rb +0 -9
- data/lib/ohloh_scm/adapters/hg/pull.rb +0 -23
- data/lib/ohloh_scm/adapters/hg/push.rb +0 -51
- data/lib/ohloh_scm/adapters/hg/validation.rb +0 -26
- data/lib/ohloh_scm/adapters/hg_adapter.rb +0 -21
- data/lib/ohloh_scm/adapters/hglib/cat_file.rb +0 -14
- data/lib/ohloh_scm/adapters/hglib/client.rb +0 -62
- data/lib/ohloh_scm/adapters/hglib/head.rb +0 -9
- data/lib/ohloh_scm/adapters/hglib_adapter.rb +0 -25
- data/lib/ohloh_scm/adapters/svn/cat_file.rb +0 -19
- data/lib/ohloh_scm/adapters/svn/commits.rb +0 -195
- data/lib/ohloh_scm/adapters/svn/head.rb +0 -19
- data/lib/ohloh_scm/adapters/svn/misc.rb +0 -171
- data/lib/ohloh_scm/adapters/svn/patch.rb +0 -8
- data/lib/ohloh_scm/adapters/svn/pre-revprop-change +0 -2
- data/lib/ohloh_scm/adapters/svn/pull.rb +0 -77
- data/lib/ohloh_scm/adapters/svn/push.rb +0 -15
- data/lib/ohloh_scm/adapters/svn/validation.rb +0 -87
- data/lib/ohloh_scm/adapters/svn_adapter.rb +0 -17
- data/lib/ohloh_scm/adapters/svn_chain/cat_file.rb +0 -8
- data/lib/ohloh_scm/adapters/svn_chain/chain.rb +0 -100
- data/lib/ohloh_scm/adapters/svn_chain/commits.rb +0 -37
- data/lib/ohloh_scm/adapters/svn_chain_adapter.rb +0 -44
- data/lib/ohloh_scm/parsers/array_writer.rb +0 -19
- data/lib/ohloh_scm/parsers/branch_number.rb +0 -60
- data/lib/ohloh_scm/parsers/bzr_parser.rb +0 -128
- data/lib/ohloh_scm/parsers/cvs_parser.rb +0 -182
- data/lib/ohloh_scm/parsers/git_parser.rb +0 -67
- data/lib/ohloh_scm/parsers/git_styled_parser.rb +0 -95
- data/lib/ohloh_scm/parsers/hg_parser.rb +0 -63
- data/lib/ohloh_scm/parsers/hg_styled_parser.rb +0 -65
- data/lib/ohloh_scm/parsers/human_writer.rb +0 -49
- data/lib/ohloh_scm/parsers/parser.rb +0 -34
- data/lib/ohloh_scm/parsers/svn_parser.rb +0 -77
- data/lib/ohloh_scm/parsers/svn_xml_parser.rb +0 -62
- data/lib/ohloh_scm/parsers/xml_writer.rb +0 -62
- data/lib/ohloh_scm/scratch_dir.rb +0 -59
- data/lib/ohloh_scm/shellout.rb +0 -40
- data/log/.gitignore +0 -1
- data/test/bin/svn +0 -7
- data/test/data/basic.ohlog +0 -11
- data/test/data/branch_merge.bzr_xml_log +0 -87
- data/test/data/git_patch.diff +0 -19
- data/test/data/helloworld.log +0 -41
- data/test/data/hg_patch.diff +0 -9
- data/test/data/intelliglue.rlog +0 -1216
- data/test/data/multiple_commits.rlog +0 -64
- data/test/data/simple.bzr_xml_log +0 -41
- data/test/data/simple.svn_xml_log +0 -66
- data/test/data/svn_patch.diff +0 -9
- data/test/data/svn_with_invalid_encoding.log +0 -33
- data/test/repositories/bzr/.bzr/README +0 -3
- data/test/repositories/bzr/.bzr/branch-format +0 -1
- data/test/repositories/bzr/.bzr/branch/branch.conf +0 -0
- data/test/repositories/bzr/.bzr/branch/format +0 -1
- data/test/repositories/bzr/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr/.bzr/branch/tags +0 -1
- data/test/repositories/bzr/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr/.bzr/checkout/format +0 -1
- data/test/repositories/bzr/.bzr/repository/format +0 -1
- data/test/repositories/bzr/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/62f9cada7c58bce361b9b852d180ff56.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/62f9cada7c58bce361b9b852d180ff56.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/62f9cada7c58bce361b9b852d180ff56.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/62f9cada7c58bce361b9b852d180ff56.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.tix +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.iix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.rix +0 -0
- data/test/repositories/bzr/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.six +0 -5
- data/test/repositories/bzr/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.tix +0 -0
- data/test/repositories/bzr/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/0428489d1a03d05c496c2c429fe96e90.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/62f9cada7c58bce361b9b852d180ff56.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/71af8bae249bcb824a4ff17c62029142.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/7202eb77b81a80eca5296f317ed42149.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/8a571ba35ee54cd133b71e967442fe17.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/a06b9c10004fc3e05affee8cf0a9febd.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/packs/f35e1020b6a55c81b6d2fe4c7bcd4645.pack +0 -0
- data/test/repositories/bzr/.bzr/repository/upload/.gitignore +0 -1
- data/test/repositories/bzr/C/303/251dric.txt +0 -2
- data/test/repositories/bzr/file1.txt +0 -2
- data/test/repositories/bzr/file3.txt +0 -1
- data/test/repositories/bzr/file4.txt +0 -1
- data/test/repositories/bzr/file5.txt +0 -4
- data/test/repositories/bzr_hello_world/.bzr/README +0 -3
- data/test/repositories/bzr_hello_world/.bzr/branch-format +0 -1
- data/test/repositories/bzr_hello_world/.bzr/branch/branch.conf +0 -0
- data/test/repositories/bzr_hello_world/.bzr/branch/format +0 -1
- data/test/repositories/bzr_hello_world/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr_hello_world/.bzr/branch/tags +0 -0
- data/test/repositories/bzr_hello_world/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr_hello_world/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr_hello_world/.bzr/checkout/format +0 -1
- data/test/repositories/bzr_hello_world/.bzr/repository/format +0 -1
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/a7cd0d6de5d8b3efdd5f61a4caeda296.iix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/a7cd0d6de5d8b3efdd5f61a4caeda296.rix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/a7cd0d6de5d8b3efdd5f61a4caeda296.six +0 -5
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/a7cd0d6de5d8b3efdd5f61a4caeda296.tix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/ed1e97c1213220a92ff857169867a7b3.iix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/ed1e97c1213220a92ff857169867a7b3.rix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/ed1e97c1213220a92ff857169867a7b3.six +0 -5
- data/test/repositories/bzr_hello_world/.bzr/repository/indices/ed1e97c1213220a92ff857169867a7b3.tix +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/packs/a7cd0d6de5d8b3efdd5f61a4caeda296.pack +0 -0
- data/test/repositories/bzr_hello_world/.bzr/repository/packs/ed1e97c1213220a92ff857169867a7b3.pack +0 -0
- data/test/repositories/bzr_hello_world/helloworld.c +0 -6
- data/test/repositories/bzr_with_authors/.bzr/README +0 -3
- data/test/repositories/bzr_with_authors/.bzr/branch-format +0 -1
- data/test/repositories/bzr_with_authors/.bzr/branch/branch.conf +0 -0
- data/test/repositories/bzr_with_authors/.bzr/branch/format +0 -1
- data/test/repositories/bzr_with_authors/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr_with_authors/.bzr/branch/tags +0 -0
- data/test/repositories/bzr_with_authors/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr_with_authors/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr_with_authors/.bzr/checkout/format +0 -1
- data/test/repositories/bzr_with_authors/.bzr/checkout/views +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/format +0 -1
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/1326ecee2f4f69991771137c5307689a.cix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/1326ecee2f4f69991771137c5307689a.iix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/1326ecee2f4f69991771137c5307689a.rix +0 -6
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/1326ecee2f4f69991771137c5307689a.six +0 -5
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/1326ecee2f4f69991771137c5307689a.tix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/adf730b6cf7c7959afcedb87e155654d.cix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/adf730b6cf7c7959afcedb87e155654d.iix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/adf730b6cf7c7959afcedb87e155654d.rix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/adf730b6cf7c7959afcedb87e155654d.six +0 -5
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/adf730b6cf7c7959afcedb87e155654d.tix +0 -6
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/d2613fcfb5e48e79073b96270782f95c.cix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/d2613fcfb5e48e79073b96270782f95c.iix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/d2613fcfb5e48e79073b96270782f95c.rix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/d2613fcfb5e48e79073b96270782f95c.six +0 -5
- data/test/repositories/bzr_with_authors/.bzr/repository/indices/d2613fcfb5e48e79073b96270782f95c.tix +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/packs/1326ecee2f4f69991771137c5307689a.pack +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/packs/adf730b6cf7c7959afcedb87e155654d.pack +0 -0
- data/test/repositories/bzr_with_authors/.bzr/repository/packs/d2613fcfb5e48e79073b96270782f95c.pack +0 -0
- data/test/repositories/bzr_with_authors/test.txt +0 -1
- data/test/repositories/bzr_with_branch/.bzr/README +0 -3
- data/test/repositories/bzr_with_branch/.bzr/branch-format +0 -1
- data/test/repositories/bzr_with_branch/.bzr/branch/branch.conf +0 -1
- data/test/repositories/bzr_with_branch/.bzr/branch/format +0 -1
- data/test/repositories/bzr_with_branch/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr_with_branch/.bzr/branch/tags +0 -0
- data/test/repositories/bzr_with_branch/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr_with_branch/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr_with_branch/.bzr/checkout/format +0 -1
- data/test/repositories/bzr_with_branch/.bzr/checkout/merge-hashes +0 -3
- data/test/repositories/bzr_with_branch/.bzr/repository/format +0 -1
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/3336f250dbe86a7eec2de4c1b1f97db7.iix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/3336f250dbe86a7eec2de4c1b1f97db7.rix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/3336f250dbe86a7eec2de4c1b1f97db7.six +0 -5
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/3336f250dbe86a7eec2de4c1b1f97db7.tix +0 -5
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/47cfe65310e6d462bb87a68fff0bc162.iix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/47cfe65310e6d462bb87a68fff0bc162.rix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/47cfe65310e6d462bb87a68fff0bc162.six +0 -5
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/47cfe65310e6d462bb87a68fff0bc162.tix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/64e98edbf1aebe6f532f2f93b24eead8.iix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/64e98edbf1aebe6f532f2f93b24eead8.rix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/64e98edbf1aebe6f532f2f93b24eead8.six +0 -5
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/64e98edbf1aebe6f532f2f93b24eead8.tix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/8008794e258fc3fa4be68d538312a91c.iix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/8008794e258fc3fa4be68d538312a91c.rix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/8008794e258fc3fa4be68d538312a91c.six +0 -5
- data/test/repositories/bzr_with_branch/.bzr/repository/indices/8008794e258fc3fa4be68d538312a91c.tix +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/packs/3336f250dbe86a7eec2de4c1b1f97db7.pack +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/packs/47cfe65310e6d462bb87a68fff0bc162.pack +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/packs/64e98edbf1aebe6f532f2f93b24eead8.pack +0 -0
- data/test/repositories/bzr_with_branch/.bzr/repository/packs/8008794e258fc3fa4be68d538312a91c.pack +0 -0
- data/test/repositories/bzr_with_branch/goodbyeworld.c +0 -5
- data/test/repositories/bzr_with_branch/helloworld.c +0 -6
- data/test/repositories/bzr_with_nested_branches/.bzr/README +0 -3
- data/test/repositories/bzr_with_nested_branches/.bzr/branch-format +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/branch/branch.conf +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/branch/format +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/branch/tags +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/checkout/format +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/checkout/merge-hashes +0 -6
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/format +0 -1
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/0428489d1a03d05c496c2c429fe96e90.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/30fcaac048e328a7727156986055f6e8.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/30fcaac048e328a7727156986055f6e8.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/30fcaac048e328a7727156986055f6e8.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/30fcaac048e328a7727156986055f6e8.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/673cc297ed321f667e1d8d4fff600829.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/673cc297ed321f667e1d8d4fff600829.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/673cc297ed321f667e1d8d4fff600829.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/673cc297ed321f667e1d8d4fff600829.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/71af8bae249bcb824a4ff17c62029142.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/7202eb77b81a80eca5296f317ed42149.tix +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/8a571ba35ee54cd133b71e967442fe17.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/a06b9c10004fc3e05affee8cf0a9febd.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/da6c79a024c70fd6831e323430a96cc8.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/da6c79a024c70fd6831e323430a96cc8.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/da6c79a024c70fd6831e323430a96cc8.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/da6c79a024c70fd6831e323430a96cc8.tix +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.iix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.rix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.six +0 -5
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/indices/f35e1020b6a55c81b6d2fe4c7bcd4645.tix +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/0428489d1a03d05c496c2c429fe96e90.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/30fcaac048e328a7727156986055f6e8.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/673cc297ed321f667e1d8d4fff600829.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/71af8bae249bcb824a4ff17c62029142.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/7202eb77b81a80eca5296f317ed42149.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/8a571ba35ee54cd133b71e967442fe17.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/a06b9c10004fc3e05affee8cf0a9febd.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/da6c79a024c70fd6831e323430a96cc8.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/packs/f35e1020b6a55c81b6d2fe4c7bcd4645.pack +0 -0
- data/test/repositories/bzr_with_nested_branches/.bzr/repository/upload/.gitignore +0 -1
- data/test/repositories/bzr_with_nested_branches/file1.txt +0 -2
- data/test/repositories/bzr_with_nested_branches/file3.txt +0 -1
- data/test/repositories/bzr_with_nested_branches/file4.txt +0 -1
- data/test/repositories/bzr_with_nested_branches/file5.txt +0 -4
- data/test/repositories/bzr_with_nested_branches/file6.txt +0 -2
- data/test/repositories/bzr_with_nested_branches/file7.txt +0 -2
- data/test/repositories/bzr_with_subdirectories/.bzr/README +0 -3
- data/test/repositories/bzr_with_subdirectories/.bzr/branch-format +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/branch/branch.conf +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/branch/format +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/branch/last-revision +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/branch/tags +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/checkout/conflicts +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/checkout/dirstate +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/checkout/format +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/format +0 -1
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/indices/6eb92b11d9f811881dd08e0ca71e136d.iix +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/indices/6eb92b11d9f811881dd08e0ca71e136d.rix +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/indices/6eb92b11d9f811881dd08e0ca71e136d.six +0 -5
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/indices/6eb92b11d9f811881dd08e0ca71e136d.tix +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/pack-names +0 -0
- data/test/repositories/bzr_with_subdirectories/.bzr/repository/packs/6eb92b11d9f811881dd08e0ca71e136d.pack +0 -0
- data/test/repositories/bzr_with_subdirectories/foo/helloworld.c +0 -0
- data/test/repositories/deep_svn/README.txt +0 -5
- data/test/repositories/deep_svn/conf/authz +0 -21
- data/test/repositories/deep_svn/conf/passwd +0 -8
- data/test/repositories/deep_svn/conf/svnserve.conf +0 -30
- data/test/repositories/deep_svn/db/current +0 -1
- data/test/repositories/deep_svn/db/format +0 -1
- data/test/repositories/deep_svn/db/fs-type +0 -1
- data/test/repositories/deep_svn/db/revprops/0 +0 -5
- data/test/repositories/deep_svn/db/revprops/1 +0 -14
- data/test/repositories/deep_svn/db/revprops/2 +0 -14
- data/test/repositories/deep_svn/db/revprops/3 +0 -14
- data/test/repositories/deep_svn/db/revprops/4 +0 -14
- data/test/repositories/deep_svn/db/revs/0 +0 -11
- data/test/repositories/deep_svn/db/revs/1 +0 -122
- data/test/repositories/deep_svn/db/revs/2 +0 -19
- data/test/repositories/deep_svn/db/revs/3 +0 -44
- data/test/repositories/deep_svn/db/revs/4 +0 -48
- data/test/repositories/deep_svn/db/uuid +0 -1
- data/test/repositories/deep_svn/db/write-lock +0 -0
- data/test/repositories/deep_svn/format +0 -1
- data/test/repositories/deep_svn/hooks/post-commit.tmpl +0 -51
- data/test/repositories/deep_svn/hooks/post-lock.tmpl +0 -44
- data/test/repositories/deep_svn/hooks/post-revprop-change.tmpl +0 -56
- data/test/repositories/deep_svn/hooks/post-unlock.tmpl +0 -42
- data/test/repositories/deep_svn/hooks/pre-commit.tmpl +0 -70
- data/test/repositories/deep_svn/hooks/pre-lock.tmpl +0 -64
- data/test/repositories/deep_svn/hooks/pre-revprop-change.tmpl +0 -66
- data/test/repositories/deep_svn/hooks/pre-unlock.tmpl +0 -60
- data/test/repositories/deep_svn/hooks/start-commit.tmpl +0 -54
- data/test/repositories/deep_svn/locks/db-logs.lock +0 -3
- data/test/repositories/deep_svn/locks/db.lock +0 -3
- data/test/repositories/git_with_empty_merge.tgz +0 -0
- data/test/repositories/svn/README.txt +0 -5
- data/test/repositories/svn/conf/authz +0 -21
- data/test/repositories/svn/conf/passwd +0 -8
- data/test/repositories/svn/conf/svnserve.conf +0 -30
- data/test/repositories/svn/db/current +0 -1
- data/test/repositories/svn/db/format +0 -1
- data/test/repositories/svn/db/fs-type +0 -1
- data/test/repositories/svn/db/revprops/0 +0 -5
- data/test/repositories/svn/db/revprops/1 +0 -14
- data/test/repositories/svn/db/revprops/2 +0 -13
- data/test/repositories/svn/db/revprops/3 +0 -13
- data/test/repositories/svn/db/revprops/4 +0 -13
- data/test/repositories/svn/db/revprops/5 +0 -13
- data/test/repositories/svn/db/revprops/6 +0 -12
- data/test/repositories/svn/db/revs/0 +0 -11
- data/test/repositories/svn/db/revs/1 +0 -0
- data/test/repositories/svn/db/revs/2 +0 -0
- data/test/repositories/svn/db/revs/3 +0 -0
- data/test/repositories/svn/db/revs/4 +0 -0
- data/test/repositories/svn/db/revs/5 +0 -64
- data/test/repositories/svn/db/revs/6 +0 -50
- data/test/repositories/svn/db/uuid +0 -1
- data/test/repositories/svn/db/write-lock +0 -0
- data/test/repositories/svn/format +0 -1
- data/test/repositories/svn/hooks/post-commit.tmpl +0 -51
- data/test/repositories/svn/hooks/post-lock.tmpl +0 -44
- data/test/repositories/svn/hooks/post-revprop-change.tmpl +0 -56
- data/test/repositories/svn/hooks/post-unlock.tmpl +0 -42
- data/test/repositories/svn/hooks/pre-commit.tmpl +0 -70
- data/test/repositories/svn/hooks/pre-lock.tmpl +0 -64
- data/test/repositories/svn/hooks/pre-revprop-change +0 -67
- data/test/repositories/svn/hooks/pre-unlock.tmpl +0 -60
- data/test/repositories/svn/hooks/start-commit.tmpl +0 -54
- data/test/repositories/svn/locks/db-logs.lock +0 -3
- data/test/repositories/svn/locks/db.lock +0 -3
- data/test/repositories/svn_empty/README.txt +0 -5
- data/test/repositories/svn_empty/conf/authz +0 -32
- data/test/repositories/svn_empty/conf/hooks-env.tmpl +0 -19
- data/test/repositories/svn_empty/conf/passwd +0 -8
- data/test/repositories/svn_empty/conf/svnserve.conf +0 -76
- data/test/repositories/svn_empty/db/current +0 -1
- data/test/repositories/svn_empty/db/format +0 -2
- data/test/repositories/svn_empty/db/fs-type +0 -1
- data/test/repositories/svn_empty/db/fsfs.conf +0 -125
- data/test/repositories/svn_empty/db/min-unpacked-rev +0 -1
- data/test/repositories/svn_empty/db/revprops/0/0 +0 -5
- data/test/repositories/svn_empty/db/revs/0/0 +0 -11
- data/test/repositories/svn_empty/db/txn-current +0 -1
- data/test/repositories/svn_empty/db/txn-current-lock +0 -0
- data/test/repositories/svn_empty/db/uuid +0 -1
- data/test/repositories/svn_empty/db/write-lock +0 -0
- data/test/repositories/svn_empty/format +0 -1
- data/test/repositories/svn_empty/hooks/post-commit.tmpl +0 -52
- data/test/repositories/svn_empty/hooks/post-lock.tmpl +0 -45
- data/test/repositories/svn_empty/hooks/post-revprop-change.tmpl +0 -57
- data/test/repositories/svn_empty/hooks/post-unlock.tmpl +0 -43
- data/test/repositories/svn_empty/hooks/pre-commit.tmpl +0 -85
- data/test/repositories/svn_empty/hooks/pre-lock.tmpl +0 -73
- data/test/repositories/svn_empty/hooks/pre-revprop-change.tmpl +0 -66
- data/test/repositories/svn_empty/hooks/pre-unlock.tmpl +0 -65
- data/test/repositories/svn_empty/hooks/start-commit.tmpl +0 -74
- data/test/repositories/svn_empty/locks/db-logs.lock +0 -3
- data/test/repositories/svn_empty/locks/db.lock +0 -3
- data/test/repositories/svn_with_branching.tgz +0 -0
- data/test/repositories/svn_with_invalid_encoding.tgz +0 -0
- data/test/repositories/svn_with_tree_move/README.txt +0 -5
- data/test/repositories/svn_with_tree_move/conf/authz +0 -21
- data/test/repositories/svn_with_tree_move/conf/passwd +0 -8
- data/test/repositories/svn_with_tree_move/conf/svnserve.conf +0 -30
- data/test/repositories/svn_with_tree_move/db/current +0 -1
- data/test/repositories/svn_with_tree_move/db/format +0 -1
- data/test/repositories/svn_with_tree_move/db/fs-type +0 -1
- data/test/repositories/svn_with_tree_move/db/revprops/0 +0 -5
- data/test/repositories/svn_with_tree_move/db/revprops/1 +0 -13
- data/test/repositories/svn_with_tree_move/db/revprops/2 +0 -13
- data/test/repositories/svn_with_tree_move/db/revs/0 +0 -11
- data/test/repositories/svn_with_tree_move/db/revs/1 +0 -0
- data/test/repositories/svn_with_tree_move/db/revs/2 +0 -44
- data/test/repositories/svn_with_tree_move/db/uuid +0 -1
- data/test/repositories/svn_with_tree_move/db/write-lock +0 -0
- data/test/repositories/svn_with_tree_move/format +0 -1
- data/test/repositories/svn_with_tree_move/hooks/post-commit.tmpl +0 -51
- data/test/repositories/svn_with_tree_move/hooks/post-lock.tmpl +0 -44
- data/test/repositories/svn_with_tree_move/hooks/post-revprop-change.tmpl +0 -56
- data/test/repositories/svn_with_tree_move/hooks/post-unlock.tmpl +0 -42
- data/test/repositories/svn_with_tree_move/hooks/pre-commit.tmpl +0 -70
- data/test/repositories/svn_with_tree_move/hooks/pre-lock.tmpl +0 -64
- data/test/repositories/svn_with_tree_move/hooks/pre-revprop-change.tmpl +0 -66
- data/test/repositories/svn_with_tree_move/hooks/pre-unlock.tmpl +0 -60
- data/test/repositories/svn_with_tree_move/hooks/start-commit.tmpl +0 -54
- data/test/repositories/svn_with_tree_move/locks/db-logs.lock +0 -3
- data/test/repositories/svn_with_tree_move/locks/db.lock +0 -3
- data/test/test_helper.rb +0 -127
- data/test/unit/abstract_adapter_test.rb +0 -106
- data/test/unit/adapter_factory_test.rb +0 -67
- data/test/unit/array_writer_test.rb +0 -33
- data/test/unit/bzr_cat_file_test.rb +0 -56
- data/test/unit/bzr_commits_test.rb +0 -388
- data/test/unit/bzr_head_test.rb +0 -18
- data/test/unit/bzr_misc_test.rb +0 -62
- data/test/unit/bzr_parser_test.rb +0 -483
- data/test/unit/bzr_pull_test.rb +0 -31
- data/test/unit/bzr_push_test.rb +0 -61
- data/test/unit/bzr_validation_test.rb +0 -61
- data/test/unit/bzr_xml_parser_test.rb +0 -409
- data/test/unit/bzrlib_cat_file_test.rb +0 -56
- data/test/unit/bzrlib_head_test.rb +0 -18
- data/test/unit/cvs_branch_number_test.rb +0 -130
- data/test/unit/cvs_commits_test.rb +0 -52
- data/test/unit/cvs_convert_test.rb +0 -30
- data/test/unit/cvs_misc_test.rb +0 -82
- data/test/unit/cvs_parser_test.rb +0 -94
- data/test/unit/cvs_validation_test.rb +0 -148
- data/test/unit/git_cat_file_test.rb +0 -21
- data/test/unit/git_commit_all_test.rb +0 -34
- data/test/unit/git_commits_test.rb +0 -179
- data/test/unit/git_head_test.rb +0 -26
- data/test/unit/git_log_parser_test.rb +0 -221
- data/test/unit/git_misc_test.rb +0 -100
- data/test/unit/git_parser_test.rb +0 -59
- data/test/unit/git_patch_test.rb +0 -14
- data/test/unit/git_pull_test.rb +0 -50
- data/test/unit/git_push_test.rb +0 -46
- data/test/unit/git_rev_list_test.rb +0 -89
- data/test/unit/git_styled_parser_test.rb +0 -103
- data/test/unit/git_svn_cat_file_test.rb +0 -57
- data/test/unit/git_svn_commits_test.rb +0 -37
- data/test/unit/git_svn_pull_test.rb +0 -51
- data/test/unit/git_token_test.rb +0 -45
- data/test/unit/git_validation_test.rb +0 -93
- data/test/unit/hg_cat_file_test.rb +0 -47
- data/test/unit/hg_commits_test.rb +0 -220
- data/test/unit/hg_head_test.rb +0 -24
- data/test/unit/hg_misc_test.rb +0 -48
- data/test/unit/hg_parser_test.rb +0 -184
- data/test/unit/hg_patch_test.rb +0 -14
- data/test/unit/hg_pull_test.rb +0 -29
- data/test/unit/hg_push_test.rb +0 -59
- data/test/unit/hg_rev_list_test.rb +0 -63
- data/test/unit/hg_validation_test.rb +0 -60
- data/test/unit/hglib_cat_file_test.rb +0 -47
- data/test/unit/hglib_head_test.rb +0 -18
- data/test/unit/ohlog_command_line_test.rb +0 -36
- data/test/unit/shellout_test.rb +0 -26
- data/test/unit/string_encoder_command_line_test.rb +0 -27
- data/test/unit/svn_cat_file_test.rb +0 -22
- data/test/unit/svn_chain_cat_file_test.rb +0 -24
- data/test/unit/svn_chain_commits_test.rb +0 -176
- data/test/unit/svn_chain_test.rb +0 -77
- data/test/unit/svn_commits_test.rb +0 -275
- data/test/unit/svn_convert_test.rb +0 -28
- data/test/unit/svn_head_test.rb +0 -27
- data/test/unit/svn_misc_test.rb +0 -142
- data/test/unit/svn_parser_test.rb +0 -155
- data/test/unit/svn_patch_test.rb +0 -14
- data/test/unit/svn_pull_test.rb +0 -60
- data/test/unit/svn_push_test.rb +0 -40
- data/test/unit/svn_validation_test.rb +0 -176
- data/test/unit/svn_xml_parser_test.rb +0 -45
@@ -1,57 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# POST-REVPROP-CHANGE HOOK
|
4
|
-
#
|
5
|
-
# The post-revprop-change hook is invoked after a revision property
|
6
|
-
# has been added, modified or deleted. Subversion runs this hook by
|
7
|
-
# invoking a program (script, executable, binary, etc.) named
|
8
|
-
# 'post-revprop-change' (for which this file is a template), with the
|
9
|
-
# following ordered arguments:
|
10
|
-
#
|
11
|
-
# [1] REPOS-PATH (the path to this repository)
|
12
|
-
# [2] REV (the revision that was tweaked)
|
13
|
-
# [3] USER (the username of the person tweaking the property)
|
14
|
-
# [4] PROPNAME (the property that was changed)
|
15
|
-
# [5] ACTION (the property was 'A'dded, 'M'odified, or 'D'eleted)
|
16
|
-
#
|
17
|
-
# [STDIN] PROPVAL ** the old property value is passed via STDIN.
|
18
|
-
#
|
19
|
-
# Because the propchange has already completed and cannot be undone,
|
20
|
-
# the exit code of the hook program is ignored. The hook program
|
21
|
-
# can use the 'svnlook' utility to help it examine the
|
22
|
-
# new property value.
|
23
|
-
#
|
24
|
-
# On a Unix system, the normal procedure is to have 'post-revprop-change'
|
25
|
-
# invoke other programs to do the real work, though it may do the
|
26
|
-
# work itself too.
|
27
|
-
#
|
28
|
-
# Note that 'post-revprop-change' must be executable by the user(s) who will
|
29
|
-
# invoke it (typically the user httpd runs as), and that user must
|
30
|
-
# have filesystem-level permission to access the repository.
|
31
|
-
#
|
32
|
-
# On a Windows system, you should name the hook program
|
33
|
-
# 'post-revprop-change.bat' or 'post-revprop-change.exe',
|
34
|
-
# but the basic idea is the same.
|
35
|
-
#
|
36
|
-
# The hook program typically does not inherit the environment of
|
37
|
-
# its parent process. For example, a common problem is for the
|
38
|
-
# PATH environment variable to not be set to its usual value, so
|
39
|
-
# that subprograms fail to launch unless invoked via absolute path.
|
40
|
-
# If you're having unexpected problems with a hook program, the
|
41
|
-
# culprit may be unusual (or missing) environment variables.
|
42
|
-
#
|
43
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter.
|
44
|
-
# For more examples and pre-written hooks, see those in
|
45
|
-
# /usr/share/subversion/hook-scripts, and in the repository at
|
46
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ and
|
47
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/
|
48
|
-
|
49
|
-
|
50
|
-
REPOS="$1"
|
51
|
-
REV="$2"
|
52
|
-
USER="$3"
|
53
|
-
PROPNAME="$4"
|
54
|
-
ACTION="$5"
|
55
|
-
|
56
|
-
"$REPOS"/hooks/mailer.py propchange2 "$REPOS" $REV \
|
57
|
-
"$USER" "$PROPNAME" "$ACTION" "$REPOS"/hooks/mailer.conf
|
@@ -1,43 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# POST-UNLOCK HOOK
|
4
|
-
#
|
5
|
-
# The post-unlock hook runs after a path is unlocked. Subversion runs
|
6
|
-
# this hook by invoking a program (script, executable, binary, etc.)
|
7
|
-
# named 'post-unlock' (for which this file is a template) with the
|
8
|
-
# following ordered arguments:
|
9
|
-
#
|
10
|
-
# [1] REPOS-PATH (the path to this repository)
|
11
|
-
# [2] USER (the user who destroyed the lock)
|
12
|
-
#
|
13
|
-
# The paths that were just unlocked are passed to the hook via STDIN
|
14
|
-
# (as of Subversion 1.2, only one path is passed per invocation, but
|
15
|
-
# the plan is to pass all unlocked paths at once, so the hook program
|
16
|
-
# should be written accordingly).
|
17
|
-
#
|
18
|
-
# The default working directory for the invocation is undefined, so
|
19
|
-
# the program should set one explicitly if it cares.
|
20
|
-
#
|
21
|
-
# Because the lock has already been destroyed and cannot be undone,
|
22
|
-
# the exit code of the hook program is ignored.
|
23
|
-
#
|
24
|
-
# On a Unix system, the normal procedure is to have 'post-unlock'
|
25
|
-
# invoke other programs to do the real work, though it may do the
|
26
|
-
# work itself too.
|
27
|
-
#
|
28
|
-
# Note that 'post-unlock' must be executable by the user(s) who will
|
29
|
-
# invoke it (typically the user httpd runs as), and that user must
|
30
|
-
# have filesystem-level permission to access the repository.
|
31
|
-
#
|
32
|
-
# On a Windows system, you should name the hook program
|
33
|
-
# 'post-unlock.bat' or 'post-unlock.exe',
|
34
|
-
# but the basic idea is the same.
|
35
|
-
#
|
36
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter:
|
37
|
-
|
38
|
-
REPOS="$1"
|
39
|
-
USER="$2"
|
40
|
-
|
41
|
-
# Send email to interested parties, let them know a lock was removed:
|
42
|
-
"$REPOS"/hooks/mailer.py unlock \
|
43
|
-
"$REPOS" "$USER" "$REPOS"/hooks/mailer.conf
|
@@ -1,85 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# PRE-COMMIT HOOK
|
4
|
-
#
|
5
|
-
# The pre-commit hook is invoked before a Subversion txn is
|
6
|
-
# committed. Subversion runs this hook by invoking a program
|
7
|
-
# (script, executable, binary, etc.) named 'pre-commit' (for which
|
8
|
-
# this file is a template), with the following ordered arguments:
|
9
|
-
#
|
10
|
-
# [1] REPOS-PATH (the path to this repository)
|
11
|
-
# [2] TXN-NAME (the name of the txn about to be committed)
|
12
|
-
#
|
13
|
-
# [STDIN] LOCK-TOKENS ** the lock tokens are passed via STDIN.
|
14
|
-
#
|
15
|
-
# If STDIN contains the line "LOCK-TOKENS:\n" (the "\n" denotes a
|
16
|
-
# single newline), the lines following it are the lock tokens for
|
17
|
-
# this commit. The end of the list is marked by a line containing
|
18
|
-
# only a newline character.
|
19
|
-
#
|
20
|
-
# Each lock token line consists of a URI-escaped path, followed
|
21
|
-
# by the separator character '|', followed by the lock token string,
|
22
|
-
# followed by a newline.
|
23
|
-
#
|
24
|
-
# The default working directory for the invocation is undefined, so
|
25
|
-
# the program should set one explicitly if it cares.
|
26
|
-
#
|
27
|
-
# If the hook program exits with success, the txn is committed; but
|
28
|
-
# if it exits with failure (non-zero), the txn is aborted, no commit
|
29
|
-
# takes place, and STDERR is returned to the client. The hook
|
30
|
-
# program can use the 'svnlook' utility to help it examine the txn.
|
31
|
-
#
|
32
|
-
# On a Unix system, the normal procedure is to have 'pre-commit'
|
33
|
-
# invoke other programs to do the real work, though it may do the
|
34
|
-
# work itself too.
|
35
|
-
#
|
36
|
-
# *** NOTE: THE HOOK PROGRAM MUST NOT MODIFY THE TXN, EXCEPT ***
|
37
|
-
# *** FOR REVISION PROPERTIES (like svn:log or svn:author). ***
|
38
|
-
#
|
39
|
-
# This is why we recommend using the read-only 'svnlook' utility.
|
40
|
-
# In the future, Subversion may enforce the rule that pre-commit
|
41
|
-
# hooks should not modify the versioned data in txns, or else come
|
42
|
-
# up with a mechanism to make it safe to do so (by informing the
|
43
|
-
# committing client of the changes). However, right now neither
|
44
|
-
# mechanism is implemented, so hook writers just have to be careful.
|
45
|
-
#
|
46
|
-
# Note that 'pre-commit' must be executable by the user(s) who will
|
47
|
-
# invoke it (typically the user httpd runs as), and that user must
|
48
|
-
# have filesystem-level permission to access the repository.
|
49
|
-
#
|
50
|
-
# On a Windows system, you should name the hook program
|
51
|
-
# 'pre-commit.bat' or 'pre-commit.exe',
|
52
|
-
# but the basic idea is the same.
|
53
|
-
#
|
54
|
-
# The hook program typically does not inherit the environment of
|
55
|
-
# its parent process. For example, a common problem is for the
|
56
|
-
# PATH environment variable to not be set to its usual value, so
|
57
|
-
# that subprograms fail to launch unless invoked via absolute path.
|
58
|
-
# If you're having unexpected problems with a hook program, the
|
59
|
-
# culprit may be unusual (or missing) environment variables.
|
60
|
-
#
|
61
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter.
|
62
|
-
# For more examples and pre-written hooks, see those in
|
63
|
-
# /usr/share/subversion/hook-scripts, and in the repository at
|
64
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ and
|
65
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/
|
66
|
-
|
67
|
-
|
68
|
-
REPOS="$1"
|
69
|
-
TXN="$2"
|
70
|
-
|
71
|
-
# Make sure that the log message contains some text.
|
72
|
-
SVNLOOK=/usr/bin/svnlook
|
73
|
-
$SVNLOOK log -t "$TXN" "$REPOS" | \
|
74
|
-
grep "[a-zA-Z0-9]" > /dev/null || exit 1
|
75
|
-
|
76
|
-
# Exit on all errors.
|
77
|
-
set -e
|
78
|
-
|
79
|
-
# Check that the author of this commit has the rights to perform
|
80
|
-
# the commit on the files and directories being modified.
|
81
|
-
"$REPOS"/hooks/commit-access-control.pl "$REPOS" $TXN \
|
82
|
-
"$REPOS"/hooks/commit-access-control.cfg
|
83
|
-
|
84
|
-
# All checks passed, so allow the commit.
|
85
|
-
exit 0
|
@@ -1,73 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# PRE-LOCK HOOK
|
4
|
-
#
|
5
|
-
# The pre-lock hook is invoked before an exclusive lock is
|
6
|
-
# created. Subversion runs this hook by invoking a program
|
7
|
-
# (script, executable, binary, etc.) named 'pre-lock' (for which
|
8
|
-
# this file is a template), with the following ordered arguments:
|
9
|
-
#
|
10
|
-
# [1] REPOS-PATH (the path to this repository)
|
11
|
-
# [2] PATH (the path in the repository about to be locked)
|
12
|
-
# [3] USER (the user creating the lock)
|
13
|
-
# [4] COMMENT (the comment of the lock)
|
14
|
-
# [5] STEAL-LOCK (1 if the user is trying to steal the lock, else 0)
|
15
|
-
#
|
16
|
-
# If the hook program outputs anything on stdout, the output string will
|
17
|
-
# be used as the lock token for this lock operation. If you choose to use
|
18
|
-
# this feature, you must guarantee the tokens generated are unique across
|
19
|
-
# the repository each time.
|
20
|
-
#
|
21
|
-
# The default working directory for the invocation is undefined, so
|
22
|
-
# the program should set one explicitly if it cares.
|
23
|
-
#
|
24
|
-
# If the hook program exits with success, the lock is created; but
|
25
|
-
# if it exits with failure (non-zero), the lock action is aborted
|
26
|
-
# and STDERR is returned to the client.
|
27
|
-
|
28
|
-
# On a Unix system, the normal procedure is to have 'pre-lock'
|
29
|
-
# invoke other programs to do the real work, though it may do the
|
30
|
-
# work itself too.
|
31
|
-
#
|
32
|
-
# Note that 'pre-lock' must be executable by the user(s) who will
|
33
|
-
# invoke it (typically the user httpd runs as), and that user must
|
34
|
-
# have filesystem-level permission to access the repository.
|
35
|
-
#
|
36
|
-
# On a Windows system, you should name the hook program
|
37
|
-
# 'pre-lock.bat' or 'pre-lock.exe',
|
38
|
-
# but the basic idea is the same.
|
39
|
-
#
|
40
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter:
|
41
|
-
|
42
|
-
REPOS="$1"
|
43
|
-
PATH="$2"
|
44
|
-
USER="$3"
|
45
|
-
COMMENT="$4"
|
46
|
-
STEAL="$5"
|
47
|
-
|
48
|
-
# If a lock exists and is owned by a different person, don't allow it
|
49
|
-
# to be stolen (e.g., with 'svn lock --force ...').
|
50
|
-
|
51
|
-
# (Maybe this script could send email to the lock owner?)
|
52
|
-
SVNLOOK=/usr/bin/svnlook
|
53
|
-
GREP=/bin/grep
|
54
|
-
SED=/bin/sed
|
55
|
-
|
56
|
-
LOCK_OWNER=`$SVNLOOK lock "$REPOS" "$PATH" | \
|
57
|
-
$GREP '^Owner: ' | $SED 's/Owner: //'`
|
58
|
-
|
59
|
-
# If we get no result from svnlook, there's no lock, allow the lock to
|
60
|
-
# happen:
|
61
|
-
if [ "$LOCK_OWNER" = "" ]; then
|
62
|
-
exit 0
|
63
|
-
fi
|
64
|
-
|
65
|
-
# If the person locking matches the lock's owner, allow the lock to
|
66
|
-
# happen:
|
67
|
-
if [ "$LOCK_OWNER" = "$USER" ]; then
|
68
|
-
exit 0
|
69
|
-
fi
|
70
|
-
|
71
|
-
# Otherwise, we've got an owner mismatch, so return failure:
|
72
|
-
echo "Error: $PATH already locked by ${LOCK_OWNER}." 1>&2
|
73
|
-
exit 1
|
@@ -1,66 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# PRE-REVPROP-CHANGE HOOK
|
4
|
-
#
|
5
|
-
# The pre-revprop-change hook is invoked before a revision property
|
6
|
-
# is added, modified or deleted. Subversion runs this hook by invoking
|
7
|
-
# a program (script, executable, binary, etc.) named 'pre-revprop-change'
|
8
|
-
# (for which this file is a template), with the following ordered
|
9
|
-
# arguments:
|
10
|
-
#
|
11
|
-
# [1] REPOS-PATH (the path to this repository)
|
12
|
-
# [2] REV (the revision being tweaked)
|
13
|
-
# [3] USER (the username of the person tweaking the property)
|
14
|
-
# [4] PROPNAME (the property being set on the revision)
|
15
|
-
# [5] ACTION (the property is being 'A'dded, 'M'odified, or 'D'eleted)
|
16
|
-
#
|
17
|
-
# [STDIN] PROPVAL ** the new property value is passed via STDIN.
|
18
|
-
#
|
19
|
-
# If the hook program exits with success, the propchange happens; but
|
20
|
-
# if it exits with failure (non-zero), the propchange doesn't happen.
|
21
|
-
# The hook program can use the 'svnlook' utility to examine the
|
22
|
-
# existing value of the revision property.
|
23
|
-
#
|
24
|
-
# WARNING: unlike other hooks, this hook MUST exist for revision
|
25
|
-
# properties to be changed. If the hook does not exist, Subversion
|
26
|
-
# will behave as if the hook were present, but failed. The reason
|
27
|
-
# for this is that revision properties are UNVERSIONED, meaning that
|
28
|
-
# a successful propchange is destructive; the old value is gone
|
29
|
-
# forever. We recommend the hook back up the old value somewhere.
|
30
|
-
#
|
31
|
-
# On a Unix system, the normal procedure is to have 'pre-revprop-change'
|
32
|
-
# invoke other programs to do the real work, though it may do the
|
33
|
-
# work itself too.
|
34
|
-
#
|
35
|
-
# Note that 'pre-revprop-change' must be executable by the user(s) who will
|
36
|
-
# invoke it (typically the user httpd runs as), and that user must
|
37
|
-
# have filesystem-level permission to access the repository.
|
38
|
-
#
|
39
|
-
# On a Windows system, you should name the hook program
|
40
|
-
# 'pre-revprop-change.bat' or 'pre-revprop-change.exe',
|
41
|
-
# but the basic idea is the same.
|
42
|
-
#
|
43
|
-
# The hook program typically does not inherit the environment of
|
44
|
-
# its parent process. For example, a common problem is for the
|
45
|
-
# PATH environment variable to not be set to its usual value, so
|
46
|
-
# that subprograms fail to launch unless invoked via absolute path.
|
47
|
-
# If you're having unexpected problems with a hook program, the
|
48
|
-
# culprit may be unusual (or missing) environment variables.
|
49
|
-
#
|
50
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter.
|
51
|
-
# For more examples and pre-written hooks, see those in
|
52
|
-
# /usr/share/subversion/hook-scripts, and in the repository at
|
53
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ and
|
54
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/
|
55
|
-
|
56
|
-
|
57
|
-
REPOS="$1"
|
58
|
-
REV="$2"
|
59
|
-
USER="$3"
|
60
|
-
PROPNAME="$4"
|
61
|
-
ACTION="$5"
|
62
|
-
|
63
|
-
if [ "$ACTION" = "M" -a "$PROPNAME" = "svn:log" ]; then exit 0; fi
|
64
|
-
|
65
|
-
echo "Changing revision properties other than svn:log is prohibited" >&2
|
66
|
-
exit 1
|
@@ -1,65 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# PRE-UNLOCK HOOK
|
4
|
-
#
|
5
|
-
# The pre-unlock hook is invoked before an exclusive lock is
|
6
|
-
# destroyed. Subversion runs this hook by invoking a program
|
7
|
-
# (script, executable, binary, etc.) named 'pre-unlock' (for which
|
8
|
-
# this file is a template), with the following ordered arguments:
|
9
|
-
#
|
10
|
-
# [1] REPOS-PATH (the path to this repository)
|
11
|
-
# [2] PATH (the path in the repository about to be unlocked)
|
12
|
-
# [3] USER (the user destroying the lock)
|
13
|
-
# [4] TOKEN (the lock token to be destroyed)
|
14
|
-
# [5] BREAK-UNLOCK (1 if the user is breaking the lock, else 0)
|
15
|
-
#
|
16
|
-
# The default working directory for the invocation is undefined, so
|
17
|
-
# the program should set one explicitly if it cares.
|
18
|
-
#
|
19
|
-
# If the hook program exits with success, the lock is destroyed; but
|
20
|
-
# if it exits with failure (non-zero), the unlock action is aborted
|
21
|
-
# and STDERR is returned to the client.
|
22
|
-
|
23
|
-
# On a Unix system, the normal procedure is to have 'pre-unlock'
|
24
|
-
# invoke other programs to do the real work, though it may do the
|
25
|
-
# work itself too.
|
26
|
-
#
|
27
|
-
# Note that 'pre-unlock' must be executable by the user(s) who will
|
28
|
-
# invoke it (typically the user httpd runs as), and that user must
|
29
|
-
# have filesystem-level permission to access the repository.
|
30
|
-
#
|
31
|
-
# On a Windows system, you should name the hook program
|
32
|
-
# 'pre-unlock.bat' or 'pre-unlock.exe',
|
33
|
-
# but the basic idea is the same.
|
34
|
-
#
|
35
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter:
|
36
|
-
|
37
|
-
REPOS="$1"
|
38
|
-
PATH="$2"
|
39
|
-
USER="$3"
|
40
|
-
TOKEN="$4"
|
41
|
-
BREAK="$5"
|
42
|
-
|
43
|
-
# If a lock is owned by a different person, don't allow it be broken.
|
44
|
-
# (Maybe this script could send email to the lock owner?)
|
45
|
-
|
46
|
-
SVNLOOK=/usr/bin/svnlook
|
47
|
-
GREP=/bin/grep
|
48
|
-
SED=/bin/sed
|
49
|
-
|
50
|
-
LOCK_OWNER=`$SVNLOOK lock "$REPOS" "$PATH" | \
|
51
|
-
$GREP '^Owner: ' | $SED 's/Owner: //'`
|
52
|
-
|
53
|
-
# If we get no result from svnlook, there's no lock, return success:
|
54
|
-
if [ "$LOCK_OWNER" = "" ]; then
|
55
|
-
exit 0
|
56
|
-
fi
|
57
|
-
|
58
|
-
# If the person unlocking matches the lock's owner, return success:
|
59
|
-
if [ "$LOCK_OWNER" = "$USER" ]; then
|
60
|
-
exit 0
|
61
|
-
fi
|
62
|
-
|
63
|
-
# Otherwise, we've got an owner mismatch, so return failure:
|
64
|
-
echo "Error: $PATH locked by ${LOCK_OWNER}." 1>&2
|
65
|
-
exit 1
|
@@ -1,74 +0,0 @@
|
|
1
|
-
#!/bin/sh
|
2
|
-
|
3
|
-
# START-COMMIT HOOK
|
4
|
-
#
|
5
|
-
# The start-commit hook is invoked immediately after a Subversion txn is
|
6
|
-
# created and populated with initial revprops in the process of doing a
|
7
|
-
# commit. Subversion runs this hook by invoking a program (script,
|
8
|
-
# executable, binary, etc.) named 'start-commit' (for which this file
|
9
|
-
# is a template) with the following ordered arguments:
|
10
|
-
#
|
11
|
-
# [1] REPOS-PATH (the path to this repository)
|
12
|
-
# [2] USER (the authenticated user attempting to commit)
|
13
|
-
# [3] CAPABILITIES (a colon-separated list of capabilities reported
|
14
|
-
# by the client; see note below)
|
15
|
-
# [4] TXN-NAME (the name of the commit txn just created)
|
16
|
-
#
|
17
|
-
# Note: The CAPABILITIES parameter is new in Subversion 1.5, and 1.5
|
18
|
-
# clients will typically report at least the "mergeinfo" capability.
|
19
|
-
# If there are other capabilities, then the list is colon-separated,
|
20
|
-
# e.g.: "mergeinfo:some-other-capability" (the order is undefined).
|
21
|
-
#
|
22
|
-
# Note: The TXN-NAME parameter is new in Subversion 1.8. Prior to version
|
23
|
-
# 1.8, the start-commit hook was invoked before the commit txn was even
|
24
|
-
# created, so the ability to inspect the commit txn and its metadata from
|
25
|
-
# within the start-commit hook was not possible.
|
26
|
-
#
|
27
|
-
# The list is self-reported by the client. Therefore, you should not
|
28
|
-
# make security assumptions based on the capabilities list, nor should
|
29
|
-
# you assume that clients reliably report every capability they have.
|
30
|
-
#
|
31
|
-
# The working directory for this hook program's invocation is undefined,
|
32
|
-
# so the program should set one explicitly if it cares.
|
33
|
-
#
|
34
|
-
# If the hook program exits with success, the commit continues; but
|
35
|
-
# if it exits with failure (non-zero), the commit is stopped before
|
36
|
-
# a Subversion txn is created, and STDERR is returned to the client.
|
37
|
-
#
|
38
|
-
# On a Unix system, the normal procedure is to have 'start-commit'
|
39
|
-
# invoke other programs to do the real work, though it may do the
|
40
|
-
# work itself too.
|
41
|
-
#
|
42
|
-
# Note that 'start-commit' must be executable by the user(s) who will
|
43
|
-
# invoke it (typically the user httpd runs as), and that user must
|
44
|
-
# have filesystem-level permission to access the repository.
|
45
|
-
#
|
46
|
-
# On a Windows system, you should name the hook program
|
47
|
-
# 'start-commit.bat' or 'start-commit.exe',
|
48
|
-
# but the basic idea is the same.
|
49
|
-
#
|
50
|
-
# The hook program typically does not inherit the environment of
|
51
|
-
# its parent process. For example, a common problem is for the
|
52
|
-
# PATH environment variable to not be set to its usual value, so
|
53
|
-
# that subprograms fail to launch unless invoked via absolute path.
|
54
|
-
# If you're having unexpected problems with a hook program, the
|
55
|
-
# culprit may be unusual (or missing) environment variables.
|
56
|
-
#
|
57
|
-
# Here is an example hook script, for a Unix /bin/sh interpreter.
|
58
|
-
# For more examples and pre-written hooks, see those in
|
59
|
-
# /usr/share/subversion/hook-scripts, and in the repository at
|
60
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/tools/hook-scripts/ and
|
61
|
-
# http://svn.apache.org/repos/asf/subversion/trunk/contrib/hook-scripts/
|
62
|
-
|
63
|
-
|
64
|
-
REPOS="$1"
|
65
|
-
USER="$2"
|
66
|
-
|
67
|
-
# Exit on all errors.
|
68
|
-
set -e
|
69
|
-
|
70
|
-
"$REPOS"/hooks/commit-allower.pl --repository "$REPOS" --user "$USER"
|
71
|
-
"$REPOS"/hooks/special-auth-check.py --user "$USER" --auth-level 3
|
72
|
-
|
73
|
-
# All checks passed, so allow the commit.
|
74
|
-
exit 0
|