On Apr 27, Ryan Culpepper wrote: > Perhaps it's because we're still working out how to do things, but > git practice seems to be at war with its data model.
[If the purpose here is to flame, then I'll ignore it.] > Branches aren't for separate branches of development; we should use > separate repositories instead. Branches are for separate branches of development. Using a separate repository is encouraging that by allowing you to create any number of them, even if the branch is meaningless to anyone else. > Rebasing* seems to be about ignoring git's natural handling of > merges Rebasing is for cases where you want to "flatten" the commit history, it is as "natural to git" as merging is, and a similar kind of work is needed in both cases. Since the plt history is, well, "not too organized", the decision currently depends on what's more convenient. The problem with rebasing is that you create a new line of commits from the previous one, so if the the previous line is available somewhere public (= on an existing clone), then those other clones will have a different idea where the line for branch X is. If you have a private repository with one clone on your machine, this is not a problem. If you have a private repository with multiple clones, then you probably will not want to do this for updates, but you can later do so when you push the new work to the main repository. > by making it emulate a really-hard-to-use variant of subversion. A "variant of subversion" is kind of in the right direction, but re "really hard to use" -- is adding `--rebase' so hard? On Apr 27, Robby Findler wrote: > For some context: I was hoping that gits fanciness would allow me to > have some kind of intermediary between the public repository and my > various machines. That is, I imagine something where I can let my > laptop and my machine at home talk to my machine at work so that > changes I make can be visible in all three places without having to > make them public to the whole world. As I said in the previous message: git push fast-machine:path/to/repo master would push commits from your current repository and branch to the master branch on a remote one. -- ((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay: http://barzilay.org/ Maze is Life! _________________________________________________ For list-related administrative tasks: http://list.cs.brown.edu/mailman/listinfo/plt-dev