post-receive hook updateInstead emulation cleanup
The code is only needed because for a long time, git-annex didn't install hooks in repos on crippled filesystems. Now it does, and they work at least on FAT (where all files are executable) and Windows. It would be possible to remove this code in v8 simply by re-installing the hooks.
This commit is contained in:
parent
9317c4a5b3
commit
99b509572d
2 changed files with 4 additions and 3 deletions
|
@ -458,8 +458,9 @@ pushRemote o remote (Just branch, _) = stopUnless (pure (pushOption o) <&&> need
|
||||||
| remoteAnnexReadOnly gc = return False
|
| remoteAnnexReadOnly gc = return False
|
||||||
| not (remoteAnnexPush gc) = return False
|
| not (remoteAnnexPush gc) = return False
|
||||||
| otherwise = anyM (newer remote) [syncBranch branch, Annex.Branch.name]
|
| otherwise = anyM (newer remote) [syncBranch branch, Annex.Branch.name]
|
||||||
-- Do updateInstead emulation for remotes on eg removable drives
|
-- Older remotes on crippled filesystems may not have a
|
||||||
-- formatted FAT, where the post-receive hook won't run.
|
-- post-receive hook set up, so when updateInstead emulation
|
||||||
|
-- is needed, run post-receive manually.
|
||||||
postpushupdate repo = case Git.repoWorkTree repo of
|
postpushupdate repo = case Git.repoWorkTree repo of
|
||||||
Nothing -> return True
|
Nothing -> return True
|
||||||
Just wt -> ifM needemulation
|
Just wt -> ifM needemulation
|
||||||
|
|
|
@ -13,7 +13,7 @@ automatically creates a post-receive hook using this.
|
||||||
|
|
||||||
When a repository is configured with receive.denyCurrentBranch=updateInstead,
|
When a repository is configured with receive.denyCurrentBranch=updateInstead,
|
||||||
pushes to the repository update its work tree. However, that does not work
|
pushes to the repository update its work tree. However, that does not work
|
||||||
for repositories that use have an adjusted branch checked
|
for repositories that have an adjusted branch checked
|
||||||
out. The hook updates the work tree when run in such a repository,
|
out. The hook updates the work tree when run in such a repository,
|
||||||
the same as running `git-annex merge` would.
|
the same as running `git-annex merge` would.
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue