Loui Chang wrote:
On Mon, Feb 23, 2009 at 08:34:59AM +1300, Bryan Ischo wrote:
Well I find git to be kind of painful, to be honest. Maybe I'm not using it correctly? Every git command is very fast, but there are so many of them to run as part of recreating patches, and so many little details to get right every time.
Have a look at `man git-rebase`
If you're in a branch called 'old' and want to update your patches to apply cleanly to master you would just do `git rebase master`.
Files with conflicts will have special markers similar to what svn does when there are conflicts updating or merging like:
Just edit the file so the patch is as you intend, and continue with the rebase.
Thanks for the tip. So using git-rebase is the better way to incorporate feedback into patches? It's not just that I'm trying to make my existing patches apply cleanly on some other branch. It's that I have to 'redo' the changes because I have to incorporate feedback and make modifications to the changes from which the patches originally were derived. So git-rebase will help me with this? I've used git-rebase before, but only to bring unmodified patches from one branch to another, or from one part of a branch to another part (once I have sent out patches and they haven't gone into the official git repository yet, I use git-rebase in my own git tree to occasionally bring the patches forward past all of the changes that I pull in from the master repository, so that I can be sure that they would cleanly apply without changes to the master repository), but I've never considered using it to allow me to re-stage patches and modify them in place. Thanks, Bryan