Fix reversion that broke passing git configs with -c
Reverting commit c8fec6ab0
This commit is contained in:
parent
1ecf6d239e
commit
ec0f8a6e74
4 changed files with 28 additions and 6 deletions
|
@ -17,6 +17,8 @@ git-annex (8.20200618) UNRELEASED; urgency=medium
|
||||||
which allows dropping from other special remotes in some situations
|
which allows dropping from other special remotes in some situations
|
||||||
where it was not possible before.
|
where it was not possible before.
|
||||||
S3 (with versioning=yes), git-lfs, tahoe
|
S3 (with versioning=yes), git-lfs, tahoe
|
||||||
|
* Fix reversion that broke passing git configs with -c.
|
||||||
|
(Since version 8.20200330.)
|
||||||
|
|
||||||
-- Joey Hess <id@joeyh.name> Thu, 18 Jun 2020 12:21:14 -0400
|
-- Joey Hess <id@joeyh.name> Thu, 18 Jun 2020 12:21:14 -0400
|
||||||
|
|
||||||
|
|
|
@ -94,11 +94,9 @@ gitAnnexGlobalOptions = commonGlobalOptions ++
|
||||||
where
|
where
|
||||||
setnumcopies n = Annex.changeState $ \s -> s { Annex.forcenumcopies = Just $ NumCopies n }
|
setnumcopies n = Annex.changeState $ \s -> s { Annex.forcenumcopies = Just $ NumCopies n }
|
||||||
setuseragent v = Annex.changeState $ \s -> s { Annex.useragent = Just v }
|
setuseragent v = Annex.changeState $ \s -> s { Annex.useragent = Just v }
|
||||||
setgitconfig v = Annex.adjustGitRepo $ \r ->
|
setgitconfig v = Annex.adjustGitRepo $ \r ->
|
||||||
if Param v `elem` gitGlobalOpts r
|
Git.Config.store (encodeBS' v) Git.Config.ConfigList $
|
||||||
then return r
|
r { gitGlobalOpts = gitGlobalOpts r ++ [Param "-c", Param v] }
|
||||||
else Git.Config.store (encodeBS' v) Git.Config.ConfigList $
|
|
||||||
r { gitGlobalOpts = gitGlobalOpts r ++ [Param "-c", Param v] }
|
|
||||||
setdesktopnotify v = Annex.changeState $ \s -> s { Annex.desktopnotify = Annex.desktopnotify s <> v }
|
setdesktopnotify v = Annex.changeState $ \s -> s { Annex.desktopnotify = Annex.desktopnotify s <> v }
|
||||||
|
|
||||||
{- Parser that accepts all non-option params. -}
|
{- Parser that accepts all non-option params. -}
|
||||||
|
|
|
@ -38,4 +38,16 @@ worth filing in case there's a simple fix.
|
||||||
[[!meta author=kyle]]
|
[[!meta author=kyle]]
|
||||||
[[!tag projects/datalad]]
|
[[!tag projects/datalad]]
|
||||||
|
|
||||||
> [[fixed|done]] --[[Joey]]
|
> Fix was attempted in [[!commit c8fec6ab0]] but that
|
||||||
|
> caused [[annex-ssh-options_dropped_since_8.20200330]]
|
||||||
|
> so it was reverted.
|
||||||
|
>
|
||||||
|
> The cause of the problem is that the action passed to adjustGitRepo
|
||||||
|
> gets run more than once in some cases where the Repo has changed
|
||||||
|
> and the adjustment needs to be re-done, so if it appends a value,
|
||||||
|
> the value may get appended to a Repo that already had it appended.
|
||||||
|
>
|
||||||
|
> So that commit made it check if the value was present and not add it.
|
||||||
|
> I don't currently understand why, but that prevented the value getting
|
||||||
|
> added.
|
||||||
|
> --[[Joey]]
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
[[!comment format=mdwn
|
||||||
|
username="joey"
|
||||||
|
subject="""comment 1"""
|
||||||
|
date="2020-07-02T16:30:03Z"
|
||||||
|
content="""
|
||||||
|
Yeah, this adjustGitRepo that re-runs the code repeatedly sometimes is very
|
||||||
|
hard to understand and I guess needs to be redone entirely somehow.
|
||||||
|
|
||||||
|
I've reverted the commit, reopened the old bug which I prefer to this one.
|
||||||
|
"""]]
|
Loading…
Add table
Add a link
Reference in a new issue