зеркало из https://github.com/microsoft/git.git
Merge branch 'maint'
* maint: Clarified the meaning of git-add -u in the documentation git-clone.sh: properly configure remote even if remote's head is dangling Documentation/git-stash: document options for git stash list send-email: squelch warning due to comparing undefined $_ to ""
This commit is contained in:
Коммит
23f12912d1
|
@ -74,8 +74,8 @@ OPTIONS
|
|||
Update only files that git already knows about. This is similar
|
||||
to what "git commit -a" does in preparation for making a commit,
|
||||
except that the update is limited to paths specified on the
|
||||
command line. If no paths are specified, all tracked files are
|
||||
updated.
|
||||
command line. If no paths are specified, all tracked files in the
|
||||
current directory and its subdirectories are updated.
|
||||
|
||||
\--refresh::
|
||||
Don't add the file(s), but only refresh their stat()
|
||||
|
|
|
@ -43,7 +43,7 @@ save [<message>]::
|
|||
subcommand is given. The <message> part is optional and gives
|
||||
the description along with the stashed state.
|
||||
|
||||
list::
|
||||
list [<options>]::
|
||||
|
||||
List the stashes that you currently have. Each 'stash' is listed
|
||||
with its name (e.g. `stash@\{0}` is the latest stash, `stash@\{1}` is
|
||||
|
@ -55,6 +55,9 @@ list::
|
|||
stash@{0}: WIP on submit: 6ebd0e2... Update git-stash documentation
|
||||
stash@{1}: On master: 9cc0589... Add git-stash
|
||||
----------------------------------------------------------------
|
||||
+
|
||||
The command takes options applicable to the linkgit:git-log[1]
|
||||
command to control what is shown and how.
|
||||
|
||||
show [<stash>]::
|
||||
|
||||
|
|
18
git-clone.sh
18
git-clone.sh
|
@ -409,11 +409,12 @@ else
|
|||
cd "$D" || exit
|
||||
fi
|
||||
|
||||
if test -z "$bare" && test -f "$GIT_DIR/REMOTE_HEAD"
|
||||
if test -z "$bare"
|
||||
then
|
||||
# a non-bare repository is always in separate-remote layout
|
||||
remote_top="refs/remotes/$origin"
|
||||
head_sha1=`cat "$GIT_DIR/REMOTE_HEAD"`
|
||||
head_sha1=
|
||||
test ! -r "$GIT_DIR/REMOTE_HEAD" || head_sha1=`cat "$GIT_DIR/REMOTE_HEAD"`
|
||||
case "$head_sha1" in
|
||||
'ref: refs/'*)
|
||||
# Uh-oh, the remote told us (http transport done against
|
||||
|
@ -470,9 +471,16 @@ then
|
|||
git config branch."$head_points_at".merge "refs/heads/$head_points_at"
|
||||
;;
|
||||
'')
|
||||
# Source had detached HEAD pointing nowhere
|
||||
git update-ref --no-deref HEAD "$head_sha1" &&
|
||||
rm -f "refs/remotes/$origin/HEAD"
|
||||
if test -z "$head_sha1"
|
||||
then
|
||||
# Source had nonexistent ref in HEAD
|
||||
echo >&2 "Warning: Remote HEAD refers to nonexistent ref, unable to checkout."
|
||||
no_checkout=t
|
||||
else
|
||||
# Source had detached HEAD pointing nowhere
|
||||
git update-ref --no-deref HEAD "$head_sha1" &&
|
||||
rm -f "refs/remotes/$origin/HEAD"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
|
|
|
@ -475,7 +475,7 @@ if ($thread && !defined $initial_reply_to && $prompting) {
|
|||
|
||||
$initial_reply_to = $_;
|
||||
}
|
||||
if (defined $initial_reply_to && $_ ne "") {
|
||||
if (defined $initial_reply_to) {
|
||||
$initial_reply_to =~ s/^\s*<?/</;
|
||||
$initial_reply_to =~ s/>?\s*$/>/;
|
||||
}
|
||||
|
|
|
@ -63,4 +63,12 @@ test_expect_success 'Even without -l, local will make a hardlink' '
|
|||
test 0 = $copied
|
||||
'
|
||||
|
||||
test_expect_success 'local clone of repo with nonexistent ref in HEAD' '
|
||||
cd "$D" &&
|
||||
echo "ref: refs/heads/nonexistent" > a.git/HEAD &&
|
||||
git clone a d &&
|
||||
cd d &&
|
||||
git fetch &&
|
||||
test ! -e .git/refs/remotes/origin/HEAD'
|
||||
|
||||
test_done
|
||||
|
|
Загрузка…
Ссылка в новой задаче