3 ms·
This quote is priceless: > Git allows the topic-branch development style, where you maintain one short-lived branch for every task you work on. Like many peop
by pseut 14y ago
This quote is priceless:
> Git allows the topic-branch development style, where you maintain one short-lived branch for every task you work on. Like many people, I learned about this style from distributed version control. I love it. It’s an excellent way to switch between tasks, and maps well to the way I actually think about the state of the project.
But you don’t need Git to do this! Subversion has “svn switch”. It does have an annoying problem that if you specify the wrong URL to switch to, it will trash your local copy rather badly. However, Subversion seems to have fixed that problem in version 1.7.
Quite an annoying problem. I'm not really sure why the author is a git skeptic if it enables and introduced him or her to a wonderful workflow.
The ability to easily work on multiple branches and make offline commits is a huge selling point for any DVCS. I really like git rebase and git add -p now as direct arguments for git, but wouldn't have used them right away.
Edit: added clarification after quote
- javert 14y ago> I'm not really sure why the author is a git skeptic if it enables and introduced him or her to a wonderful workflow. Perhaps because you can do the same thing in SVN? At least, that's what he says. I don't really know SVN.
- ambrice 14y agoYou could do topic branches in SVN, it would just be painful. It's sort of like saying "Why use C++? You can do object oriented programming in C with structs and function pointers."
- csense 14y agoActually, I like to avoid the bloat of C++ and just use "object-oriented" C with structs and function pointers wherever possible. This is largely due to the fact that I have a strong aesthetic preference for languages where you can hold most of the language [1] in your head. Such languages are called compact [2]. [1] Compactness of language and standard library are different. Having a non-compact standard library isn't necessarily a bad thing, especially if it means I don't have to complicate my life with third-party libraries. [2] http://www.catb.org/esr/writings/taoup/html/ch04s02.html http://www.catb.org/esr/writings/taoup/html/ch04s02.html
- mpyne 14y agosvn switch is much inferior compared to git checkout... it is slow and requires a server roundtrip unless you just use svn switch --relocate (which doesn't do the same thing, it happens to be a separate feature with the same interface).
- pseut 14y ago> Perhaps because you can do the same thing in SVN? And, until (apparently) recently, if you make a mistake SVN will "trash your local copy rather badly" which isn't quite the same thing.
- javert 14y agoWho cares about the past? It's not like I'm going to go download an old version of SVN. That's why I disregarded that part.
- pseut 14y agoOk. I'm pretty sure (and as mentioned in other comments), you also need to have a connection to the machine with the repo to do this with SVN. My work desktop is Red Hat, so I'm (unfortunately) used to downloading old versions of software...