어제 Git 리포지토리를 내 컴퓨터 중 하나 에서 다른 컴퓨터 로 복제하는 방법에 대한 질문을 게시했습니다. 다른 컴퓨터에서 어떻게 'git clone'할 수 있습니까? .
이제 소스 (192.168.1.2)에서 대상 (192.168.1.1)으로 Git 저장소를 성공적으로 복제 할 수 있습니다.
그러나 파일 a git commit -a -m "test"
및 a를 편집하면 git push
대상 (192.168.1.1) 에서이 오류가 발생합니다.
git push
hap@192.168.1.2's password:
Counting objects: 21, done.
Compressing objects: 100% (11/11), done.
Writing objects: 100% (11/11), 1010 bytes, done.
Total 11 (delta 9), reused 0 (delta 0)
error: refusing to update checked out branch: refs/heads/master
error: By default, updating the current branch in a non-bare repository
error: is denied, because it will make the index and work tree inconsistent
error: with what you pushed, and will require 'git reset --hard' to match
error: the work tree to HEAD.
error:
error: You can set 'receive.denyCurrentBranch' configuration variable to
error: 'ignore' or 'warn' in the remote repository to allow pushing into
error: its current branch; however, this is not recommended unless you
error: arranged to update its work tree to match what you pushed in some
error: other way.
error:
error: To squelch this message and still keep the default behaviour, set
error: 'receive.denyCurrentBranch' configuration variable to 'refuse'.
To git+ssh://hap@192.168.1.2/media/LINUXDATA/working
! [remote rejected] master -> master (branch is currently checked out)
error: failed to push some refs to 'git+ssh://hap@192.168.1.2/media/LINUXDATA/working'
두 가지 버전의 Git을 사용하고 있습니다 (원격에서는 1.7, 로컬 컴퓨터에서는 1.5). 그게 가능한 이유입니까?
git config receive.denyCurrentBranch=updateInstead
: stackoverflow.com/a/28262104/6309