Merge remote-tracking branch 'branchable/master'
This commit is contained in:
commit
02c3f3880b
3 changed files with 84 additions and 0 deletions
|
@ -0,0 +1,34 @@
|
|||
[[!comment format=mdwn
|
||||
username="praet"
|
||||
ip="81.240.27.89"
|
||||
subject="Brainfart"
|
||||
date="2011-03-20T20:11:27Z"
|
||||
content="""
|
||||
Haven't given these any serious thought (which will become apparent in a moment) but hoping they will give birth to some less retarded ideas:
|
||||
|
||||
---
|
||||
|
||||
### Bait'n'switch
|
||||
|
||||
- pre-commit: Replace all staged symlinks (when pointing to annexed files) with plaintext files containing the key of their respective annexed content, re-stage, and add their paths (relative to repo root) to .gitignore.
|
||||
- post-commit: Replace the plaintext files with (git annex fix'ed) symlinks.
|
||||
|
||||
In doing so, the blobs to be committed can remain unaltered, irrespective of their related files' depth in the directory hierarchy.
|
||||
|
||||
To prevent git from reporting ALL annexed files as unstaged changes after running post-commit hook, their paths would need to be added to .gitignore.
|
||||
|
||||
This wouldn't cause any issues when adding files, very little when modifying files (would need some alterations to \"git annex unlock\"), BUT would make git totally oblivious to removals...
|
||||
|
||||
---
|
||||
|
||||
### Manifest-based (re)population
|
||||
- Keep a manifest of all annexed files (key + relative path)
|
||||
- DON'T track the symlinks (.gitignore)
|
||||
- Populate/update the directory structure using a post-commit hook.
|
||||
|
||||
... thus circumventing the issue entirely, yet diffstats (et al.) would be rather uninformative.
|
||||
|
||||
---
|
||||
|
||||
***Wide open to suggestions, criticism, mocking laughter and finger-pointing :)***
|
||||
"""]]
|
|
@ -0,0 +1,42 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus"
|
||||
nickname="Jimmy"
|
||||
subject="comment 6"
|
||||
date="2011-03-20T20:48:41Z"
|
||||
content="""
|
||||
ok, pulling the latest master and building on OSX now does this...
|
||||
|
||||
<pre>
|
||||
ghc -O2 -Wall -ignore-package monads-fd --make git-annex
|
||||
[ 1 of 63] Compiling Touch ( Touch.hs, Touch.o )
|
||||
|
||||
Touch.hsc:24:0:
|
||||
The type signature for `touchBoth' lacks an accompanying binding
|
||||
|
||||
Touch.hsc:27:26: Not in scope: `touchBoth'
|
||||
make: *** [git-annex] Error 1
|
||||
</pre>
|
||||
|
||||
changing the #if 0 to 1 gives this...
|
||||
|
||||
<pre>
|
||||
ghc -O2 -Wall -ignore-package monads-fd --make git-annex
|
||||
[ 1 of 63] Compiling Touch ( Touch.hs, Touch.o )
|
||||
|
||||
Touch.hsc:95:43:
|
||||
Couldn't match expected type `CLong' against inferred type `CTime'
|
||||
In the second argument of `(\ hsc_ptr
|
||||
-> pokeByteOff hsc_ptr 0)', namely
|
||||
`(sec :: CLong)'
|
||||
In a stmt of a 'do' expression:
|
||||
(\ hsc_ptr -> pokeByteOff hsc_ptr 0) ptr (sec :: CLong)
|
||||
In the expression:
|
||||
do { (\ hsc_ptr -> pokeByteOff hsc_ptr 0) ptr (sec :: CLong);
|
||||
(\ hsc_ptr -> pokeByteOff hsc_ptr 4) ptr (0 :: CLong) }
|
||||
make: *** [git-annex] Error 1
|
||||
</pre>
|
||||
|
||||
|
||||
it seems that commit 6634b6a6b84a924f6f6059b5bea61f449d056eee has broken support for OSX.
|
||||
|
||||
"""]]
|
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joey.kitenet.net/"
|
||||
nickname="joey"
|
||||
subject="comment 7"
|
||||
date="2011-03-20T22:06:25Z"
|
||||
content="""
|
||||
Fixed that, and removed the impossible cast so it can be built with #if 1
|
||||
"""]]
|
Loading…
Add table
Reference in a new issue