How can I track a template?

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

How can I track a template?

From: Mike Sharov <hidden>
Date: 2016-06-15 22:45:19

I am trying to create a standard module to be included into many
projects. Specifically, the build system skeleton, but I have other uses
for the same mechanism. The idea is to have a repository with the
skeleton itself, and have other projects include it somehow and keep
up-to-date by pulling from the template repository.

The straightforward approach of using 'git pull' does not work very
well. At each merge, all the things changed show up. For example, I
would change the project name in the configure template. This change
creates a merge conflict on every pull even if that particular line did
not change in the template. Somehow it just doesn't seem to establish a
base for the merges. Another problem is that the tags get pulled and
become tags on the project, which is undesirable.

What sort of a solution would you recommend for this, if any?
-- 
Mike Sharov

Re: How can I track a template?

From: Andreas Ericsson <hidden>
Date: 2016-06-15 22:45:19

Mike Sharov wrote:
I am trying to create a standard module to be included into many
projects. Specifically, the build system skeleton, but I have other uses
for the same mechanism. The idea is to have a repository with the
skeleton itself, and have other projects include it somehow and keep
up-to-date by pulling from the template repository.

The straightforward approach of using 'git pull' does not work very
well. At each merge, all the things changed show up. For example, I
would change the project name in the configure template. This change
creates a merge conflict on every pull even if that particular line did
not change in the template. Somehow it just doesn't seem to establish a
base for the merges. Another problem is that the tags get pulled and
become tags on the project, which is undesirable.

What sort of a solution would you recommend for this, if any?
Enable rerere, the merge resolution recorder/replayer.
Pull from skeleton repo with --no-tags, and remove the tag-fetching
refspec from your .git/config (note that everyone has to do it, but
if only you integrate the updated skeleton that won't be a problem).

Or unconditionally include a project.mak (or some such) from the build
skeleton which sets all the project-specific details.

-- 
Andreas Ericsson                   andreas.ericsson@op5.se
OP5 AB                             www.op5.se
Tel: +46 8-230225                  Fax: +46 8-230231
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help