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
|
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
|
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
Add a link
Reference in a new issue