summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar http://joeyh.name/ <http://joeyh.name/@web>2013-11-06 16:27:49 +0000
committerGravatar admin <admin@branchable.com>2013-11-06 16:27:49 +0000
commitd793940703fd97cd9c45071ffde39c536289a513 (patch)
tree38f48502929e9308bc5724217600a026a6c88353
parent6bd4a3b1388364ae079e81815118cc10b9f5c17e (diff)
Added a comment
-rw-r--r--doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment53
1 files changed, 53 insertions, 0 deletions
diff --git a/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment b/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment
new file mode 100644
index 000000000..e8a5f8cdd
--- /dev/null
+++ b/doc/bugs/Freshly_initialized_repo_has_staged_change___34__deleted:_uuid.log__34__/comment_5_c699034c8e02b2354516414d0ab73aab._comment
@@ -0,0 +1,53 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="209.250.56.47"
+ subject="comment 5"
+ date="2013-11-06T16:27:49Z"
+ content="""
+Running the prebuilt tarball build of git-annex, the bug does not occur.
+
+However, if I remove the git shipped with the prebuilt tarball, so it uses the system git, I do see the bug. So, it's apparently git version dependent.
+
+Also, I was able to reproduce it in a amd64 chroot. My other chroot was i386. Somehow architecture specific bug?
+
+---
+
+Instrumenting all calls to git to be logged with the full environment and command, I found this:
+
+<pre>
+GIT_INDEX_FILE='/home/foo/annex/.git/annex/index'
+--git-dir=/home/foo/annex/.git --work-tree=/home/foo/annex commit --quiet --allow-empty -m created repository
+</pre>
+
+This certianly looks like the index file setting for the git-annex branch is somehow leaking out past the branch commit operations. It continued setting that while setting up `gc.auto`; the next call to git after that stopped setting the index file.
+
+The only way I can see offhand this could possibly happen is due to an exception. It may be that on ubuntu an exception is thrown by code that runs a git command with the index file set, for whatever reason, and this causes the code that normally resets it back to not run.
+
+----
+
+Ok, found it!
+
+<pre>
+\"withIndex entered\"
+
+*** Please tell me who you are.
+
+Run
+
+ git config --global user.email \"you@example.com\"
+ git config --global user.name \"Your Name\"
+
+to set your account's default identity.
+Omit --global to set the identity only in this repository.
+
+fatal: unable to auto-detect email address (got 'foo@darkstar.(none)')
+\"withIndex entered\"
+\"withIndex cleaned up\"
+</pre>
+
+Note lack of clean up after the first withIndex call. Thus leaving the environment passed to git polluted for further calls.
+
+This also explains why it's only happening on some systems, or with some versions of git. git's got all kinds of complexity around its username and email handling code.
+
+I have fixed this in git.
+"""]]