summaryrefslogtreecommitdiff
path: root/git-checkout.sh
AgeCommit message (Collapse)AuthorFilesLines
2005-10-18git-checkout: revert specific paths to either index or a given tree-ish.Libravatar Junio C Hamano1-15/+64
When extra paths arguments are given, git-checkout reverts only those paths to either the version recorded in the index or the version recorded in the given tree-ish. This has been on the TODO list for quite a while. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-10-15git-check-ref-format: reject funny ref names.Libravatar Junio C Hamano1-0/+2
Update check_ref_format() function to reject ref names that: * has a path component that begins with a ".", or * has a double dots "..", or * has ASCII control character, "~", "^", ":" or SP, anywhere, or * ends with a "/". Use it in 'git-checkout -b', 'git-branch', and 'git-tag' to make sure that newly created refs are well-formed. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-10-01Add git-symbolic-refLibravatar Junio C Hamano1-1/+2
This adds the counterpart of git-update-ref that lets you read and create "symbolic refs". By default it uses a symbolic link to represent ".git/HEAD -> refs/heads/master", but it can be compiled to use the textfile symbolic ref. The places that did 'readlink .git/HEAD' and 'ln -s refs/heads/blah .git/HEAD' have been converted to use new git-symbolic-ref command, so that they can deal with either implementation. Signed-off-by: Junio C Hamano <junio@twinsun.com>
2005-09-19[PATCH] Remove total confusion from "git checkout"Libravatar Linus Torvalds1-1/+1
The target to check out does not need to be a branch. The _result_ of the checkout needs to be a branch. Don't confuse the two, and then insult the user. Insulting is ok, but I personally get really pissed off is a tool is both confused and insulting. At least be _correct_ and insulting. Signed-off-by: Linus Torvalds <torvalds@osdl.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-09-16[PATCH] Make git-checkout failure message more friendly.Libravatar Junio C Hamano1-1/+2
... or less so, perhaps ;-). Suggested by Jeff Garzik. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-09-12[PATCH] Make 'git checkout' a bit more forgiving when switching branches.Libravatar Junio C Hamano1-0/+1
If you make a commit on a path, and then make the path cache-dirty afterwards without changing its contents, 'git checkout' to switch to another branch is prevented because switching the branches done with 'read-tree -m -u $current $next' detects that the path is cache-dirty, but it does not bother noticing that the contents of the path has not been actualy changed. Since switching branches would involve checking out paths different in the two branches, hence it is reasonably expensive operation, we can afford to run update-index before running read-tree to reduce this kind of false change from triggering the check needlessly. Signed-off-by: Junio C Hamano <junkio@cox.net>
2005-09-07Big tool rename.Libravatar Junio C Hamano1-0/+76
As promised, this is the "big tool rename" patch. The primary differences since 0.99.6 are: (1) git-*-script are no more. The commands installed do not have any such suffix so users do not have to remember if something is implemented as a shell script or not. (2) Many command names with 'cache' in them are renamed with 'index' if that is what they mean. There are backward compatibility symblic links so that you and Porcelains can keep using the old names, but the backward compatibility support is expected to be removed in the near future. Signed-off-by: Junio C Hamano <junkio@cox.net>