summaryrefslogtreecommitdiff
path: root/Git
Commit message (Collapse)AuthorAge
* fix the day's Windows permissions damageGravatar Joey Hess2013-05-14
|
* fill in a few windows stubsGravatar Joey Hess2013-05-14
|
* typoGravatar Joey Hess2013-05-14
|
* more leaning toothpick fixesGravatar Joey Hess2013-05-14
|
* Merge branch 'master' into windowsGravatar Joey Hess2013-05-14
|\ | | | | | | | | | | | | | | Conflicts: Annex/Environment.hs Build/Configure.hs Git/Construct.hs Utility/FileMode.hs
| * detect local urls on DOSGravatar Joey Hess2013-05-14
| |
* | fix the day's windows permissions damageGravatar Joey Hess2013-05-12
| |
* | deal with git using / internally, even on DOSGravatar Joey Hess2013-05-12
| |
* | set raw mode for git check-attrGravatar Joey Hess2013-05-12
| |
* | fix permission damage (thanks, Windows)Gravatar Joey Hess2013-05-11
| |
* | refactoringGravatar Joey Hess2013-05-11
| |
* | use setCurrentDirectoryGravatar Joey Hess2013-05-11
| | | | | | | | On POSIX, this just calls changeWorkingDirectory.
* | clean up from windows portingGravatar Joey Hess2013-05-11
| |
* | git annex init works on Windows!Gravatar Joey Hess2013-05-11
| | | | | | | | git hash-object and cat-file both only use \n at ends of line, even on Windows.
* | catFile expects no \r, even on WindowsGravatar Joey Hess2013-05-11
| |
* | git-annex now builds on Windows (doesn't work)Gravatar Joey Hess2013-05-11
| |
* | fixup #if 0 stubs to use #ifndef mingw32_HOST_OSGravatar Joey Hess2013-05-10
| | | | | | | | | | | | That's needed in files used to build the configure program. For the other files, I'm keeping my __WINDOWS__ define, as I find that much easier to type. I may search and replace it to use the mingw32_HOST_OS thing later.
* | stub out POSIX stuffGravatar Joey Hess2013-05-10
|/
* expose Control.Monad.joinGravatar Joey Hess2013-04-22
| | | | | I think I've been looking for that function for some time. Ie, I remember wanting to collapse Just Nothing to Nothing.
* assistant: The ConfigMonitor left one zombie behind each time it checked for ↵Gravatar Joey Hess2013-03-18
| | | | changes, now fixed.
* webapp: DTRT when told to create a git repo that already exists.Gravatar Joey Hess2013-03-12
|
* Bugfix: git annex add, when ran without any file or directory specified, ↵Gravatar Joey Hess2013-03-07
| | | | should add files in the current directory, but not act on unlocked files elsewhere in the tree.
* fix type introduced in 9bce151dGravatar Joey Hess2013-03-07
| | | | | Doubled command name broke show-ref, which broke git annex sync. Re-read all of 9bce151d to check for other problems.
* git subcommand cleanupGravatar Joey Hess2013-03-03
| | | | | | Pass subcommand as a regular param, which allows passing git parameters like -c before it. This was already done in the pipeing set of functions, but not the command running set.
* assistant: Avoid noise in logs from git commit about typechanged files in ↵Gravatar Joey Hess2013-03-01
| | | | direct mode repositories.
* Additional GIT_DIR support bugfixes. May actually work now.Gravatar Joey Hess2013-02-23
| | | | | | | | | | | | | | | | | | | Two fixes. First, and most importantly, relax the isLinkToAnnex check to only look for /annex/objects/, not [^|/].git/annex/objects. If GIT_DIR is used with a detached work tree, the git directory is not necessarily named .git. There are important caveats with doing that at all, since git-annex will make symlinks that point at GIT_DIR, which means that the relative path between GIT_DIR and GIT_WORK_TREE needs to remain stable across all clones of the repository. ---- The other fix is just fixing crazy and wrong code that, when GIT_DIR is set, expects to still find a git repository in the path below the work tree, and uses some of its configuration, and some of GIT_DIR. What was I thinking, and why can't I seem to get this code right?
* make adding modified files work on crippled filesystemsGravatar Joey Hess2013-02-20
|
* pre-commit: Update direct mode mappings.Gravatar Joey Hess2013-02-06
| | | | | | | | | | | | | | | | Making the pre-commit hook look at git diff-index to find changed direct mode files and update the mappings works pretty well. One case where it does not work is when a file is git annex added, and then git rmed, and then this is committed. That's a no-op commit, so the hook probably doesn't even run, and it certianly never notices that the file was deleted, so the mapping will still have the original filename in it. For this and other reasons, it's important that the mappings still be treated as possibly inconsistent. Also, the assistant now allows the pre-commit hook to run when in direct mode, so the mappings also get updated there.
* annex.autocommitGravatar Joey Hess2013-01-27
| | | | | | | New setting, can be used to disable autocommit of changed files by the assistant, while it still does data syncing and other tasks. Also wired into webapp UI
* union merge bugfixGravatar Joey Hess2013-01-16
| | | | | | | | | | | | Union merges involving two or more repositories could sometimes result in data from one repository getting lost. This could result in the location log data becoming wrong, and fsck being needed to fix it. NB: I audited for any other occurrences of this problem. There are other places than union merge where multiple changes are fed into update-index in a stream, but they all involve working copy files being staged, or their deletion being staged, and in this case it's fine for the later changes to override the earlier ones.
* make startup scan for deleted files work in direct modeGravatar Joey Hess2012-12-24
| | | | | | | | | | git add --update cannot be used, because it'll stage typechanged direct mode files. Intead, use ls-files to find deleted files, and stage them ourselves. It seems that no commit was made before when the scan staged deleted files. (Probably masked since if files were added, a commit happened then..) Now that I'm doing the staging, I was also able to fix that bug.
* unusedGravatar Joey Hess2012-12-18
|
* direct mode merging works!Gravatar Joey Hess2012-12-18
| | | | | Automatic merge resoltion code needs to be fixed to preserve objects from direct mode files.
* Merge branch 'master' into desymlinkGravatar Joey Hess2012-12-13
|\
| * whitespace fixesGravatar Joey Hess2012-12-13
| |
* | Merge branch 'master' into desymlinkGravatar Joey Hess2012-12-13
|\| | | | | | | | | | | | | | | Conflicts: Annex/CatFile.hs Annex/Content.hs Git/LsFiles.hs Git/LsTree.hs
| * finished where indentation changesGravatar Joey Hess2012-12-13
| |
* | direct mode committingGravatar Joey Hess2012-12-12
| |
* | add notStagedGravatar Joey Hess2012-12-12
| |
* | where indentationGravatar Joey Hess2012-12-12
| |
* | remove unused functionGravatar Joey Hess2012-12-12
| |
* | git diff-tree interfaceGravatar Joey Hess2012-12-10
|/
* don't treat foo::bar as a ssh urlGravatar Joey Hess2012-11-09
| | | | It's a git-remote-helper location, and will be stored as just an url.
* webapp: Generate better git remote names.Gravatar Joey Hess2012-10-31
| | | | | | Wrote a better git remote name sanitizer. Git blows up on lots of weird stuff, especially if it starts the remote name, but I managed to get some common punctuation working.
* Use USER and HOME environment when set, and only fall back to getpwent, ↵Gravatar Joey Hess2012-10-25
| | | | which doesn't work with LDAP or NIS.
* add ConfigMonitor threadGravatar Joey Hess2012-10-20
| | | | | | | | | | | | | | | | | | | | Monitors git-annex branch for changes, which are noticed by the Merger thread whenever the branch ref is changed (either due to an incoming push, or a local change), and refreshes cached config values for modified config files. Rate limited to run no more often than once per minute. This is important because frequent git-annex branch changes happen when files are being added, or transferred, etc. A primary use case is that, when preferred content changes are made, and get pushed to remotes, the remotes start honoring those settings. Other use cases include propigating repository description and trust changes to remotes, and learning when a remote has added a new special remote, so the webapp can present the GUI to enable that special remote locally. Also added a uuid.log cache. All other config files already had caches.
* remove some more !!Gravatar Joey Hess2012-10-20
|
* Fix handling of GIT_DIR when it refers to a git submodule.Gravatar Joey Hess2012-10-17
| | | | | | The old code was just wrong in taking fromPath of GIT_DIR -- that made an localUnknown location with the GIT_DIR in it, which only worked by accident, and failed in submodules.
* better fix for zombie problem, which turns out to be a zombie ssh started by ↵Gravatar Joey Hess2012-10-17
| | | | | | | | | | | | | | | | | | | | | rsync When rsyncProgress pipes rsync's stdout, this turns out to cause a ssh process started by rsync to be left behind as a zombie. I don't know why, but my recent zombie reaping cleanup was correct, it's just that this other zombie, that's not directly started by git-annex, was no longer reaped due to changes in the cleanup. Make rsyncProgress reap the zombie started by rsync, as a workaround. FWIW, the process tree looks like this. It seems like the rsync child is for some reason starting but not waiting on this extra ssh process. Ssh connection caching may be involved -- disabling it seemed to change the shape of the tree, but did not eliminate the zombie. 9378 pts/14 S+ 0:00 | \_ rsync -p --progress --inplace -4 -e 'ssh' '-S' ... 9379 pts/14 S+ 0:00 | | \_ ssh ... 9380 pts/14 S+ 0:00 | | \_ rsync -p --progress --inplace -4 -e 'ssh' '-S' ... 9381 pts/14 Z+ 0:00 | \_ [ssh] <defunct>
* ensure that gitdir is absoluteGravatar Joey Hess2012-10-16
| | | | | | | | calcGitLink turns out to need it to be absolute, and it normally is, but not if it's read from a .git file in a submodule, or perhaps from GIT_DIR. I should look into dropping this invariant.