diff --git a/docs/contributing.rst b/docs/contributing.rst
--- a/docs/contributing.rst
+++ b/docs/contributing.rst
@@ -57,6 +57,11 @@ project root::
 
 Note that testing on Python 2.6 also requires ``unittest2``.
 
+Note that on unix systems, the temporary directory (``/tmp`` or where
+``$TMPDIR`` points) must allow executable files; Git hooks must be executable,
+and the test suite creates repositories in the temporary directory. Linux
+systems with /tmp mounted noexec will thus fail.
+
 You can also use ``tox`` to run the tests with all supported Python versions
 (currently Python 2.6--2.7).
 
diff --git a/kallithea/tests/other/manual_test_vcs_operations.py b/kallithea/tests/other/manual_test_vcs_operations.py
--- a/kallithea/tests/other/manual_test_vcs_operations.py
+++ b/kallithea/tests/other/manual_test_vcs_operations.py
@@ -435,6 +435,9 @@ class TestVCSOperations(TestController):
         assert msg in stderr
 
     def test_push_on_locked_repo_by_other_user_git(self):
+        # Note: Git hooks must be executable on unix. This test will thus fail
+        # for example on Linux if /tmp is mounted noexec.
+
         #clone some temp
         DEST = _get_tmp_dir()
         clone_url = _construct_url(GIT_REPO)