2014-10-28 84 views
0

我創建了一個git附件回購,添加了數據。然後我以下面的方式去另一個地方查看它(我的目標是檢查原點,添加一個測試文件,並將其推回原點)。Git附件測試添加文件,同步

git clone ../test_repo/
cd test_repo/
git status
git annex init DEV touch test.txt
vi test.txt
git annex merge
git annex add test.txt
git commit -am "test"
git push origin master git-annex

However I am getting the following error

Counting objects: 3, done.
Delta compression using up to 48 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 364 bytes | 0 bytes/s, done. Total 3 (delta 1), reused 0 (delta 0)
remote: error: refusing to update checked out branch:
refs/heads/master
remote: error: By default, updating the current
branch in a non-bare repository
remote: error: is denied, because it
will make the index and work tree inconsistent
remote: error: with what you pushed, and will require 'git reset --hard' to match remote: error: the work tree to HEAD. remote: error: remote: error: You can set 'receive.denyCurrentBranch' configuration variable to remote: error: 'ignore' or 'warn' in the remote repository to allow pushing into remote: error: its current branch; however, this is not recommended unless you remote: error: arranged to update its work tree to match what you pushed in some remote: error: other way. remote: error:
remote: error: To squelch this message and still keep the default behaviour, set remote: error: 'receive.denyCurrentBranch' configuration variable to 'refuse'. To /test_repo/ ! [remote rejected] master -> master (branch is currently checked out)
error: failed to push some refs to '/test_repo/'

我在想什麼?

回答

1

我沒有認識到你用來建立第二個git附件倉庫的一些命令,但是我可以告訴你我是如何做到的,並使它工作。

git clone ../test_repo/ 
    cd test_repo/ 
    git annex init "My new annex copy" 
    git annex sync 

因爲它已經有原來的倉庫作爲遠程origin,它應該能夠同步的元數據。

從此,您可以添加文件並將其同步到其他存儲庫,例如,

vi test.txt 
git annex add test.txt 
git commit -m "test" 
git annex sync --content 

我喜歡做主叫附件添加後,並呼籲附件同步之前提交,因爲附件同步做一些自動提交。