diff --git a/doc/git-annex-initremote.mdwn b/doc/git-annex-initremote.mdwn
index c3fd0b0da0..dd4f1c99bb 100644
--- a/doc/git-annex-initremote.mdwn
+++ b/doc/git-annex-initremote.mdwn
@@ -74,6 +74,12 @@ want to use `git annex renameremote`.
compatabilities.
+* `--private`
+
+ Avoid recording information about the special remote in the git-annex
+ branch. The special remote will only be usable from the repository where
+ it was created.
+
# COMMON CONFIGURATION PARAMETERS
* `encryption`
diff --git a/doc/git-annex.mdwn b/doc/git-annex.mdwn
index 104d701c98..5d7fe45071 100644
--- a/doc/git-annex.mdwn
+++ b/doc/git-annex.mdwn
@@ -1158,6 +1158,19 @@ repository, using [[git-annex-config]]. See its man page for a list.)
To avoid that merging, set this to "false". This can be useful
particularly when you don't have write permission to the repository.
+* `annex.privaterepo`
+
+ When this is set to true, no information about the repository will be
+ recorded in the git-annex branch.
+
+ For example, to make a repository without any mention of it ever
+ appearing in the git-annex branch:
+
+ git init myprivaterepo
+ cd myprivaterepo
+ git config annex.privaterepo true
+ git annex init
+
* `annex.hardlink`
Set this to `true` to make file contents be hard linked between the
@@ -1527,6 +1540,13 @@ Remotes are configured using these settings in `.git/config`.
indicate that it does. This will cause git-annex to try to get all file
contents from the remote. Can be useful in setting up a caching remote.
+* `remote..annex-private`
+
+ When this is set to true, no information about the remote will be
+ recorded in the git-annex branch. This is mostly useful for special
+ remotes, and is set when using [[git-annex-initremote]](1) with the
+ `--private` option.
+
* `remote..annex-bare`
Can be used to tell git-annex if a remote is a bare repository
diff --git a/doc/tips/cloning_a_repository_privately.mdwn b/doc/tips/cloning_a_repository_privately.mdwn
new file mode 100644
index 0000000000..13a712796c
--- /dev/null
+++ b/doc/tips/cloning_a_repository_privately.mdwn
@@ -0,0 +1,44 @@
+Normally, when you clone a git-annex repository, and use git-annex in it,
+and then push or otherwise send changes back to origin, information gets
+committed to the git-annex branch about your clone. Things like the annexed
+files that are in it, its description, etc.
+
+If you don't want the world to know about your clone, either for privacy
+reason or only because the clone is a temporary copy of the repository,
+here's how.
+
+Recently git-annex got a new config setting, `annex.privaterepo`.
+Set it before you start using git-annex in a repository, and git-annex
+will avoid recording any information about the repository into the
+git-annex branch.
+
+ git clone ssh://... myclone
+ cd myclone
+ git config annex.privaterepo true
+ git annex init
+
+Now you can use git-annex as usual, adding files to the repository,
+getting the contents of files, etc.
+
+When you push changes back to origin, do still push the git-annex branch,
+since git-annex still uses it to record anything it needs to keep track of
+that does not involve your private repository.
+
+And be sure, when adding or editing annexed files, that you `git-annex copy`
+them to a publically accessible repository. Otherwise, to everyone else,
+there will seem to be no copies of that file availble anywhere, since they
+won't know about your private repo's copy.
+
+## private special remotes
+
+You can also make private special remotes, by using `git annex initremote
+--private`.
+
+Like a private repository, git-annex avoids storing any information about
+a private special remote to the git-annex branch. It will only be available in
+the repository where the special remote was created.
+
+Bear in mind that, if you lose the repository where the private special
+remote was created, you'll lose the information git-annex needs to access
+that special remote, and that will likely mean you'll not be able to
+recover any files stored in it.