summaryrefslogtreecommitdiff
path: root/Annex/AdjustedBranch.hs
Commit message (Collapse)AuthorAge
* add AdjBranch newtype; some simplicationsGravatar Joey Hess2016-04-09
|
* change name of basis branchGravatar Joey Hess2016-04-09
| | | | Making the name look too much like the adjusted branch was ambiguous.
* fix master push overwrite race when updating adjusted branch, by maintaining ↵Gravatar Joey Hess2016-04-09
| | | | basis ref
* fix commit tree after merge into adjusted branchGravatar Joey Hess2016-04-06
|
* run out of tree merge with --no-ffGravatar Joey Hess2016-04-06
| | | | | | This is how direct mode does it too, and somehow, for reasons that currently escape me, this makes git merge not care if it's run with an empty work tree.
* fix auto merge conflict resolution when doing out of tree merge for adjusted ↵Gravatar Joey Hess2016-04-06
| | | | branch
* new method for merging changes into adjusted branch that avoids unncessary ↵Gravatar Joey Hess2016-04-06
| | | | | | merge conflicts Still needs work when there are actual merge conflicts.
* todoGravatar Joey Hess2016-04-04
|
* deal with cloning a repo that has an ajdusted branch checked outGravatar Joey Hess2016-04-04
|
* make way for git checkout outputGravatar Joey Hess2016-04-04
|
* Upgrading a direct mode repository to v6 has changed to enter an adjusted ↵Gravatar Joey Hess2016-04-04
| | | | | | | | unlocked branch. This makes the direct mode to v6 upgrade able to be performed in one clone of a repository without affecting other clones, which can continue using v5 and direct mode.
* fixed merging of changes from adjusted branch + a remoteGravatar Joey Hess2016-03-31
|
* made some progress on syncing adjusted branches, but still buggyGravatar Joey Hess2016-03-31
|
* add reflog messagesGravatar Joey Hess2016-03-31
|
* clean up handling of commit lockGravatar Joey Hess2016-03-31
| | | | | Closing the lock manually caused a later exception when the bracket tried to close it again.
* init: Automatically enter the adjusted unlocked branch when in a v6 repo on ↵Gravatar Joey Hess2016-03-29
| | | | a filesystem not supporting symlinks.
* git annex add in adjusted unlocked branchGravatar Joey Hess2016-03-29
| | | | | Cached the current branch lookup just because it seems unnecessary overhead to run an extra git command per add to query the current branch.
* remove hashPointerFile'Gravatar Joey Hess2016-03-29
| | | | | no longer needed now that hashPointerFile uses a long-running git hash-object handle
* implement another adjustment -- easy to do now!Gravatar Joey Hess2016-03-11
|
* simplify adjustment reversalGravatar Joey Hess2016-03-11
|
* fix deletion of files in adjustTreeGravatar Joey Hess2016-03-11
|
* improve propigation of commits from adjusted branchesGravatar Joey Hess2016-03-11
| | | | | | | | | | | Only reverse adjust the changes in the commit, which means that adjustments do not need to be generally cleanly reversable. For example, an adjustment can unlock all locked files, but does not need to worry about files that were originally unlocked when reversing, because it will only ever be run on files that have been changed. So, it's ok if it locks all files when reversed, or even leaves all files as-is when reversed.
* rebase on top of updated original branchGravatar Joey Hess2016-03-03
|
* fix abs filepath generationGravatar Joey Hess2016-03-03
|
* change name of adjusted branches to eg adjusted/master(unlocked)Gravatar Joey Hess2016-03-03
| | | | | | | Using adjusted/unlocked/master made lots of git stuff dealing with "master" complain that it was ambiguous. This new appoach is more like view branch names, and shows the adjustment right there in the branch display even if only the basename of the branch is shown.
* working toward adjusted commit propigationGravatar Joey Hess2016-03-03
|
* can't checkout adjusted branch while index is still lockedGravatar Joey Hess2016-03-03
| | | | | | | There's a race here, but entering an adjusted branch for the first time is not something to do when a commit is being made at the same time. Although, may want to prevent the assistant from committing while entering the adjusted branch.
* push original branch, not adjusted branchGravatar Joey Hess2016-03-03
|
* lock index while making index-less commitsGravatar Joey Hess2016-03-03
| | | | | Avoids race with another git commit at the same time adjusted branch is being updated.
* remove debugGravatar Joey Hess2016-02-29
|
* update keys database when adjusting branchesGravatar Joey Hess2016-02-29
|
* implement updateAdjustedBranchGravatar Joey Hess2016-02-29
|
* make assistant aware of adjusted branches when mergingGravatar Joey Hess2016-02-29
|
* make sync aware of adjusted branchesGravatar Joey Hess2016-02-29
| | | | | | | | | | So, it will pull and push the original branch, not the adjusted one. And, for merging, it will use updateAdjustedBranch (not implemented yet). Note that remaining uses of Git.Branch.current need to be checked too; for things that should act on the original branch, and not the adjusted branch.
* include adjustment in the adjusted branch nameGravatar Joey Hess2016-02-29
| | | | Allows it to be recovered easily.
* adjusted branches, proof of conceptGravatar Joey Hess2016-02-25
"git annex adjust" may be a temporary interface, but works for a proof of concept. It is pretty fast at creating the adjusted branch. The main overhead is injecting pointer files. It might be worth optimising that by reusing the symlink target as the pointer file content. When I tried to do that, the problem was that the clean filter doesn't use that same format, and so git thought files had changed. Could be dealt with, perhaps make the clean filter use symlink format for pointer files when on an adjusted branch? But the real overhead is in checking out the branch, when git runs the smudge filter once per file. That is perhaps too slow to be usable, although it may only affect initial checkout of the branch, and not updates. TBD.