git-annex-pre-push(1) General Commands Manual git-annex-pre-push(1)

git-annex-pre-push - run by git pre-push hook

git annex pre-push

This is meant to be called from git's pre-push hook. git-annex automatically sets up the hook.

This hook prevents all pushes to git remotes when there is an unverified special remote.

The reason why is to guard against an attack, where an attacker configures a special remote to access a location that you do not expect it to access. For example, it might access a location that you do not intend to share with anyone. Once such a special remote is enabled, objects from it can reach the local repository, but are prevented from being sent to other repositories. But, a git push would send git-annex branch information, which could verify to an attacker that you do possess particular objects in the special remote. The hook avoids that information leakage.

git-annex(1)

git-annex-verifyremote(1)

git-annex-enableremote(1)

Joey Hess <id@joeyh.name>