summaryrefslogtreecommitdiff
path: root/doc/source/tutorial.rst
diff options
context:
space:
mode:
Diffstat (limited to 'doc/source/tutorial.rst')
-rw-r--r--doc/source/tutorial.rst15
1 files changed, 10 insertions, 5 deletions
diff --git a/doc/source/tutorial.rst b/doc/source/tutorial.rst
index 0d60f0aa..84b3b5f5 100644
--- a/doc/source/tutorial.rst
+++ b/doc/source/tutorial.rst
@@ -331,12 +331,17 @@ You can easily access configuration information for a remote by accessing option
:start-after: # [26-test_references_and_objects]
:end-before: # ![26-test_references_and_objects]
-You can also specify per-call custom environments using a new context manager on the Git command
+You can also specify per-call custom environments using a new context manager on the Git command, e.g. for using a specific SSH key. The following example works with `git` starting at *v2.3*.
-.. literalinclude:: ../../git/test/test_docs.py
- :language: python
- :start-after: # [32-test_references_and_objects]
- :end-before: # ![32-test_references_and_objects]
+ ssh_cmd = 'ssh -i id_deployment_key'
+ with repo.git.custom_environment(GIT_SSH_COMMAND=ssh_cmd):
+ repo.remotes.origin.fetch()
+
+This one sets a custom script to be executed in place of `ssh`, and can be used in `git` prior to *v2.3*.
+
+ ssh_executable = os.path.join(rw_dir, 'my_ssh_executable.sh')
+ with repo.git.custom_environment(GIT_SSH=ssh_executable):
+ repo.remotes.origin.fetch()
Submodule Handling
******************