git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Rationale for the "Never commit to the right side of a Pull line" rule

From
Jakub Narebski <jnareb@gmail.com>
Date
Oct 26, 2006, 17:30 UTC
Message-ID
<ehqr9t$9rh$1@sea.gmane.org>
In-Reply-To
<ehqp1u$j4$1@sea.gmane.org>
Jerome Lovy wrote:
Show 5 quoted lines
> Could someone please point me to / give me the rationale for the "Never 
> commit to the right side of a Pull line" rule ?
> 
> I found the rule in the second Note of the git-fetch man-page (eg 
> http://www.kernel.org/pub/software/scm/git/docs/git-fetch.html).

Because git refuses to fetch into branch on top of which there are changes which are not present in the branch you fetch from (if it is not fast-forward case). So commitiing to tracking branches breaks the most typical workflow, i.e. fetch when you want, push when you are ready.

git-clone --use-separate-remotes takes care of that by putting tracking branches in refs/remotes/, i.e. outside refs/heads/, so you cannot commit there, at least not by accident.

-- 
Jakub Narebski
Warsaw, Poland
ShadeHawk on #git
Previous: Karl HasselströmNext: Luben Tuikov
Message 4 of 5 in “Rationale for the "Never commit to the right side of a Pull line" rule”
  1. Jerome LovyOct 26, 2006
  2. Linus TorvaldsOct 26, 2006
  3. Karl HasselströmOct 26, 2006
  4. Jakub NarebskiOct 26, 2006
  5. Luben TuikovOct 27, 2006

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.