diff --git a/doc/bugs/4.20130601_xmpp_sync_error.mdwn b/doc/bugs/4.20130601_xmpp_sync_error.mdwn new file mode 100644 index 0000000000..3e97e0dc86 --- /dev/null +++ b/doc/bugs/4.20130601_xmpp_sync_error.mdwn @@ -0,0 +1,121 @@ +4.20130601 xmpp sync error. + +setup: A debian machine, with indirect fresh annex, android galaxy s3 with a +fresh direct annex, both running ga-20130601. + +steps: +- Start assistant on both, add jabber account to both. +- Add box.com account on desktop with no encryption, (now correctly shows up on android, wasn't the case with 20130521). +- Add hello.txt on desktop repo, filename is now visible on android, but content is not. +- Add greeting.txt on desktop, nothing shows up on android, content still missing for hello.txt +- Webapp shows uploading messages, but no errors. +- Manually checking box.com confirms that files have been uploaded. + +debian desktop daemon.log: + + [2013-06-02 17:57:03 CEST] main: starting assistant version 4.20130601 + (scanning...) [2013-06-02 17:57:03 CEST] Watcher: Performing startup scan + (started...) [2013-06-02 17:57:52 CEST] XMPPClient: Pairing with myJabberAccount in progress + [2013-06-02 17:57:53 CEST] XMPPReceivePack: Syncing with myJabberAccount + [2013-06-02 17:58:03 CEST] XMPPClient: Pairing with myJabberAccount in progress + [2013-06-02 17:58:52 CEST] main: Syncing with box.com + warning: Not updating non-default fetch respec + + Please update the configuration manually if necessary. + fatal: The remote end hung up unexpectedly + [2013-06-02 17:59:53 CEST] XMPPReceivePack: Syncing with myJabberAccount + [2013-06-02 18:00:02 CEST] Committer: Adding hello.txt + + (testing WebDAV server...) + add hello.txt (checksum...) [2013-06-02 18:00:02 CEST] Committer: Committing changes to git + [2013-06-02 18:00:02 CEST] XMPPSendPack: Syncing with myJabberAccount + Already up-to-date. + [2013-06-02 18:00:03 CEST] Committer: Committing changes to git + fatal: The remote end hung up unexpectedly + fatal: The remote end hung up unexpectedly + [2013-06-02 18:00:03 CEST] XMPPSendPack: Syncing with myJabberAccount + + +100% 1.0 B/s 0s + +[2013-06-02 18:00:19 CEST] Transferrer: Uploaded hello.txt + fatal: The remote end hung up unexpectedly + [2013-06-02 18:01:53 CEST] XMPPReceivePack: Syncing with myJabberAccount + fatal: The remote end hung up unexpectedly + [2013-06-02 18:02:04 CEST] XMPPSendPack: Syncing with myJabberAccount + fatal: The remote end hung up unexpectedly + [2013-06-02 18:03:53 CEST] XMPPReceivePack: Syncing with myJabberAccount + fatal: The remote end hung up unexpectedly + [2013-06-02 18:05:10 CEST] Committer: Adding greeting.txt + ok + (Recording state in git...) + (Recording state in git...) + + (Recording state in git...) + add greeting.txt (checksum...) [2013-06-02 18:05:10 CEST] Committer: Committing changes to git + [2013-06-02 18:05:10 CEST] XMPPSendPack: Syncing with myJabberAccount + Already up-to-date. + [2013-06-02 18:05:11 CEST] Committer: Committing changes to git + + +100% 9.0 B/s 0s + +[2013-06-02 18:05:24 CEST] Transferrer: Uploaded greeting.txt + fatal: The remote end hung up unexpectedly + [2013-06-02 18:06:13 CEST] XMPPReceivePack: Syncing with myJabberAccount + ok + (Recording state in git...) + (Recording state in git...) + + (Recording state in git...) + fatal: The remote end hung up unexpectedly + +Thanks as always. + + +Android daemon.log: + [2013-06-02 17:53:07 CEST] main: starting assistant version 4.20130601-g7483ca4 + (scanning...) [2013-06-02 17:53:07 CEST] Watcher: Performing startup scan + (started...) [2013-06-02 17:57:51 CEST] XMPPClient: Pairing with myJabberAccount in progress + [2013-06-02 17:57:52 CEST] XMPPSendPack: Syncing with myJabberAccount + Already up-to-date. + [2013-06-02 17:58:00 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 17:58:00 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 17:58:02 CEST] XMPPClient: Pairing with myJabberAccount in progress + [2013-06-02 17:58:07 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 17:58:07 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 17:58:15 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 18:00:02 CEST] XMPPReceivePack: Syncing with myJabberAccount + [2013-06-02 18:00:03 CEST] XMPPReceivePack: Unable to download files from your other devices. + [2013-06-02 18:00:04 CEST] XMPPReceivePack: Syncing with myJabberAccount + Merge made by the 'recursive' strategy. + hello.txt | 1 + + 1 file changed, 1 insertion(+) + create mode 120000 hello.txt + [2013-06-02 18:00:05 CEST] Committer: Committing changes to git + [2013-06-02 18:00:06 CEST] XMPPSendPack: Syncing with myJabberAccount + Already up-to-date. + [2013-06-02 18:00:14 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 18:00:14 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 18:00:25 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 18:02:03 CEST] Committer: Committing changes to git + fatal: The remote end hung up unexpectedly + [2013-06-02 18:02:04 CEST] XMPPReceivePack: Unable to download files from your other devices. + [2013-06-02 18:02:04 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 18:02:04 CEST] XMPPReceivePack: Syncing with myJabberAccount + [2013-06-02 18:02:13 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 18:02:15 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 18:02:24 CEST] XMPPSendPack: Unable to download files from your other devices. + fatal: The remote end hung up unexpectedly + [2013-06-02 18:04:04 CEST] XMPPReceivePack: Unable to download files from your other devices. + [2013-06-02 18:05:10 CEST] XMPPReceivePack: Syncing with myJabberAccount + [2013-06-02 18:06:12 CEST] Committer: Committing changes to git + [2013-06-02 18:06:13 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 18:06:21 CEST] XMPPSendPack: Unable to download files from your other devices. + [2013-06-02 18:06:21 CEST] XMPPSendPack: Syncing with myJabberAccount + [2013-06-02 18:06:29 CEST] XMPPSendPack: Unable to download files from your other devices. + fatal: The remote end hung up unexpectedly + [2013-06-02 18:07:10 CEST] XMPPReceivePack: Unable to download files from your other devices. + + +thanks diff --git a/doc/bugs/Specifying_a_filename_starting_with___34__-c__34___instead_applies_it_to_all_files.mdwn b/doc/bugs/Specifying_a_filename_starting_with___34__-c__34___instead_applies_it_to_all_files.mdwn new file mode 100644 index 0000000000..8b9373206f --- /dev/null +++ b/doc/bugs/Specifying_a_filename_starting_with___34__-c__34___instead_applies_it_to_all_files.mdwn @@ -0,0 +1,73 @@ +### Please describe the problem. +Trying to apply certain commands - such as 'drop' - to a filename which starts with "-c" instead applies it to all files. In the instance where I found this, I was using "drop --force" and it caused it to indiscriminately get rid of everything in the directory instead of a single file. + +### What steps will reproduce the problem? +1. Make a repository. +2. Create several files and add them. +3. Create a file whose name begins with "-c" and add it as well. +4. Run "git annex drop " where 'fname' is the file from that last step. + +### What version of git-annex are you using? On what operating system? +4.20130516-gedc4ccd on Arch Linux + +### Please provide any additional information below. + +[[!format sh """ +# If you can, paste a complete transcript of the problem occurring here. +# If the problem is with the git-annex assistant, paste in .git/annex/daemon.log + +[user@host ~]$ mkdir annex_test +[user@host ~]$ cd annex_test/ +[user@host annex_test]$ ls +[user@host annex_test]$ git init +Initialized empty Git repository in /home/user/annex_test/.git/ +[user@host annex_test]$ git annex init "test" +init test ok +(Recording state in git...) +[user@host annex_test]$ +[user@host annex_test]$ echo foo > foo +[user@host annex_test]$ echo bar > bar +[user@host annex_test]$ echo baz > baz +[user@host annex_test]$ echo test > "-c-test" +[user@host annex_test]$ git annex add * +add bar (checksum...) ok +add baz (checksum...) ok +add foo (checksum...) ok +(Recording state in git...) +[user@host annex_test]$ git annex add -c-test +add -c-test (checksum...) ok +(Recording state in git...) +[user@host annex_test]$ git annex drop -c-test +drop -c-test (unsafe) + Could only verify the existence of 0 out of 1 necessary copies + + Rather than dropping this file, try using: git annex move + + (Use --force to override this check, or adjust annex.numcopies.) +failed +drop bar (unsafe) + Could only verify the existence of 0 out of 1 necessary copies + + Rather than dropping this file, try using: git annex move + + (Use --force to override this check, or adjust annex.numcopies.) +failed +drop baz (unsafe) + Could only verify the existence of 0 out of 1 necessary copies + + Rather than dropping this file, try using: git annex move + + (Use --force to override this check, or adjust annex.numcopies.) +failed +drop foo (unsafe) + Could only verify the existence of 0 out of 1 necessary copies + + Rather than dropping this file, try using: git annex move + + (Use --force to override this check, or adjust annex.numcopies.) +failed +git-annex: drop: 4 failed + + +# End of transcript or log. +"""]] diff --git a/doc/design/assistant/polls/prioritizing_special_remotes.mdwn b/doc/design/assistant/polls/prioritizing_special_remotes.mdwn index cded1980fb..7408188a7c 100644 --- a/doc/design/assistant/polls/prioritizing_special_remotes.mdwn +++ b/doc/design/assistant/polls/prioritizing_special_remotes.mdwn @@ -6,7 +6,7 @@ locally paired systems, and remote servers with rsync. Help me prioritize my work: What special remote would you most like to use with the git-annex assistant? -[[!poll open=yes 15 "Amazon S3 (done)" 12 "Amazon Glacier (done)" 9 "Box.com (done)" 70 "My phone (or MP3 player)" 18 "Tahoe-LAFS" 7 "OpenStack SWIFT" 28 "Google Drive"]] +[[!poll open=yes 16 "Amazon S3 (done)" 12 "Amazon Glacier (done)" 9 "Box.com (done)" 70 "My phone (or MP3 player)" 18 "Tahoe-LAFS" 7 "OpenStack SWIFT" 29 "Google Drive"]] This poll is ordered with the options I consider easiest to build listed first. Mostly because git-annex already supports them and they diff --git a/doc/forum/flickrannex_--_not_sure_I_get_it/comment_3_74f143965f48c89a3583acf1b6a7635a._comment b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_3_74f143965f48c89a3583acf1b6a7635a._comment new file mode 100644 index 0000000000..21fcde85d3 --- /dev/null +++ b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_3_74f143965f48c89a3583acf1b6a7635a._comment @@ -0,0 +1,9 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawmkBwMWvNKZZCge_YqobCSILPMeK6xbFw8" + nickname="develop" + subject="I noticed you stopped filing issues on github" + date="2013-06-02T10:38:04Z" + content=""" +Does that mean the hook is working properly for you properly now? + +"""]] diff --git a/doc/forum/flickrannex_--_not_sure_I_get_it/comment_4_493bb86dedfa91ccc0c9be4045953ee4._comment b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_4_493bb86dedfa91ccc0c9be4045953ee4._comment new file mode 100644 index 0000000000..dd474ef593 --- /dev/null +++ b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_4_493bb86dedfa91ccc0c9be4045953ee4._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="http://edheil.wordpress.com/" + ip="99.54.57.201" + subject="comment 4" + date="2013-06-02T20:27:08Z" + content=""" +it is, thank you! working perfectly. +"""]] diff --git a/doc/forum/flickrannex_--_not_sure_I_get_it/comment_5_2c410aa478b21c0e6eb0e4d54bc8c362._comment b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_5_2c410aa478b21c0e6eb0e4d54bc8c362._comment new file mode 100644 index 0000000000..f55a894a89 --- /dev/null +++ b/doc/forum/flickrannex_--_not_sure_I_get_it/comment_5_2c410aa478b21c0e6eb0e4d54bc8c362._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawmkBwMWvNKZZCge_YqobCSILPMeK6xbFw8" + nickname="develop" + subject="comment 5" + date="2013-06-02T20:29:48Z" + content=""" +Good :) +"""]] diff --git a/doc/special_remotes/glacier/comment_5_8d1dcb4bf48386314bfb248ea6eeeb68._comment b/doc/special_remotes/glacier/comment_5_8d1dcb4bf48386314bfb248ea6eeeb68._comment new file mode 100644 index 0000000000..ee535e1f1b --- /dev/null +++ b/doc/special_remotes/glacier/comment_5_8d1dcb4bf48386314bfb248ea6eeeb68._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="http://id.clacke.se/" + nickname="clacke" + subject="comment 5" + date="2013-06-03T09:03:57Z" + content=""" +You are not the only one, Justin. I am just getting into git-annex and I am setting up a glacier remote as I write this. +"""]] diff --git a/doc/todo/Build_for_Synology_DSM/comment_10_e351084d9a83db3fd6d9d983227a6410._comment b/doc/todo/Build_for_Synology_DSM/comment_10_e351084d9a83db3fd6d9d983227a6410._comment new file mode 100644 index 0000000000..b62a929d7f --- /dev/null +++ b/doc/todo/Build_for_Synology_DSM/comment_10_e351084d9a83db3fd6d9d983227a6410._comment @@ -0,0 +1,8 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawkwjBDXkP9HAQKhjTgThGOxUa1B99y_WRA" + nickname="Franck" + subject="comment 10" + date="2013-06-02T17:23:43Z" + content=""" +I updated the C program to simplify it so it uses a static path for `_chrooter`. In the previous version, I suspect that one can play with symlinks and use it to get a root shell. So, if `_chrooter` is not installed in `/opt/bin` this file has to be edited too before compilation. +"""]] diff --git a/doc/todo/Build_for_Synology_DSM/comment_11_cc67a584f5c460a6fb63cf099c20e573._comment b/doc/todo/Build_for_Synology_DSM/comment_11_cc67a584f5c460a6fb63cf099c20e573._comment new file mode 100644 index 0000000000..324fa8423e --- /dev/null +++ b/doc/todo/Build_for_Synology_DSM/comment_11_cc67a584f5c460a6fb63cf099c20e573._comment @@ -0,0 +1,9 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawkwjBDXkP9HAQKhjTgThGOxUa1B99y_WRA" + nickname="Franck" + subject="comment 11" + date="2013-06-03T09:55:54Z" + content=""" +A last update and I stop spamming this thread: I've implemented access control and simplified customisation. All this has been moved to https://bitbucket.org/franckp/gasp + +"""]] diff --git a/doc/todo/Build_for_Synology_DSM/comment_9_d94a73b9a07c5cadf191005f817fd59a._comment b/doc/todo/Build_for_Synology_DSM/comment_9_d94a73b9a07c5cadf191005f817fd59a._comment new file mode 100644 index 0000000000..c8b45fc603 --- /dev/null +++ b/doc/todo/Build_for_Synology_DSM/comment_9_d94a73b9a07c5cadf191005f817fd59a._comment @@ -0,0 +1,29 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawkwjBDXkP9HAQKhjTgThGOxUa1B99y_WRA" + nickname="Franck" + subject="comment 9" + date="2013-06-02T13:14:56Z" + content=""" +Hi, I finally succeeded! :-) + +Here are the main steps: + + 1. install `debian-chroot` on the NAS + 2. create an account `gitannex` in Debian + 3. configure git on this account (this is important otherwise git complains and fails) `git config --global user.email YOUR_EMAIL` and `git config --global user.name YOUR_NAME` + 4. install `gcc` on the NAS (using `ipkg`) + 5. download the files here: https://www.dropbox.com/sh/b7z68a730aj3mnm/95nFOzE1QP + 6. edit `_chrooter` to fit your settings (probably there is nothing to change if your Debian is freshly installed) + 7. run `make install`, everything goes to `/opt/bin`, if you change this, you should also edit line 17 in file `gasp` + 8. create an account `gitannex` on the NAS (doesn't need to be the same name as in Debian, but I feel it is easier) + 9. edit its `.ssh/authorized_keys` to prefix lines as follows `command=\"gasp\" THE_PUBLIC_KEY_AS_USUAL` + 10. it should work + 11. the repositories will be in the Debian account, but it's easy to symlink them in the NAS account if you wish + +The principle is as follows: `command=\"gasp\"` allows to launch `gasp` on SSH connexion instead of the original command given to `ssh`. This command is retrieved by `gasp` and prefixed with `chrooter-` (so, eg, running `ssh git` on the client results in running `chrooter-git` on the NAS). `chrooter-*` commands are symlinks to `chrooter`, this is a setuid root binary that launches `_chrooter`. (This intermediary binary is necessary because `_chrooter` is a script which cannot be setuid, and setuid is required for the chroot and identity change.) Finally, `_chrooter` starts the `debian-chroot` service, chroot to the target dir, changes identity and eventually launches the original command as if it was lauched directly by `gitannex` user in Debian. `_chrooter` and `gasp` are Python scripts, I did not use shell in order to avoid error-prone issues with spaces in arguments (that need to be passed around several times in the process). + +I'll try now to add command-line parameters to `gasp` in order to restrict the commands that can be run through SSH and the repositories allowed. + +Cheers, +Franck +"""]]