How do I plan for a GIT branch?

Source: Internet
Author: User
Tags ticket using git

Project background:The project was a flight reservation system developed by a Dutch customer in November 2011 using the ASP. The customer is mainly a travel agency business in China and Europe, especially in the last two years as a result of China's development so the customer also more and more attention to the airline ticket business so they and where to communicate and cooperation, and I division to complete and where the ticket business Connected business because I was responsible for the client project from the start, so the docking business naturally fell on me.Problem Description:Because the docking function needs to be integrated with the current project, I just added a new project (Qunar) to the solution for the ticket reservation system, and I used git to version control separately (VSS was used before 2015 because of the branch function of git) Because where to go a feature is implemented in another API and does not have much to do with docking functionality, so it is done as a separate project (qunarservices) During the docking function, the site project also changes (docking function will affect the background of a function of the site) because the three branch implementation of the most of the functionality is not the same, so I can only according to different branches of management focus on three projects (four branches plus master) at the same time to develop, Because all projects use n common items (model, etc.), when a branch changes a common component project, the other three branches also need to be synchronized to be consistent (some branches may not be able to affect the functionality of the branch if they are not synchronized, but only three of the common items in the branch are synchronized) on how to merge some files from other branches, my current process is this:
    1. Verify the difference between the current branch and the branch you want to merge (the branch you want to merge must have all commit)
    2. Pull out all files (files in a common project) that you want to "merge differences in a branch file" git checkout branch name filename File name
    3. Add and commit to the current branch git commit-a-m ' comment merge some files from other branches and the description information when merging branch commits '
When a generic project file is rarely changed, the above scenario works well recently where the project is being finalized, so when the solution is consolidated, then I find that the common projects in the three branches are different (the last three branches have changed and not merged with the common project) This brings a lot of resistance to my integrated solution (I need to merge the three-branch generic project) because the generic project simply refers to the DLL component of the generic project. So there is absolutely no need to maintain it in each branch (since the beginning of 2015) so I was wondering if my solution plan had a problem and I was wrong about using git, but how do I rule the branch and the solution if I have a problem? Here's the problem:How to re-rule the entire solution and branch without losing the commit historythink of the solution:
    1. Filter common items in each branch without changing the current branch (do not delete the project file), keep it only the master branch (master has not been merged since 2015, need to merge the commit history of all common projects about 50+ to cycle through the merge process above)
    2. Filter the generic project from each branch and maintain it separately as a separate branch (similar to 1 also requires a cycle of the above consolidation process)
    3. Delete all branches and rebuild (not possible, with a lot of commit history)
    4. Other??
Current Branch Description:Master:vss migrated web Base branch (no commit since VSS Migration in 2015) website: master Web Project Branch QUNAR2: Based on master where to dock Project branch Qunartts: based on QUNAR2 Where to dock a service branch of a project

How do I plan for a GIT branch? Go

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.