diff options
2 files changed, 403 insertions, 0 deletions
diff --git a/doc/bugs/windows_port_-_repo_can__39__t_pull_newly_added_files_/comment_8_d269fcadea9d5a668e3c6d6cf019f56a._comment b/doc/bugs/windows_port_-_repo_can__39__t_pull_newly_added_files_/comment_8_d269fcadea9d5a668e3c6d6cf019f56a._comment new file mode 100644 index 000000000..feda63b4a --- /dev/null +++ b/doc/bugs/windows_port_-_repo_can__39__t_pull_newly_added_files_/comment_8_d269fcadea9d5a668e3c6d6cf019f56a._comment @@ -0,0 +1,353 @@ +[[!comment format=mdwn + username="https://www.google.com/accounts/o8/id?id=AItOawmhfodZquCI_EEl-f3h7HkROTszlsQL6yA" + nickname="Joe" + subject="comment 8" + date="2013-06-18T02:14:01Z" + content=""" +Thanks joey - I pulled the latest and built it. I don't think everything is working, or maybe my steps need to be updated. On the positive side, git annex fsck no longer errors out. However, I still get the fast-forward message and get annex get . gives me an error about repositories not being available. + +This is running my test script: + +[[!format sh \"\"\" + +C:\joe\backup>ssh joebo@xxxx.com sh testrepo.sh +Initialized empty Git repository in /home/joebo/repo.git/ +init origin ok +(Recording state in git...) +commit +ok +git-annex: no branch is checked out + +C:\joe\backup>rm -rf repo + +C:\joe\backup>git init repo +Initialized empty Git repository in C:/joe/backup/repo/.git/ + +C:\joe\backup>cd repo + +C:\joe\backup\repo>git annex init +init + Detected a crippled filesystem. + + Enabling direct mode. + + Detected a filesystem without fifo support. + + Disabling ssh connection caching. +ok +warning: LF will be replaced by CRLF in C:\joe\backup\repo\.git\annex\journal\uu +id.log. +The file will have its original line endings in your working directory. +(Recording state in git...) + +C:\joe\backup\repo>git remote add origin ssh://joebo@xxxx.com/~/repo.git + +C:\joe\backup\repo>echo hello 1>foo.txt + +C:\joe\backup\repo>git annex add . +add foo.txt (checksum...) ok +(Recording state in git...) +warning: LF will be replaced by CRLF in C:\joe\backup\repo\.git\annex\journal\ae +4_1e9_SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf532b064df4bc691cd51a +87.txt.log. +The file will have its original line endings in your working directory. + +C:\joe\backup\repo>git commit -m \"initial commit\" +[master (root-commit) 4450966] initial commit + 1 file changed, 1 insertion(+) + create mode 120000 foo.txt + +C:\joe\backup\repo>git annex sync +commit +ok +pull origin +warning: no common commits +remote: Counting objects: 5, done. +remote: Compressing objects: 100% (3/3), done. +remote: Total 5 (delta 1), reused 0 (delta 0) +Unpacking objects: 100% (5/5), done. +From ssh://xxxx.com/~/repo + * [new branch] git-annex -> origin/git-annex +ok +(merging origin/git-annex into git-annex...) +(Recording state in git...) +push origin +Counting objects: 18, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (12/12), done. +Writing objects: 100% (16/16), 1.41 KiB, done. +Total 16 (delta 3), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + * [new branch] git-annex -> synced/git-annex + * [new branch] master -> synced/master +ok + +C:\joe\backup\repo>git annex copy --to origin +copy foo.txt (checking origin...) (to origin...) +foo.txt + 8 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 79 bytes received 31 bytes 31.43 bytes/sec +total size is 8 speedup is 0.07 +ok +warning: LF will be replaced by CRLF in C:\joe\backup\repo\.git\annex\journal\ae +4_1e9_SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf532b064df4bc691cd51a +87.txt.log. +The file will have its original line endings in your working directory. +(Recording state in git...) + +C:\joe\backup\repo>git annex sync +commit +ok +pull origin +remote: Counting objects: 6, done. +remote: Compressing objects: 100% (4/4), done. +remote: Total 5 (delta 0), reused 0 (delta 0) +Unpacking objects: 100% (5/5), done. +From ssh://xxxx.com/~/repo + dd2afc8..fcccfa3 git-annex -> origin/git-annex +ok +(merging origin/git-annex into git-annex...) +(Recording state in git...) +push origin +Counting objects: 21, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (9/9), done. +Writing objects: 100% (11/11), 896 bytes, done. +Total 11 (delta 4), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + a093010..10a7c3a git-annex -> synced/git-annex +ok + +C:\joe\backup\repo>git push origin master +Everything up-to-date + +C:\joe\backup\repo>cd .. + +C:\joe\backup>rm -rf repo-bak + +C:\joe\backup>git init repo-bak +Initialized empty Git repository in C:/joe/backup/repo-bak/.git/ + +C:\joe\backup>cd repo-bak + +C:\joe\backup\repo-bak>git remote add origin ssh://joebo@xxxx.com/~/repo.git + +C:\joe\backup\repo-bak>git fetch origin +remote: Counting objects: 36, done. +remote: Compressing objects: 100% (28/28), done. +remote: Total 36 (delta 11), reused 0 (delta 0) +Unpacking objects: 100% (36/36), done. +From ssh://xxxx.com/~/repo + * [new branch] git-annex -> origin/git-annex + * [new branch] master -> origin/master + * [new branch] synced/git-annex -> origin/synced/git-annex + * [new branch] synced/master -> origin/synced/master + +C:\joe\backup\repo-bak>git merge origin/synced/master + +C:\joe\backup\repo-bak>git annex sync + + Detected a crippled filesystem. + + Enabling direct mode. + + Detected a filesystem without fifo support. + + Disabling ssh connection caching. +warning: LF will be replaced by CRLF in C:\joe\backup\repo-bak\.git\annex\journa +l\uuid.log. +The file will have its original line endings in your working directory. +(merging origin/git-annex origin/synced/git-annex into git-annex...) +(Recording state in git...) +commit +ok +pull origin +ok +push origin +Counting objects: 18, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (6/6), done. +Writing objects: 100% (8/8), 695 bytes, done. +Total 8 (delta 4), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + 10a7c3a..dbf4a72 git-annex -> synced/git-annex +ok + +C:\joe\backup\repo-bak>git annex get . +get foo.txt (not available) + Try making some of these repositories available: + 608d7025-8d33-459e-875b-84de43946980 + 608d7025-8d33-459e-875b-84de43946980 + def09afe-da97-4f07-ae90-90ea116eb8c4 +failed +git-annex: get: 1 failed + +C:\joe\backup\repo-bak>cat foo.txt +.git/annex/objects/6k/Mf/SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf5 +32b064df4bc691cd51a87.txt/SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf +532b064df4bc691cd51a87.txt +C:\joe\backup\repo-bak>cd .. + +C:\joe\backup>cd repo + +C:\joe\backup\repo>echo foo2 1>foo2.txt + +C:\joe\backup\repo>git annex add . +add foo2.txt (checksum...) ok +(Recording state in git...) +warning: LF will be replaced by CRLF in C:\joe\backup\repo\.git\annex\journal\fb +a_8bb_SHA256E-s7--eef0e29200a3194851e5fb4ff77d0d0aec5cd3f5ccd78762e80a45f0bbece0 +5f.txt.log. +The file will have its original line endings in your working directory. + +C:\joe\backup\repo>git commit -m \"another\" +[master 438409c] another + 1 file changed, 1 insertion(+) + create mode 120000 foo2.txt + +C:\joe\backup\repo>git annex sync +commit +ok +pull origin +remote: Counting objects: 18, done. +remote: Compressing objects: 100% (6/6), done. +remote: Total 8 (delta 4), reused 0 (delta 0) +Unpacking objects: 100% (8/8), done. +From ssh://xxxx.com/~/repo + 10a7c3a..dbf4a72 synced/git-annex -> origin/synced/git-annex +ok +(merging origin/synced/git-annex into git-annex...) +(Recording state in git...) +push origin +Counting objects: 25, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (12/12), done. +Writing objects: 100% (14/14), 1.32 KiB, done. +Total 14 (delta 3), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + dbf4a72..79c01f2 git-annex -> synced/git-annex + 4450966..438409c master -> synced/master +ok + +C:\joe\backup\repo>git annex copy --to origin +copy foo.txt (checking origin...) ok +copy foo2.txt (checking origin...) (to origin...) +foo2.txt + 7 100% 0.00kB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 79 bytes received 31 bytes 220.00 bytes/sec +total size is 7 speedup is 0.06 +ok +warning: LF will be replaced by CRLF in C:\joe\backup\repo\.git\annex\journal\fb +a_8bb_SHA256E-s7--eef0e29200a3194851e5fb4ff77d0d0aec5cd3f5ccd78762e80a45f0bbece0 +5f.txt.log. +The file will have its original line endings in your working directory. +(Recording state in git...) + +C:\joe\backup\repo>git annex sync +commit +ok +pull origin +remote: Counting objects: 6, done. +remote: Compressing objects: 100% (4/4), done. +remote: Total 5 (delta 0), reused 0 (delta 0) +Unpacking objects: 100% (5/5), done. +From ssh://xxxx.com/~/repo + fcccfa3..eb065b0 git-annex -> origin/git-annex +ok +(merging origin/git-annex into git-annex...) +(Recording state in git...) +push origin +Counting objects: 33, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (13/13), done. +Writing objects: 100% (17/17), 1.27 KiB, done. +Total 17 (delta 8), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + 79c01f2..7ecf368 git-annex -> synced/git-annex +ok + +C:\joe\backup\repo>cd .. + +C:\joe\backup>cd repo-bak + +C:\joe\backup\repo-bak>git annex sync +commit +ok +pull origin +remote: Counting objects: 52, done. +remote: Compressing objects: 100% (29/29), done. +remote: Total 36 (delta 13), reused 0 (delta 0) +Unpacking objects: 100% (36/36), done. +From ssh://xxxx.com/~/repo + fcccfa3..eb065b0 git-annex -> origin/git-annex + 4450966..438409c master -> origin/master + dbf4a72..7ecf368 synced/git-annex -> origin/synced/git-annex + 4450966..438409c synced/master -> origin/synced/master +ok +(merging origin/git-annex origin/synced/git-annex into git-annex...) +(Recording state in git...) +push origin +Counting objects: 30, done. +Delta compression using up to 4 threads. +Compressing objects: 100% (7/7), done. +Writing objects: 100% (9/9), 732 bytes, done. +Total 9 (delta 5), reused 0 (delta 0) +To ssh://joebo@xxxx.com/~/repo.git + 7ecf368..7895f60 git-annex -> synced/git-annex + ! [rejected] master -> synced/master (non-fast-forward) +error: failed to push some refs to 'ssh://joebo@xxxx.com/~/repo.git' +hint: Updates were rejected because a pushed branch tip is behind its remote +hint: counterpart. Check out this branch and merge the remote changes +hint: (e.g. 'git pull') before pushing again. +hint: See the 'Note about fast-forwards' in 'git push --help' for details. +failed +git-annex: sync: 1 failed + +C:\joe\backup\repo-bak>git pull origin synced/master +From ssh://xxxx.com/~/repo + * branch synced/master -> FETCH_HEAD +Updating 4450966..438409c +Fast-forward + foo2.txt | 1 + + 1 file changed, 1 insertion(+) + create mode 120000 foo2.txt + +C:\joe\backup\repo-bak>git annex sync +commit +ok +pull origin +ok +push origin +Everything up-to-date +ok + +C:\joe\backup\repo-bak>cat foo.txt +.git/annex/objects/6k/Mf/SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf5 +32b064df4bc691cd51a87.txt/SHA256E-s8--f873eef4f852e335da367d76ce7f1973c15b8ffebf +532b064df4bc691cd51a87.txt +C:\joe\backup\repo-bak>git annex get foo.txt +get foo.txt (not available) + Try making some of these repositories available: + 608d7025-8d33-459e-875b-84de43946980 + 608d7025-8d33-459e-875b-84de43946980 + 608d7025-8d33-459e-875b-84de43946980 + 608d7025-8d33-459e-875b-84de43946980 + def09afe-da97-4f07-ae90-90ea116eb8c4 + def09afe-da97-4f07-ae90-90ea116eb8c4 +failed +git-annex: get: 1 failed + +C:\joe\backup\repo-bak> +C:\joe\backup\repo-bak>git annex fsck foo.txt +fsck foo.txt ok + +C:\joe\backup\repo-bak> + +\"\"\"]] + +Perhaps I need to change my transcript to reflect the new fixes? + +Reverting back to my patched version, I can run the script and run git annex fsck --verifyDirectMapping and get the file cleanly. Do I need to update the server version? (I assume not) +"""]] diff --git a/doc/forum/safely_dropping_git-annex_history/comment_3_e3beb8acb075faaeef6c052aecbf0a41._comment b/doc/forum/safely_dropping_git-annex_history/comment_3_e3beb8acb075faaeef6c052aecbf0a41._comment new file mode 100644 index 000000000..fbcbdbc4f --- /dev/null +++ b/doc/forum/safely_dropping_git-annex_history/comment_3_e3beb8acb075faaeef6c052aecbf0a41._comment @@ -0,0 +1,50 @@ +[[!comment format=mdwn + username="http://vjt.myopenid.com/" + nickname="vjt" + subject="drop "content removed from annex" history" + date="2013-06-18T02:12:01Z" + content=""" +Joey, + +dropping the git-annex branch and subsequent fsck worked. Moreover, as I turned my repository in containing over 700k objects due to a silly cycle of `git annex add` / `git annex unannex`, bloating *both* `git-annex` and `master` history, to clean up I successfully performed a squashed rebase of master onto itself. + +Here's what I did, in detail: + + $ git checkout git-annex + $ cp *.log .. + $ git checkout master + $ git br -D git-annex + $ git br -D synced/git-annex + $ git checkout <first commit> + $ git checkout -b git-annex + $ cp ../*.log . + $ <remove the changes done in the first commit, my case just adding a .gitignore> + $ git add *.log + $ git commit --amend -m 'Init' + +With this, I got rid of the many `update` commits. Now, the fun part: + + $ git checkout master + $ git rebase -i <first commit> + <In the git-rebase-todo, I squashed almost everything, except a few commits I wanted to preserve> + $ :wq + +Rebase went fine, and I was left with a clean master. I brought also `synced/master` up to date: + + $ git checkout synced/master + $ git reset --hard master + +Now I re-created all the location links with fsck: + + $ git annex fsck + +And eventually, got rid of the redundant history: + + $ git reflog expire --expire=now --expire-unreachable=now --all + $ git gc --prune=now + $ git repack + $ git prune + +yay, 500k objects less ^_^'. + +"""]] |