git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] git-checkout: allow pathspec to recover lost working tree directory
@ 2006-11-15 19:07 Junio C Hamano
  2006-11-16  1:17 ` Anand Kumria
  2006-11-17 15:44 ` Petr Baudis
  0 siblings, 2 replies; 4+ messages in thread
From: Junio C Hamano @ 2006-11-15 19:07 UTC (permalink / raw)
  To: git

It is often wanted on the #git channel that this were to work to
recover removed directory:

	rm -fr Documentation
	git checkout -- Documentation
	git checkout HEAD -- Documentation ;# alternatively

Now it does.

Signed-off-by: Junio C Hamano <junkio@cox.net>
---
 * Back to fixing usability issues one at a time instead of
   throwing everything away with bathwater.

 git-checkout.sh |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/git-checkout.sh b/git-checkout.sh
index eb28b29..737abd0 100755
--- a/git-checkout.sh
+++ b/git-checkout.sh
@@ -112,7 +112,11 @@ Did you intend to checkout '$@' which ca
 		git-ls-tree --full-name -r "$new" "$@" |
 		git-update-index --index-info || exit $?
 	fi
-	git-checkout-index -f -u -- "$@"
+
+	# Make sure the request is about existing paths.
+	git-ls-files --error-unmatch -- "$@" >/dev/null || exit
+	git-ls-files -- "$@" |
+	git-checkout-index -f -u --stdin
 	exit $?
 else
 	# Make sure we did not fall back on $arg^{tree} codepath
-- 
1.4.4


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2006-11-17 15:45 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-11-15 19:07 [PATCH] git-checkout: allow pathspec to recover lost working tree directory Junio C Hamano
2006-11-16  1:17 ` Anand Kumria
2006-11-16  2:00   ` Junio C Hamano
2006-11-17 15:44 ` Petr Baudis

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).