threads / discuss / 3997

Re: fatal: git-write-tree: not able to write tree

Subject: Re: fatal: git-write-tree: not able to write tree

## tl;dr

2 messages between Apr 29, 2006 and Apr 29, 2006.

replies: 1people: 2as markdown or json

colin@horizon.com· Apr 29, 2006, 13:23 UTC · lore
diff --git a/git-am.sh b/git-am.sh
index eab4aa8..872145b 100755
--- a/git-am.sh
+++ b/git-am.sh
@@ -376,6 +376,13 @@ do
 			echo "No changes - did you forget update-index?"
 			stop_here $this
 		fi
+		unmerged=$(git-ls-files -u)
+		if test -n "$unmerged"
+		then
+			echo "You still have unmerged paths in your index"
+			echo "did you forget update-index?"
+			stop_here $this
+		fi
 		apply_status=0
 		;;
 	esac

Er... it's very non-obvious to me why you'd want to stick a workaround
here when you could instead fix git-write-tree to do it.  That seems
like The Right Thing.
(It would also be helpful to mention at least one unmerged file by name.)
Junio C Hamano· Apr 29, 2006, 18:34 UTC · re: colin@horizon.com · lore
colin@horizon.com writes:
Show 22 quoted lines
> diff --git a/git-am.sh b/git-am.sh
> index eab4aa8..872145b 100755
> --- a/git-am.sh
> +++ b/git-am.sh
> @@ -376,6 +376,13 @@ do
>  			echo "No changes - did you forget update-index?"
>  			stop_here $this
>  		fi
> +		unmerged=$(git-ls-files -u)
> +		if test -n "$unmerged"
> +		then
> +			echo "You still have unmerged paths in your index"
> +			echo "did you forget update-index?"
> +			stop_here $this
> +		fi
>  		apply_status=0
>  		;;
>  	esac
>
> Er... it's very non-obvious to me why you'd want to stick a workaround
> here when you could instead fix git-write-tree to do it.  That seems
> like The Right Thing.

As I said in an earlier message in the thread, I've considered it, but that is a very risky thing to do, and write-tree is definitely a wrong place to do it. If we wanted to, the right way would be to update-index using the output of "ls-files -u".

However, it would invite the user to mistakenly say --resolved before resolving all paths.

> (It would also be helpful to mention at least one unmerged file by name.)
That is true.

← back to recent threads