$ git pull
-Default remote repository for fetching/pulling is origin. Default set
-of references to fetch is calculated using matching algorithm: git
+Default remote repository for fetching/pulling is ``origin``. Default
+set of references to fetch is calculated using matching algorithm: git
fetches all branches having the same name on both ends.
+
Push
''''
$ git push
-Default remote repository for pushing is origin. Default set
-of references to push in git before 2.0 is calculated using matching
+Default remote repository for pushing is ``origin``. Default set of
+references to push in git before 2.0 is calculated using matching
algorithm: git pushes all branches having the same name on both ends.
Default set of references to push in git 2.0+ is calculated using
simple algorithm: git pushes the current branch back to its
for caveats; in 2.4 the push-to-deploy feature was `further improved
<https://github.com/blog/1994-git-2-4-atomic-pushes-push-to-deploy-and-more#push-to-deploy-improvements>`_.
+
Tags
''''
$ git grep -Ovim # but not -O vim
-BTW, there is a difference between running ``git grep -O`` and ``git
-grep -Oless`` - in the latter case ``git grep`` passes ``+/pattern``
-option to ``less``.
+BTW, if git is instructed to use ``less`` as the pager (i.e., if pager
+is not configured in git at all it uses ``less`` by default, or if it
+gets ``less`` from GIT_PAGER or PAGER environment variables, or if it
+was configured with ``git config --global core.pager less``, or
+``less`` is used in the command ``git grep -Oless``) ``git grep``
+passes ``+/$pattern`` option to ``less`` which is quite convenient.
+Unfortunately, ``git grep`` doesn't pass the pattern if the pager is
+not exactly ``less``, even if it's ``less`` with parameters (something
+like ``git config --global core.pager less -FRSXgimq``); fortunately,
+``git grep -Oless`` always passes the pattern.
bash/zsh completion