Theodore Tso <tytso@xxxxxxx> writes: > So with Bitkeeper, with "bk pull" there was never any question about > which branch ("line of development") you would be merging into after > doing a "bk pull", since there was only one LOD, and given that BK had > the rule that a within a LOD only one tip was allowed, a "bk pull" > _had_ to do do a merge operation. I've never used Bk and I really appreciate your comments here. > If you are operating on your local development branch, the reality is > that merging is probably not the right answer in the general case, I agree, but I wonder why you are pulling/fetching (with or without merge) if you are operating on your local development branch (implying that you are in the middle of something else). > ... And by > telling people, use "git fetch" instead, that's also an implicit > admission that merging onto the current branch is often not the Right > Thing. > > The problem is that "pull" is a very evocative word, especially given > the existence "push", and so in the git world we are reduced to > telling people, "you really don't want to use pull, trust me". I would rather say "use 'git branch' to make sure if you are ready to merge". Who teaches not to use "git pull"? > If people are looking for a simple way out, maybe it would be enough > to have an option where if "git pull" is called from an interactive > terminal, and the "novice user" option is enabled, "git pull" returns > a warning message, I have to disagree with this. In the simplest CVS-like central repository with single branch setup in which many "novice users" start out with, there is almost no need for "git fetch" nor tracking branch. You pull, resolve conflicts, attempt to push back, perhaps gets "oh, no fast forward somebody pushed first", pull again, then push back. So I am not sure where "you really do not want to use pull. trust me" comes from. It is a different story for people who _know_ git enough to know what is going on. They may be using multiple branches and interacting with multiple remote branches, and there are times you would want fetch and there are other times you would want pull. But for them, I do think the suggestion would never end with "trust me" -- they would understand what the differences are. - To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html