Hi, On Thu, 12 Jun 2008, Carl D. Sorensen wrote:
> > From: Johannes Schindelin [mailto:[EMAIL PROTECTED] > > > > On Mon, 2 Jun 2008, Carl D. Sorensen wrote: > > > > > I built a fork, but was not successful in getting it merged. > > > Probably something with windows, git, and ssh not working well > > > together for me. > > > > I must have missed that. Can I be of assistance? > > Thanks for the offer. Perhaps you can. I'm willing to give it another > try. > > I currently have the following: > > 1. A fork of lilypond on git.repo.or.cz (lilypond/csorensen.git that > has some improved FretDiagrams functionality, but Han-Wen couldn't > pull it into the main version because there were too many merge > conflicts and he wanted me to resolve them first. Also, there were > line-end problems due to my editor that made the patches immense, so > I redid them. But I think those are only on my local repository > because I couldn't push them, perhaps because I had the wrong ssh key > because I changed from my Windows laptop to my Fedora desktop for my > development machine. First of all, you have to update the ssh keys. If you provided a valid email address when registering your account, you can edit the keys with this link: http://repo.or.cz/m/edituser.cgi (You can also reach it from the main page, following the link "Update user SSH keys".) > 2. A local git repository with some changed scheme files on my Fedora > Core computer (don't remember which version of Fedora Core -- it was > mostly for LilyPond development, and I haven't done much of that for > about 8 months). The local git repository has some corrections > relative to the fork. > > What I would like to do: > > 1. Compare the local git repository to the csorensen fork and see what > the differences are. Then I'd like to merge them to get a best-of. > But just in case I mess up, I don't want to lose either of the > repositories. git should be able to handle that, but I haven't been > able to figure out the right commands. The easiest way would be to fetch the csorensen fork into your local repository: $ git remote add repo \ [EMAIL PROTECTED]:/srv/git/lilypond/csorensen.git $ git fetch repo Then you have so-called "remote branches", i.e. branches that track some remote repository. You can see them with $ git branch -r Now you can see the diff of the current checkout relative to the remote branch with $ git diff repo/localtest You can also see a diff between two branches: $ git diff origin/master..repo/localtest > I'd like to end up with best-of in both my local repository and the > fork. You might need to identify the single commits that you want. Of course, since you forked off of upstream's master, you have a few commits that you might want to "rebase", i.e. re-apply them on top of the current master: $ git fetch origin $ git rebase -i origin/master I said "-i" here so that the commits that are to be re-applied will be shown in an editor first. You can abort if you do not like that by deleting the whole list, saving and exiting the editor. Otherwise, just exit the editor. "rebase -i" also allows to reorder the commits, maybe you want that, too. However, since you re-apply them on top of a different state, conflicts can happen at every stage. This will look like the regular merge conflicts (<<< ... === ... >>>). After fixing these, you need to "git add" these files and then "git rebase --continue", which will finish the commit. > 2. Once I have best-of in my local repository, I'd like to merge it > (locally) with the lilypond git. Once I accomplish the merge, I > should be able to test for improved FretDiagrams fucntionality. > Once it's tested and proven, I'd like to push it to the csorensen > fork, and make it available for Han-Wen to cherry-pick. Great! > So, can you give me recommendations on how to get started with this? I hope I did so. Do not hesitate to bug me with questions, even if I am a bit slow at the moment, because I am simply overloaded with work. Ciao, Dscho _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-devel