git add/rm handles making changes to the index and there is no similar concept in mercurial or subversion.
git add/rm handles making changes to the index and there is no similar concept in mercurial or subversion.
Also, some features are half-implemented, for example `git add -p` which does not trigger on file-additions (and sometimes is broke out of the box on some distros).
I like git, but the interface: not so much. Too many rough edges.
The blog post does not illustrate this, though :/.
Update: and for the downvotes, would you care to explain why?
edit: git add -p(atch) is supposed to create patches of existing files assuming that that is the most common use case. Use --interactive if you want to add new files and still do interactive patching.
About git add -p: yes, I am aware of -i, but it doesn't give you the easy "give me all changes to the file system and let me sign them off"-interaction that git add -p has. They are two completely different interaction modes.
5<enter>
*<enter>(all changed files) or 1-5<enter>(files 1-5 in the list) or 1,5,3<enter>(files 1, 5 and 3) etc...
then <enter> gets you to the staging that you are used to. this will get you into the quick patch mode that -p does.
-p is just a short circuit of this.