I use Git and Lilypond. I know Git quite well, but haven't been using Lilypond much lately. I can see from this thread that I'm not using the two together efficiently, so I'll describe what I should be doing.

1) Keep a "tools" repository with the include files I depend on, and really should keep in one place.

2) Clone "tools" to a "music" repository in a different folder.

3) For a new composition, clone "tools" to a new folder, and make a branch.

4) Push this branch to the "music" repository, so that it becomes a single place with all my music that I can back up, share between devices, and so on. (You can link master in the composition repository to a branch in "music" if you like. I'll make the branch.)

5) Publish "tools" as a public repository on Bitbucket or wherever.

6) Clone music I don't want to be public to private repositories (you get a few free with Bitbucket).

7) If I change the include files and want them updated for a composition, pull from "tools" and merge in.

This way, the tools can be tracked independently of the music that uses them, but pieces that depend on a specific version of the tools won't magically break. It's both one and may repositories, which reflects the fluid nature of repositories in Git.

In practice, I think "tools" and "music" would be the same. I think I can publish only the branches I want without other changesets leaking out. If you worry about this, keep them distinct and pull only in one direction as I describe.


                      Graham


_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to