Любой способ «git checkout».подскажите перед удалением немаркированных правок? - PullRequest
0 голосов
/ 19 января 2012

Полагаю,

git checkout .

удаляет все неотмеченные изменения, потому что - необязательно в:

git checkout [-p|--patch] [<tree-ish>] [--] [<paths>...]

Это похоже на то, что я мог бы опечатать, и нет "ты уверен?" проверь, даже в git-config насколько я вижу. И поскольку эти изменения никогда не были зафиксированы, они, конечно, не включены в список изменений, поэтому нет никакого способа их вернуть.

Можно ли как-нибудь подсказать мне, прежде чем удалять мои незатронутые изменения? Я сделал фрагмент TextExpander, который переписывает git checkout. как # git checkout. , но, надеюсь, есть лучший способ.

1 Ответ

1 голос
/ 19 января 2012

Вы можете добавить псевдоним и убедить себя использовать его вместо этого.IE, создайте этот скрипт оболочки:

#!/bin/sh

if test "$1" = "." ; then
    echo -n "Are you sure (y/n)? "
    read ans
    if test "$ans" != "y" ; then
    echo "aborting"
    exit
    fi
fi

git checkout "$@"

и назовите его git-safecheckout, а затем присвойте ему псевдоним:

# git co .
git co .
Are you sure (y/n)? n
aborting

# git co .
Are you sure (y/n)? y
#

[Очевидно, что есть миллионы способов, которыми вы можете ползти, используя шеллскрипт]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...