{"thread":{"id":"24456","subject":"Handling multiple parallel versions.","startedAt":"2010-07-21T15:28:35Z","lastAt":"2010-07-21T17:09:38Z","messageCount":3,"participants":["Ian Hobson","Jonathan Nieder"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"145943","messageId":"4C471223.9050303@ianhobson.co.uk","threadId":"24456","inReplyTo":null,"subject":"Handling multiple parallel versions.","fromName":"Ian Hobson","fromEmail":"ian@ianhobson.co.uk","sentAt":"2010-07-21T15:28:35Z","receivedAt":"2010-07-21T15:28:35Z","isPatch":false,"sender":{"key":"ian@ianhobson.co.uk","avatar":null},"body":"Hi All,\n\nI need your advice.  I started with the \"Rebase master\" approach.\n\nNow I have...\n\nO--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O  Master\n| \\\n|  O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O London\n|\n| \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Birmingham\n|\n| \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Glasgow\n|\n| \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Sheffield\n|\n  \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Cardiff\n\nAll the rebase master's are taking an age (and involve many conflicts). \nThey are taking linger than the development.\n\nSo this solution is NOT working for maintaining parallel versions.\n\nI can get to.\n\nO  Master\n| \\\n|  O   London\n|\\\n|  O  Birmingham\netc\n\nby re-applying the differences between each version (they are a set of \nimages and a config file).\n\nThen I am left with the main problem that I need help with.\n\nWhen I have done some development and I have\n\nO--A--B  Master\n| \\\n|  O   London\n|\\\n|  O  Birmingham\netc\n\nhow do I get to the following?\n\nO--A--B  Master\n            | \\\n            |  B''   London\n            |\\\n            |  B'''  Birmingham\n              etc\n\nAnswers gratefully received.\n\nRegards\n\nIan\n"},{"id":"145944","messageId":"20100721165952.GA14144@burratino","threadId":"24456","inReplyTo":"4C471223.9050303@ianhobson.co.uk","subject":"Re: Handling multiple parallel versions.","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2010-07-21T16:59:52Z","receivedAt":"2010-07-21T16:59:52Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Hi Ian,\n\nIan Hobson wrote:\n\n> O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O  Master\n> | \\\n> |  O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O London\n> |\n> | \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Birmingham\n> |\n> | \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Glasgow\n> |\n> | \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Sheffield\n> |\n>  \\ O--O--O--O--O--O--O--many more--O--O--O--O--O--O--O--O Cardiff\n> \n> All the rebase master's are taking an age (and involve many\n> conflicts). They are taking linger than the development.\n> \n> So this solution is NOT working for maintaining parallel versions.\n\nI like the train track guide.  My suggestion would be to take a step\nback and consider what your requirements are.\n\n‘git rebase’ was designed to support a workflow in which individuals\nare responsible for short patch series (up to 10 patches, say) that\nhave not been reviewed and accepted yet.  To save reviewers the\ntrouble of placing themselves in a mindset of the past, the patch\nsubmitter occasionally “refreshes” the patches to fit an appropriately\nmodern codebase.\n\nWith this comes a downside: if the patch submitter immediately sends\nthe patches after doing this (bad submitter!), they are sending\nuntested code.  Furthermore, they make it very hard for /other people/\nto develop code on top of their constantly shifting code.  So when\na patch series grows long enough that a simple read-through would be\nunfeasible anyway, rebasing can be a very bad idea.\n\nYou may also be interested in\nhttp://thread.gmane.org/gmane.comp.video.dri.devel/34739/focus=34744\n\nGood luck,\nJonathan\n"},{"id":"145945","messageId":"20100721170938.GA14177@burratino","threadId":"24456","inReplyTo":"4C471223.9050303@ianhobson.co.uk","subject":"Re: Handling multiple parallel versions.","fromName":"Jonathan Nieder","fromEmail":"jrnieder@gmail.com","sentAt":"2010-07-21T17:09:38Z","receivedAt":"2010-07-21T17:09:38Z","isPatch":false,"sender":{"key":"jrnieder@gmail.com","avatar":"https://avatars.githubusercontent.com/u/281595?v=4"},"body":"Ian Hobson wrote:\n\n> So this solution is NOT working for maintaining parallel versions.\n[...]\n> re-applying the differences between each version (they are a set\n> of images and a config file).\n\nOkay, now that I’ve gotten that rebasing rant out of my system:\n\nI suspect the best thing would be to track the branding and\nconfiguration file separately from the main source tree.  See\n\nhttp://thread.gmane.org/gmane.comp.version-control.git/146084/focus=146097\n\nfor hints.\n\n(sorry for the noise)\nJonathan\n"}]}