I was used subversion for Xcode 3, but I found there is a checkbox to use local git in Xcode 4 when create a new project, I want to know which one is better under Xcode 4?
I can't tell you which is better since I'm only using subversion with Xcode 4. There are definitely some problems with the subversion support in Xcode 4, more than in Xcode 3. For simple use it mostly works fine. Deleting a file from the repository using Xcode or tagging the repository can cause Xcode to get confused or to crash. But I am using it and getting work done.
Yes, I tag from the command line and when I have to fix problems that Xcode can't I do it from the command line. However the file compare view in Xcode is miles better than anything you get from the command line. Also the basics of telling what files have changed and doing commits works well from Xcode.