Everyone has their reasons for curating the data they have decided to keep (either forever or For A Damn Long Timetm). government or corporate espionage), cultural and familial archivists, internet collapse preppers, and people who do it themselves so they're sure it's done right. Among us are represented the various reasons to keep data - legal requirements, competitive requirements, uncertainty of permanence of cloud services, distaste for transmitting your data externally (e.g. So this function deletes them if they were not already present beforehand.We are digital librarians. This might generate special git annex branches whose names start with "synced/.", which might also already be there from a previous sync operation. So the command needed seems to be git annex sync -no-push -no-pull -no-commit -no-resolvemerge -no-content. Lgr.debug('Remove previously non-existent %s branch after sync', If not had_synced_branch and synced_branch in self.get_branches(): # disable any external interaction and other magic Otherwise, such branches that are created by `git annex sync`Īre removed again after the sync is complete. If a repository has git-annex's 'synced/.' branches these will be Or all remotes (as currently reflected in the local state of their Synchronize the local 'git-annex' branch with respect to particular ![]() Update the corresponding branch of any managed branch.Ģ. This method calls `git annex sync` to perform purely local operationsġ. """Consolidate the local git-annex branch and/or managed branches. The core of that function is def localsync(self, remote=None, managed_only=False): The datalad project have written the function () to accomplish this. It might do nothing, which would make all committed files remain įor example, reversing the unlock adjustment might lock the file. Since only files touched by the commit will be reverseĪdjusted, it doesn't need to reverse all changes made by the originalĪdjustment. This reversal of one adjustment can be done as just anotherĪdjustment. Get changes to apply to the master branch. The adjusting concept page is a bit cryptical for me (highlighted text mine).Ī user's commits on the adjusted branch have to be reverse adjusted to The git annex manual on git annex adjust only tells me how to get an adjusted branch, but not how to reverse the adjusting. │ * git-annex adjusted branch (abandoned previous HEAD) * ┘ my new commit (master, refs/basis/adjusted/master(unlocked)) ![]() So how do I get from the situation above to the following: * git-annex adjusted branch (HEAD, adjusted/master(unlocked)) ![]() Finally, because I cannot have symlinks checked out at my file system, I need to automatically create a new adjusted branch that replaces the symlinks in the commit by the actual files. What I want is a commit to the master branch that is in the standard git-annex format, meaning that annex'ed files are symlinks to their place in the annex store. When I commit now, I would do so on the adjusted branch I guess, because git-annex cannot create the symlinks, using git annex add MYFILE and git commit`: * my new commit (HEAD, adjusted/master(unlocked)) ![]() * ┘ some change (master, refs/basis/adjusted/master(unlocked)) My commit tree looks then like this: * git-annex adjusted branch (HEAD, adjusted/master(unlocked)) Thus, I have to work with an adjusted branch, that means that on top of my "normal" branch I execute git annex adjust -unlock so that I get a new branch on which my annex'ed files are not symlinks into the annex store, but the original files. I have a git and git annex project on a filesystem that does not suppport symlinks.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |