I'm wondering what is the best way of setting about this.
I use a PHP application called dokuwiki, it's mostly 'as released' and this makes updates etc. fairly easy. However I have a few local patches which I would like to keep track of and also would like to be able to re-install if/when they get overwritten when I get a newer version of dokuwiki.
How do I do this using git (or similar)? I don't want to sit at the bleeding edge of dokuwiki releases which is where I would be if I ran a local copy of the dokuwiki git repository.
What I want to do is to be able to use the current released version of dokuwiki but maintain a local collection of minor changes and patches.
(Dokuwiki isn't the only software I'd like to do this with, it's just the one that's obvious to me at the moment).
On 10 Aug 16:53, Chris G wrote:
I'm wondering what is the best way of setting about this.
I use a PHP application called dokuwiki, it's mostly 'as released' and this makes updates etc. fairly easy. However I have a few local patches which I would like to keep track of and also would like to be able to re-install if/when they get overwritten when I get a newer version of dokuwiki.
How do I do this using git (or similar)? I don't want to sit at the bleeding edge of dokuwiki releases which is where I would be if I ran a local copy of the dokuwiki git repository.
What I want to do is to be able to use the current released version of dokuwiki but maintain a local collection of minor changes and patches.
(Dokuwiki isn't the only software I'd like to do this with, it's just the one that's obvious to me at the moment).
Erm, clone the docuwiki repository, create your own branch, merge in their changes as you need them...
Your git checkout does *not* have to be at the same point as origin/master.
If they've got tags for the releases, then all the better.
So, clone their repository, then do: git checkout -f -b mychanges the-upstream-tag-name-of-the-release-you-want-to-run
Apply your patches, then when you want to update to a newer release do: git rebase the-new-upstream-tag
This is standard, normal git workflow type foo. Not rocket science.
On Wed, Aug 10, 2011 at 05:02:23PM +0100, Brett Parker wrote:
On 10 Aug 16:53, Chris G wrote:
I'm wondering what is the best way of setting about this.
I use a PHP application called dokuwiki, it's mostly 'as released' and this makes updates etc. fairly easy. However I have a few local patches which I would like to keep track of and also would like to be able to re-install if/when they get overwritten when I get a newer version of dokuwiki.
How do I do this using git (or similar)? I don't want to sit at the bleeding edge of dokuwiki releases which is where I would be if I ran a local copy of the dokuwiki git repository.
What I want to do is to be able to use the current released version of dokuwiki but maintain a local collection of minor changes and patches.
(Dokuwiki isn't the only software I'd like to do this with, it's just the one that's obvious to me at the moment).
Erm, clone the docuwiki repository, create your own branch, merge in their changes as you need them...
Your git checkout does *not* have to be at the same point as origin/master.
If they've got tags for the releases, then all the better.
So, clone their repository, then do: git checkout -f -b mychanges the-upstream-tag-name-of-the-release-you-want-to-run
Apply your patches, then when you want to update to a newer release do: git rebase the-new-upstream-tag
This is standard, normal git workflow type foo. Not rocket science.
OK, thanks very much, I'm not really very git aware yet. (I have read the tutorials and have one what I would call standard git repository where I'm cooperating with two others on some development.)