{"thread":{"id":"20175","subject":"[ANNOUNCE] update-base-branch: Track arbitrary external content in Git branch","startedAt":"2009-07-21T14:29:02Z","lastAt":"2009-07-21T14:29:02Z","messageCount":1,"participants":["Johan Kiviniemi"],"isPatch":false,"patchVersion":null,"patchTotal":null},"messages":[{"id":"118368","messageId":"bd9320b40907210729q32b3e031r54cc7474d1b5685d@mail.gmail.com","threadId":"20175","inReplyTo":null,"subject":"[ANNOUNCE] update-base-branch: Track arbitrary external content in Git branch","fromName":"Johan Kiviniemi","fromEmail":"johan@kiviniemi.name","sentAt":"2009-07-21T14:29:02Z","receivedAt":"2009-07-21T14:29:02Z","isPatch":false,"sender":{"key":"johan@kiviniemi.name","avatar":null},"body":"To reduce the pain with the merging of my config changes (for various\nsoftware) with upstream’s new defaults, I came up with a small program\nto track the default config files in a Git branch.\n\nWith things set up, the update and the merge become a matter of:\n\n% ./update-defaults (or whatever you’ll call your script)\n% git merge defaults (or whatever you’ll call the defaults branch)\n\nThe program is generic, of course – I’ve already found other uses for it[1].\n\nThe README:\nhttp://github.com/ion1/update-base-branch#readme\n\nHow I use the program in real life – examples of what the\nupdate-defaults script mentioned above could look like:\nhttp://github.com/ion1/update-base-branch/tree/master/examples#browser\n\nRelease tarball:\nhttp://johan.kiviniemi.name/software/update-base-branch/\n\nA demonstration: using the program to update the user config for the\nAwesome window manager:\nhttp://www.youtube.com/watch?v=RQ3CqJ4jM90&fmt=18\n\n[1] If there is no public VCS repository for a piece of software and\nyou want to maintain/send patches, use update-base-branch to track the\ncontents of the latest released tarball and merge that branch with\nyour ‘master’.\n\n-- \nJοhan Kiviniemi\n"}]}