* [PATCH 2/2] Let git-checkout always drop any detached head
@ 2007-02-04 2:50 Nicolas Pitre
2007-02-04 2:58 ` Nicolas Pitre
0 siblings, 1 reply; 2+ messages in thread
From: Nicolas Pitre @ 2007-02-04 2:50 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
We used to refuse leaving a detached HEAD when it wasn't matching an
existing ref so not to lose any commit that might have been performed
while not on any branch (unless -f was provided).
But this protection was completely bogus since it was still possible
to move to HEAD^ while still remaining detached but losing the last
commit anyway if there was one.
Now that we have a proper reflog for HEAD it is best to simply remove
that bogus (and admitedly annoying) protection and simply display the
last HEAD position instead. If one wants to recover a lost detached
state then it can be retrieved from the HEAD reflog.
Signed-off-by: Nicolas Pitre <nico@cam.org>
---
git-checkout.sh | 17 ++---------------
1 files changed, 2 insertions(+), 15 deletions(-)
diff --git a/git-checkout.sh b/git-checkout.sh
index 99b8779..e4cce06 100755
--- a/git-checkout.sh
+++ b/git-checkout.sh
@@ -164,22 +164,9 @@ If you want to create a new branch from this checkout, you may do so
(now or later) by using -b with the checkout command again. Example:
git checkout -b <new_branch_name>"
fi
-elif test -z "$oldbranch" && test -n "$branch"
+elif test -z "$oldbranch" && && test -z "$quiet"
then
- # Coming back...
- if test -z "$force"
- then
- git show-ref -d -s | grep "$old" >/dev/null || {
- echo >&2 \
-"You are not on any branch and switching to branch '$new_name'
-may lose your changes. At this point, you can do one of two things:
- (1) Decide it is Ok and say 'git checkout -f $new_name';
- (2) Start a new branch from the current commit, by saying
- 'git checkout -b <branch-name>'.
-Leaving your HEAD detached; not switching to branch '$new_name'."
- exit 1;
- }
- fi
+ echo >&2 "Previous HEAD position was $old"
fi
if [ "X$old" = X ]
--
1.5.0.rc2.651.g3924-dirty
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH 2/2] Let git-checkout always drop any detached head
2007-02-04 2:50 [PATCH 2/2] Let git-checkout always drop any detached head Nicolas Pitre
@ 2007-02-04 2:58 ` Nicolas Pitre
0 siblings, 0 replies; 2+ messages in thread
From: Nicolas Pitre @ 2007-02-04 2:58 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git
OK obviously I can't send proper patches today.
On Sat, 3 Feb 2007, Nicolas Pitre wrote:
> diff --git a/git-checkout.sh b/git-checkout.sh
> index 99b8779..e4cce06 100755
> --- a/git-checkout.sh
> +++ b/git-checkout.sh
> @@ -164,22 +164,9 @@ If you want to create a new branch from this checkout, you may do so
> (now or later) by using -b with the checkout command again. Example:
> git checkout -b <new_branch_name>"
> fi
> -elif test -z "$oldbranch" && test -n "$branch"
> +elif test -z "$oldbranch" && && test -z "$quiet"
Of course there is one "&&" too many.
Nicolas
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2007-02-04 2:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-02-04 2:50 [PATCH 2/2] Let git-checkout always drop any detached head Nicolas Pitre
2007-02-04 2:58 ` Nicolas Pitre
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).