Re: Tracking vendor release with Git
- From
Carsten Fuchs <carsten.fuchs@cafu.de>
- Date
- Jun 12, 2013, 08:17 UTC
- Message-ID
- <51B82E8E.8010402@cafu.de>
- In-Reply-To
- <1370970410-7935-1-git-send-email-ydroneaud@opteya.com>
Hi Yann,
Am 2013-06-11 19:06, schrieb Yann Droneaud:
Show 14 quoted lines
> I'm trying to setup a workflow to track vendor releases (upstream). > Each new release are provided as an archive of source code, data, > documentation, etc. > > For each vendor releases, fixes need to be applied before making them > available to users (downstream). > > Seems to be a rather common use case, applied by most Linux distribution > for decades. > > In my case, on top of each releases, a common set of patches will be applied, > the biggest, the most intrusive one, being converting CRLF to LF using dos2unix, > the others being small portability fixes. In this case, fixes are not going to > be applied by upstream.
If you did the end-of-line conversion via .gitattributes rather than explicitly as a patch, maybe the strategy described at http://happygiraffe.net/blog/2008/02/07/vendor-branches-in-git/ is what you're looking for?
If besides the <pristine-vendor> branch you need another <patched-vendor> branch, this should be extensible, inserting another "layer" into the middle. Copying and modifying Johannes' graph:
U---V-----W <-- upstream branch (pristine vendor)
\ \ \
C---D-----E <-- patched vendor
\ \ \
K---L--M--N--O <-- downstream branch ("master" in above linked text)Best regards, Carsten
-- Dipl.-Inf. Carsten Fuchs Carsten Fuchs Software Industriegebiet 3, c/o Rofu, 55768 Hoppstädten-Weiersbach, Germany Internet: http://www.cafu.de | E-Mail: info@cafu.de Cafu - the open-source game and graphics engine for multiplayer 3D action