Merge remote-tracking branch 'branchable/master'
This commit is contained in:
commit
e096c8278a
7 changed files with 146 additions and 1 deletions
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joey.kitenet.net/"
|
||||
nickname="joey"
|
||||
subject="comment 2"
|
||||
date="2011-03-23T15:05:12Z"
|
||||
content="""
|
||||
There's a simple test -- just configure annex.diskreserve to be say, 10 megabytes less than the total free space on your disk. Then try to git annex get a 11 mb file, and a 9 mb file. :)
|
||||
"""]]
|
|
@ -0,0 +1,25 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joey.kitenet.net/"
|
||||
nickname="joey"
|
||||
subject="comment 3"
|
||||
date="2011-03-23T15:13:33Z"
|
||||
content="""
|
||||
Alternatively, you can just load it up in ghci and see if it reports numbers that make sense:
|
||||
|
||||
<pre>
|
||||
joey@gnu:~/src/git-annex>make StatFS.hs
|
||||
hsc2hs StatFS.hsc
|
||||
perl -i -pe 's/^{-# INCLUDE.*//' StatFS.hs
|
||||
joey@gnu:~/src/git-annex>ghci StatFS.hs
|
||||
GHCi, version 6.12.1: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
[1 of 1] Compiling StatFS ( StatFS.hs, interpreted )
|
||||
Ok, modules loaded: StatFS.
|
||||
*StatFS> s <- getFileSystemStats \".\"
|
||||
Loading package bytestring-0.9.1.5 ... linking ... done.
|
||||
*StatFS> s
|
||||
Just (FileSystemStats {fsStatBlockSize = 4096, fsStatBlockCount = 7427989, fsStatByteCount = 30425042944, fsStatBytesFree = 2528489472, fsStatBytesAvailable = 2219384832, fsStatBytesUsed = 27896553472})
|
||||
</pre>
|
||||
"""]]
|
|
@ -0,0 +1,30 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus"
|
||||
nickname="Jimmy"
|
||||
subject="comment 4"
|
||||
date="2011-03-23T16:02:34Z"
|
||||
content="""
|
||||
Ok, well it looks like it isn't doing anything useful at all.
|
||||
|
||||
<pre>
|
||||
jtang@x00:~/develop/git-annex $ make StatFS.hs
|
||||
hsc2hs StatFS.hsc
|
||||
perl -i -pe 's/^{-# INCLUDE.*//' StatFS.hs
|
||||
jtang@x00:~/develop/git-annex $ ghci StatFS.hs
|
||||
GHCi, version 6.12.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Loading package ffi-1.0 ... linking ... done.
|
||||
[1 of 1] Compiling StatFS ( StatFS.hs, interpreted )
|
||||
Ok, modules loaded: StatFS.
|
||||
*StatFS> s <- getFileSystemStats \".\"
|
||||
Loading package bytestring-0.9.1.7 ... linking ... done.
|
||||
*StatFS> s
|
||||
Just (FileSystemStats {fsStatBlockSize = 0, fsStatBlockCount = 1048576, fsStatByteCount = 0, fsStatBytesFree = 0, fsStatBytesAvailable = 0, fsStatBytesUsed = 0})
|
||||
*StatFS> s <- getFileSystemStats \"/\"
|
||||
*StatFS> s
|
||||
Just (FileSystemStats {fsStatBlockSize = 0, fsStatBlockCount = 1048576, fsStatByteCount = 0, fsStatBytesFree = 0, fsStatBytesAvailable = 0, fsStatBytesUsed = 0})
|
||||
*StatFS>
|
||||
</pre>
|
||||
"""]]
|
|
@ -0,0 +1,59 @@
|
|||
[[!comment format=mdwn
|
||||
username="https://www.google.com/accounts/o8/id?id=AItOawkSq2FDpK2n66QRUxtqqdbyDuwgbQmUWus"
|
||||
nickname="Jimmy"
|
||||
subject="comment 5"
|
||||
date="2011-03-23T16:14:22Z"
|
||||
content="""
|
||||
Actually I may have just been stupid and should have read the man page on statfs...
|
||||
|
||||
<pre>
|
||||
jtang@x00:~/develop/git-annex $ git diff
|
||||
diff --git a/StatFS.hsc b/StatFS.hsc
|
||||
index 8b453dc..e10b2dd 100644
|
||||
--- a/StatFS.hsc
|
||||
+++ b/StatFS.hsc
|
||||
@@ -53,7 +53,7 @@ import Foreign.C.String
|
||||
import Data.ByteString (useAsCString)
|
||||
import Data.ByteString.Char8 (pack)
|
||||
|
||||
-#if defined (__FreeBSD__)
|
||||
+#if defined (__FreeBSD__) || defined (__APPLE__)
|
||||
# include <sys/param.h>
|
||||
# include <sys/mount.h>
|
||||
#else
|
||||
@@ -84,8 +84,8 @@ data CStatfs
|
||||
#ifdef UNKNOWN
|
||||
#warning free space checking code not available for this OS
|
||||
#else
|
||||
-#if defined(__FreeBSD__)
|
||||
-foreign import ccall unsafe \"sys/mount.h statfs\"
|
||||
+#if defined(__FreeBSD__) || defined (__APPLE__)
|
||||
+foreign import ccall unsafe \"sys/mount.h statfs64\"
|
||||
#else
|
||||
foreign import ccall unsafe \"sys/vfs.h statfs64\"
|
||||
#endif
|
||||
</pre>
|
||||
|
||||
yields this...
|
||||
|
||||
<pre>
|
||||
jtang@x00:~/develop/git-annex $ ghci StatFS.hs
|
||||
GHCi, version 6.12.3: http://www.haskell.org/ghc/ :? for help
|
||||
Loading package ghc-prim ... linking ... done.
|
||||
Loading package integer-gmp ... linking ... done.
|
||||
Loading package base ... linking ... done.
|
||||
Loading package ffi-1.0 ... linking ... done.
|
||||
[1 of 1] Compiling StatFS ( StatFS.hs, interpreted )
|
||||
Ok, modules loaded: StatFS.
|
||||
*StatFS> s <- getFileSystemStats \".\"
|
||||
Loading package bytestring-0.9.1.7 ... linking ... done.
|
||||
*StatFS> s
|
||||
Just (FileSystemStats {fsStatBlockSize = 4096, fsStatBlockCount = 244106668, fsStatByteCount = 999860912128, fsStatBytesFree = 423097798656, fsStatBytesAvailable = 422835654656, fsStatBytesUsed = 576763113472})
|
||||
*StatFS>
|
||||
</pre>
|
||||
|
||||
|
||||
we could just stick another if defined (__APPLE__) instead of what I previously had and it looks like it will do the right thing on OSX.
|
||||
|
||||
|
||||
"""]]
|
|
@ -0,0 +1,12 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joey.kitenet.net/"
|
||||
nickname="joey"
|
||||
subject="comment 2"
|
||||
date="2011-03-23T15:18:29Z"
|
||||
content="""
|
||||
Because I haven't learned Cabal yet.
|
||||
|
||||
But also because I've had bad experiences with both a) tying a particular program to a particular language's pet build system and then having to add ugliness when I later need to do something in the build that has nothing to do with that language and b) as a user, needing to deal with the pet build systems of languages when I just need to make some small change to the build process that is trivial in a Makefile.
|
||||
|
||||
With that said, I do have a configure program written in Haskell, so at least it doesn't use autotools. :)
|
||||
"""]]
|
|
@ -13,4 +13,7 @@ USB drive.
|
|||
|
||||
Notice that you had to git pull from laptop first, this lets git-annex know
|
||||
what has changed in laptop, and so it knows about the files present there and
|
||||
can get them.
|
||||
can get them. The alternate approach is to set up a central bare repository,
|
||||
and always push changes to it after committing them, then in the above,
|
||||
you can just pull from the central repository to get synced up to all
|
||||
repositories.
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
[[!comment format=mdwn
|
||||
username="http://joey.kitenet.net/"
|
||||
nickname="joey"
|
||||
subject="comment 4"
|
||||
date="2011-03-23T15:28:00Z"
|
||||
content="""
|
||||
I would not mind if the walkthrough documented the central git repo case. But I don't want to complicate it unduely (it's long enough), and it's important that the fully distributed case be shown to work, and I assume that people already have basic git knowledge, so documenting the details of set up of a bare git repo is sorta out of scope. (There are also a lot of way to do it, using github, or gitosis, or raw git, etc.)
|
||||
"""]]
|
Loading…
Add table
Reference in a new issue