sync: As well as the synced/git-annex push, attempt a git-annex:git-annex push, as long as the remote branch is an ancestor of the local branch, to better support bare git repos.
See my comment in the bug report for analysis; basically this is safe because it's a non-forced push, so won't lose history. Even if it was a forced push or somehow races, things will eventually become consistent and no git-annex branch info will be lost. (This used to be done, but it forgot to do it since version 4.20130909.)
This commit is contained in:
parent
1082b1dbdb
commit
289881bdb8
3 changed files with 22 additions and 1 deletions
|
@ -315,7 +315,9 @@ pushBranch remote branch g = tryIO (directpush g) `after` syncpush g
|
|||
, refspec branch
|
||||
]
|
||||
directpush = Git.Command.runQuiet $ pushparams
|
||||
[Git.fromRef $ Git.Ref.base $ fromDirectBranch branch]
|
||||
[ Git.fromRef $ Git.Ref.base $ Annex.Branch.name
|
||||
, Git.fromRef $ Git.Ref.base $ fromDirectBranch branch
|
||||
]
|
||||
pushparams branches =
|
||||
[ Param "push"
|
||||
, Param $ Remote.name remote
|
||||
|
|
4
debian/changelog
vendored
4
debian/changelog
vendored
|
@ -15,6 +15,10 @@ git-annex (5.2015022) UNRELEASED; urgency=medium
|
|||
https://ghc.haskell.org/trac/ghc/ticket/7695
|
||||
This prevents localization from working, but git-annex
|
||||
is not localized anyway.
|
||||
* sync: As well as the synced/git-annex push, attempt a
|
||||
git-annex:git-annex push, as long as the remote branch
|
||||
is an ancestor of the local branch, to better support bare git repos.
|
||||
(This used to be done, but it forgot to do it since version 4.20130909.)
|
||||
|
||||
-- Joey Hess <id@joeyh.name> Thu, 19 Feb 2015 14:16:03 -0400
|
||||
|
||||
|
|
|
@ -41,3 +41,18 @@ requête HTTP transmise, en attente de la réponse… 200 OK
|
|||
5.20141125 on debian jessie.
|
||||
|
||||
Sorry for the noise in that other bug report! I really thought it was the same issue .... --[[anarcat]]
|
||||
|
||||
> The repository has a synced/git-annex that is newer, so it will be
|
||||
> available if using git-annex sync.
|
||||
>
|
||||
> It looks like git-annex sync has not pushed git-annex:git-annex since
|
||||
> [[!commit 6cdac3a003b6850fd96a60d94320d084d8651096]]. I think that commit might
|
||||
> have removed that accidentially; I can't tell for sure.
|
||||
>
|
||||
> Adding git-annex:git-annex
|
||||
> to the direct push would avoid this problem. Long as that push is not
|
||||
> forced, there's no risk of overwriting other changes to the git-annex
|
||||
> branch. (Even if it does get overwritten, there's no data loss; things
|
||||
> will get into sync eventually.)
|
||||
>
|
||||
> So, I've added back the git-annex:git-annex push. [[done]] --[[Joey]]
|
||||
|
|
Loading…
Reference in a new issue