On Fri, Apr 10, 2009 at 5:47 PM, Matthew Brett <matthew.br...@gmail.com> wrote: > Hi, > > I enjoyed this quote from http://www.eecs.harvard.edu/~cduan/technical/git/ > > Summary: You can only really use Git if you understand how Git works. > > "When I first started using Git, I read plenty of tutorials, as well > as the user manual. Though I picked up the basic usage patterns and > commands, I never felt like I grasped what was going on “under the > hood”, so to speak. Frequently this resulted in cryptic error > messages, caused by my random guessing at the right command to use at > a given time. These difficulties worsened as I began to need more > advanced (and less well documented) features. > > After a few months, I started to understand those under-the-hood > concepts. Once I did, suddenly everything made sense. I could > understand the manual pages and perform all sorts of source control > tasks. Everything that seemed so cryptic and obscure now was perfectly > clear. > Understanding Git > > The conclusion I draw from this is that you can only really use Git if > you understand how Git works. Merely memorizing which commands you > should run at what times will work in the short run, but it’s only a > matter of time before you get stuck or, worse, break something." >
break something: I updated my eclipse so I can try out the git eclipse plugin. Except for a description how to clone a github repository and push back to it, I didn't find much information on the internet. cloning from a remote repository (pymvpa), setting it up for local version control in eclipse and converting to a pydev project went very easily. Creating local branches and a clone in a parallel directory tree also worked. >From then on its working mostly blind. Working with branches in one repository doesn't clearly indicate which branch I'm in and which branch my files belong to. `checkout` doesn't appear to change the visible files on the hard drive as with the command line, switching a branch with `reset` can be soft, mixed or hard. `hard` changes the files with a warning that all edits will be overwritten, but it doesn't tell whether there are any uncommitted changes in files. Fetching between clones seemed to work, there are still some things that I need to figure out, it wasn't always clear whether my commits actually happened or not. But finally with switching around, I managed to get a "circular reference" in my clone, and now I cannot access it as git repository any more. On the command line, git says this is not a repository. So I guess it's gone with all the changes that are not currently on the file system. I still miss a git directory browser with status information for each file, and I still didn't manage to get diffs between branches or clones. I can fetch or push, but I cannot see directly what it is that I'm pulling or pushing, except maybe a long alphanumeric status code. Without a help file, I wasn't sure what I was doing, but, for sure, git eclipse is not foolproof and not very self-explanatory. For someone used to a real and not a virtual file system, I will, for now, stay away from saving any of my edits in branches, that might disappear when I make a mistake. And both git gui and the eclipse plugin seem to require still some work before they are really useful, unless there are some working examples and recipes to proof my impression wrong. But from the webpages of the gui and eclipse plugin, there seems to be currently a lot of work going on. Simple cloning from and committing to a real remote repository seems to work easily enough, but then there isn't much reason to switch away from svn, if maintaining several local branches is a risky pain. So for users who don't "get it", the branch system of bazar and mercurial is a lot more intuitive than git. Josef _______________________________________________ Numpy-discussion mailing list Numpy-discussion@scipy.org http://mail.scipy.org/mailman/listinfo/numpy-discussion