suvayu commented on a change in pull request #7503:
URL: https://github.com/apache/arrow/pull/7503#discussion_r443448786



##########
File path: docs/source/developers/contributing.rst
##########
@@ -127,3 +127,52 @@ To contribute a patch:
 * Add new unit tests for your code.
 
 Thank you in advance for your contributions!
+
+Common Git conventions followed within the project
+--------------------------------------------------
+
+If you are tracking the Arrow source repository locally, following some common 
Git
+conventions would make everyone's workflow compatible.  These recommendations 
along with
+their rationale are outlined below.
+
+It is strongly discouraged to use a regular ``git merge``, as a linear commit 
history is
+prefered by the project.  It is much easier to maintain, and makes for easier
+``cherry-picking`` of features; useful for backporting fixes to maintenance 
releases.
+To sync your local copy of a branch, you may do the following::
+
+    $ git pull upstream branch --rebase
+
+This will rebase your local commits on top of the tip of ``upstream/branch``.  
In case
+there are conflicts, and your local commit history has multiple commits, you 
may
+simplify the conflict resolution process by squashing your local commits into 
a single
+commit.  In the long run preserving the history isn't as important, because 
when your
+feature branch is merged upstream a squash happens automatically.  If you 
choose this
+route, you can abort the merge with::
+
+    $ git merge --abort

Review comment:
       Hi Antoine, since a pull does a `fetch` and a `merge` my understanding 
was it should be `merge --abort`, but it could be  `rebase --abort` as we are 
doing `pull --rebase` before.  I'll create a few dummy repos and verify.  
Thanks for the catch.




----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
[email protected]


Reply via email to