Best skeleton support approach for my projects with git

For several years I have been looking for a way to manage several of the projects that I am working on. Each of them is different in different ways, but the core of the application is common to all. When I implemented some new features in the current project, it was difficult to use them later in another project. I had to search many projects to find this feature.

Then git came along, and it helped greatly improve project management. I created one skeletal project, which implements the entire structure of the application and the main libraries, tools and modules. This is the basis for every new project that I start. It looks like this:

mkdir new_project
cd new_project
git init

Skeleton fusion time:

git remote add skeleton git@domain:skeleton.git
git fetch skeleton
git merge skeleton/master

Now here is the project setup, changing ini files, adding custom templates, modules, presenters, etc. Now the project lives its own life. After some time, merging with the updated skeleton occurs:

git fetch skeleton
git merge skeleton/master --no-commit

I like to see all the changes coming from the skeleton into the project, so --no-commit.

And here is my question. What is the best way to maintain a skeleton? When adding new functions to every project that uses the skeleton as a base, there are functions that are associated only with the current project. But there are functions for the application kernel, and I will need them in my next project, so I need to combine them with the framework.

git/merge git . ( meld, ) , , .

, , , , , , , .

+3
1

skeleton-improvements. , . ( , ):

git merge skeleton-improvements

, , , skeleton-improvements.

+1

Source: https://habr.com/ru/post/1791435/


All Articles