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

Re: Managing several threads of the same project in GIT

From
SBSanti Béjar <santi@agolina.net>
Date
Dec 26, 2008, 11:50 UTC
Message-ID
<adf1fd3d0812260350h6da65cf0p164b52407ce6767@mail.gmail.com>
In-Reply-To
<loom.20081226T110416-269@post.gmane.org>
2008/12/26 pggrd <git@paggard.com>:
Show 8 quoted lines
> Hello,
>
> I've been studying GIT for some time already, but still have not figured out if
> it can be used for the scenario like this:
>
> for example:
>
> I have a project, which divides to threads aiming to different clients
I suppose what you call threads are branches in git.
Show 11 quoted lines
> most of the code in the project is shared between the threads
> in certain files there are different code parts to meet client requirements
> but even those files share the rest of the code
>
> What I need to be able to do is:
> - to get code for any thread I like at any time
> - to be able to develop each thread separately
> - to be able to merge certain changes from one thread to another, at the same
> time without loosing the changes specific to the thread, and keep track of merge
> history
>

Git works best with convergent branches, so all branches should have more or less the same code.

What you can do is to have different configuration for each client (or Makefile variables), in the same way git supports different architectures, different sha1 implementations, etc. All the code is there and you just choose which one to use.

Santi
Previous: pggrdNext: Sitaram Chamarty
Message 2 of 3 in “Managing several threads of the same project in GIT”
  1. pggrdDec 26, 2008
  2. Santi BéjarDec 26, 2008
  3. Sitaram ChamartyDec 26, 2008

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.