Hi Rosemary! Thanks! It's great to see this fixed!
I have a work flow for git that you may find useful in keeping the code manageable.
Work flow:
I make sure my 6.x/7.x/master branch always tracks the main islandora/discoverygarden repository, they may be a few commits behind (someone committed code in the interim) but it's never different. I never have commits in my 6.x/7.x/master branches that are not already present in the islandora/discoverygarden repository. This avoids merge problems and keeps me from committing code that I didn't want to commit.
When I want to create a new feature or fix a bug, I create a topic branch like so:
First I checkout my master branch.
git checkout 7.x
Then I update it so I know I'm running the latest code that is available in the public islandora/discoverygarden repository.
git update
The git update is a custom alias I've created which you can get below at the gist link. It basically grabs the latest for the current branch from the remote upstream then pushes those changes into my the remote origin. In this way my upstream remote is always the public canonical islandora/discoverygarden repository, and my remote origin is my personal repository on Github.
It expands into this:
git pull upstream 7.x && git push origin 7.x
So now that my master branch has the latest code, I create my topic branch.
git checkout -b 7.x-fixes-some-bug
Now I do whatever work is required.
If some other issue pop's up, I create another topic branch to deal with it separately, and again first I switch to my master branch.
git checkout 7.x
git update
git checkout -b 7.x-fixes-some-different-bug
I can do this with any number of topic branches, and send pull requests for each of them individually, or after working on several separate topic branches I may want to make them into a single branch. This can be done with rebases/merges.
git checkout 7.x-fixes-some-bug
git merge 7.x-fixes-some-different-bug or git rebase 7.x-fixes-some-different-bug
When I'm ready with my changes I push my topic branch to my personal remote, then issue a pull request.
git push -u origin 7.x-fixes-some-bug
Issue pull request.
Free Book on using Git:
I highly recommend reading the free Pro Git book found here: http://git-scm.com/book
Understanding how to a few of the basic features of git is well worth the investment, it's saved me countless hours of time.
My Custom Git Aliases:
Also checkout some of my git aliases to save you some time!
https://gist.github.com/nigelgbanks/5116805
Creating the pull request for this issue:
There is a lot of git features that aren't covered in the book above and I think cherry-pick is one of them so I've included my work flow below for getting your changes into a pull request.
Here's a walk though of what I did to cherry pick your commits into a separate pull request.
git remote add rosiel git://github.com/rosiel/islandora_xml_forms.git
git fetch rosier
I need to find out the commit hashes so I took a look at your history:
git log rosiel/7.x
commit 120075920a631339719728dd793dfb686e795ca5
Author: Rosemary Le Faive
Date: Tue Apr 23 17:37:02 2013 -0400
Insert missing ['#autocomplete_path'] element
commit d6e0b46564f541e3bcea5ad44099d566fe9bfc50
Author: Rosemary Le Faive
Date: Tue Apr 23 17:27:15 2013 -0400
Tag elements autocomplete.
…..
With this information I could then cherry-pick your two commits.
But before doing so I created a topic branch (So my local 7.x will still always track against my islandora 7.x)
git checkout -b 7.x-rosiel-tag-autocomplete
At this point my topic branch is the same as my 7.x branch which is the same as the islandora/7.x branch.
git cherry-pick d6e0b46564f541e3bcea5ad44099d566fe9bfc50
git cherry-pick 120075920a631339719728dd793dfb686e795ca5
Now that my topic branch has your two commits, I now push my whole topic branch to my personal Github repository.
I use my custom alias "remote-branch" which is defined in my configuration gist above.
git remote-branch
Which is equivelent to:
git push -u origin 7.x-rosiel-tag-autocomplete
Then I go onto Github and trigger issue the pull request.
https://github.com/Islandora/islandora_xml_forms/pull/85