On Thu, 2012-07-05 at 11:32 -0400, Phil Hord wrote: > > The possible enhancements to cover this I can think of are mostly in > the form of enhanced help or advice. For example, I could imagine > these: > > 1. Add a link to 'git push' on the 'git-branch' man page. I suspect > this is where newbies would go to look for this feature, but I am only > guessing. The git-branch help discusses deleting branches and even > deleting remote-tracking branches. But it does not discuss deleting > branches on a remote repository, even to say "this is not the command > you want" for that action, but "see this other one instead". Yeah, that seems like a good addition. > > 2. Add 'apropos' behavior for git help. > $ git apropos delete > > Except I notice that the system 'apropos' does not turn up 'git-push' > for either of these: > $ apropos delete > $ apropos branch Huh, I don't think I've used apropos in years. I guess changing the subject to include removing/deleting would be conceivable, but we still have the issue that branches are a particular form of ref, which is what push acts on. > > 3. Add a search feature for help. Currently this feature is provided > instead by Google and StackOverflow. > $ git help --find delete --and branch --and remote > Except I don't expect this "advanced" form of help, if it existed, to > be noticed by newbies early enough on the learning curve. > > 4. Add advice in appropriate locations. > Instead of this: > $ git remote rm origin/foo > error: Could not remove config section 'remote.origin/foo' Ugh, this is horrible. We should definitely do better than this error message. > $ git branch -d origin/foo > error: branch 'origin/foo' not found. > > Do this: > $ git remote rm origin/foo > error: There is no remote named 'origin/foo' > hint: Did you mean to remove the remote tracking branch 'origin/foo'? > hint: Try "git branch --delete --remotes origin/foo" instead. > hint: Did you mean to remove the branch 'foo' on the remote > 'origin' repository? > hint: Try "git push --delete origin foo" instead. > > $ git branch -d origin/foo > error: branch 'origin/foo' not found. > hint: To delete the remote-tracking branch origin/foo, > hint: use git branch --delete --remotes origin/foo > > $ git branch -dr origin/foo > Deleted remote branch origin/foo (was fadda12). If we're changing error messages, this could probably do with an update to say "remote-tracking" branch so it's clearer that it didn't affect the branch on the remote. > hint: This deleted your remote-tracking branch but > hint: did not affect the branch on the remote server. > hint: To remove the branch from the remote server, > hint: use "git push". See '--delete' in "git help push" . > IMO these seem too verbose (but maybe I've just seen people post the old 'git pull' error message without even reading it too many times). cmn -- 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