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

Re: multiple checked out branches

From
Julian Phillips <julian@quantumfyre.co.uk>
Date
Aug 1, 2007, 22:19 UTC
Message-ID
<Pine.LNX.4.64.0708012309010.28202@beast.quantumfyre.co.uk>
In-Reply-To
<20070801220435.GA19226@raptus.dandreoli.com>
On Thu, 2 Aug 2007, Domenico Andreoli wrote:
> Hi again,
>
>  I would like to contemporaneously work with multiple branches out of
> the same git repository. This does not work out of the box.
Depends on how you define "the box" ...

There is a script to do this in contrib called git-new-workdir. It allows you to have multiple working directories from the same repository for exactly this purpose.

Show 9 quoted lines
> So I prepare multiple copies of the same repository, every one will have
> its own checked out branch but I want to share most of their .git subdir.
>
> I surely want to share the object db, the local and remote refs.
> This way it is enough to make a round of fetches/merges/pushes to have
> all the shared-repositories up to date.
>
> I expect to do the trick with some symlinks but I am not an expert of
> git internals. Which traps are waiting me? Any hint? Thank you.

Symlinks are exactly what is used by new-workdir to link the workdirs back to the original repository.

The biggest issue with doing this is that you have no protection against making changes on the same branch in more than one place - something you really don't want to be dealing with. Basically you need to be careful about updating refs that you have checkedout in workdirs.

-- 
Julian

  ---
...when fits of creativity run strong, more than one programmer or writer has
been known to abandon the desktop for the more spacious floor.
- Fred Brooks, Jr.
Previous: Domenico AndreoliNext: Domenico Andreoli
Message 2 of 6 in “multiple checked out branches”
  1. Domenico AndreoliAug 1, 2007
  2. Julian PhillipsAug 1, 2007
  3. Domenico AndreoliAug 2, 2007
  4. Guilhem BonnefilleAug 2, 2007
  5. Alex RiesenAug 1, 2007
  6. Johannes SchindelinAug 1, 2007

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.