Browse Source

Loosen "working file will be lost" check in Porcelain-ish

This uses the previous update to read-tree in Porcelain-ish
commands "git checkout" and "git merge" to loosen the check
when switching branches.

Signed-off-by: Junio C Hamano <junkio@cox.net>
maint
Junio C Hamano 18 years ago
parent
commit
1127148089
  1. 5
      git-checkout.sh
  2. 2
      git-merge.sh

5
git-checkout.sh

@ -161,7 +161,7 @@ then @@ -161,7 +161,7 @@ then
git-read-tree --reset -u $new
else
git-update-index --refresh >/dev/null
merge_error=$(git-read-tree -m -u $old $new 2>&1) || (
merge_error=$(git-read-tree -m -u --exclude-per-directory=.gitignore $old $new 2>&1) || (
case "$merge" in
'')
echo >&2 "$merge_error"
@ -172,7 +172,8 @@ else @@ -172,7 +172,8 @@ else
git diff-files --name-only | git update-index --remove --stdin &&
work=`git write-tree` &&
git read-tree --reset -u $new &&
git read-tree -m -u --aggressive $old $new $work || exit
git read-tree -m -u --aggressive --exclude-per-directory=.gitignore $old $new $work ||
exit

if result=`git write-tree 2>/dev/null`
then

2
git-merge.sh

@ -264,7 +264,7 @@ f,*) @@ -264,7 +264,7 @@ f,*)
echo "Updating $(git-rev-parse --short $head)..$(git-rev-parse --short $1)"
git-update-index --refresh 2>/dev/null
new_head=$(git-rev-parse --verify "$1^0") &&
git-read-tree -u -v -m $head "$new_head" &&
git-read-tree -v -m -u --exclude-per-directory=.gitignore $head "$new_head" &&
finish "$new_head" "Fast forward"
dropsave
exit 0

Loading…
Cancel
Save