Merge pull request #946 from AlanZhang2002/ambiguous-git-reset
added separator after ref to remove git reset --soft ambiguity
This commit is contained in:
commit
2c9f83bbee
2
main.go
2
main.go
|
|
@ -1780,7 +1780,7 @@ func (git *repoSync) SyncRepo(ctx context.Context, refreshCreds func(context.Con
|
||||||
// Reset the repo (note: not the worktree - that happens later) to the new
|
// Reset the repo (note: not the worktree - that happens later) to the new
|
||||||
// ref. This makes subsequent fetches much less expensive. It uses --soft
|
// ref. This makes subsequent fetches much less expensive. It uses --soft
|
||||||
// so no files are checked out.
|
// so no files are checked out.
|
||||||
if _, _, err := git.Run(ctx, git.root, "reset", "--soft", remoteHash); err != nil {
|
if _, _, err := git.Run(ctx, git.root, "reset", "--soft", remoteHash, "--"); err != nil {
|
||||||
return false, "", err
|
return false, "", err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
34
test_e2e.sh
34
test_e2e.sh
|
|
@ -1491,6 +1491,40 @@ function e2e::sync_crash_no_worktree_cleanup_retry() {
|
||||||
assert_file_eq "$ROOT/link/file" "${FUNCNAME[0]}"
|
assert_file_eq "$ROOT/link/file" "${FUNCNAME[0]}"
|
||||||
}
|
}
|
||||||
|
|
||||||
|
##############################################
|
||||||
|
# Test syncing if a file named for the SHA exists
|
||||||
|
##############################################
|
||||||
|
function e2e::sync_sha_shafile_exists() {
|
||||||
|
echo "${FUNCNAME[0]} 1" > "$REPO/file"
|
||||||
|
git -C "$REPO" commit -qam "${FUNCNAME[0]} 1"
|
||||||
|
SHA1=$(git -C "$REPO" rev-list -n1 HEAD)
|
||||||
|
echo "${FUNCNAME[0]} 2" > "$REPO/file"
|
||||||
|
git -C "$REPO" commit -qam "${FUNCNAME[0]} 2"
|
||||||
|
SHA2=$(git -C "$REPO" rev-list -n1 HEAD)
|
||||||
|
|
||||||
|
GIT_SYNC \
|
||||||
|
--one-time \
|
||||||
|
--repo="file://$REPO" \
|
||||||
|
--ref="$SHA1" \
|
||||||
|
--root="$ROOT" \
|
||||||
|
--link="link"
|
||||||
|
assert_link_exists "$ROOT/link"
|
||||||
|
assert_file_exists "$ROOT/link/file"
|
||||||
|
assert_file_eq "$ROOT/link/file" "${FUNCNAME[0]} 1"
|
||||||
|
|
||||||
|
touch "$ROOT/$SHA2"
|
||||||
|
|
||||||
|
GIT_SYNC \
|
||||||
|
--one-time \
|
||||||
|
--repo="file://$REPO" \
|
||||||
|
--ref="$SHA2" \
|
||||||
|
--root="$ROOT" \
|
||||||
|
--link="link"
|
||||||
|
assert_link_exists "$ROOT/link"
|
||||||
|
assert_file_exists "$ROOT/link/file"
|
||||||
|
assert_file_eq "$ROOT/link/file" "${FUNCNAME[0]} 2"
|
||||||
|
}
|
||||||
|
|
||||||
##############################################
|
##############################################
|
||||||
# Test changing repos with storage intact
|
# Test changing repos with storage intact
|
||||||
##############################################
|
##############################################
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue