@@ -289,6 +289,26 @@ way of cloning it in lesser space?::
would mean fetching only the top level commits of the repository
See linkgit:git-clone[1].
+[[fetching-and-pulling]]
+How do I know if I want to do a fetch or a pull?::
+ A fetch brings in the latest changes made upstream (i.e., the
+ remote repository we are working on). This allows us to inspect
+ the changes made upstream and integrate all those changes (if
+ and only if we want to) or only cherry pick certain changes.
+ Fetching does not have any immediate effects on the local
+ repository.
+
+ A pull is a wrapper for a fetch and merge. This means that doing
+ a `git pull` will not only fetch the changes made upstream but
+ integrate them as well with our local repository. The merge may
+ go smoothly or have merge conflicts depending on the case. A pull
+ does not allow you to review any changes made upstream but rather
+ merge those changes on their own.
++
+This is the reason why it is sometimes advised to fetch the changes
+first and then merge them accordingly because not every change might
+be of utility to the user.
+
Hooks
-----
Add an issue in 'Common Issues' section which addresses the confusion between performing a 'fetch' and a 'pull'. Signed-off-by: Shourya Shukla <shouryashukla.oo@gmail.com> --- Documentation/gitfaq.txt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+)