summaryrefslogtreecommitdiff
path: root/doc
diff options
context:
space:
mode:
authorGravatar Joey Hess <joey@kitenet.net>2012-12-17 13:29:10 -0400
committerGravatar Joey Hess <joey@kitenet.net>2012-12-17 13:29:10 -0400
commitcaadeb495bd603a6f2b19064c4aaaec752bc3b6d (patch)
treea9ff9380331c93c0c4c4ab4b2f78d1c8b6f0ad58 /doc
parent63f72a295e4607061f768068e310a446bec806aa (diff)
parent922e0d2c13d2c9105beeb18fe4eeb90dbddea76c (diff)
Merge branch 'master' into desymlink
Conflicts: debian/changelog doc/design/assistant/desymlink.mdwn
Diffstat (limited to 'doc')
-rw-r--r--doc/bugs/OSX_app_issues/comment_16_0b7cd3d5952c5abf36a89a68a4afc1e7._comment8
-rw-r--r--doc/bugs/OSX_app_issues/comment_17_c2de94a48e7958b9efffd89dda9144ff._comment59
-rw-r--r--doc/bugs/OSX_app_issues/comment_18_88ddc846eb4e4a2d54028a3412ba28d6._comment12
-rw-r--r--doc/bugs/OSX_app_issues/comment_19_aff4ab761c4d196732baa046af45fe24._comment11
-rw-r--r--doc/bugs/OSX_app_issues/comment_20_43bd5985d8a3a5e7f826a34e5dd9216e._comment10
-rw-r--r--doc/bugs/OSX_git-annex.app_error:__LSOpenURLsWithRole__40____41__.mdwn2
-rw-r--r--doc/bugs/annex-rsync-options_shell-split_carelessly.mdwn16
-rw-r--r--doc/bugs/annex-rsync-options_shell-split_carelessly/comment_1_2636e0d224317f2e6db94658d8a094c4._comment23
-rw-r--r--doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn68
-rw-r--r--doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_1_e0dafc410ffd617d445bb9403c7bfafe._comment9
-rw-r--r--doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_2_2af247c8a1fcbde10795a990ef3303e9._comment9
-rw-r--r--doc/bugs/git-annex_fix_not_noticing_file_renames.mdwn3
-rw-r--r--doc/bugs/git-annex_fix_not_noticing_file_renames/comment_1_4edd95200d59ec5a5426167b8da8e3f9._comment24
-rw-r--r--doc/bugs/git-annex_fix_not_noticing_file_renames/comment_2_a9a44debefb3bdd4b8ed2d1cf53f2338._comment8
-rw-r--r--doc/bugs/git-annex_fix_not_noticing_file_renames/comment_3_0efb11f35b872b75a3fbc4ebb71ac827._comment10
-rw-r--r--doc/bugs/gpg_bundled_with_OSX_build_fails.mdwn3
-rw-r--r--doc/design/assistant/blog.mdwn6
-rw-r--r--doc/design/assistant/blog/day_107__memory_leak.mdwn2
-rw-r--r--doc/design/assistant/blog/day_151__direct_mode_toggle.mdwn59
-rw-r--r--doc/design/assistant/blog/day_152__bugfixes.mdwn18
-rw-r--r--doc/design/assistant/blog/day_152__bugfixes/comment_1_46863a875f9daa6f2c9248b66ff91929._comment9
-rw-r--r--doc/design/assistant/blog/day_152__bugfixes/comment_2_a586e617bc024c8a9ff60f1b8345d74d._comment8
-rw-r--r--doc/design/assistant/desymlink.mdwn1
-rw-r--r--doc/design/assistant/xmpp.mdwn4
-rw-r--r--doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__.mdwn1
-rw-r--r--doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__/comment_1_9c6c4ca0c9dc6976ba7cf27e84683bf0._comment8
-rw-r--r--doc/forum/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn5
-rw-r--r--doc/forum/New_user_misunderstandings.mdwn24
-rw-r--r--doc/forum/New_user_misunderstandings/comment_1_c1785924109b5d5cde9aa3d3460cf955._comment10
-rw-r--r--doc/forum/Storing_uncontrolled_files_in_an_annex.mdwn3
-rw-r--r--doc/forum/Storing_uncontrolled_files_in_an_annex/comment_1_175645a90be0c79221c129308adf643e._comment27
-rw-r--r--doc/forum/Storing_uncontrolled_files_in_an_annex/comment_2_d29f214eadfe3bfd098bbc3bcf07129a._comment8
-rw-r--r--doc/forum/Storing_uncontrolled_files_in_an_annex/comment_3_286b502e7906cca50e9e747db735bc88._comment10
-rw-r--r--doc/install.mdwn2
-rw-r--r--doc/install/OSX.mdwn19
-rw-r--r--doc/install/OSX/old_comments/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment (renamed from doc/install/OSX/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment)0
-rw-r--r--doc/install/OSX/old_comments/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment (renamed from doc/install/OSX/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment)0
-rw-r--r--doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn19
-rw-r--r--doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo/comment_1_7eaf73fb3355bd706ab18a43790b3c10._comment8
39 files changed, 518 insertions, 8 deletions
diff --git a/doc/bugs/OSX_app_issues/comment_16_0b7cd3d5952c5abf36a89a68a4afc1e7._comment b/doc/bugs/OSX_app_issues/comment_16_0b7cd3d5952c5abf36a89a68a4afc1e7._comment
new file mode 100644
index 000000000..0b110ce52
--- /dev/null
+++ b/doc/bugs/OSX_app_issues/comment_16_0b7cd3d5952c5abf36a89a68a4afc1e7._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 16"
+ date="2012-12-13T22:40:59Z"
+ content="""
+Today's daily build of the OSX app has a further change that *might* help. I removed the system library and frameworks from the bundle.
+"""]]
diff --git a/doc/bugs/OSX_app_issues/comment_17_c2de94a48e7958b9efffd89dda9144ff._comment b/doc/bugs/OSX_app_issues/comment_17_c2de94a48e7958b9efffd89dda9144ff._comment
new file mode 100644
index 000000000..83c2023db
--- /dev/null
+++ b/doc/bugs/OSX_app_issues/comment_17_c2de94a48e7958b9efffd89dda9144ff._comment
@@ -0,0 +1,59 @@
+[[!comment format=mdwn
+ username="https://www.google.com/accounts/o8/id?id=AItOawkfHTPsiAcHEEN7Xl7WxiZmYq-vX7azxFY"
+ nickname="Vincent"
+ subject="OS/X daily 2012-12-13"
+ date="2012-12-14T09:22:42Z"
+ content="""
+Thanks for the update - I tried again, similar results.
+
+same platform. installed image md5sum 1bb50b3ee5eda3cd7f4b4a70cdae1855
+
+Procedure was the same.
+ - download, bunzip2, mount, drag app to Applications.
+ - chrome had one tab open, iconified
+ - double-click application icon
+
+Chrome opens up and shows the config window. Type in the same path
+after checking that the final element of the path did not already exist.
+
+ ps aux|grep git
+ me 89194 99.0 0.0 2460884 4160 ?? R 8:03pm 0:12.58 git init --quiet /Users/me/me/annex/
+ me 89245 0.2 0.0 2423356 220 s001 R+ 8:07pm 0:00.00 grep git
+ me 89182 0.0 0.3 2668772 44208 ?? S 8:03pm 0:00.30 git-annex webapp -psn_0_55022710
+ me 89177 0.0 0.0 2433432 868 ?? S 8:03pm 0:00.00 /bin/sh /Applications/git-annex.app/Contents/MacOS/git-annex-webapp -psn_0_55022710
+
+I ran dtruss on the two processes of interest, including when I sent them kill -9 in case that showed anything of interest.
+Mail me if you need that but the gist is git init was doing
+
+ workq_kernreturn(0x1, 0x1019CC000, 0x0) = -1 Err#22
+ workq_kernreturn(0x1, 0x1019CC000, 0x0) = -1 Err#22
+ workq_kernreturn(0x1, 0x1019CC000, 0x0) = -1 Err#22
+ ...
+ workq_kernreturn(0x1, 0x1019CC000, 0x0) = -1 Err#22
+ dtrace: 2006687 drops on CPU 0
+ workq_kernreturn(0x1, 0x1019CC000, 0x0) = -1 Err#22
+
+and the git-annex webapp was doing stuff like
+
+ psynch_cvwait(0x7FD7F1418888, 0x2BE010002BF00, 0x600) = -1 Err#260
+ sigreturn(0x7FFF543DD810, 0x1E, 0x2) = 0 Err#-2
+ __pthread_canceled(0x0, 0x2BE010002BF00, 0x7FFF543DD8C8) = -1 Err#22
+ psynch_cvwait(0x7FD7F1418888, 0x2C8010002C900, 0x600) = -1 Err#260
+ sigreturn(0x7FFF543DD810, 0x1E, 0x2) = 0 Err#-2
+ __pthread_canceled(0x0, 0x2C8010002C900, 0x7FFF543DD8C8) = -1 Err#22
+ psynch_cvwait(0x7FD7F1418888, 0x2D0010002D100, 0x600) = -1 Err#260
+ sigreturn(0x7FFF543DD810, 0x1E, 0x2) = 0 Err#-2
+ __pthread_canceled(0x0, 0x2D0010002D100, 0x7FFF543DD8C8) = -1 Err#22
+ psynch_cvwait(0x7FD7F1418888, 0x2D7010002D800, 0x600) = -1 Err#260
+ sigreturn(0x7FFF543DD810, 0x1E, 0x10DCEDC00) = 0 Err#-2
+ __pthread_canceled(0x0, 0x2D7010002D800, 0x7FFF543DD8C8) = -1 Err#22
+ psynch_cvwait(0x7FD7F14189D8, 0x230100002400, 0x2300) = 0 0
+ read(0x6, \"\377\0\", 0x1000) = 1 0
+ setitimer(0x0, 0x116903E50, 0x0) = 0 0
+ write(0x7, \"\377\0\", 0x1) = 1 0
+ sigreturn(0x7FFF543DD810, 0x1E, 0x0) = 0 Err#-2
+ __pthread_canceled(0x0, 0x2BC010002BD00, 0x7FFF543DD8C8) = -1 Err#22
+
+which may be unrelated browser event loop stuff I guess.
+
+"""]]
diff --git a/doc/bugs/OSX_app_issues/comment_18_88ddc846eb4e4a2d54028a3412ba28d6._comment b/doc/bugs/OSX_app_issues/comment_18_88ddc846eb4e4a2d54028a3412ba28d6._comment
new file mode 100644
index 000000000..45c14024e
--- /dev/null
+++ b/doc/bugs/OSX_app_issues/comment_18_88ddc846eb4e4a2d54028a3412ba28d6._comment
@@ -0,0 +1,12 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 18"
+ date="2012-12-14T20:55:12Z"
+ content="""
+I've built the app on 10.8.2, let's hope that'll finally put this problem to rest.
+
+Temporarily available here: <http://downloads.kitenet.net/tmp/git-annex.dmg.bz2>
+
+(This build currently lacks XMPP support.)
+"""]]
diff --git a/doc/bugs/OSX_app_issues/comment_19_aff4ab761c4d196732baa046af45fe24._comment b/doc/bugs/OSX_app_issues/comment_19_aff4ab761c4d196732baa046af45fe24._comment
new file mode 100644
index 000000000..76fc993e4
--- /dev/null
+++ b/doc/bugs/OSX_app_issues/comment_19_aff4ab761c4d196732baa046af45fe24._comment
@@ -0,0 +1,11 @@
+[[!comment format=mdwn
+ username="https://www.google.com/accounts/o8/id?id=AItOawkfHTPsiAcHEEN7Xl7WxiZmYq-vX7azxFY"
+ nickname="Vincent"
+ subject="comment 19"
+ date="2012-12-16T05:27:06Z"
+ content="""
+downloaded the 10.8.2 build, md5 9fc31ec6dcf0088d3723d1b25110f7f7.
+
+git --init works instantaneously.
+
+"""]]
diff --git a/doc/bugs/OSX_app_issues/comment_20_43bd5985d8a3a5e7f826a34e5dd9216e._comment b/doc/bugs/OSX_app_issues/comment_20_43bd5985d8a3a5e7f826a34e5dd9216e._comment
new file mode 100644
index 000000000..8e01d948e
--- /dev/null
+++ b/doc/bugs/OSX_app_issues/comment_20_43bd5985d8a3a5e7f826a34e5dd9216e._comment
@@ -0,0 +1,10 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 20"
+ date="2012-12-17T16:23:05Z"
+ content="""
+@Vincent OMG, it works!?!
+
+\o/
+"""]]
diff --git a/doc/bugs/OSX_git-annex.app_error:__LSOpenURLsWithRole__40____41__.mdwn b/doc/bugs/OSX_git-annex.app_error:__LSOpenURLsWithRole__40____41__.mdwn
index 14b896e32..ac5c66951 100644
--- a/doc/bugs/OSX_git-annex.app_error:__LSOpenURLsWithRole__40____41__.mdwn
+++ b/doc/bugs/OSX_git-annex.app_error:__LSOpenURLsWithRole__40____41__.mdwn
@@ -22,3 +22,5 @@ I'd expect to see git-annex run. "git-annex" doesn't run and what I see (in the
**Please provide any additional information below.**
[[!tag /design/assistant/OSX]]
+
+> This was fixed a while ago. [[done]] --[[Joey]]
diff --git a/doc/bugs/annex-rsync-options_shell-split_carelessly.mdwn b/doc/bugs/annex-rsync-options_shell-split_carelessly.mdwn
new file mode 100644
index 000000000..c8eeb7160
--- /dev/null
+++ b/doc/bugs/annex-rsync-options_shell-split_carelessly.mdwn
@@ -0,0 +1,16 @@
+with rsync, it is sometimes the case that one needs to specify ssh options -- typical examples from the rsync man page are `rsync -e 'ssh -p 2234'`. as git-annex does the shell splitting of the arguments in `annex-rsync-options` (see [[special remotes/rsync]]) itself by looking for whitespace, these options can't be passed directly. (`annex-rsync-options = -e 'ssh -p 2234'` gets split to `["rsync", "-e", "'ssh", "-p", "2234'"]` instead of `["rsync", "-e", "ssh -p 2234"]`).
+
+git-annex should respect shell splitting rules when looking at annex-rsync-options. (i suppose there is a haskell library or module for that; in python, we have the `shlex` module for that).
+
+## workaround
+
+put this in .git/ssh and mark it as executable:
+
+ #!/bin/sh
+ exec ssh -p 2234 $@
+
+put this in your git annex config in the particular remote's section:
+
+ annex-rsync-options = -e /local/path/to/your/repo/.git/ssh
+
+(typical bug report information: observed with git-annex 3.20121127 on debian)
diff --git a/doc/bugs/annex-rsync-options_shell-split_carelessly/comment_1_2636e0d224317f2e6db94658d8a094c4._comment b/doc/bugs/annex-rsync-options_shell-split_carelessly/comment_1_2636e0d224317f2e6db94658d8a094c4._comment
new file mode 100644
index 000000000..42b92ce28
--- /dev/null
+++ b/doc/bugs/annex-rsync-options_shell-split_carelessly/comment_1_2636e0d224317f2e6db94658d8a094c4._comment
@@ -0,0 +1,23 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 1"
+ date="2012-12-13T17:03:08Z"
+ content="""
+Due to the way git-annex runs rsync, which involves a specific -e parameter it constructs that, you cannot pass -e in annex-rsync-options anyway; or if you do you'll bypass use of git-annex-shell, which is not desirable. I have not checked which, but would not recommend use of it.
+
+There is no need for ugly workarounds. Just use ~/.ssh/config to configure the hostname to use the nonstandard port it needs. For example:
+
+<pre>
+Host example.com
+Port 2234
+</pre>
+
+Or, to make a separate example.com-2234 host that can be used to use the nonstandard port:
+
+<pre>
+Host example.com-2234
+Hostname example.com
+Port 2234
+</pre>
+"""]]
diff --git a/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn
new file mode 100644
index 000000000..d009b55cd
--- /dev/null
+++ b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files.mdwn
@@ -0,0 +1,68 @@
+What steps will reproduce the problem?
+
+In one terminal, I created a new annex and started the assistant watching it.
+
+In another, I added a file file1; assistant noticed it and added it to the annex.
+
+I moved file1 to a directory directory1; the link broke and assistant did not fix it.
+
+I created a file called file2 inside directory 2; assistant noticed it and added it to the annex.
+
+I moved file2 back up to the annex root directory; the link broke and assistant did not fix it.
+
+I created a file file3 in the annex root directory; assistant noticed it and added it to the annex.
+
+Here is the content of the first terminal, where I created the annex and ran assistant:
+
+
+ ~$ mkdir testannex
+ ~$ cd testannex/
+ testannex$ git init .
+ Initialized empty Git repository in /Users/ed/testannex/.git/
+ testannex$ git annex init "test annex"
+ init test annex ok
+ (Recording state in git...)
+ testannex$ git annex assistant --foreground
+ assistant . (scanning...) (started...) add file1 (checksum...) ok
+ (Recording state in git...)
+ (Recording state in git...)
+ add directory1/file2 (checksum...) ok
+ (Recording state in git...)
+ (Recording state in git...)
+ add file3 (checksum...)
+
+here is the content of the second terminal, where I created and moved files:
+
+ ~$ cd testannex
+ testannex$ echo "file1 content" > file1
+ testannex$ mkdir directory1
+ testannex$ ls -l file1
+ lrwxr-xr-x 1 ed staff 180 Dec 13 15:40 file1 -> .git/annex/objects/FX/51/SHA256E-s14--edac79763e630b1b77aefb6c284bcb0362dea71c0548be0e793ffa8fd5907b80/SHA256E-s14--edac79763e630b1b77aefb6c284bcb0362dea71c0548be0e793ffa8fd5907b80
+ testannex$ mv file1 directory1/
+ testannex$ cd directory1/
+ directory1$ cat file1
+ cat: file1: No such file or directory
+ directory1$ echo "file2 content" > file2
+ directory1$ cat file2
+ file2 content
+ directory1$ cat file1
+ cat: file1: No such file or directory
+ directory1$ mv file2 ../
+ directory1$ cd ..
+ testannex$ echo "file3 content" > file3
+ testannex$
+
+
+What is the expected output? What do you see instead?
+
+The links do not break when moved to another directory.
+
+What version of git-annex are you using? On what operating system?
+
+One compiled using cabal from checkout 739c937
+
+Please provide any additional information below.
+
+> [[fixed|done]]; this turned out to be an kqueue specific bug,
+> the kqueue code statted new files, but that files for a broken symlink.
+> Using lstat instead fixed this. --[[Joey]]
diff --git a/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_1_e0dafc410ffd617d445bb9403c7bfafe._comment b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_1_e0dafc410ffd617d445bb9403c7bfafe._comment
new file mode 100644
index 000000000..fef95243b
--- /dev/null
+++ b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_1_e0dafc410ffd617d445bb9403c7bfafe._comment
@@ -0,0 +1,9 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 1"
+ date="2012-12-13T20:50:18Z"
+ content="""
+(Operating system is OS X Lion)
+
+"""]]
diff --git a/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_2_2af247c8a1fcbde10795a990ef3303e9._comment b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_2_2af247c8a1fcbde10795a990ef3303e9._comment
new file mode 100644
index 000000000..6d93d7e61
--- /dev/null
+++ b/doc/bugs/assistant_not_noticing_file_renames__44___not_fixing_files/comment_2_2af247c8a1fcbde10795a990ef3303e9._comment
@@ -0,0 +1,9 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 2"
+ date="2012-12-15T05:47:25Z"
+ content="""
+thanks, fix worked for me! Now the links are fixed virtually instantaneously when the file is moved.
+
+"""]]
diff --git a/doc/bugs/git-annex_fix_not_noticing_file_renames.mdwn b/doc/bugs/git-annex_fix_not_noticing_file_renames.mdwn
index 4a7a965d1..a68533980 100644
--- a/doc/bugs/git-annex_fix_not_noticing_file_renames.mdwn
+++ b/doc/bugs/git-annex_fix_not_noticing_file_renames.mdwn
@@ -31,3 +31,6 @@ Please provide any additional information below.
git annex assistant is not noticing file renames either.
+> git-annex commands (other than `git annex add`) only operate on files
+> checked into git, which `directory/file1` is not, since you did not use
+> `git mv`. Once you `git add` the file, it'll work. [[done]] --[[Joey]]
diff --git a/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_1_4edd95200d59ec5a5426167b8da8e3f9._comment b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_1_4edd95200d59ec5a5426167b8da8e3f9._comment
new file mode 100644
index 000000000..589dfbf06
--- /dev/null
+++ b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_1_4edd95200d59ec5a5426167b8da8e3f9._comment
@@ -0,0 +1,24 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 1"
+ date="2012-12-13T20:14:37Z"
+ content="""
+Thanks for the response! It's good to know how it works right now.
+
+The reason I was expecting it to work on the files even if I moved them without git rename, is this:
+
+Imaginary use case:
+
+I am using git annex assistant, and not using the command line at all. Maybe I don't know anything about git. I am on a machine in the \"client\" group, so it drops content in \"archive\" subdirectories after storing it safely in a repository in the \"backup\" group.
+
+To add content to git annex, I drag and drop it into the git annex directory. Assistant notices, and it gets added to the annex (it is now a symlink). Yay!
+
+To archive content, I drag and drop the file (its symlink actually) from the git annex directory to an annex/archive directory, assistant notices, and it gets moved off to backup directories, and this symlink becomes dead. This doesn't work because git annex assistant doesn't notice renames.
+
+To retrieve content from an archive, I drag and drop the dead link in the archive directory to a parent directory, and git annex notices and grabs the content from a backup somewhere. This doesn't work, because git annex assistant doesn't notice renames.
+
+These kinds of operations are necessary if I'm going to archive and unarchive files, or otherwise move and manage them, while the assistant is running, without using git from the command line.
+
+
+"""]]
diff --git a/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_2_a9a44debefb3bdd4b8ed2d1cf53f2338._comment b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_2_a9a44debefb3bdd4b8ed2d1cf53f2338._comment
new file mode 100644
index 000000000..33f05eac7
--- /dev/null
+++ b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_2_a9a44debefb3bdd4b8ed2d1cf53f2338._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 2"
+ date="2012-12-13T20:24:32Z"
+ content="""
+The assistant does notice renames, and also automatically fixes links.
+"""]]
diff --git a/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_3_0efb11f35b872b75a3fbc4ebb71ac827._comment b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_3_0efb11f35b872b75a3fbc4ebb71ac827._comment
new file mode 100644
index 000000000..75c02dda1
--- /dev/null
+++ b/doc/bugs/git-annex_fix_not_noticing_file_renames/comment_3_0efb11f35b872b75a3fbc4ebb71ac827._comment
@@ -0,0 +1,10 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 3"
+ date="2012-12-13T20:39:57Z"
+ content="""
+The assistant doesn't seem to be noticing renames or fixing files anymore, for me; that was what got me started on this bug report, though it sounds like I took it in an irrelevant direction by focusing on the command line and \"git annex fix.\"
+
+I'll double check, and submit a new bug report if I can confirm that assistant isn't doing what it should.
+"""]]
diff --git a/doc/bugs/gpg_bundled_with_OSX_build_fails.mdwn b/doc/bugs/gpg_bundled_with_OSX_build_fails.mdwn
index 0d2d2d050..701e67cc5 100644
--- a/doc/bugs/gpg_bundled_with_OSX_build_fails.mdwn
+++ b/doc/bugs/gpg_bundled_with_OSX_build_fails.mdwn
@@ -20,3 +20,6 @@ What version of git-annex are you using? On what operating system?
git annex Version: 3.20121017 on Mac OS X 10.7.5
[[!tag /design/assistant/OSX]]
+
+> Libraries are now handled better in the OSX app and this should be able
+> to happen anymore. [[done]] --[[Joey]]
diff --git a/doc/design/assistant/blog.mdwn b/doc/design/assistant/blog.mdwn
index 5e9b6c62f..fe7d6bd21 100644
--- a/doc/design/assistant/blog.mdwn
+++ b/doc/design/assistant/blog.mdwn
@@ -2,4 +2,10 @@ The git-annex assistant is being
[crowd funded on Kickstarter](http://www.kickstarter.com/projects/joeyh/git-annex-assistant-like-dropbox-but-with-your-own/).
I'll be blogging about my progress here on a semi-daily basis.
+[[!sidebar content="""
+[[!calendar type="month" pages="page(design/assistant/blog/*)"]]
+[[!calendar type="month" month="-1" pages="page(design/assistant/blog/*)"]]
+[[!calendar type="month" month="-2" pages="page(design/assistant/blog/*)"]]
+"""]]
+
[[!inline pages="page(design/assistant/blog/*)" show=0]]
diff --git a/doc/design/assistant/blog/day_107__memory_leak.mdwn b/doc/design/assistant/blog/day_107__memory_leak.mdwn
index 9482552df..e33008f97 100644
--- a/doc/design/assistant/blog/day_107__memory_leak.mdwn
+++ b/doc/design/assistant/blog/day_107__memory_leak.mdwn
@@ -1,6 +1,6 @@
More bugfixes today. The assistant now seems to have enough users that
they're turning up interesting bugs, which is good. But does keep me too
-busy to add many more bugs^Wcode.
+busy to add many more bugs\^Wcode.
The fun one today made it bloat to eat all memory when logging out of a
Linux desktop. I tracked that back to a bug in the Haskell DBUS library
diff --git a/doc/design/assistant/blog/day_151__direct_mode_toggle.mdwn b/doc/design/assistant/blog/day_151__direct_mode_toggle.mdwn
new file mode 100644
index 000000000..c0b3f3245
--- /dev/null
+++ b/doc/design/assistant/blog/day_151__direct_mode_toggle.mdwn
@@ -0,0 +1,59 @@
+Built `git annex direct` and `git annex indirect` to toggle back and forth
+between direct mode. Made `git annex status` show if the repository is in
+direct mode. Now *only* merging is needed for direct mode to be basically
+usable.
+
+I can do a little demo now. Pay attention to the "@" ls shows at the end
+of symlinks.
+
+ joey@gnu:~/tmp/bench/rdirect>ls
+ myfile@ otherfile@
+ joey@gnu:~/tmp/bench/rdirect>git annex find
+ otherfile
+ # So, two files, only one present in this repo.
+
+ joey@gnu:~/tmp/bench/rdirect>git annex direct
+ commit
+ # On branch master
+ # Your branch is ahead of 'origin/master' by 7 commits.
+ #
+ nothing to commit (working directory clean)
+ ok
+ direct myfile ok
+ direct otherfile ok
+ direct ok
+
+ joey@gnu:~/tmp/bench/rdirect>ls
+ myfile@ otherfile
+ # myfile is still a broken symlink because we don't have its content
+ joey@gnu:~/tmp/bench/rdirect>git annex get myfile
+ get myfile (from origin...) ok
+ (Recording state in git...)
+ joey@gnu:~/tmp/bench/rdirect>ls
+ myfile otherfile
+
+ joey@gnu:~/tmp/bench/rdirect>echo "look mom, no symlinks" >> myfile
+ joey@gnu:~/tmp/bench/rdirect>git annex sync
+ add myfile (checksum...) ok
+ commit
+ (Recording state in git...)
+ [master 0e8de9b] git-annex automatic sync
+ ...
+ ok
+
+ joey@gnu:~/tmp/bench/rdirect>git annex indirect
+ commit ok
+ indirect myfile ok
+ indirect otherfile ok
+ indirect ok
+ joey@gnu:~/tmp/bench/rdirect>ls
+ myfile@ otherfile@
+
+I'd like `git annex direct` to set the repository to untrusted, but
+I didn't do it. Partly because having `git annex indirect` set it back to
+semitrusted seems possibly wrong -- the user might not trust a repo even in
+indirect mode. Or might fully trust it. The docs will encourage users to
+set direct mode repos to untrusted -- in direct mode you're operating
+without large swathes of git-annex's carefully constructed safety net.
+(When the assistant later uses direct mode, it'll untrust the repository
+automatically.)
diff --git a/doc/design/assistant/blog/day_152__bugfixes.mdwn b/doc/design/assistant/blog/day_152__bugfixes.mdwn
new file mode 100644
index 000000000..da70fd156
--- /dev/null
+++ b/doc/design/assistant/blog/day_152__bugfixes.mdwn
@@ -0,0 +1,18 @@
+Fixed a bug in the kqueue code that made the assistant not notice when a
+file was renamed into a subdirectory. This turned out to be because the
+symlink got broken, and it was using `stat` on the file. Switching to
+`lstat` fixed that.
+
+Improved installation of programs into standalone bundles. Now it uses
+the programs detected by configure, rather than a separate hardcoded list.
+Also improved handling of lsof, which is not always in PATH.
+
+Made a OSX 10.8.2 build of the app, which is nearly my last gasp attempt
+at finding a way around this crazy `git init` spinning problem with Jimmy's
+daily builds are used with newer OSX versions. Try it here:
+<http://downloads.kitenet.net/tmp/git-annex.dmg.bz2>
+
+----
+
+Mailed out the Kickstarter T-shirt rewards today, to people in the US.
+Have to fill out a bunch of forms before I can mail the non-US ones.
diff --git a/doc/design/assistant/blog/day_152__bugfixes/comment_1_46863a875f9daa6f2c9248b66ff91929._comment b/doc/design/assistant/blog/day_152__bugfixes/comment_1_46863a875f9daa6f2c9248b66ff91929._comment
new file mode 100644
index 000000000..9199f3768
--- /dev/null
+++ b/doc/design/assistant/blog/day_152__bugfixes/comment_1_46863a875f9daa6f2c9248b66ff91929._comment
@@ -0,0 +1,9 @@
+[[!comment format=mdwn
+ username="https://www.google.com/accounts/o8/id?id=AItOawmYiJgOvC4IDYkr2KIjMlfVD9r_1Sij_jY"
+ nickname="Douglas"
+ subject="OSX troubles"
+ date="2012-12-17T16:07:41Z"
+ content="""
+Have you considered making a homebrew installable version of git-annex? It may make things easier for you when it comes to build dependencies.
+
+"""]]
diff --git a/doc/design/assistant/blog/day_152__bugfixes/comment_2_a586e617bc024c8a9ff60f1b8345d74d._comment b/doc/design/assistant/blog/day_152__bugfixes/comment_2_a586e617bc024c8a9ff60f1b8345d74d._comment
new file mode 100644
index 000000000..af7a901a9
--- /dev/null
+++ b/doc/design/assistant/blog/day_152__bugfixes/comment_2_a586e617bc024c8a9ff60f1b8345d74d._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 2"
+ date="2012-12-17T16:16:47Z"
+ content="""
+I would *love* *love* *love* for there to be a homebrew for git-annex. But I know nothing about homebrew so am not in a very good position to do it.
+"""]]
diff --git a/doc/design/assistant/desymlink.mdwn b/doc/design/assistant/desymlink.mdwn
index 5498b3691..48d307920 100644
--- a/doc/design/assistant/desymlink.mdwn
+++ b/doc/design/assistant/desymlink.mdwn
@@ -62,6 +62,7 @@ is converted to a real file when it becomes present.
can map to multiple files. And that when a file is deleted or moved, the
mapping needs to be updated.
* May need a reverse mapping, from files in the tree to keys? TBD
+ (Currently, getting by looking up symlinks using `git cat-file`)
(Needed to make things like `git annex drop` that want to map from the
file back to the key work.)
* The existing watch code detects when a file gets closed, and in this
diff --git a/doc/design/assistant/xmpp.mdwn b/doc/design/assistant/xmpp.mdwn
index 001b52981..c6d91c5ab 100644
--- a/doc/design/assistant/xmpp.mdwn
+++ b/doc/design/assistant/xmpp.mdwn
@@ -11,6 +11,10 @@ who share a repository, that is stored in the [[cloud]].
See <http://git-annex.branchable.com/design/assistant/blog/day_114__xmpp/#comment-aaba579f92cb452caf26ac53071a6788>
* Assistant.Sync.manualPull doesn't handle XMPP remotes yet.
This is needed to handle getting back in sync after reconnection.
+* Support use of a single XMPP account with several separate git-annex repos.
+ This probably works for the simple push notification use of XMPP. But
+ XMPP pairing and the pushes over XMPP assume that anyone you're paired with
+ is intending to sync to your repository.
## design goals
diff --git a/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__.mdwn b/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__.mdwn
new file mode 100644
index 000000000..49f3d75ef
--- /dev/null
+++ b/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__.mdwn
@@ -0,0 +1 @@
+I use git-annex mostly to archive my photos. They're generally large raw files and I am encrypting them going to the S3 special remote. Are there any plans to compress objects before encrypting them? It would save on S3 costs, only add some overhead on get and copy, and I don't think there would be any problems looking up data later.
diff --git a/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__/comment_1_9c6c4ca0c9dc6976ba7cf27e84683bf0._comment b/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__/comment_1_9c6c4ca0c9dc6976ba7cf27e84683bf0._comment
new file mode 100644
index 000000000..7c5f1ecc1
--- /dev/null
+++ b/doc/forum/Compression_in_special_remotes___40__specifically_S3__41____63__/comment_1_9c6c4ca0c9dc6976ba7cf27e84683bf0._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 1"
+ date="2012-12-14T18:53:04Z"
+ content="""
+gpg compresses encrypted content by default, so all encrypted special remotes get compression for free
+"""]]
diff --git a/doc/forum/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn b/doc/forum/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn
new file mode 100644
index 000000000..981a53ba0
--- /dev/null
+++ b/doc/forum/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn
@@ -0,0 +1,5 @@
+I worked out how to retroactively annex a large file that had been checked into a git repo some time ago. I thought this might be useful for others, so I am posting it here.
+
+> This is a great tip, so I've moved it to
+> [[tips|tips/How_to_retroactively_annex_a_file_already_in_a_git_repo]].
+> --[[Joey]]
diff --git a/doc/forum/New_user_misunderstandings.mdwn b/doc/forum/New_user_misunderstandings.mdwn
new file mode 100644
index 000000000..d1b1df180
--- /dev/null
+++ b/doc/forum/New_user_misunderstandings.mdwn
@@ -0,0 +1,24 @@
+New user? Can't figure out the basics? Add it here - what you wanted, what you tried.
+
+#### I wanted to keep track of some files I had all organized in a directory outside of my ~/annex:
+
+ $ cd ~/annex
+ $ git annex add /path/to/some/photos
+ fatal: '/path/to/some/photos' is outside repository
+
+ But git-annex doesn't work that way. I had to do this instead
+
+ $ rsync -a /path/to/some/photos
+ $ git annex add photos
+ (Recording state in git...)
+ $ git annex status
+ ... lots of helpful info...
+
+#### I just have the OS/X app, can I do commandline stuff?
+
+yes
+
+ $ /Applications/git-annex.app/Contents/MacOS/git-annex add photos/
+ (Recording state in git...)
+
+but perhaps there is a better way.
diff --git a/doc/forum/New_user_misunderstandings/comment_1_c1785924109b5d5cde9aa3d3460cf955._comment b/doc/forum/New_user_misunderstandings/comment_1_c1785924109b5d5cde9aa3d3460cf955._comment
new file mode 100644
index 000000000..b15f5cfb7
--- /dev/null
+++ b/doc/forum/New_user_misunderstandings/comment_1_c1785924109b5d5cde9aa3d3460cf955._comment
@@ -0,0 +1,10 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 1"
+ date="2012-12-17T16:21:36Z"
+ content="""
+For importing your photos, you can use `git annex import /path/to/some/photos` .. this will move them from the given location into the current directory, and add them to the annex. It preserves subdirectory structure too.
+
+For using the OSX app at the command line, the only thing that is guaranteed to work properly is to run `/Applications/git-annex.app/Contents/MacOS/runshell`, which will modify your PATH and other environment appropriately.
+"""]]
diff --git a/doc/forum/Storing_uncontrolled_files_in_an_annex.mdwn b/doc/forum/Storing_uncontrolled_files_in_an_annex.mdwn
new file mode 100644
index 000000000..e2111f0b9
--- /dev/null
+++ b/doc/forum/Storing_uncontrolled_files_in_an_annex.mdwn
@@ -0,0 +1,3 @@
+Is there a way to store a file in an annex repo without the assistant trying to commit it? My particular issue is that git annex watch tries to add my .thunderbird folder, and I don't want it in annex. Is that a supported use case?
+
+Also, for my better understanding, does watch keep track of what files it saw last time and only look for new things on startup? Or does it try to commit anything that's not already in git (whether symlink or not)?
diff --git a/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_1_175645a90be0c79221c129308adf643e._comment b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_1_175645a90be0c79221c129308adf643e._comment
new file mode 100644
index 000000000..2932efa39
--- /dev/null
+++ b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_1_175645a90be0c79221c129308adf643e._comment
@@ -0,0 +1,27 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 1"
+ date="2012-12-16T00:10:39Z"
+ content="""
+wow, are you git annexing your whole home directory? that sounds extreme and problematic, since everything in git annex becomes read-only!!
+
+This how to make git annex ignore something though: make git ignore it in the first place.
+
+Stop the git assistant if it's running.
+
+create a file called \".gitignore\" in the root of your annex directory; add a line to that file for everything you want git (and therefore git annex) to ignore, e.g. \".thunderbird\"
+
+
+e.g.:
+
+ echo '.thunderbird' > '.gitignore'
+
+check that file into git:
+
+
+ git add .gitignore
+ git commit -m 'check in .gitignore'
+
+Now you should be able to start up git-annex again and have it ignore .thunderbird, or any other path you put in .gitignore
+"""]]
diff --git a/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_2_d29f214eadfe3bfd098bbc3bcf07129a._comment b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_2_d29f214eadfe3bfd098bbc3bcf07129a._comment
new file mode 100644
index 000000000..395f08d24
--- /dev/null
+++ b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_2_d29f214eadfe3bfd098bbc3bcf07129a._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="andy"
+ ip="108.92.50.62"
+ subject="Thanks!"
+ date="2012-12-16T00:31:09Z"
+ content="""
+That does what I needed. I'd forgotten about that. :)
+"""]]
diff --git a/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_3_286b502e7906cca50e9e747db735bc88._comment b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_3_286b502e7906cca50e9e747db735bc88._comment
new file mode 100644
index 000000000..f23854cbf
--- /dev/null
+++ b/doc/forum/Storing_uncontrolled_files_in_an_annex/comment_3_286b502e7906cca50e9e747db735bc88._comment
@@ -0,0 +1,10 @@
+[[!comment format=mdwn
+ username="http://joeyh.name/"
+ ip="4.153.8.117"
+ subject="comment 3"
+ date="2012-12-17T16:32:31Z"
+ content="""
+AFAIK, the assistant does *not* currently honor .gitgnore completely. There are parts of it that do, and places where running git commands to check .gitignore would be very expensive, and so I've TODOed it for later, as I'll need to write my own .gitignore parser.
+
+So, use caution..
+"""]]
diff --git a/doc/install.mdwn b/doc/install.mdwn
index 837345505..8a3091d8b 100644
--- a/doc/install.mdwn
+++ b/doc/install.mdwn
@@ -2,7 +2,7 @@
[[!table format=dsv header=yes data="""
detailed instructions | quick install
-[[OSX]] | [download git-annex.app](http://downloads.kitenet.net/git-annex/OSX/git-annex.dmg.bz2) **beta; [[known_problems|/bugs/OSX_app_issues]]**
+[[OSX]] | [download git-annex.app](http://downloads.kitenet.net/git-annex/OSX/current/)
[[Linux|linux_standalone]] | [download prebuilt linux tarball](http://downloads.kitenet.net/git-annex/linux/)
[[Debian]] | `apt-get install git-annex`
[[Ubuntu]] | `apt-get install git-annex`
diff --git a/doc/install/OSX.mdwn b/doc/install/OSX.mdwn
index b91f8353b..795986176 100644
--- a/doc/install/OSX.mdwn
+++ b/doc/install/OSX.mdwn
@@ -1,13 +1,20 @@
## git-annex.app
-For easy installation, [Jimmy Tang](http://www.sgenomics.org/~jtang/)
-builds a standalone git-annex.app of the git-annex assistant.
+For easy installation, use the
+[beta release of git-annex.app](http://downloads.kitenet.net/git-annex/OSX/current/).
-* [beta release of git-annex.app](http://downloads.kitenet.net/git-annex/OSX/git-annex.dmg.bz2)
-* [daily build of git-annex.app](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/ref/master/git-annex.dmg.bz2) ([build logs](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/))
- * [past builds](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/sha1/) -- directories are named from the commitid's
+Be sure to select the build matching your version of OSX.
+
+This is still a work in progress. See [[/bugs/OSX_app_issues]] for problem
+reports.
+
+## autobuilds
-This is known to not work on all OSX systems. [[/bugs/OSX_app_issues]] is collecting reports of problems with it in one place.
+[Jimmy Tang](http://www.sgenomics.org/~jtang/) autobuilds
+the app. These autobuilds only work on OSX Lion, not Mountain Lion.
+
+* [autobuild of git-annex.app](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/ref/master/git-annex.dmg.bz2) ([build logs](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/))
+ * [past builds](http://www.sgenomics.org/~jtang/gitbuilder-git-annex-x00-x86_64-apple-darwin10.8.0-binary/sha1/) -- directories are named from the commitid's
## using Brew
diff --git a/doc/install/OSX/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment b/doc/install/OSX/old_comments/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment
index d655da725..d655da725 100644
--- a/doc/install/OSX/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment
+++ b/doc/install/OSX/old_comments/comment_10_4d15bfc4fc26e7249953bebfbb09e0aa._comment
diff --git a/doc/install/OSX/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment b/doc/install/OSX/old_comments/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment
index faa7b1b43..faa7b1b43 100644
--- a/doc/install/OSX/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment
+++ b/doc/install/OSX/old_comments/comment_9_c6b1b31d16f2144ad08abd8c767b6ab9._comment
diff --git a/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn b/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn
new file mode 100644
index 000000000..97f5828d3
--- /dev/null
+++ b/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo.mdwn
@@ -0,0 +1,19 @@
+I worked out how to retroactively annex a large file that had been checked into a git repo some time ago. I thought this might be useful for others, so I am posting it here.
+
+Suppose you have a git repo where somebody had checked in a large file you would like to have annexed, but there are a bunch of commits after it and you don't want to loose history, but you also don't want everybody to have to retrieve the large file when they clone the repo. This will re-write history as if the file had been annexed when it was originally added.
+
+This command works for me, it relies on the current behavior of git which is to use a directory named .git-rewrite/t/ at the top of the git tree for the extracted tree. This will not be fast and it will rewrite history, so be sure that everybody who has a copy of your repo is OK with accepting the new history. If the behavior of git changes, you can specify the directory to use with the -d option. Currently, the t/ directory is created inside the directory you specify, so "-d ./.git-rewrite/" should be roughly equivalent to the default.
+
+Enough with the explanation, on to the command:
+<pre>
+git filter-branch --tree-filter 'for FILE in file1 file2 file3;do if [ -f "$FILE" ] && [ ! -L "$FILE" ];then git rm --cached "$FILE";git annex add "$FILE";ln -sf `readlink "$FILE"|sed -e "s:^../../::"` "$FILE";fi;done' --tag-name-filter cat -- --all
+</pre>
+
+replace file1 file2 file3... with whatever paths you want retroactively annexed. If you wanted bigfile1.bin in the top dir and subdir1/bigfile2.bin to be retroactively annexed try:
+<pre>
+git filter-branch --tree-filter 'for FILE in bigfile1.bin subdir1/bigfile2.bin;do if [ -f "$FILE" ] && [ ! -L "$FILE" ];then git rm --cached "$FILE";git annex add "$FILE";ln -sf `readlink "$FILE"|sed -e "s:^../../::"` "$FILE";fi;done' --tag-name-filter cat -- --all
+</pre>
+
+**If your repo has tags** then you should take a look at the git-filter-branch man page about the --tag-name-filter option and decide what you want to do. By default this will re-write the tags "nearly properly".
+
+You'll probably also want to look at the git-filter-branch man page's section titled "CHECKLIST FOR SHRINKING A REPOSITORY" if you want to free up the space in the existing repo that you just changed history on.
diff --git a/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo/comment_1_7eaf73fb3355bd706ab18a43790b3c10._comment b/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo/comment_1_7eaf73fb3355bd706ab18a43790b3c10._comment
new file mode 100644
index 000000000..d4e34e8cd
--- /dev/null
+++ b/doc/tips/How_to_retroactively_annex_a_file_already_in_a_git_repo/comment_1_7eaf73fb3355bd706ab18a43790b3c10._comment
@@ -0,0 +1,8 @@
+[[!comment format=mdwn
+ username="http://edheil.wordpress.com/"
+ ip="173.162.44.162"
+ subject="comment 1"
+ date="2012-12-16T00:11:38Z"
+ content="""
+Man, I wish you'd written this a couple weeks ago. :) I was never able to figure that incantation out and ended up unannexing and re-annexing the whole thing to get rid of the file I inadvertently checked into git instead of the annex.
+"""]]