When init detects that git is not configured to commit, and sets user.email to work around the problem, also make it set user.name.

I was able to reproduce git failing to commit despite user.email being set,
in a test account on my laptop. The account had no GECOS information.
This commit is contained in:
Joey Hess 2014-04-20 14:17:57 -04:00
parent c70a762e81
commit a8bd7a607d
2 changed files with 6 additions and 2 deletions

View file

@ -56,10 +56,12 @@ checkEnvironmentIO =
#endif
{- Runs an action that commits to the repository, and if it fails,
- sets user.email to a dummy value and tries the action again. -}
- sets user.email and user.name to a dummy value and tries the action again. -}
ensureCommit :: Annex a -> Annex a
ensureCommit a = either retry return =<< tryAnnex a
where
retry _ = do
setConfig (ConfigKey "user.email") =<< liftIO myUserName
name <- liftIO myUserName
setConfig (ConfigKey "user.name") name
setConfig (ConfigKey "user.email") name
a